*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:'Manrope','Helvetica Neue',Arial,sans-serif;background:#F5F7FA;color:#12203A}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.page{min-height:100vh;display:flex;flex-direction:column;background:#F5F7FA;color:#12203A}
.sec{padding-left:max(80px,calc((100% - 1280px)/2))!important;padding-right:max(80px,calc((100% - 1280px)/2))!important}
.fixw{max-width:100%;min-width:0}
.stack>*{min-width:0}
/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(245,247,250,.96);backdrop-filter:blur(8px);border-bottom:1px solid #DCE3ED}
.hdr-in{height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(80px,calc((100% - 1280px)/2))}
.hdr-logo img{height:58px;width:auto;display:block}
.hdr-nav{display:flex;align-items:center;gap:40px}
.navlink{font-size:15px;font-weight:600;color:#0B1E44;padding-bottom:4px;border-bottom:2px solid transparent}
.navlink.active{font-weight:700;color:#2F6FEE;border-bottom-color:#2F6FEE}
.navlink:hover{color:#2F6FEE!important}
.hdr-phone{text-align:right;display:flex;flex-direction:column}
.hdr-phone span{font-size:12px;color:#5A6B85}
.hdr-phone b{font-size:16px;font-weight:700;color:#0B1E44}
.burger{display:none;width:44px;height:44px;border:1px solid #DCE3ED;border-radius:6px;background:#fff;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0}
.burger span{display:block;width:20px;height:2px;background:#0B1E44;border-radius:1px}
/* hovers */
.card:hover,.row:hover,.val:hover{border-color:#2F6FEE!important}
.btn-primary:hover{background:#2258C7!important}
.btn-outline:hover{background:#0B1E44!important;color:#fff!important}
.btn-ghost:hover{background:#fff!important;color:#0B1E44!important}
/* form */
.field input,.field textarea,.field select{font-family:'Manrope','Helvetica Neue',Arial,sans-serif;width:100%}
.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid #2F6FEE;outline-offset:0;border-color:#2F6FEE!important}
.tab{flex:1 1 0;height:48px;border-radius:6px;border:1.5px solid #CBD5E3;background:#fff;color:#0B1E44;font-family:'Manrope',sans-serif;font-size:14px;font-weight:600;cursor:pointer}
.tab[aria-checked="true"]{border-color:#0B1E44;background:#0B1E44;color:#fff;font-weight:700}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-err{display:none;font-size:14px;color:#C0352B;line-height:1.5}
.map{border:0;width:100%;height:100%;display:block;border-radius:inherit}
/* tablet */
@media (max-width:1200px){
  .g5{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .g4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .hdr-nav{gap:24px}
}
@media (max-width:1100px){
  .sec{padding-left:40px!important;padding-right:40px!important}
  .hdr-in{padding:0 40px}
  .stack{gap:40px!important}
}
/* mobile */
@media (max-width:960px){
  .hdr-in{height:72px;padding:0 16px}
  .hdr-logo img{height:46px}
  .hdr-phone{display:none}
  .burger{display:flex}
  .hdr-nav{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#F5F7FA;border-bottom:1px solid #DCE3ED;padding:8px 16px 16px}
  .hdr-nav.open{display:flex}
  .hdr-nav .navlink{padding:14px 4px;border-bottom:1px solid #DCE3ED;font-size:16px}
  .hdr-nav .navlink.active{border-bottom-color:#DCE3ED}
  .sec{padding-left:16px!important;padding-right:16px!important;padding-top:56px!important;padding-bottom:56px!important}
  .stack{flex-direction:column!important;align-items:stretch!important;gap:32px!important}
  .stack>*{width:auto!important;max-width:100%!important;flex:0 0 auto!important}
  .fixw{height:auto!important}
  .fixw.boxed{min-height:240px;padding:32px!important}
  .rowf{flex-wrap:wrap}
  .stats{flex-wrap:wrap;gap:28px 24px}
  .stats>*{flex:1 1 140px}
  .stats>*>div:first-child{font-size:30px!important}
  .g5,.g4,.g3{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .g2{grid-template-columns:minmax(0,1fr)!important;column-gap:0!important}
  h1{font-size:34px!important;line-height:1.15!important}
  h2{font-size:26px!important}
  .field{flex-direction:column!important}
  form{padding:24px!important}
}
@media (max-width:560px){
  .g5,.g4,.g3{grid-template-columns:minmax(0,1fr)!important}
  h1{font-size:30px!important}
  .tabs{flex-direction:column}
  .tab{flex:0 0 auto}
}
