:root { --header-height: 96px; --gutter: 48px; --blue: #25a4da; --screen: calc(100svh - var(--header-height)); }
html { scroll-padding-top: var(--header-height); }
body { line-height: 1.6; -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
* { letter-spacing: 0; }
.content { width: 100%; max-width: 1730px; padding-inline: var(--gutter); }
section, footer { scroll-margin-top: var(--header-height); }
.preloader { display: none; }
header { height: var(--header-height); }
.header-block { box-shadow: 0 1px 0 #0000000a; z-index: 30; }
.header-block__pc { min-height: var(--header-height); gap: 20px; }
.header-block .logo { width: 270px; padding: 0; flex-shrink: 0; }
.header-block .nav > ul { display: flex; gap: 4px; }
.header-block .nav > ul > li > a { padding: 34px 7px; font-size: 13px; white-space: nowrap; }
.header-block .nav li.open > a { padding-right: 19px; }
.header-block .nav li ul { top: calc(100% - 8px); border-radius: 8px; transform: translateY(8px); }
.header-block .nav li ul a { padding: 10px 16px; font-size: 14px; }
.header-block .nav li a:before { height: 3px; bottom: 0; border-radius: 0; }
.pc-header-block__box { display: flex; align-items: center; flex-shrink: 0; }
.header-block .contacts a { padding: 2px 0; }
.header-block .contacts a b, .header-block .contacts a span { font-size: 12px; }
.header-block .contacts img { width: 16px; }
.header-block .lang { margin-left: 14px; margin-right: 0; }
.header-block .lang span { line-height: 32px; }
.s1, .s2, .s2.white, .s4, .s6 { height: auto; min-height: var(--screen); }
.s1 { min-height: calc(var(--screen) - 24px); padding: 40px 0; display: flex; align-items: center; background-position: center; }
.s1 .content { height: auto; }
.s1 .content:before, .s4 .content:before, .s2 .inner-box:before, .s6:after { display: none; }
.s1 .inner { display: block; }
.s1 h1 { font-size: 80px; line-height: 1.02; padding: 0; }
.s1 p { padding: 0; max-width: 460px; line-height: 1.75; font-size: 16px; }
.s1 .circles { padding: 28px 0; }
.circles .circle { width: 18px; height: 18px; margin-right: 18px; }
.s2, .s2.white { padding: 48px 0; display: flex; align-items: center; }
.s2 .content { height: auto; position: relative; }
.s2 .tab-nav { display: flex; align-items: center; flex-wrap: wrap; gap: 32px; padding-left: 24px; margin: 0 0 24px; }
.s2 .tab-nav:before { width: 8px; border-radius: 4px; }
.s2 .tab-nav h2 { padding: 8px 0; font-size: 30px; line-height: 1.2; }
.s2 .tab-block { min-width: 0; }
.s2 .tab-box, .s2.white .white { position: relative; inset: auto; display: none; visibility: visible; opacity: 1; transition: none; }
.s2 .tab-box.active { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: center; gap: 24px 48px; }
.s2 .tab-box > .circles { grid-column: 1 / -1; padding: 0; }
.s2 .inner-box { max-width: 560px; padding: 0; transform: none; opacity: 1; }
.s2 .inner { padding: 0; }
.s2 p { font-size: 17px; line-height: 1.9; padding: 0; }
.s2 .img { position: relative; inset: auto; z-index: 0; min-width: 0; overflow: hidden; }
.s2 .img img { position: relative; inset: auto; margin: 0 auto; display: block; width: 100%; max-width: 650px; max-height: calc(var(--screen) - 220px); transform: none; opacity: 1; object-fit: contain; }
.s2 .tab-box.white.active { display: block; }
.s2.white .white .img { inset: auto; margin: 24px 0 0; overflow: auto; }
.s2.white .white .img #anim { width: 100%; min-width: 0; height: auto; }
.s2 #anim svg { display: block; max-height: calc(var(--screen) - 200px); }
.decor-plus { width: 24px; height: 24px; pointer-events: none; }
.s2 .decor-plus.tl, .s2 .decor-plus.tr { top: -32px; }
.s2 .decor-plus.bl, .s2 .decor-plus.br { bottom: -32px; }
.s2 .decor-plus.tl, .s2 .decor-plus.bl { left: 16px; }
.s2 .decor-plus.tr, .s2 .decor-plus.br { right: 16px; }
.s4 { overflow: clip; }
.s4 .content { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); max-width: none; padding: 0; min-height: inherit; height: auto; }
.s4 .inner-box { display: flex; flex-direction: column; justify-content: center; position: relative; width: auto; min-width: 0; padding: 48px var(--gutter); }
.s4 .inner-box:last-child { padding: 48px var(--gutter); min-height: 0; isolation: isolate; }
.s4 .inner-box:last-child > .inner { width: 100%; max-width: 560px; margin-inline: auto; }
.s4 .inner-box:last-child p { max-width: none; }
.s4 .bg-imgs { inset: 0; width: 100%; z-index: -1; }
.s4 .bg-img { inset: 0; width: 100%; background-position: center; }
.s4 .row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; width: 100%; max-width: 720px; margin-inline: auto; }
.s4 .clmn { width: auto; min-width: 0; }
.s4 .title { padding: 0 0 20px 62px; min-height: 78px; }
.s4 .title img { width: 44px; max-height: 52px; top: 0; bottom: auto; }
.s4 .title span { font-size: 15px; }
.s4 .inner-box ul { padding: 0; }
.s4 .inner-box li { padding: 10px 0 10px 12px; font-size: 15px; line-height: 1.5; border-left: 2px solid transparent; transition: color .2s, border-color .2s, background .2s; }
.s4 .inner-box li.active { border-color: var(--blue); color: #147ca8; background: #25a4da0a; }
.s4 .inner-box li:hover { color: #147ca8; }
.s4 .inner-box h2 { font-size: 30px; line-height: 1.25; padding-left: 24px; }
.s4 .inner-box h2:before { width: 8px; border-radius: 4px; }
.s4 .inner-box h3 { font-size: 30px; line-height: 1.25; padding: 0 0 20px; }
.s4 .inner-box p { font-size: 16px; line-height: 1.8; padding: 0 0 16px; }
.s4 .inner-box p:last-child { padding-bottom: 0; }
.s4 .inner-box a { margin-bottom: 0; border-radius: 8px; }
.s5 .inner-box li { color: #e3e3e3; }
.s5 .inner-box li.active, .s5 .inner-box li:hover { color: #fff; border-color: #fff; background: #ffffff0a; }
.s5 .decor-plus { margin: 12px 0; }
.s5 .inner-box h2 { margin: 16px 0 24px; }
.s6 { display: flex; align-items: flex-end; padding: 64px 0; background-position: center; }
.s6 .content { display: block; }
.s6 h2 { padding: 0; font-size: 80px; line-height: 1.02; }
footer { margin-top: 0; position: relative; }
.footer-block { position: relative; inset: auto; padding: 48px 0; min-height: var(--screen); z-index: 0; display: flex; align-items: center; }
.footer-block .content { height: auto; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; align-items: center; }
.footer-block .content:after, .footer-block .inner-box:first-child:before { display: none; }
.footer-block .inner-box { display: block; width: auto; max-height: none; overflow: visible; min-width: 0; }
.footer-block h2, .footer-block .title { padding: 0 0 20px; font-size: 24px; }
.footer-block p { padding: 0 0 16px; max-width: 360px; line-height: 1.7; }
.footer-block .contacts { padding: 0 0 16px; }
.footer-block .contacts a { font-size: 14px; overflow-wrap: anywhere; }
.footer-block .contacts a img { width: 32px; padding-right: 12px; }
.footer-block .nav { padding: 8px 0; }
.footer-block .nav ul { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 16px; }
.footer-block .logo { width: 150px; padding: 24px 0 12px; }
.footer-block .cprt { padding: 8px 0 0; font-size: 11px; }
.footer-block form { max-width: none; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; padding: 0; }
.footer-block .title, .footer-block .full-box, .footer-block .form-status { grid-column: 1 / -1; }
.footer-block .full-box, .footer-block .half-box { padding: 0; width: auto; min-width: 0; }
.footer-block input, .footer-block textarea { border-radius: 6px; font-size: 16px; padding-inline: 16px; }
.footer-block input::placeholder { color: #b4b4b4; opacity: 1; }
.footer-block label .overtxt { top: 16px; left: 16px; opacity: .7; pointer-events: none; }
.footer-block textarea { min-height: 140px; max-height: 300px; resize: vertical; }
.footer-block input[type=submit] { margin: 0; cursor: pointer; }
.footer-block input:disabled { opacity: .6; cursor: wait; }
.form-status { font-size: 13px; line-height: 1.6; }
.form-status:empty { display: none; }
#map { position: relative; inset: auto; width: 100%; height: min(600px, calc(var(--screen) - 96px)); min-height: 320px; }
#scriptait { position: static; grid-column: 1 / -1; justify-self: end; padding: 0; }
@media (min-width: 1700px) { .s1 h1, .s6 h2 { font-size: 96px; } .s4 .inner-box { padding-inline: 80px; } }
@media (min-width: 1281px) and (max-height: 800px) { .s1 h1, .s6 h2 { font-size: 64px; } .s1 .circles { padding-block: 20px; } .s4 .inner-box { padding-block: 32px; } .s4 .inner-box li { padding-block: 8px; } }
@media (max-width: 1280px) {
  :root { --header-height: 70px; --gutter: 32px; }
  .header-block__pc { top: var(--header-height); min-height: 0; max-width: min(380px, 100%); overscroll-behavior: contain; padding: 24px 16px; }
  .header-block__pc .nav > ul { display: block; }
  .header-block__pc .nav > ul > li > a { padding: 12px; font-size: 15px; min-height: 44px; }
  .header-block__pc .nav li.open:not(.expanded) ul { display: none; }
  .header-block__pc .nav li.expanded ul { display: block; padding: 8px 0 8px 12px; }
  .header-block__pc .nav li.expanded ul a { font-size: 14px; padding: 10px 15px; opacity: 1; }
  .pc-header-block__box { display: block; padding: 24px 12px 0; }
  .header-block__mobile { height: var(--header-height); padding-inline: 20px; }
  .header-block__mobile .logo { width: 210px; max-width: 55%; padding: 0; }
  .mobile-header-block__box { display: flex; align-items: center; gap: 8px; }
  .header-block__mobile .lang { margin: 0; }
  .header-block__mobile .lang span { line-height: 28px; }
  header .brgr { width: 44px; height: 54px; padding: 16px 9px; }
  header .brgr .line { height: 4px; margin: 5px 0; }
  header.active .brgr .line:first-child { top: 9px; }
  header.active .brgr .line:last-child { bottom: 9px; }
  .overlay { z-index: 20; }
  .s1 h1, .s6 h2 { font-size: 64px; }
  .s4 .inner-box, .s4 .inner-box:last-child { padding: 40px 28px; }
  .s4 .row { gap: 16px; }
  .s4 .title { padding-left: 0; padding-top: 64px; }
  .s4 .inner-box h3 { font-size: 26px; }
  .footer-block .content { grid-template-columns: 1fr 1fr; }
  #map { grid-column: 1 / -1; height: 340px; }
}
@media (max-width: 767px) {
  :root { --gutter: 24px; }
  .s1 { padding-block: 40px; background-position: 28% center; }
  .s1 h1 { font-size: 44px; }
  .s1 p { font-size: 15px; max-width: 32ch; }
  .s1 .circles { padding-block: 24px; }
  .s2, .s2.white { padding-block: 56px; }
  .s2 .tab-nav { gap: 20px; margin-bottom: 28px; padding-left: 18px; }
  .s2 .tab-nav h2 { font-size: 20px; }
  .s2 .tab-box.active { grid-template-columns: 1fr; gap: 28px; }
  .s2 .tab-box > .circles { grid-column: auto; }
  .s2 p { font-size: 15px; line-height: 1.8; }
  .s2 .img img { max-height: 320px; }
  .s2.white .white .img { overflow-x: auto; overscroll-behavior-x: contain; }
  .s2.white .white .img #anim { width: 900px; min-width: 900px; }
  .s2 #anim svg { max-height: none; }
  .s4 .content { grid-template-columns: 1fr; }
  .s4 .inner-box, .s4 .inner-box:last-child { padding: 40px var(--gutter); }
  .s4 .inner-box:last-child { min-height: 500px; }
  .s4 .row { gap: 20px; }
  .s4 .inner-box li { font-size: 13px; padding-block: 10px; }
  .s4 .title span { font-size: 13px; }
  .s4 .inner-box h2, .s4 .inner-box h3 { font-size: 26px; }
  .s4 .inner-box p { font-size: 15px; line-height: 1.8; }
  .s5 .inner-box li { font-size: 15px; }
  .s6 { padding-block: 48px; background-position: 58% center; }
  .s6 h2 { font-size: 44px; }
  .footer-block { padding-block: 48px 24px; }
  .footer-block .content { grid-template-columns: 1fr; gap: 48px; }
  .footer-block .inner-box { width: 100%; }
  .footer-block .half-box { grid-column: 1 / -1; }
  #map { height: 320px; }
  #scriptait { justify-self: start; }
}
@media (max-width: 360px) {
  :root { --gutter: 20px; }
  .s1 h1, .s6 h2 { font-size: 36px; }
  .s2 .tab-nav { gap: 12px; }
  .s2 .tab-nav h2 { font-size: 17px; }
  .s4 .row { gap: 12px; }
}
