:root {
  --primary-white: #fffdf9;
  --_typography---font-family--raleway: Raleway, sans-serif;
  --primary-black: #2a2a2a;
  --_typography---font-size--text-18: 1.25rem;
  --_typography---line-height--height-110: 110%;
  --_typography---font-weight--weight-400: 400;
  --_typography---font-size--h1: 5rem;
  --_typography---line-height--height-80: 80%;
  --_typography---font-family--halvar: "Halvarbreit Rg", Arial, sans-serif;
  --_typography---font-size--h2: 2.22222rem;
  --_typography---line-height--height-120: 120%;
  --_typography---letter-spacing--spacing-2: -2px;
  --_typography---font-size--h3: 1.94444rem;
  --_typography---font-size--h0: 9.02778rem;
  --_typography---font-size--header-hero: 3.33333rem;
  --_typography---letter-spacing--spacing-0-1: .1px;
  --_typography---font-weight--weight-600: 600;
  --_typography---font-size--text-14: .972222rem;
  --_rounded---radius-6: .416667rem;
  --primary-gray: #d9d9d9;
  --_typography---line-height--size: 0px;
}

body {
  background-color: var(--primary-white);
  font-family: var(--_typography---font-family--raleway);
  color: var(--primary-black);
  font-size: var(--_typography---font-size--text-18);
  line-height: var(--_typography---line-height--height-110);
  font-weight: var(--_typography---font-weight--weight-400);
}

h1 {
  font-family: var(--_typography---font-family--raleway);
  font-size: var(--_typography---font-size--h1);
  line-height: var(--_typography---line-height--height-80);
  font-weight: var(--_typography---font-weight--weight-400);
}

h2 {
  font-family: var(--_typography---font-family--halvar);
  font-size: var(--_typography---font-size--h2);
  line-height: var(--_typography---line-height--height-120);
  font-weight: var(--_typography---font-weight--weight-400);
  letter-spacing: var(--_typography---letter-spacing--spacing-2);
}

h3 {
  font-family: var(--_typography---font-family--halvar);
  font-size: var(--_typography---font-size--h3);
  line-height: var(--_typography---line-height--height-120);
  font-weight: var(--_typography---font-weight--weight-400);
  letter-spacing: var(--_typography---letter-spacing--spacing-2);
}

p {
  font-size: var(--_typography---font-size--text-18);
  line-height: var(--_typography---line-height--height-120);
  font-weight: var(--_typography---font-weight--weight-400);
}

img {
  max-width: 100%;
}

.global-css {
  display: none;
}

.header {
  z-index: 999;
  -webkit-backdrop-filter: blur(15px) saturate(180%);
  backdrop-filter: blur(15px) saturate(180%);
  color: var(--primary-black);
  background-color: #ffffff05;
  position: sticky;
  top: 0;
}

.ui-kit {
  display: none;
}

.h0 {
  font-family: var(--_typography---font-family--halvar);
  font-size: var(--_typography---font-size--h0);
  line-height: var(--_typography---line-height--height-80);
  font-weight: var(--_typography---font-weight--weight-400);
  margin-left: -.4rem;
}

.header-hero {
  font-family: var(--_typography---font-family--halvar);
  font-size: var(--_typography---font-size--header-hero);
  line-height: var(--_typography---line-height--height-80);
  font-weight: var(--_typography---font-weight--weight-400);
  letter-spacing: var(--_typography---letter-spacing--spacing-2);
}

.text-18 {
  font-family: var(--_typography---font-family--raleway);
  font-size: var(--_typography---font-size--text-18);
  line-height: var(--_typography---line-height--height-110);
  font-weight: var(--_typography---font-weight--weight-400);
  letter-spacing: var(--_typography---letter-spacing--spacing-0-1);
  margin-bottom: 0;
}

.text-18.semibold {
  font-weight: var(--_typography---font-weight--weight-600);
}

.text-18.ff-halvar {
  font-family: var(--_typography---font-family--halvar);
}

.text-14 {
  font-family: var(--_typography---font-family--raleway);
  font-size: var(--_typography---font-size--text-14);
  line-height: var(--_typography---line-height--height-120);
  font-weight: var(--_typography---font-weight--weight-400);
}

.text-14.semibold {
  font-weight: var(--_typography---font-weight--weight-600);
  font-weight: var(--_typography---font-weight--weight-600);
}

.section {
  padding-top: 4.16667rem;
  padding-bottom: 4.16667rem;
  position: relative;
  overflow: hidden;
}

.section.s-projects {
  padding-top: 8.33333rem;
}

.section.s-hero {
  padding-top: 0;
}

.section.s-about.trail-container {
  width: 100%;
}

.section.s-about.trail-container.overflow-visible {
  overflow: visible;
}

.header-container {
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: stretch;
  padding: 1.38889rem;
  display: flex;
}

.nav-container {
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 6.94444rem;
  display: flex;
}

.nav-container.text-14 {
  grid-column-gap: 2.77778rem;
  grid-row-gap: 2.77778rem;
  grid-column-gap: 2.77778rem;
  grid-row-gap: 2.77778rem;
  justify-content: flex-start;
  align-items: center;
}

.header-cta {
  grid-column-gap: .694444rem;
  grid-row-gap: .694444rem;
  justify-content: center;
  align-items: center;
  display: flex;
}

.separator-img {
  width: 1.2rem;
}

.global-padding {
  padding-left: 1.38889rem;
  padding-right: 1.38889rem;
}

.row-80 {
  grid-column-gap: 5.55556rem;
  grid-row-gap: 5.55556rem;
  flex-flow: column;
  display: flex;
}

.count-lines__container {
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: relative;
}

.horizontal-line {
  opacity: .7;
  width: 100%;
  height: 1px;
}

.custom-css {
  display: none;
}

.sep-abs {
  position: absolute;
  inset: -.8rem auto auto 0;
}

.sep-abs.faq-center {
  left: 48.8889rem;
}

.sep-abs.faq-center.advantages {
  left: 54.4444rem;
}

.sep-abs._2 {
  left: 32.2rem;
}

.sep-abs._2.advantages {
  left: 48.8889rem;
}

.sep-abs._3 {
  left: 65rem;
}

.sep-abs._3.advantages {
  left: 54.4444rem;
}

.sep-abs._4 {
  inset: -.8rem 0% auto auto;
}

.vertical-line {
  opacity: .6;
  width: 1px;
}

.vertical-line.h-43 {
  height: 8rem;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.vertical-line.h-174 {
  height: 6rem;
  position: absolute;
  inset: -.1rem auto auto .6rem;
}

.vertical-line.h-174.right {
  inset: -.1rem .5rem auto auto;
}

.vertical-line.h-420 {
  height: 29.1667rem;
  position: absolute;
  inset: -.1rem auto auto 32.8rem;
}

.vertical-line.h-422 {
  height: 44rem;
  position: absolute;
  inset: -.1rem auto auto 65.6rem;
}

.vertical-line.h-100.right {
  inset: -.1rem .5rem auto auto;
}

.vertical-line.h-100.sec {
  left: 32.8rem;
}

.vertical-line.h-100.third {
  left: 65.6rem;
}

.vertical-line.h-100 {
  height: 6rem;
  position: absolute;
  inset: -.1rem auto auto .6rem;
}

.vertical-line.h-100.right {
  height: 6.94444rem;
  inset: -.1rem .5rem auto auto;
}

.vertical-line.h-80 {
  height: 6rem;
  position: absolute;
  inset: -.1rem auto auto 32.8rem;
}

.vertical-line.h-80._2 {
  left: 65.6rem;
}

.vertical-line.faq-center {
  height: 6.94444rem;
  position: absolute;
  inset: -.1rem auto auto 49.4889rem;
}

.vertical-line.faq-center.third {
  left: 65.6rem;
}

.vertical-line.advantages-side {
  height: 3rem;
  position: absolute;
  inset: -.1rem auto auto .6rem;
}

.vertical-line.advantages-side.right {
  inset: -.1rem .6rem auto auto;
}

.vertical-line.advantages-side.center-1 {
  left: 49.5111rem;
}

.vertical-line.advantages-side.center-2 {
  left: 55.0444rem;
}

.col-10 {
  grid-column-gap: .694444rem;
  grid-row-gap: .694444rem;
  display: flex;
}

.review-container {
  grid-column-gap: 5.55556rem;
  grid-row-gap: 5.55556rem;
  flex-flow: column;
  display: flex;
  position: relative;
}

.row-40 {
  grid-column-gap: 2.77778rem;
  grid-row-gap: 2.77778rem;
  flex-flow: column;
  display: flex;
}

.footer {
  padding-top: 4.16667rem;
  position: relative;
}

.footer-img {
  aspect-ratio: 16 / 9;
  pointer-events: none;
  width: 100%;
  min-width: 100%;
  height: 31.5972rem;
  min-height: 31.5972rem;
}

.footer-container {
  position: relative;
}

.footer-content {
  padding: 4.86111rem .694444rem 2.77778rem;
  display: flex;
  position: absolute;
  inset: 0%;
}

.row-16 {
  grid-column-gap: 1.11111rem;
  grid-row-gap: 1.11111rem;
  flex-flow: column;
  display: flex;
}

.semibold {
  font-weight: var(--_typography---font-weight--weight-600);
}

.icon-24 {
  width: 1.66667rem;
  min-width: 1.66667rem;
  height: 1.66667rem;
  min-height: 1.66667rem;
}

.col-16 {
  grid-column-gap: 1.11111rem;
  grid-row-gap: 1.11111rem;
  display: flex;
}

.row-8 {
  grid-column-gap: .555556rem;
  grid-row-gap: .555556rem;
  flex-flow: column;
  display: flex;
}

.row-8.mt-autp {
  margin-top: auto;
}

.row-8.copyright {
  inset: auto auto 1.38889rem 0%;
  position: absolute;
  inset: auto auto 1.38889rem 0%;
}

.footer-nav {
  grid-column-gap: 1.66667rem;
  grid-row-gap: 1.66667rem;
  flex-flow: column;
  margin-left: 17rem;
  display: flex;
}

.footer-cta {
  position: absolute;
  inset: 4.86111rem .6rem auto auto;
}

.col-100 {
  grid-column-gap: 6.94444rem;
  grid-row-gap: 6.94444rem;
  display: flex;
}

.map {
  border-radius: var(--_rounded---radius-6);
  width: 100%;
  height: 39.7222rem;
  overflow: clip;
}

.width-440 {
  width: 30rem;
  position: relative;
}

.title-container {
  padding-bottom: .5rem;
  overflow: hidden;
}

.is--mob, .burger-icon {
  display: none;
}

@media screen and (max-width: 767px) {
  body {
    --_typography---font-family--raleway: Raleway, sans-serif;
    --_typography---font-size--text-18: 4.26667rem;
    --_typography---line-height--height-110: 110%;
    --_typography---font-weight--weight-400: 400;
    --_typography---font-size--h1: 7.46667rem;
    --_typography---line-height--height-80: 80%;
    --_typography---font-family--halvar: "Halvarbreit Rg", Arial, sans-serif;
    --_typography---font-size--h2: var(--_typography---font-size--h1);
    --_typography---line-height--height-120: 120%;
    --_typography---letter-spacing--spacing-2: -2px;
    --_typography---font-size--h3: 5.33333rem;
    --_typography---font-size--h0: 29.3333rem;
    --_typography---font-size--header-hero: var(--_typography---font-size--h1);
    --_typography---letter-spacing--spacing-0-1: .1px;
    --_typography---font-weight--weight-600: 600;
    --_typography---font-size--text-14: 3.2rem;
    --_rounded---radius-6: 1.6rem;
  }

  h1 {
    padding-bottom: 4px;
  }

  .ui-kit {
    display: none;
  }

  .section, .section.s-reviews, .section.s-reviews {
    padding-top: 10.6667rem;
    padding-bottom: 10.6667rem;
  }

  .header-container {
    justify-content: space-between;
    align-items: center;
    padding: 2.4rem 2.66667rem;
  }

  .nav-container.text-14 {
    z-index: 900;
    grid-column-gap: 5.33333rem;
    grid-row-gap: 5.33333rem;
    background-color: var(--primary-white);
    opacity: 0;
    -webkit-backdrop-filter: blur(25px);
    backdrop-filter: blur(25px);
    pointer-events: none;
    flex-flow: column;
    justify-content: center;
    align-items: flex-start;
    height: 50dvh;
    padding-left: 2.66667rem;
    transition: all .3s ease-in-out;
    position: fixed;
    inset: 0%;
  }

  .nav-container.text-14.is--active {
    grid-column-gap: 5.33333rem;
    grid-row-gap: 5.33333rem;
    opacity: 1;
    pointer-events: auto;
    grid-column-gap: 5.33333rem;
    grid-row-gap: 5.33333rem;
    opacity: 1;
    pointer-events: auto;
  }

  .main-logo, .main-logo.w--current {
    z-index: 999;
    position: relative;
  }

  .header-cta {
    grid-column-gap: 2.13333rem;
    grid-row-gap: 2.13333rem;
  }

  .separator-img {
    width: 6rem;
  }

  .global-padding {
    padding-left: 2.66667rem;
    padding-right: 2.66667rem;
  }

  .hero-container {
    grid-column-gap: 10.6667rem;
    grid-row-gap: 10.6667rem;
    text-align: center;
  }

  .col-40.col-align--bot.mob-row--40 {
    align-items: stretch;
  }

  .col-40.col-align--ccenter {
    grid-column-gap: 7rem;
    grid-row-gap: 7rem;
  }

  .width-350 {
    width: 100%;
  }

  .col-space--between {
    align-self: center;
  }

  .col-space--between.align-bot.mob-row--40 {
    grid-column-gap: 10.6667rem;
    grid-row-gap: 10.6667rem;
    align-items: stretch;
  }

  .col-space--between.align-bot.mob-row--40.mob-align--center {
    align-items: center;
  }

  .col-space--between.mob-row--10 {
    grid-column-gap: 2.66667rem;
    grid-row-gap: 2.66667rem;
    flex-flow: column;
  }

  .video-hero {
    width: 37.3333rem;
    height: 37.3333rem;
  }

  .hero-svg {
    display: none;
  }

  .hero-svg.is--mob {
    min-width: 100%;
    margin-bottom: 0;
    margin-left: 0;
    display: block;
  }

  .hero-img__container {
    height: 106.667rem;
  }

  .width-569 {
    width: 100%;
  }

  .count-container {
    grid-column-gap: 10.6667rem;
    grid-row-gap: 10.6667rem;
    justify-content: flex-start;
    align-items: center;
  }

  .count-item {
    text-align: center;
    justify-content: flex-start;
    align-items: center;
    width: auto;
  }

  .count-center, .count-right {
    align-self: auto;
  }

  .row-80 {
    grid-column-gap: 16rem;
    grid-row-gap: 16rem;
  }

  .count-lines__container {
    display: none;
  }

  .section-head {
    grid-column-gap: 5.33333rem;
    grid-row-gap: 5.33333rem;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .swiper.project-slider, .swiper.advantages-swiper, .swiper.project-slider, .swiper.advantages-swiper {
    width: 100%;
  }

  .swiper-wrapper.advantages-wrapper {
    grid-column-gap: 16rem;
    grid-row-gap: 16rem;
    grid-column-gap: 16rem;
    grid-row-gap: 16rem;
    flex-flow: column;
  }

  .swiper-slide.project-item {
    width: 89.3333rem;
    min-width: 89.3333rem;
    max-width: 89.3333rem;
    margin-right: 2.66667rem;
  }

  .swiper-slide.project-item:first-child {
    width: 89.3333rem;
    min-width: 89.3333rem;
    max-width: none;
  }

  .project-image__container {
    height: 106.667rem;
  }

  .project-list__container {
    grid-column-gap: 10.6667rem;
    grid-row-gap: 10.6667rem;
  }

  .project-list__item {
    grid-column-gap: 5.33333rem;
    grid-row-gap: 5.33333rem;
  }

  .width-470 {
    width: 100%;
  }

  .arrow-swiper {
    width: 10.6667rem;
    min-width: 10.6667rem;
  }

  .swiper-nav {
    justify-content: space-between;
  }

  .project-title__container {
    pointer-events: none;
    color: var(--primary-black);
    background-image: none;
    justify-content: flex-start;
    align-items: flex-start;
    height: auto;
    padding-bottom: 5.33333rem;
    position: static;
  }

  .row-20 {
    grid-column-gap: 4.26667rem;
    grid-row-gap: 4.26667rem;
  }

  .project-gallery__container {
    flex-flow: wrap-reverse;
    display: flex;
  }

  .reviews-gird {
    grid-column-gap: 16rem;
    grid-row-gap: 16rem;
    grid-template-rows: auto;
    grid-template-columns: 1fr;
  }

  .row-60 {
    grid-column-gap: 10.6667rem;
    grid-row-gap: 10.6667rem;
  }

  .row-60.mob-row__20 {
    grid-column-gap: 5.33333rem;
    grid-row-gap: 5.33333rem;
    grid-column-gap: 5.33333rem;
    grid-row-gap: 5.33333rem;
  }

  .col-12.col-align--center {
    grid-column-gap: 3.2rem;
    grid-row-gap: 3.2rem;
    grid-column-gap: 3.2rem;
    grid-row-gap: 3.2rem;
  }

  .review-pic {
    width: 12.8rem;
    min-width: 12.8rem;
    height: 12.8rem;
    min-height: 12.8rem;
  }

  .row-40 {
    grid-column-gap: 5.33333rem;
    grid-row-gap: 5.33333rem;
  }

  .footer {
    padding-top: 10.6667rem;
  }

  .footer-img {
    height: 90.9333rem;
    min-height: 90.9333rem;
    display: none;
  }

  .footer-img.is--mob {
    aspect-ratio: auto;
    aspect-ratio: auto;
    height: 100%;
    min-height: auto;
    margin-bottom: 20rem;
  }

  .footer-content {
    grid-column-gap: 10.6667rem;
    grid-row-gap: 10.6667rem;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 16rem 2.66667rem 0;
  }

  .row-16 {
    grid-column-gap: 4.26667rem;
    grid-row-gap: 4.26667rem;
  }

  .icon-24 {
    width: 6.4rem;
    min-width: 6.4rem;
    height: 6.4rem;
    min-height: 6.4rem;
  }

  .col-16 {
    grid-column-gap: 5.33175rem;
    grid-row-gap: 5.33175rem;
  }

  .row-8.copyright {
    bottom: -15rem;
  }

  .footer-nav {
    margin-left: 0;
  }

  .footer-cta {
    display: none;
  }

  .proj-counter--img {
    width: 16rem;
    min-width: 16rem;
  }

  .text-20.text-align--center {
    font-size: var(--_typography---font-size--text-18);
    font-size: var(--_typography---font-size--text-18);
  }

  .counter-block {
    width: 16rem;
    min-width: 16rem;
    height: 16rem;
    min-height: 16rem;
  }

  .about-container {
    width: auto;
  }

  .pavel-image {
    width: 63.4667rem;
    height: 76rem;
  }

  .separator-large {
    width: 6rem;
  }

  .icon-60 {
    width: 16rem;
    min-width: 16rem;
    height: 16rem;
    min-height: 16rem;
  }

  .col-80 {
    grid-column-gap: 16rem;
    grid-row-gap: 16rem;
    flex-flow: wrap-reverse;
  }

  .advantages-image__container {
    width: 100%;
    height: 133.333rem;
    display: none;
  }

  .image-long {
    width: 100%;
  }

  .advantages-navigation {
    margin-top: 5.33333rem;
    display: none;
    position: static;
  }

  .advantage-image__content {
    padding-top: 5.33333rem;
    padding-bottom: 5.33333rem;
  }

  .wdith-500 {
    width: 100%;
  }

  .work-steps__container {
    grid-column-gap: 10.6477rem;
    grid-row-gap: 10.6477rem;
    grid-template-rows: auto;
    grid-template-columns: 1fr;
  }

  .work-step__item {
    grid-column-gap: 5.33333rem;
    grid-row-gap: 5.33333rem;
  }

  .work-step__count {
    width: 16rem;
    min-width: 16rem;
    height: 16rem;
    min-height: 16rem;
  }

  .full-image {
    object-fit: cover;
    object-position: 50% 50%;
  }

  .faq-container {
    grid-column-gap: 10.6667rem;
    grid-row-gap: 10.6667rem;
    width: 100%;
  }

  .faq-dropdown__toggle {
    padding-top: 1.6rem;
    padding-bottom: 1.6rem;
  }

  .faq-dropdown__content {
    padding-top: 4.5rem;
  }

  .col-100 {
    grid-column-gap: 16rem;
    grid-row-gap: 16rem;
    flex-flow: column;
  }

  .map {
    height: 65rem;
  }

  .width-440 {
    width: 100%;
  }

  .h-560 {
    height: 106.667rem;
  }

  .mob-row--40 {
    grid-column-gap: 10.6667rem;
    grid-row-gap: 10.6667rem;
    flex-flow: column;
    display: flex;
  }

  .is--mob {
    display: block;
  }

  .is--mob.line {
    width: 100%;
  }

  .is--pc {
    display: none;
  }

  .mob-col-align--center {
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .burger-icon {
    z-index: 999;
    justify-content: center;
    align-items: center;
    width: 10.6667rem;
    height: 10.6667rem;
    display: flex;
    position: relative;
  }

  .burger-close {
    opacity: 0;
    width: 100%;
    height: 100%;
    position: absolute;
  }

  .burger-open {
    width: 100%;
    height: 100%;
  }

  .mob-h3 {
    font-size: var(--_typography---font-size--h3);
  }
}
