a,blockquote,body,div,fieldset,figure,form,h1,h2,h3,h4,h5,h6,html,iframe,input,label,li,object,ol,p,pre,select,span,tabre,tbody,td,textarea,th,ul{ margin:0;padding:0;border:0;vertical-align:baseline;font-weight:400; }
a{ color:#212121;text-decoration:none; }
a img{ border:0; }
img{ display:block;padding:0;margin:0; }
p img{ display:inline-block;vertical-align:middle; }
input,select,textarea{ outline:0; }
table{ border:0;border-collapse:collapse;border-spacing:0; }
table th{ border:0;border-collapse:collapse;border-spacing:0;font-weight:400; }
table td{ border:0;border-collapse:collapse;border-spacing:0; }
.clear{ height:1px;clear:both; }
.nomargin{ margin:0!important; }

body{ display: block; background: #fff; margin: 0; padding: 0; font:16px 'Times New Roman',Calibri,Arial,Tahoma;color:#000;text-size-adjust:none;box-sizing:border-box; }
body.overflow{ overflow: hidden; }

img{ max-width: 100%; }

.bold{ font-family:'Times New Roman'; font-weight: 700; font-style: normal; }
.right{ margin: 0 0 0 auto; }
.center{ margin-left: auto; margin-right: auto; text-align: center; }

.container{ display: block; position: relative; margin: 0 auto; width: 100%; max-width: 1360px; padding: 0 20px; box-sizing: border-box; }

.upline{ display: flex; align-items: center; position: fixed; top: 0; left: 0; width: 100%; z-index: 2; }
.upline .container{ display: flex; align-items: center; padding: 30px 20px 0; }
.upline .container div{ display: flex; align-items: center; margin: 0 100px 0 0; cursor: pointer; }
.upline .container .menu{ background: url('../img/menu.png') no-repeat left; height: 34px; padding-left: 46px; }
.upline .container .phone{ font-size: 24px; font-weight: 700; color: #00659e; }
.upline .container .email{ font-size: 13px; }

nav{ position: fixed; top: 0; left: -300px; width: 300px; height: 100vh; background: #fff; z-index: 1000; transition: transform 0.4s ease; box-shadow: 2px 2px 8px rgba(0,0,0,0.2); }
nav.active{ transform: translateX(300px); transition: transform 0.4s ease; }
nav .container{ padding: 100px 40px; }
nav .container a{ display: block; height: 46px; line-height: 46px; margin: 0; }


header{ position: relative; background: url('../img/gray_bg.jpg') no-repeat center bottom; background-size: cover; height: 820px; }
header:before{ content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url('../img/rounded.png') no-repeat top right; background-size: 812px; }
header .container{ display: grid; height: 820px; align-items: center; align-content: center; }
header h1{ margin-bottom: 60px; font-size: 48px; font-weight: 700; color: #355d88; text-transform: uppercase; }
header ul{ margin: 0 0 60px 0; }
header li{ display: flex; align-items: center; font-size: 22px; color: #1eab6d; text-transform: uppercase; list-style: none; min-height: 35px; margin: 0 0 12px 0; padding: 0 0 0 50px; background: url('../img/checkmark.png') no-repeat left; }
header .buttons{ display: flex; align-items: center; }
header .buttons a{ display: inline-block; font-weight: 500; color: #335c87; }
header .buttons .green{ margin-right: 30px; padding: 25px 30px; background: linear-gradient(to top, #18a86b, #2fb383); color: #fff; border-radius: 10px; font-size: 18px; box-shadow: 2px 2px 4px rgba(0,0,0,0.24); text-align: center; }

main{ padding: 60px 0; }
main h2{ margin-bottom: 30px; font-size: 30px; font-weight: 700; color: #179e62; }
main p{ margin: 0 0 30px 0; }
main ul{ margin: 0 0 0 20px; }
main .content{ margin: 0 0 30px 0; }
main .pics{ display: flex; justify-content: center; }
main .pics a{ display: inline-block; margin: 0 20px; }

.preferences{ display: flex; width: 100%; align-items: stretch; justify-content: center; margin-bottom: 60px; }
.preferences .icon{ display: flex; width: 33.33%; padding: 20px; box-sizing: border-box; }
.preferences .icon > div{ width: 100%; box-shadow: 2px 2px 12px rgba(0,0,0,0.24); text-align: center; padding: 60px 30px; border-radius: 10px; box-sizing: border-box; }
.preferences .icon > div img{ display: block; margin: 0 auto; }

.consultation{ height: 180px; background: #4b7594; color: #fff; overflow: hidden; }
.consultation .container{ display: flex; height: 100%; position: relative; align-items: center; }
.consultation .h1{ display: flex; position: relative; width: 33.33%; height: 120px; margin: 0px 40px 0; font-size: 48px; line-height: 42px; max-width: 420px; border-left: 1px solid rgba(24,24,24,0.21); border-right: 1px solid rgba(24,24,24,0.21); text-align: right; justify-content: center; align-items: center; z-index: 1; }
.consultation .h1:before{ position: absolute; top: -30px; left: 0; right: 0; margin: auto; content: '?'; font-size: 282px; font-weight: 700; line-height: 168px; color: rgba(24,24,24,0.21); text-align: center; z-index: -1; }
.consultation .form{ display: flex; align-items: center; align-content: center; flex-wrap: wrap; width: 66.67%; margin: 0px 40px 0; }
.consultation .form .hint1{ display: block; font-size: 14px; color: #fff; margin: 0 0 5px 0; }
.consultation .form .form-consultation{ width: 100%; }
.consultation .form .form-consultation input[type=text]{ background: #fff; font-size: 14px; font-weight: 500; width: 60%; height: 46px; line-height: 46px; padding: 0 20px; color: #000; box-sizing: border-box; vertical-align: top; }
.consultation .form .form-consultation input[type=submit]{ background: #507d9e; font-size: 14px; font-weight: 500; height: 46px; line-height: 42px; padding: 0 20px; border: 2px solid #fff; color: #fff; box-sizing: border-box; vertical-align: top; cursor: pointer; }
.consultation .form .hint2{ display: block; font-size: 14px; color: #fff; }

.cookie-law{ display: flex; align-items: center; justify-content: space-between; position: fixed; bottom: 20px; right: 20px; max-width: 600px; padding: 10px 20px; font: 16px 'FiraSans-Regular'; line-height: 1.2; border-radius: 10px; background: rgba(255,255,255,.6); backdrop-filter: blur(20px); opacity: 0; pointer-events: none; box-shadow: 1px 1px 20px rgba(0,0,0,.21); z-index: 20; transform: translateY(200px); transition: all .6s ease; z-index: 990; }
.cookie-law.loaded{ opacity: 1; pointer-events: all; transform: translateY(0); }
.cookie-law.closed{ transform: translateY(200px)!important; }
.cookie-law a{ color: #000; text-decoration: underline; }
.cookie-law .button{ display: table; height: 52px; line-height: 52px; padding: 0 40px; border-radius: 2px; background: linear-gradient(#96c251, #79a13a 10%, #81a33f 86%, #4b6426); color: #fff; filter: saturate(1.6); cursor: pointer; }
.cookie-law .button{ display: table; margin-left: 20px; font-size: 16px; height: 46px; line-height: 46px; border-radius: 10px; padding: 0 30px; }

footer{ padding: 12px 0; font-size: 14px; background: #dee3eb; color: #07326b; }
footer .container{ display: flex; }
footer .container a{ display: inline-block; margin-right: 40px; }
footer .container a.phone{ font-size: 21px; }

@media(max-width:1230px){
    .upline .container div{ margin-right: 60px; }
    header{ height: 700px; }
    header:before{ background-size: 60%; }
    header .container{ height: 700px; }
    header h1{ font-size: 42px; margin-bottom: 40px; }
    header ul{ margin-bottom: 30px; }
    header li{ padding: 0 0 0 36px; background-size: 24px; }
    header .buttons .green{ padding: 18px 26px; }
}
@media(max-width: 910px){
    .consultation{ height: auto; }
    .consultation .container{ flex-wrap: wrap; }
    .consultation .h1{ width: 100%; height: auto; border: 0; max-width: none; }
    .consultation .h1:before{ top: -10px; }
    .consultation .h1 br{ display: none; }
    .consultation .form{ justify-content: center; width: 100%; margin-bottom: 40px; z-index: 1; }
    .consultation .form .form-consultation{ text-align: center; }
    .preferences .icon{ padding: 20px 10px; }
    .preferences .icon > div{ padding: 60px 15px; }
    .cookie-law{ left: 10px; right: 10px; bottom: 10px; padding: 10px 20px; }
    .cookie-law .button{ margin: 0 0 0 10px; }
}
@media(max-width: 860px){
    .upline .container .email{ display: none; }
    .consultation .h1{ margin: 30px 20px 0; }
    .consultation .form{ margin: 30px 20px 40px; }
    .consultation .form .form-consultation{ display: flex; }
    .consultation .form .form-consultation input[type=text]{ width: 70%; margin-right: 10px; }
    .consultation .form .form-consultation input[type=button]{ width: 30%; padding: 0 10px; }
    .preferences{ flex-wrap: wrap; }
    .preferences .icon{ width: 50%; }
    footer .container a{ margin-right: 15px; }
}
@media(max-width: 620px){
    .consultation h1{ margin: 30px 0 0; }
    .consultation .form{ margin: 30px 0 40px; }
    .consultation .form .form-consultation input[type=text]{ width: 60%; margin-right: 10px; }
    .consultation .form .form-consultation input[type=button]{ width: 40%; padding: 0 10px; }
    footer .container{ display: block; padding-top: 15px; }
    footer .container a{ display: block; margin: 0 0 15px 0; }
}
@media(max-width: 520px){
    .upline .container{ display: block; }
    .upline .container .phone{ margin-top: 5px; }
    .consultation .h1 br{ display: block; }
    .preferences .icon{ width: 100%; }
}
@media(max-width: 460px){
    .consultation .form .form-consultation{ flex-wrap: wrap; }
    .consultation .form .form-consultation input[type=text]{ width: 100%; margin: 0 0 10px 0; }
    .consultation .form .form-consultation input[type=button]{ width: 100%; margin: 0 auto 10px; padding: 0 10px; }
}