@charset "UTF-8";
@import url(../css/normalize.css);
@import url(../libs/slick/slick.css);
@import url(../libs/slick/slick-theme.css);
@import url(../libs/magnific-popup/magnific-popup.css);
@import url(../css/animate.css);
html {
  scroll-behavior: smooth;
}

body {
  min-width: 320px;
  margin: 0;
  padding: 0;
  font-size: 16px;
  line-height: 24px;
  font-family: "Roboto", Arial, sans-serif;
  color: #333333;
  font-style: normal;
  font-weight: normal;
  background-color: #ffffff;
}

img {
  max-width: 100%;
  height: auto;
}

.visually-hidden:not(:focus):not(:active),
input[type="checkbox"].visually-hidden,
input[type="radio"].visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  white-space: nowrap;
  -webkit-clip-path: inset(100%);
          clip-path: inset(100%);
  clip: rect(0 0 0 0);
  overflow: hidden;
}

.container {
  padding: 0 16px;
}

@media (min-width: 360px) {
  .container {
    margin: 0 auto;
    padding: 0 24px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 960px;
  }
}
@media (min-width: 1168px) {
  .container {
    margin: 0 auto;
    max-width: 1168px;
  }
}
.index-h2 {
  margin: 0;
  font-family: "PT Sans", Arial, sans-serif;
  font-size: 24px;
  line-height: 32px;
  font-weight: 700;
}

@media (min-width: 768px) {
  .index-h2 {
    font-size: 32px;
    line-height: 40px;
  }
}
@media (min-width: 1168px) {
  .index-h2 {
    font-size: 40px;
    line-height: 40px;
  }
}
.button {
  display: inline-block;
  margin: 0 auto;
  font-family: "Roboto", Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.075em;
  text-decoration: none;
  text-transform: uppercase;
  color: #ffffff;
  background-color: #3EC640;
  -webkit-box-shadow: 0px 10px 16px rgba(0, 0, 0, 0.1), 0px 4px 6px rgba(0, 0, 0, 0.06);
          box-shadow: 0px 10px 16px rgba(0, 0, 0, 0.1), 0px 4px 6px rgba(0, 0, 0, 0.06);
  -webkit-transition: background-color 0.1s ease, -webkit-box-shadow 0.2s ease;
  transition: background-color 0.1s ease, -webkit-box-shadow 0.2s ease;
  transition: background-color 0.1s ease, box-shadow 0.2s ease;
  transition: background-color 0.1s ease, box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
  cursor: pointer;
  outline: none;
}
.button:hover {
  background-color: #46E049;
}
.button:active {
  -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.05), 0px 1px 3px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.05), 0px 1px 3px rgba(0, 0, 0, 0.1);
  background-color: #3EC640;
  -webkit-transition: background-color 0.1s ease, -webkit-box-shadow 0.2s ease;
  transition: background-color 0.1s ease, -webkit-box-shadow 0.2s ease;
  transition: background-color 0.1s ease, box-shadow 0.2s ease;
  transition: background-color 0.1s ease, box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
}

.page-header {
  position: relative;
  z-index: 5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 17px;
  height: 56px;
  -webkit-box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.06), 0px 4px 6px rgba(0, 0, 0, 0.06);
          box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.06), 0px 4px 6px rgba(0, 0, 0, 0.06);
}

.page-header__logo-image {
  opacity: 0.75;
}

.page-header__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media (max-width: 767px) {
  .page-header__address,
  .page-header__phone {
    display: none;
  }
}
@media (min-width: 768px) {
  .page-header__wrapper {
    display: block;
  }

  .page-header {
    padding-top: 14px;
    height: auto;
  }

  .page-header__logo-image {
    margin-top: 8px;
    width: 156px;
    height: 36px;
  }

  .page-header__wrapper-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }

  .page-header__info {
    margin-bottom: 14px;
    text-align: right;
    font-weight: 400;
    font-size: 14px;
    line-height: 24px;
    color: #4F4F4F;
  }

  .page-header__address {
    position: relative;
  }
  .page-header__address--pin {
    position: absolute;
    width: 14px;
    height: 14px;
    top: 5px;
    left: -19px;
    background-image: url(../img/icons/pin.svg);
    background-repeat: no-repeat;
    background-position: 0 0;
  }

  .page-header__phone {
    margin-bottom: 4px;
    font-family: "PT Sans", Arial, sans-serif;
    font-size: 18px;
    font-weight: 700;
    position: relative;
    text-align: right;
  }
  .page-header__phone--phone {
    position: absolute;
    width: 12px;
    height: 12px;
    top: 5px;
    left: -21px;
    background-image: url(../img/icons/phone.svg);
    background-repeat: no-repeat;
    background-position: 0 0;
  }
  .page-header__phone--mobile {
    position: absolute;
    width: 13px;
    height: 14px;
    top: 28px;
    left: -12px;
    background-image: url(../img/icons/mobile.svg);
    background-repeat: no-repeat;
    background-position: 0 0;
  }
}
@media (min-width: 1168px) {
  .page-header {
    padding-top: 20px;
  }

  .page-header__info {
    margin-bottom: 20px;
    font-size: 16px;
  }

  .page-header__logo-image {
    width: 208px;
    height: 48px;
    margin-top: 4px;
  }

  .page-header__phone {
    margin-bottom: 8px;
    font-size: 22px;
  }
}
@media (min-width: 1168px) {
  .page-header__logo-image {
    margin: 0;
    margin-top: 4px;
  }
}
@media (max-width: 767px) {
  .main-nav__wrapper {
    background-color: #ffffff;
    position: absolute;
    top: 64px;
    left: 0px;
    width: 100vw;
    height: 0;
    z-index: 2;
    -webkit-box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.35);
            box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.35);
    border-radius: 0 0 4px 4px;
    overflow: hidden;
    -webkit-transition: 0.2s height ease;
    transition: 0.2s height ease;
  }

  .main-nav__overlay-close {
    position: absolute;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100vw;
    display: none;
  }

  #check-menu:checked ~ .main-nav__wrapper {
    height: 92.5vw;
  }

  #check-menu:checked ~ .main-nav__overlay-close {
    display: block;
  }

  .main-nav__hamb-button-wrapper {
    display: block;
    position: relative;
    width: 24px;
    height: 16px;
    padding: 16px;
    margin: -16px;
    margin-top: -8px;
    cursor: pointer;
  }

  .main-nav__hamb-button-line {
    position: absolute;
    width: 24px;
    height: 2px;
    background-color: #333333;
    border-radius: 1px;
    -webkit-transition: 0.4s all cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition: 0.4s all cubic-bezier(0.175, 0.885, 0.32, 1.275);
  }

  .main-nav__hamb-button--first {
    top: 24px;
  }

  .main-nav__hamb-button--second {
    top: 31px;
  }

  .main-nav__hamb-button--third {
    top: 38px;
  }

  #check-menu:checked ~ .main-nav__hamb-button--first {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    top: 31px;
  }

  #check-menu:checked ~ .main-nav__hamb-button--third {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    top: 31px;
  }

  #check-menu:checked ~ .main-nav__hamb-button--second {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transition: 0.2s -webkit-transform ease;
    transition: 0.2s -webkit-transform ease;
    transition: 0.2s transform ease;
    transition: 0.2s transform ease, 0.2s -webkit-transform ease;
  }
}
@media (max-width: 767px) {
  .site-list {
    margin: 0;
    margin-top: 2.5vw;
    margin-bottom: 2.5vw;
    padding: 0;
    list-style: none;
  }

  .site-list__item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 17.5vw;
    width: 100vw;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: inherit;
    text-decoration: none;
    font-size: 5vw;
    line-height: 7.5vw;
    color: inherit;
  }

  .site-list__item {
    position: relative;
  }
  .site-list__item::after {
    content: "";
    position: absolute;
    bottom: 0;
    height: 1px;
    left: 16px;
    right: 16px;
    background-color: #E0E0E0;
  }
  .site-list__item:last-child::after {
    opacity: 0;
  }
}
@media (min-width: 768px) {
  .site-list {
    padding: 0;
    margin: 0;
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }

  .site-list__item a {
    display: block;
    padding-left: 8px;
    padding-right: 8px;
    padding-top: 12px;
    padding-bottom: 12px;
    text-decoration: none;
    font-size: 18px;
    line-height: 32px;
    color: inherit;
    opacity: 0.6;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
  }
  .site-list__item a:hover {
    opacity: 1;
  }

  .site-list__item--active a {
    opacity: 1;
  }

  .site-list__item--active {
    position: relative;
  }
  .site-list__item--active::before {
    content: "";
    position: absolute;
    bottom: 0px;
    left: 16px;
    right: 16px;
    height: 4px;
    border-radius: 4px 4px 0 0;
    background: #3EC640;
  }
}
@media (min-width: 1168px) {
  .site-list__item a {
    padding-top: 16px;
    padding-bottom: 16px;
  }
}
.welcome__col-1 {
  position: relative;
  padding-top: 32px;
  padding-bottom: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  background: linear-gradient(40.12deg, rgba(85, 242, 167, 0.25) 0%, rgba(148, 255, 64, 0.25) 100%);
}

.welcome__button {
  position: relative;
  margin: 0 auto 32px;
  padding: 21px 47px;
  background: #3EC640;
  border-radius: 32px;
}
.welcome__button:hover {
  background: #46E049;
}
.welcome__button--desktop {
  display: none;
}

.welcome {
  text-align: center;
  margin-bottom: 16px;
}

.welcome__image {
  height: 52.5vw;
  background-size: cover;
  background-image: url("../img/welcome-bg-2.jpg");
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.welcome__intro {
  font-family: "PT Sans", Arial, sans-serif;
  position: relative;
  z-index: 1;
  margin-bottom: 32px;
  display: block;
  text-align: center;
  font-size: 9.375vw;
  font-weight: 700;
  line-height: 11.25vw;
}

.welcome__arrow-button {
  display: block;
  position: relative;
  width: 48px;
  height: 48px;
  margin: 0 auto;
}
.welcome__arrow-button::before {
  content: "";
  position: absolute;
  width: 24px;
  height: 24px;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  border-bottom: 2px solid #333333;
  border-right: 2px solid #333333;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media (min-width: 480px) {
  .welcome {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }

  .welcome__col-1 {
    width: 60%;
    padding-top: 72px;
    padding-bottom: 48px;
  }

  .welcome__image {
    height: auto;
    width: 40%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }

  .welcome__wrapper {
    display: inline-block;
    text-align: left;
  }

  .welcome__intro {
    display: block;
    margin-bottom: 36px;
    font-size: 28px;
    line-height: 32px;
    text-align: left;
  }

  .welcome__arrow-button {
    display: none;
  }
}
@media (min-width: 640px) {
  .welcome__col-1 {
    width: 53.1%;
  }

  .welcome__image {
    width: 46.9%;
  }
}
@media (min-width: 768px) {
  .welcome {
    margin-bottom: 32px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }

  .welcome__arrow-button {
    display: none;
  }

  .welcome__wrapper {
    display: inline-block;
    text-align: left;
  }

  .welcome__image {
    height: auto;
    width: 46.9%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }

  .welcome__button {
    margin: 0;
    padding: 21px 47px;
    border-radius: 28px;
  }

  .welcome__col-1 {
    margin: 0;
    padding: 0;
    padding-top: 96px;
    padding-bottom: 80px;
    width: 53.1%;
    height: auto;
    text-align: center;
  }

  .welcome__intro {
    display: block;
    margin-bottom: 36px;
    font-size: 38px;
    line-height: 44px;
    text-align: left;
  }
}
@media (min-width: 1168px) {
  .welcome {
    margin-bottom: 48px;
  }

  .welcome__wrapper {
    margin-right: 88px;
  }

  .welcome__col-1 {
    padding-top: 128px;
    padding-bottom: 120px;
    width: 52.2%;
    text-align: right;
  }

  .welcome__image {
    width: 47.8%;
  }

  .welcome__intro {
    margin-bottom: 60px;
    font-size: 54px;
    line-height: 60px;
    text-align: left;
  }

  .welcome__button {
    padding: 25px 49px;
    border-radius: 32px;
  }
  .welcome__button--mobile {
    display: none;
  }
  .welcome__button--desktop {
    display: inline-block;
  }
}
.tab-nav {
  overflow: hidden;
  position: relative;
}

.tab-nav__list {
  position: relative;
  list-style: none;
  padding-bottom: 48px;
  margin-bottom: -48px;
  margin-top: 16px;
  white-space: nowrap;
  overflow-x: scroll;
}
.tab-nav__list::after {
  content: "";
  position: absolute;
  top: 47px;
  width: 740px;
  left: 16px;
  height: 1px;
  background-color: #bdbdbd;
}

.tab-nav__tab {
  position: relative;
  display: block;
  padding: 0 24px;
  white-space: nowrap;
  line-height: 48px;
  opacity: 0.6;
  cursor: pointer;
}

.tab-nav__tab--current {
  opacity: 1;
}
.tab-nav__tab--current::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10;
  height: 4px;
  background: #3EC640;
  border-radius: 3px 3px 0 0;
  -webkit-animation: fadeIn 0.3s;
          animation: fadeIn 0.3s;
}

.tab-nav__item {
  display: inline-block;
}

.portfolio__gallery {
  display: none;
}

.gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
  -webkit-animation: fadeIn 0.4s;
          animation: fadeIn 0.4s;
}

.gallery__item img {
  border-radius: 4px 4px 0px 0px;
  width: 100%;
}

.gallery__card {
  display: block;
  position: relative;
  width: 268px;
  height: 200px;
  color: #ffffff;
  text-decoration: none;
  white-space: nowrap;
  border-radius: 4px;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-filter: grayscale(0.65);
          filter: grayscale(0.65);
  white-space: normal;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.gallery__card h3, .gallery__card .gallery__card-about {
  position: absolute;
  bottom: 0;
  margin: 0 16px 8px;
  font-size: 14px;
  font-weight: 400;
  -webkit-transition: opacity 0.1s;
  transition: opacity 0.1s;
}
.gallery__card h3 {
  -webkit-transition-delay: 0.03s;
          transition-delay: 0.03s;
}
.gallery__card a {
  margin: 0;
}
.gallery__card::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 96px;
  left: 0;
  bottom: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.75)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%);
  border-radius: 0 0 4px 4px;
}

.gallery__card-about {
  opacity: 0;
}

.gallery__button-wrapper {
  margin: 0;
  padding-right: 16px;
  padding-bottom: 16px;
  font-size: 14px;
  line-height: 16px;
  text-align: right;
}

.gallery__button {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  color: #3EC640;
}

.portfolio__gallery-wrapper {
  position: relative;
  margin-bottom: -48px;
  padding-bottom: 48px;
  padding-right: 0;
}

.portfolio__scroll-hider {
  overflow: hidden;
}

.gallery__item {
  margin-right: 16px;
  margin-top: 24px;
}

.slick-slide {
  outline: none;
}

@media (max-width: 767px) {
  .portfolio {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 48px;
  }

  .portfolio__title {
    padding-top: 16px;
  }

  .portfolio__text {
    display: none;
    color: #4f4f4f;
  }

  .portfolio__toggles {
    display: none;
  }
}
@media (min-width: 360px) {
  .tab-nav__list::after {
    left: 24px;
  }
}
@media (min-width: 768px) {
  .portfolio {
    margin-bottom: 72px;
  }

  .portfolio__title {
    padding-top: 16px;
    margin-bottom: 16px;
  }

  .portfolio__text {
    margin: 0;
    margin-bottom: 16px;
  }

  .tab-nav__list {
    margin-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    overflow-x: visible;
  }
  .tab-nav__list::after {
    width: auto;
    right: 24px;
  }

  .tab-nav__item {
    margin: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    text-align: center;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
  }

  .tab-nav__tab {
    margin: 0;
    padding: 0;
    width: 100%;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
  }

  .gallery__item {
    cursor: pointer;
  }
}
@media (min-width: 960px) {
  .portfolio__scroll-hider {
    margin: 0 auto;
    position: relative;
    max-width: 932px;
  }

  .portfolio__gallery-wrapper {
    padding-left: 48px;
    padding-right: 32px;
  }

  .portfolio__gallery::after {
    content: "";
    position: absolute;
    width: 24px;
    height: 100%;
    background-color: #ffffff;
    top: 0;
    right: -8px;
  }

  .arrows-container {
    display: none;
    position: absolute;
    left: 50%;
    margin-left: calc(-100% / 2);
    width: 100%;
    height: 100%;
  }

  .arrows-wrapper {
    display: block;
    position: absolute;
    height: 100%;
    width: 48px;
    z-index: 5;
    background-color: #ffffff;
  }
  .arrows-wrapper--right {
    right: 0;
  }
  .arrows-wrapper--left {
    left: 0;
  }

  .arrow {
    position: absolute;
    height: 48px;
    width: 48px;
    top: 99px;
    z-index: 10;
    background-color: #ffffff;
    border-radius: 50%;
    -webkit-box-shadow: 0px 10px 16px rgba(0, 0, 0, 0.1), 0px 2px 8px rgba(0, 0, 0, 0.2);
            box-shadow: 0px 10px 16px rgba(0, 0, 0, 0.1), 0px 2px 8px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    -webkit-transition: -webkit-transform 0.15s ease;
    transition: -webkit-transform 0.15s ease;
    transition: transform 0.15s ease;
    transition: transform 0.15s ease, -webkit-transform 0.15s ease;
  }
  .arrow::before {
    content: "";
    position: absolute;
    top: 16px;
    left: 16px;
    width: 16px;
    height: 16px;
    background-image: url("../img/icons/arrow.svg");
  }
  .arrow--left {
    left: -24px;
    -webkit-transform: scale(-1, 1);
            transform: scale(-1, 1);
  }
  .arrow--left:hover {
    -webkit-transform: scale(-1.11, 1.11);
            transform: scale(-1.11, 1.11);
  }
  .arrow--right {
    right: -8px;
  }
  .arrow--right:hover {
    -webkit-transform: scale(1.11);
            transform: scale(1.11);
  }

  .slick-disabled {
    opacity: 0;
    cursor: default;
  }

  .gallery__card:hover {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px);
    -webkit-filter: grayscale(0);
            filter: grayscale(0);
    -webkit-transition: -webkit-transform 0.2s ease;
    transition: -webkit-transform 0.2s ease;
    transition: transform 0.2s ease;
    transition: transform 0.2s ease, -webkit-transform 0.2s ease;
    cursor: -webkit-zoom-in;
    cursor: zoom-in;
  }
}
@media (min-width: 1168px) {
  .portfolio {
    margin-bottom: 96px;
  }

  .portfolio__title {
    margin-bottom: 24px;
  }

  .portfolio__text {
    margin-bottom: 24px;
  }

  .portfolio__gallery-wrapper {
    margin: 0 auto -48px;
    padding-left: 24px;
    padding-right: 8px;
  }

  .tab-nav::after {
    margin: 0 24px;
  }

  .tab-nav__tab {
    font-size: 18px;
  }
  .tab-nav__tab:hover {
    opacity: 1;
    background: rgba(62, 198, 64, 0.15);
    border-radius: 4px;
  }
  .tab-nav__tab:active {
    background: rgba(62, 198, 64, 0.3);
  }
  .tab-nav__tab--current:hover {
    cursor: default;
    background-color: inherit;
  }

  .gallery__item {
    margin-top: 32px;
  }

  .portfolio__scroll-hider {
    max-width: 1216px;
  }

  .arrow {
    top: 107px;
  }
}
.advantages {
  height: 147.5vw;
  margin-bottom: 56px;
}

.advantages__list {
  padding: 0;
  margin: 0;
  padding-top: 10vw;
  padding-bottom: 12.5vw;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: inherit;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.advantages__item {
  position: relative;
  margin-left: 52.5vw;
  font-size: 5.625vw;
  line-height: 7.5vw;
}
.advantages__item::after {
  content: "";
  position: absolute;
  width: 42.5vw;
  height: 2.5vw;
  background: -webkit-gradient(linear, left top, right top, from(#17BF6F), to(#64CC12));
  background: linear-gradient(90deg, #17BF6F 0%, #64CC12 100%);
  top: 17.5vw;
  left: 0vw;
}

.advantages__item--measure {
  position: relative;
}
.advantages__item--measure::before {
  content: "";
  position: absolute;
  width: 37.5vw;
  height: 37.5vw;
  top: -10vw;
  left: -47.5vw;
  background-image: url("../img/tape.svg");
}

.advantages__item--delivery {
  position: relative;
}
.advantages__item--delivery::before {
  content: "";
  position: absolute;
  width: 37.5vw;
  height: 37.5vw;
  top: -10vw;
  left: -47.5vw;
  background-image: url("../img/truck.svg");
}

.advantages__item--install {
  position: relative;
}
.advantages__item--install::before {
  content: "";
  position: absolute;
  width: 37.5vw;
  height: 37.5vw;
  top: -10vw;
  left: -47.5vw;
  background-image: url("../img/kitchen.svg");
}

.process {
  padding-bottom: 52px;
}

.process__item-number {
  display: none;
}

.process__title {
  margin-bottom: 24px;
}

.process__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.process__item {
  position: relative;
}

.process__item h3 {
  margin: 0;
  padding: 0;
  margin-bottom: 4px;
  margin-top: 20px;
  font-family: "PT Sans", Arial, sans-serif;
  font-size: 20px;
  line-height: 32px;
  font-weight: 700;
}
.process__item h3:nth-child(1) {
  margin-top: 24px;
}

.process__item p {
  margin: 0;
  color: #4f4f4f;
}
.process__item p a {
  color: inherit;
}

@media (min-width: 768px) {
  .process__list {
    padding: 0;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }

  .process__item-number {
    display: block;
    position: absolute;
    top: 28px;
    left: 0px;
    font-family: "PT Sans", Arial, sans-serif;
    font-weight: 700;
    font-size: 48px;
    line-height: 48px;
    opacity: 0.4;
    color: #3EC640;
  }

  .process__title {
    margin: 0;
    margin-bottom: 4px;
  }

  .process__item {
    -ms-flex-preferred-size: 320px;
        flex-basis: 320px;
    max-width: 400px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    font-size: 20px;
    line-height: 32px;
    font-weight: 700;
  }
  .process__item:nth-child(1), .process__item:nth-child(3) {
    padding-right: 32px;
  }
  .process__item:last-child {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }

  .process__item h3 {
    margin: 0;
    margin-top: 84px;
    margin-bottom: 12px;
    font-size: 28px;
    line-height: 32px;
    font-weight: 700;
  }

  .process__item p {
    margin: 0;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
  }
}
@media (min-width: 1168px) {
  .process__title {
    margin-bottom: 20px;
  }

  .process__list {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }

  .process__item h3 {
    margin-bottom: 12px;
    font-size: 28px;
  }

  .process__item {
    padding: 0;
    margin-right: 64px;
    max-width: 320px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .process__item:nth-child(3) {
    margin-right: 0;
  }
}
.request {
  background: #ededed;
  padding-top: 24px;
  padding-bottom: 16px;
}

.request__wrapper {
  text-align: center;
}

.request__title {
  margin-bottom: 16px;
}

.request__text {
  margin: 0;
  margin-bottom: 24px;
  color: #4f4f4f;
}

.request__form-input {
  position: relative;
  margin: 0;
  margin-bottom: 16px;
}
.request__form-input--error::after {
  content: "Поле не заполнено";
  position: absolute;
  top: 48px;
  left: 18px;
  font-size: 12px;
  line-height: 16px;
  color: #CC4C4C;
}

.form-input--phone {
  margin-bottom: 32px;
}

.request__form input {
  padding: 12px 16px;
  font-size: 16px;
  line-height: 24px;
  height: 48px;
  width: 100%;
  background: #FFFFFF;
  border: 1px solid #E0E0E0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 6px;
  outline: none;
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
}
.request__form input:hover {
  border-color: #828282;
}
.request__form input:active, .request__form input:focus {
  border: #3EC640 solid 2px;
  padding-left: 15px;
}
.request__form .input-error {
  border-color: #D95050;
}

.request__button {
  display: inline-block;
  margin: 0 auto 24px;
  padding: 21px 50px;
  color: #ffffff;
  border: none;
  border-radius: 32px;
}

.request__text-write {
  margin: 0;
  margin-bottom: 24px;
  text-align: center;
  font-size: 14px;
  line-height: 24px;
  color: #4f4f4f;
}

.request__social-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 176px;
  list-style: none;
  padding: 0;
  margin: 0 auto;
}

.request__note {
  margin: 0;
  margin-top: 16px;
  color: #4f4f4f;
  text-align: center;
  font-size: 12px;
  line-height: 16px;
}
.request__note a {
  color: #4f4f4f;
}

.request__thanks {
  display: none;
  margin-top: 72px;
  margin-bottom: 64px;
}

.thanks-note {
  display: block;
  font-family: "PT Sans", Arial, sans-serif;
  font-size: 40px;
  line-height: 40px;
  margin-bottom: 32px;
}

.thanks-text {
  margin: 0;
}

.request__button--new {
  display: none;
  width: 244px;
}

@media (min-width: 768px) {
  .request {
    padding-top: 24px;
    padding-bottom: 28px;
  }

  .request__title {
    margin-bottom: 16px;
  }

  .request__text {
    margin-bottom: 24px;
  }

  .request__form-input {
    margin-bottom: 24px;
  }

  .request__form input {
    width: 448px;
  }

  .request__button {
    margin: 0;
    padding: 21px 44px;
    border-radius: 28px;
  }

  .request__text-write {
    text-align: left;
    margin: auto 54px;
    font-size: 16px;
  }

  .request__social-list {
    margin: auto 0;
  }

  .request__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 32px;
    margin-bottom: 24px;
    vertical-align: middle;
  }

  .request__note {
    margin: 0;
    font-size: 14px;
    line-height: 20px;
    text-align: left;
  }
  .request__note br {
    display: none;
  }

  .thanks-note {
    font-size: 48px;
    line-height: 48px;
  }

  .thanks-text {
    width: 448px;
  }

  .request__thanks {
    margin-bottom: 56px;
  }

  .request__button--new {
    width: 232px;
  }
}
@media (min-width: 1168px) {
  .request {
    padding-top: 40px;
    padding-bottom: 52px;
  }

  .request__title {
    margin-bottom: 24px;
  }

  .request__text {
    margin-bottom: 32px;
  }

  .request__wrapper {
    margin-bottom: 24px;
  }

  .request__thanks {
    margin-bottom: 64px;
  }

  .thanks-note {
    font-size: 56px;
    line-height: 56px;
  }
}
.contacts {
  padding-top: 32px;
}
.contacts iframe {
  margin-top: 8px;
}

.contacts__appeal {
  margin: 0;
  margin-bottom: 16px;
  font-weight: 300;
}

.contacts__title {
  margin-bottom: 16px;
}

.contacts__subtitle {
  margin: 0;
  margin-bottom: 8px;
  font-family: "PT Sans", Arial, sans-serif;
  font-size: 18px;
  line-height: 24px;
  font-weight: 700;
}

.contacts__text {
  margin: 0;
  margin-bottom: 24px;
  line-height: 28px;
}

.contacts__office, .contacts__shedule {
  -ms-flex-preferred-size: 200px;
      flex-basis: 200px;
  margin-right: 32px;
}

.contacts__phone {
  -ms-flex-preferred-size: 168px;
      flex-basis: 168px;
}
.contacts__phone .contacts__text {
  margin-bottom: 4px;
}

@media (min-width: 680px) {
  .contacts__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media (min-width: 768px) {
  .contacts__title {
    margin-bottom: 16px;
  }

  .contacts__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 24px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }

  .contacts__subtitle {
    margin: 0;
    margin-bottom: 8px;
  }

  .contacts__text {
    margin: 0;
  }

  .contacts iframe {
    margin: 0;
    height: 400px;
  }
}
@media (min-width: 1168px) {
  .contacts {
    padding-top: 48px;
    margin: 0 auto;
    max-width: 1168px;
  }

  .contacts__title {
    margin-bottom: 24px;
  }

  .contacts__subtitle {
    font-size: 20px;
    line-height: 32px;
    font-weight: 700;
  }

  .contacts__appeal {
    margin-bottom: 32px;
  }

  .contacts__text {
    margin-bottom: 32px;
  }

  .contacts__container {
    padding: 0 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .contacts__container iframe {
    width: 640px;
    height: 480px;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-right: 48px;
  }

  .contacts__wrapper {
    margin: 0;
    padding: 0;
    display: block;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }

  .contacts__office {
    margin-right: 0;
  }

  .contacts__shedule {
    margin-right: 0;
  }

  .contacts__phone .contacts__text {
    margin-bottom: 8px;
  }
}
.page-footer {
  margin-top: -8px;
  padding-top: 24px;
  padding-bottom: 16px;
  background-color: #1a1a1a;
}

.page-footer__text {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  color: #828282;
  text-align: center;
}

.page-footer .social-list {
  margin-bottom: 16px;
}

.page-footer .social-list__item-link {
  background-color: #333333;
}

@media (min-width: 768px) {
  .page-footer .social-list {
    margin: 0 auto 16px;
  }
}
@media (min-width: 1168px) {
  .page-footer {
    margin-top: 48px;
  }
}
.social-list__item {
  width: 48px;
  height: 48px;
}

.social-list__item-link {
  display: inline-block;
  height: 48px;
  width: 48px;
  background-color: #4f4f4f;
  border-radius: 50%;
  -webkit-transition: background-color 0.1s ease;
  transition: background-color 0.1s ease;
}

.social-list__item--whatsapp svg {
  margin: 20%;
  width: 60%;
  height: 60%;
  fill: #e2e2e2;
}

.social-list__item--telegram svg {
  margin: 20% 22.5% 22.5% 20%;
  width: 57.5%;
  height: 57.5%;
  fill: #e2e2e2;
}

.social-list__item--vk svg {
  margin: 20% 17.5% 15%;
  width: 65%;
  height: 65%;
  fill: #e2e2e2;
}

.social-list__item--whatsapp:hover, .social-list__item--whatsapp:active {
  background-color: #25D366;
}
.social-list__item--whatsapp:hover, .social-list__item--whatsapp:active ~ .social-list__item--whatsapp svg {
  fill: #ffffff;
}

.social-list__item--telegram:hover, .social-list__item--telegram:active {
  background-color: #0088cc;
}
.social-list__item--telegram:hover, .social-list__item--telegram:active ~ .social-list__item--telegram svg {
  fill: #ffffff;
}

.social-list__item--vk:hover, .social-list__item--vk:active {
  background-color: #45668e;
}
.social-list__item--vk:hover, .social-list__item--vk:active ~ .social-list__item--vk svg {
  fill: #ffffff;
}

.technologies {
  position: relative;
  margin-bottom: 32px;
  padding-top: 24px;
  padding-bottom: 32px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-image: url("../img/technologies-image.jpg");
  background-size: auto 100%;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}
.technologies::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: #000000;
  width: 100%;
  height: 100%;
  opacity: 0.4;
}

.technologies__title {
  position: relative;
  margin-left: 12px;
  margin-bottom: 32px;
  color: #ffffff;
  text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.5);
  z-index: 5;
}

.technologies__text {
  position: relative;
  margin-left: 36px;
  margin-right: 16px;
  margin-bottom: 32px;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.75);
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.008em;
  color: #ffffff;
  z-index: 5;
}
.technologies__text--4 {
  margin-bottom: 0;
}

.technologies__dot {
  position: absolute;
  height: 16px;
  width: 16px;
  background-image: url("../img/icons/dot.svg");
  background-repeat: no-repeat;
  background-position: center;
  left: -21px;
  top: 3px;
  opacity: 0.8;
}

@media (min-width: 360px) {
  .technologies__text {
    margin-right: 24px;
  }
}
@media (min-width: 768px) {
  .technologies {
    margin-top: 0;
    padding: 0;
    height: 552px;
    background-image: url("../img/technologies-image-tablet.jpg");
  }
  .technologies::before {
    display: none;
  }

  .technologies__image {
    position: relative;
    height: 100%;
    margin: 0 auto;
    margin-top: -72px;
    width: 720px;
  }

  .technologies__title {
    margin: 0 auto;
    padding-top: 32px;
  }

  .technologies__text {
    position: absolute;
    margin: 0;
  }
  .technologies__text--1 {
    width: 312px;
    height: 72px;
    top: 34.8%;
    left: 3.1%;
  }
  .technologies__text--2 {
    width: 320px;
    height: 72px;
    top: 34.8%;
    right: 0;
  }
  .technologies__text--3 {
    width: 256px;
    height: 72px;
    top: 69.6%;
    left: 10.4%;
  }
  .technologies__text--4 {
    width: 272px;
    height: 72px;
    top: 69.6%;
    right: 0;
  }

  .technologies__dot {
    position: absolute;
    height: 16px;
    width: 16px;
    background-image: url("../img/icons/dot.svg");
    background-repeat: no-repeat;
  }
  .technologies__dot--1 {
    top: -16px;
    left: -16px;
  }
  .technologies__dot--2 {
    top: 72px;
    left: -16px;
  }
  .technologies__dot--3 {
    top: -16px;
    left: -16px;
  }
  .technologies__dot--4 {
    top: -16px;
    left: -16px;
  }
}
@media (min-width: 1168px) {
  .technologies {
    background-image: url("../img/technologies-image.jpg");
    background-size: 1120px auto;
    margin-bottom: 80px;
  }
  .technologies::before {
    display: block;
    position: absolute;
    content: "";
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: -webkit-gradient(linear, left top, right top, from(rgba(85, 242, 167, 0.25)), to(rgba(148, 255, 64, 0.25)));
    background: linear-gradient(90deg, rgba(85, 242, 167, 0.25) 0%, rgba(148, 255, 64, 0.25) 100%);
    opacity: 1;
  }

  .technologies__image {
    width: 1120px;
  }

  .technologies__title {
    padding-left: 120px;
  }

  .technologies__text--1 {
    left: 17.9%;
  }
  .technologies__text--2, .technologies__text--4 {
    right: 15.7%;
  }
  .technologies__text--3 {
    left: 21.4%;
  }
}
.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 500;
}
.modal .arrows-container {
  height: 48px;
  top: calc(50% - 24px);
}
.modal .arrow {
  top: 0;
}

.modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
}

.arrows-wrapper--modal {
  background: none;
}

.modal__catalog-item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 1120px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.catalog-item__col-1 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.catalog-item__col-1 img {
  border-radius: 4px 0 0 4px;
  vertical-align: bottom;
}

.catalog-item__col-2 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 32px;
  width: 384px;
  background-color: #ffffff;
  border-radius: 0 4px 4px 0;
}
.catalog-item__col-2 h3 {
  margin: 0;
  margin-bottom: 40px;
  font-family: "PT Sans", Arial, sans-serif;
  font-size: 28px;
  line-height: 32px;
  font-weight: 700;
}

.catalog-item__info {
  border-collapse: collapse;
  margin: 0;
  padding: 0;
  width: 320px;
  line-height: 32px;
}
.catalog-item__info tbody th {
  width: 192px;
  text-align: left;
  font-weight: 400;
}
.catalog-item__info tbody td {
  width: 128px;
  font-weight: 700;
}

.scroll-hidden {
  overflow: hidden;
}

.wow {
  visibility: hidden;
}

.display--none {
  display: none;
}

.display--block {
  display: block;
  opacity: 0;
  -webkit-animation: fadeIn 0.4s forwards;
          animation: fadeIn 0.4s forwards;
}

.display--inline-block {
  display: inline-block;
}

/*# sourceMappingURL=style.css.map */