/* === Banner hover shift settings === */
.banner__inner{
  /* desktop значения (меняй как надо) */
  --banner-shift-left: -80px;   /* остальные влево */
  --banner-shift-right: 80px;   /* img3 вправо */
  --banner-shift-duration: 650ms;
  --banner-shift-ease: cubic-bezier(.2,.8,.2,1);
}

/* mobile значения */
@media (max-width: 768px){
  .banner__inner{
    --banner-shift-left: -14px;
    --banner-shift-right: 28px;
    --banner-shift-duration: 520ms;
  }
}

/* базовое состояние картинок */
.banner__inner .banner__img{
  transform: translate3d(0,0,0);
  transition: transform var(--banner-shift-duration) var(--banner-shift-ease);
  will-change: transform;
}

/* hover (и класс для touch) — все влево */
.banner__inner:hover .banner__img,
.banner__inner.is-hover .banner__img{
  transform: translate3d(var(--banner-shift-left),0,0);
}

/* img3 — вправо */
.banner__inner:hover .banner__img3,
.banner__inner.is-hover .banner__img3{
  transform: translate3d(var(--banner-shift-right),0,0);
}

/* уважение reduced motion */
@media (prefers-reduced-motion: reduce){
  .banner__inner .banner__img{ transition: none; }
}



.gallery__inner{
  --g-caption-width: 514px;     /* фикс ширина плашки на десктопе */
  --g-caption-delay: 300ms;     /* = времени transition flex */
  --g-caption-fade: 180ms;
}

/* на мобиле обычно ширина 100% и можно убрать задержку */
@media (max-width: 768px){
  .gallery__inner{
    --g-caption-width: calc(100% - 40px);
    --g-caption-delay: 0ms;
  }
}

/* важно: чтобы плашка не “сжималась” вместе с item */
.gallery__item{
  position: relative;
}

/* плашка */
.gallery__item__text{
  position: absolute;
  left: 0;
  bottom: 30px;

  width: var(--g-caption-width);
  max-width: calc(100% - 40px); /* чтобы не вылезало на узких экранах */

  padding: 26px;
  background: #000;
  color: #fff;

  font-weight: 900;
  font-size: 26px;
  line-height: 130%;
  text-transform: uppercase;

  /* скрыта по умолчанию */
  opacity: 0;
  transform: translateY(6px);
  transition:
    opacity var(--g-caption-fade) ease,
    transform var(--g-caption-fade) ease;
}

/* показываем ТОЛЬКО у active и с задержкой, чтобы не было рефлоу во время расширения */
.gallery__item.active .gallery__item__text{
  opacity: 1;
  transform: translateY(0);
  transition-delay: var(--g-caption-delay);
}

/* когда снимаем active — убираем сразу, без задержки */
.gallery__item:not(.active) .gallery__item__text{
  transition-delay: 0ms;
}



/* === PIN (desktop) === */
/* === PIN (v2): без перекрытия предыдущего === */
#online { position: relative; }
#online .online-pin-wrap { position: relative; }

/* sticky срабатывает только когда секция дошла до верха вьюпорта */
#online .online-pin-sticky{
  position: sticky;
  top: 0;
  height: 100vh;              /* вся высота экрана */
  display: flex;
  align-items: center;        /* контент по центру */
  z-index: 3;
}

/* мобила — без pin */
@media (max-width: 768px){
  #online .online-pin-sticky{
    position: static;
    height: auto;
    display: block;
  }
}

/* === ТЕКСТ: Fade + плавный “переезд” описания === */
.online__info .js-online-title,
.online__info .js-online-text{
  transition: opacity 220ms ease, transform 220ms ease;
  will-change: opacity, transform;
}

.online__info.is-fade .js-online-title,
.online__info.is-fade .js-online-text{
  opacity: 0;
  transform: translateY(8px);
}

/* контейнер описания — сюда делаем FLIP translate */
.online__info .js-online-desc{
  will-change: transform;
  transition: transform 420ms cubic-bezier(.2,.8,.2,1);
}

/* убираем старый фон, чтобы не было “лишней” картинки */
.online__img{
  position: relative;
  background: none !important;
  overflow: visible !important;
}

/* никакой маски/обрезки */
.online__inner,
.online__img,
.online__stack{
  overflow: visible !important;
}



/* стек живёт только в области картинки */
.online__stack{
  position: absolute;
  inset: 0;
  overflow: visible !important;
  pointer-events: none;
  z-index: 1;
}

/* текст всегда поверх и справа */
.online__info{
  position: relative;
  z-index: 2;
}


/* насколько далеко летит карточка снизу (настройка) */
#online{
  --online-fly-distance: 180vh; /* было мало — увеличили */
}

@media (max-width: 768px){
  #online{ --online-fly-distance: 140vh; }
}

/* карточка */
.online-card{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;

  transform: translate3d(var(--x,0px), var(--y,0px), 0) rotate(var(--r,0deg));
  opacity: 1;

  box-shadow: 0 24px 60px rgba(0,0,0,.35);
  will-change: transform, opacity;
}

/* вход */
.online-card.is-enter{
  animation: onlineCardEnter 820ms cubic-bezier(.2,.8,.2,1) both;
}
@keyframes onlineCardEnter{
  from{
    opacity: 0;
    transform: translate3d(0, var(--online-fly-distance), 0) rotate(0deg);
  }
  to{
    opacity: 1;
    transform: translate3d(var(--x,0px), var(--y,0px), 0) rotate(var(--r,0deg));
  }
}

/* выход (когда скроллим назад) */
.online-card.is-exit{
  animation: onlineCardExit 520ms cubic-bezier(.2,.8,.2,1) both;
}
@keyframes onlineCardExit{
  from{
    opacity: 1;
    transform: translate3d(var(--x,0px), var(--y,0px), 0) rotate(var(--r,0deg));
  }
  to{
    opacity: 0;
    transform: translate3d(0, var(--online-fly-distance), 0) rotate(0deg);
  }
}


/* стрелки — только моб */
.online-arrow{ display: none !important; }
@media (max-width: 768px){
  .online-arrow{ display: flex !important; }
}

/* уважение reduced motion */
@media (prefers-reduced-motion: reduce){
  #online .online-pin-sticky{ position: static; transform: none; }
  .online-card, .online__info .js-online-desc,
  .online__info .js-online-title, .online__info .js-online-text{
    transition: none !important;
    animation: none !important;
  }
}




.offer__video{
  position: relative;
 /* overflow: hidden; */
}

/* видео фоном */
.offer__bgvideo{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
  opacity: 0;                 /* до старта скрыто */
  transition: opacity .35s ease;
}

/* постер-картинка поверх, пока видео не играет */
.offer__video > img{
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: opacity .35s ease;
}

/* контент поверх всего */
.offer__items{
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 3;
}

/* когда видео запущено — показываем видео, прячем img */
.offer__video.is-playing .offer__bgvideo{ opacity: 1; }
.offer__video.is-playing > img{ opacity: 0; }







#benefits{
  --benefits-fly-distance: 140vh;
  --benefits-fly-duration: 1200ms;  /* было быстро */
  --benefits-back-duration: 900ms;  /* возврат тоже плавнее */
}

#benefits .benefits-pin-wrap{ position: relative; }
#benefits .benefits-pin-sticky{
  position: sticky;
  top: 0;
  height: 100vh;                 /* “остановка” на экране */
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}

/* на мобиле лучше не пинить */
@media (max-width: 768px){
  #benefits .benefits-pin-sticky{
    position: static;
    height: auto;
    display: block;
  }
}

/* ===== анимации ===== */
#benefits .benefits__sticker{
  will-change: transform, opacity;
  transform: translate3d(0,0,0) rotate(0deg);
  opacity: 1;
}

/* улёт */
#benefits .benefits__sticker.is-fly{
  animation: benefitsFly var(--benefits-fly-duration) cubic-bezier(.2,.8,.2,1) both;
}

#benefits .benefits__sticker.is-back{
  animation: benefitsBack var(--benefits-back-duration) cubic-bezier(.2,.8,.2,1) both;
}

/* полностью скрытая (после улёта) */
#benefits .benefits__sticker.is-gone{
  opacity: 0;
  pointer-events: none;
}




/* === BENEFITS SPEED OVERRIDE (ставь в конец promo.css) === */
#benefits{
  --benefits-fly-distance: 90vh;     /* было 140vh -> меньше, выглядит естественнее */
  --benefits-fly-duration: 1400ms;   /* нормальная длительность */
  --benefits-back-duration: 900ms;
}

#benefits .benefits__sticker.is-fly{
  animation: benefitsFly var(--benefits-fly-duration) cubic-bezier(.12,.8,.2,1) both !important;
}
#benefits .benefits__sticker.is-back{
  animation: benefitsBack var(--benefits-back-duration) cubic-bezier(.12,.8,.2,1) both !important;
}


/* opacity не сразу! */
@keyframes benefitsFly{
  0%{
    opacity: 1;
    transform: translate3d(0,0,0) rotate(0deg);
  }
  60%{
    opacity: 1; /* держим видимой большую часть полёта */
  }
  100%{
    opacity: 0;
    transform:
      translate3d(var(--fly-x, 0px), calc(-1 * var(--benefits-fly-distance)), 0)
      rotate(var(--fly-r, -6deg));
  }
}

@keyframes benefitsBack{
  0%{
    opacity: 0;
    transform:
      translate3d(var(--fly-x, 0px), calc(-1 * var(--benefits-fly-distance)), 0)
      rotate(var(--fly-r, -6deg));
  }
  40%{
    opacity: 1;
  }
  100%{
    opacity: 1;
    transform: translate3d(0,0,0) rotate(0deg);
  }
}





/* CTA video background */
.cta__img{
  position: relative;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

/* видео на весь блок */
.cta__bgvideo{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;

  opacity: 0;
  transition: opacity .35s ease;
}

/* когда запущено */
.cta__img.is-playing .cta__bgvideo{
  opacity: 1;
}














.mb-section.offer{
  margin-bottom: 0px;
}

.mb-section.benefits{
  margin-bottom: 0px;
}








#faqOverlay {
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.5);
  display: none;
  z-index: 999;
}

#faqModal {
  position: fixed;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  background: #E5E5E5;
  padding: 46px 48px;
  max-width: 965px;
  width: 100%;
  display: none;
  z-index: 1000;
  border: 1px solid #151515;
}


 #regSuccess {
  position: fixed;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  background-color: #ffffff;
  padding: 46px 48px;
  max-width: 1680px;
  width: 100%;
  display: none;
  z-index: 1000;
  border: 1px solid #151515;
}

#faqModal #faqClose, #regSuccess #faqClose {
  position: absolute;
  top: 36px; right: 40px;
  background: none;
  border: none;
  cursor: pointer;
}

.faq-modal p {
  max-width: 500px;
  width: 100%;
}

/* ===== СЕТКА ФОРМЫ FAQ ===== */
.faqForm {
  width: 100%;
}

/* строка сетки */
.faq-grid-row {
  display: flex;
  border-left: 1px solid #151515;
}

/* первая строка — инпуты */
.faq-grid-row:first-child .faq-cell {
  border: 1px solid #151515;
  border-left: none;
}

/* ячейки */
.faq-cell {
  flex: 1;
  height: 68px;        
  display: flex;
  align-items: center;
  box-sizing: border-box;

  background: #fff;
  border-right: 1px solid #151515;
  border-bottom: 1px solid #151515;
}

.faq-cell:last-child {
  border-right: none;
}

/* textarea — полная ячейка */
.faq-cell--full {
  flex: 1;
  height: 245px;    
  border-right: 1px solid #151515 !important;          
}

/* ===== INPUT / TEXTAREA ===== */
.faq-cell input,
.faq-cell textarea {
  width: 100%;
  height: 100%;
  padding: 23px;
  border: none;
  background: transparent;
  resize: none;

  font-family: Mulish, sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #151515;
}

.faq-cell textarea {
}

/* убрать фокус */
.faq-cell input:focus,
.faq-cell textarea:focus,
.faq-cell input:active,
.faq-cell textarea:active {
  outline: none;
  box-shadow: none;
  background: transparent;
  border: none;
}

/* ===== PLACEHOLDER ===== */
.faq-cell input::placeholder,
.faq-cell textarea::placeholder {
  font-family: Mulish, sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #A2A2A2;
}

/* кнопка остается твоя */
.faq-modal .faq__btn {
  max-width: 418px;
  width: 100%;
  height: 80px;
  margin: 28px auto 0px auto;
}





#faqModalSuccess {
  position: fixed;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  background-color: #E5E5E5;
  max-width: 1680px;
  width: 100%;
  display: none;
  z-index: 1000;
  padding: 0px 120px;
  overflow: hidden;
  height: 493px;
}

#faqModalSuccess #faqClose {
  position: absolute;
  top: 42px; 
  right: 42px;
  background: none;
  border: none;
  cursor: pointer;
}

.faq-modal-success1 {
  position: relative;
  width: 100%;
  height: 493px;

  background-image:
    url(/skin/assets/img/promo/success_bg.png),
    url(/skin/assets/img/promo/modal_success_logo.png);

  background-repeat: no-repeat, no-repeat;
  background-size: contain, contain;
  background-position: right center, left top;
}

.faq-modal-success {
    position: relative;
    width: 100%;
    height: 493px;
    background-image: url(/skin/assets/img/promo/success_bg.png), url(/skin/assets/img/promo/modal_success_logo.png);
    background-repeat: no-repeat, no-repeat;
    background-size: cover, contain;
    background-position: left center, left top;
}



.modal__inner{
  display: flex;
  align-items: center;
  height: 100%;
}


.faq-modal-success .promo-title{
  font-size: 72px;
  line-height: 76px;
}

.faq-modal-success .promo-text{
  font-size: 18px;

}


.search-field {
  display: none;
  padding: 8px 0;
  background: #151515; 
}









/* Поиск */



.search-bar__input-wrapper {
  position: relative;
}



.search-bar__submit {
  position: absolute;
  right: 0px;
  top: 50%;
  transform: translateY(-50%);

  background: none;
  border: none;
  cursor: pointer;

  display: none;
}

.search-bar__submit svg {
  fill: #F5F5F5;
}


.search-bar__btn--close {
  display: none;
}



.search-bar__container.active .search-bar__btn--search {
  display: none;
}

.search-bar__container.active .search-bar__btn--close {
  display: inline-flex;
}

.search-bar__container.active .search-bar__submit {
  display: block;
  padding-bottom: 7px;
}












































































@media (max-width: 1680px) {

  #faqModalSuccess,
  #contactSuccess,
  #regSuccess {
  max-width: 1280px;
}

.faq-modal-success {
  background-size: cover, contain;
  background-position: -390% center, left top;
}



}






@media (max-width: 1600px) {

  .offer__items{
  bottom: -140px;
  left: 0px;
  width: 100%;
  gap: 8px;
  flex-wrap: wrap;
}

  .offer__item {
    max-width: 50%;
    flex: 0 0 calc(50% - 4px);
    height: 94px;
}



.offer__title {
    font-size: 54px;
    line-height: 64px;
}

.offer__title .circled:before{
  background-size: 371px;
  width: 375px;
  top: -11px;
  left: -15px;
}

.offer__title .underlined:before{
  background-size: 136px;
  bottom: -13px;
  left: -0px;
}

.mb-section.offer{
  margin-bottom: 300px;
}

.mb-section.benefits{

}



  
}





@media (max-width: 1280px) {


  .mb-section{
    margin-bottom: 200px;
  }
  .mb-66{
    margin-bottom: 46px;
  }

  .mb-25{
    margin-bottom: 18px;
  }


  .s-banner.mb-section {
    margin-bottom: 346px;
  }

  .mb-section.benefits{
    margin-bottom: 290px;
  }



  .banner__img1 {
    left: 80px;
    top: -75px;
    width: 191px;
  }

  .banner__img2 {
    right: 77px;
    top: -50px;
    width: 162px;
  }

  .banner__img3 {
    margin-left: -75px;
    bottom: -120px;
    width: 194px;
  }

  .banner__img4 {
    left: 80px;
    bottom: -114px;
    width: 204px;
  }

  .banner__img5 {
    right: 160px;
    top: 65px;
    width: 160px;
    z-index: -1;
  }

  .ticker__track span {
    font-size: 32px;
    line-height: 40px;
  }

  .benefits__title {
    max-width: 100%;
    font-size: 54px;
    line-height: 64px;
  }

  .cta__title{
    font-size: 54px;
    line-height: 64px;

  }

  .faq__title{
    font-size: 54px;
    line-height: 64px;
  }


  .benefits__title .circled:before{
    background-size: 334px;
    width: 350px;
    top: -10px;
    left: -18px;
  }

  .cta__title .underlined:before{
    background-size: 366px;
    width: 370px;
    bottom: -10px;
    left: -3px;
  }




.underlined:before {
    width: 150px;
}








  .form-inner {
    max-width: 100%;
    margin: 42px auto 0px auto;
  }

  .gallery__inner {
    height: 576px;
  }






.faq-modal-success .promo-title{
  font-size: 44px;
  line-height: 56px;
}

.faq-modal-success .promo-text{
  font-size: 16px;

}


 #faqModalSuccess,
 #contactSuccess,
 #regSuccess {
  max-width: 1120px;
}

.faq-modal-success {
  background-size: cover, contain;
  background-position: -40% center, left top;
}

.faq-modal-success .underlined:before{
  width: 213px;
  height:26px;
  background-size: 213px;
  bottom: -2px;
  left: -22px;

}













}


@media (max-width: 1024px) {

  .mb-25{
    margin-bottom: 16px;
  }

  .mb-28 {
    margin-bottom: 26px;
}



  .mb-section.benefits{
    margin-bottom: 250px;
  }


  .rf-grid-row:first-child .rf-cell {
    flex: 0 0 20%;
  }


  .rf-grid-row:first-child .rf-cell:nth-child(3) {
    flex: 0 0 calc(20% - 10px);
  }


  .rf-grid-row:first-child .rf-cell:nth-child(4) {
    flex: 0 0 calc(20% - 30px);
  }


  .rf-grid-row:first-child .rf-cell:nth-child(5) {
    flex: 0 0 calc(20% + 40px);
  }


  .rf-cell--submit {
    flex: 0 0 calc(40% + 10px);
  }


  .banner__img4 {
    left: 49px;
    bottom: -114px;
    width: 175px;
  }

  .banner__img5 {
    right: 64px;
    top: 75px;
  }

  .gallery__inner {
    height: 546px;
  }

  .ticker {
    height: 68px;
  }

  .mb-section{
    margin-bottom: 160px;
  }

  .online__info__title{
    margin: 0px 30px 0px 46px;
  }
  .online__info__text {
    margin: 0px 30px 0px 46px;
  }



  .cta__block {
    display: flex;
    flex-direction: column;
    aspect-ratio: auto;
  }

  .cta__img {
    flex: none;
    height: 584px;
    width: 100%;
    order: 1;
  }

  .cta__items {
    flex: none;
    width: 100%;
    order: 2;
  }

  .cta__item {
    flex: none;
    height: 124px;
    padding: 0 48px;
  }

  .faq__btn {
    max-width: 334px;
  }

  .faq__item__title {
    width: 450px;
  }


  .bbanner__bg {
    background-size: cover;
    height: 347px;
  }

  .bbanner__bg__img {
    max-width: 688px;
  }

  .footer__top__nav {
    gap: 24px;
  }

  .footer__nav__list {
    gap: 12px;
  }


  .dark-form {
    max-width: 300px;
    padding: 18px;
  }

  .dark-form__submit {
    max-width: 239px;
    height: 46px;
  }


   #faqModalSuccess,
   #contactSuccess,
   #regSuccess {
  max-width: 896px;
   padding: 0px 76px;
}

.faq-modal-success {
        background-image: url(/skin/assets/img/promo/success_bg_mob.png), url(/skin/assets/img/promo/success_logo_mob.png);
        background-size: contain, contain;
        background-position: right bottom, left top;
}


#faqModalSuccess,
#contactSuccess,
#regSuccess {
    height: 456px;

}










}


@media (max-width: 992px) {
  .hero {

  }

  #faqModal {
    max-width: 704px;
}


#faqModalSuccess,
#contactSuccess,
#regSuccess {
  max-width: 780px;
   padding: 64px 54px;
}

.faq-modal-success {
        background-image: url(/skin/assets/img/promo/success_bg_mob2.png);
        background-size: contain, contain;
        background-position: center bottom, left top;
        height: 442px;
}

.modal__inner{
  align-items: flex-start;
}

.modal__inner__content{
  display: flex;
  justify-content: space-between;
  width: 100%;
  align-items: center;
}

.faq__btn {
        max-width: 280px;
    }







}



@media (max-width: 768px) {




  .mb-section{
    margin-bottom: 120px;
  }
  .mb-66{
    margin-bottom: 42px;
  }

  .mb-25{
    margin-bottom: 12px;
  }


  .s-banner.mb-section {
    margin-bottom: 381px;
    background-image: url(/skin/assets/img/promo/m_banner_bg.png);
    background-repeat: no-repeat;
    background-position: right top;
  }
  .banner__bg {
    margin-top: 48px;
}
    .banner__img1 {
    top: -172px;
    }

    .banner__img2 {
        right: 77px;
        top: -140px;
    }






  .mb-section.benefits{
    margin-bottom: 290px;
  }

  .banner__img3 {
    margin-left: -75px;
    bottom: -120px;
    width: 176px;
  }

  .form-inner {
    margin: 68px auto 0px auto;
  }


  .rf-grid-row {
    display: flex;
    flex-wrap: wrap;
  }

  .rf-cell {
    flex: 0 0 100%;
    max-width: 100%;
  }


  .rf-grid-row:first-child .rf-cell:nth-child(-n+4) {
    flex: 0 0 50%;
    max-width: 50%;
  }


  .rf-grid-row:first-child .rf-cell:nth-child(5) {
    flex: 0 0 100%;
    max-width: 100%;
  }


  .rf-grid-row--second .rf-cell {
    flex: 0 0 100%;
    max-width: 100%;
  }


  .rf-cell--wide,
  .rf-cell--submit {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .rf-cell input, .rf-cell select {
    padding: 15px 30px 15px 22px;
  }

  .rf-submit {
    width: 100%;
    height: 80px;
  }

  .banner__img4 {
    left: 0px;
    bottom: -243px;
  }

  .banner__img5 {
    right: 0px;
    bottom: -261px;
    top: inherit;
  }


  .hero__nav__item span{
    display: none;
  }


  /*

  .search-bar {
    display: none;
  }

  .hero__logo {
    position: relative;
    left: inherit;
    top: inherit;
    transform: inherit;
    gap: 0px;
  }

  */


  .gallery__inner {
    flex-direction: column;
    height: 656px;
  }

  .gallery__item {
    flex: 1 1 0;  
    min-height: 0;        
  }

  .gallery__item.active {
    flex: 8 1 0;         
  }


  .online__info__title {
    margin: 0px;
  }

  .online__info__text {
    font-size: 14px;
    line-height: 24px;
    max-width: 100%;
    margin: 0px;
  }

  .online__inner {
    flex-direction: column;
    padding: 0px 70px;
    background-color: #151515;
  }

  .online__img {
    order: 2;
  }
  .online__info {
    order: 1;
    padding: 130px 0px;
  }

  .online__img, .online__info {
    flex: inherit;
    aspect-ratio: inherit;
    box-sizing: border-box;
  }

  .online__img {
    position: relative;
    height: ;
  }
      .online__img {
        aspect-ratio: 1 / 1;
        width: 100%;
    }

  .online-arrow {
    display: flex !important;    
    justify-content: center;
    align-items: center;
    width: 54px;
    height: 54px;
    background-color: #C9F76E;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }

  .online-arrow-left{
    left: -70px;
  }

  .online-arrow-right{
    right: -70px;
  }

  .offer__text {
    bottom: -96px;
  }

  .offer__title.mb-66{
    margin-bottom: 138px;
  }

  .offer__video {
    height: 422px;
    position: relative; 
  }

  .offer__video img {
    width: 100%;
    height: 100%;    
    object-fit: cover;   
    display: block;             
  }

  .offer__item {
    padding: 0px 20px;
  }

  .benefits__sticker {
    font-size: 32px;
    line-height: 40px;
  }

  .promo-text {
    font-size: 14px;
  }

  .cta__item {
    height: 120px;
    padding: 0 22px;
  }

  .faq__item {
    flex-direction: column;
    gap: 0px;
    padding: 22px 112px 22px 22px;
  }


  .bbanner__bg__img {
    max-width: 540px;
  }

  .bbanner__bg {
    height: 273px;
  }

  .footer__top {
    flex-direction: column;
}

.footer__top__nav {
    gap: 52px;
}

    .footer__nav__list {
        gap: 27px;
    }

        .dark-form {
        max-width: 522px;
        margin: 0px auto;
    }

    .dark-form__submit {
        max-width: 239px;
        height: 54px;
        margin: 32px auto 0px auto;
    }




   .footer__center {
  align-items: center;  
  position: relative;  
}

.hero__nav__item.hero__nav__item--lang {
  margin-right: auto;   
  position: absolute;   
}

.social {
  margin-left: auto;  
  margin-right: auto;        
}

.footer__links a {
    font-size: 14px;
}

.footer__bottom p {
    font-size: 12px;
}



#faqModalSuccess,
#contactSuccess,
#regSuccess {
  max-width: 620px;
   padding: 47px 22px;
}

.faq-modal-success {
        background-image: url(/skin/assets/img/promo/success_bg_mob2.png);
        background-size: contain, contain;
        background-position: center bottom, left top;
        height: 442px;
}

.modal__inner{
  align-items: flex-start;
}

.modal__inner__content{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.faq__btn {
        max-width: 300px;
    }

    #faqModalSuccess #faqClose {
    top: 32px;
    right: 32px;
}

.faq-modal-success .promo-title{
  font-size: 30px;
  line-height: 40px;
}

.faq-modal-success .promo-text{
  font-size: 14px;
  line-height: 20px;

}

.search-bar--mob.visible-sm{
  display: flex !important;
  gap: 16px;
}


.search-bar {
    align-items: center;
}





/* Поиск */


.search-field {
  display: none;
  padding: 8px 16px 24px 16px;
  background: #151515; 
  position: relative;
  z-index: 999;
  margin: 0 -16px;
}

/* контейнер */
.search-field__inner {
  position: relative;
}

/* input */
.search-field__input {
  width: 100%;
  height: 28px;

  padding-left: 8px;
  padding-right: 50px;

  font-family: 'Mulish', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0.02em;
  background: transparent;
  border: none;
  border-bottom: 1px solid #454545;
  outline: none;
  color: #F5F5F5;
}


.search-field__icons {
  position: absolute;
  right: 0;
  top: 0;
  height: 28px;

  display: flex;
  align-items: center;
  gap: 10px;
}


.search-field__submit,
.search-field__close {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}

.search-field__submit svg {
  fill: #F5F5F5;
}

.search-field__close svg {
  fill: #454545;
}

.hero__nav__item.hidden-sm {
    display: none !important;
}

.search-bar__container.hidden-sm {
  display: none !important;
}




#benefits .benefits__sticker {
    transform: inherit;
}

#benefits .benefits__sticker.benefits__sticker1{
  background-color: #C9F76E;
  transform: rotate(-0.52deg);

}

#benefits .benefits__sticker.benefits__sticker2{
  background-color: #FFE95A;
  top: -8px;

}

#benefits .benefits__sticker.benefits__sticker3{
  background-color: #D296FE;
  transform: rotate(0.96deg);
  top: -10px;

}

#benefits .benefits__sticker.benefits__sticker4{
  background-color: #FAA7BF;
  top: -16px;
}

.benefits__sticker {
  position: relative;
  margin-bottom: 10px;
}























}



@media (max-width: 576px) {







  .mb-section{
    margin-bottom: 86px;
  }
  .mb-66{
    margin-bottom: 30px;
  }

  .mb-25{
    margin-bottom: 12px;
  }

  .mb-28{
  margin-bottom: 24px;
}

  .mb-24 {
    margin-bottom: 8px;
}


  .s-banner.mb-section {
    margin-bottom: 275px;
    background-image: url(/skin/assets/img/promo/m_banner_bg_mob.png);
    background-repeat: no-repeat;
    background-position: right top;
  }

  .mb-section.benefits{
    margin-bottom: 256px;
  }


  .banner__bg {
    margin-top: 0px;
    position: static;
}

.banner__inner{
  position: relative;
}

      .banner__img1 {
        left: 16px;
        top: 6px;
        width: 96px;
    }

        .banner__img2 {
        right: 16px;
        top: 75px;
        width: 104px;
    }

    .banner__bg__img {
    padding: 153px 16px 0px 16px;
}

    .banner__img3 {
        margin-left: -35px;
        top: 240px;
        width: 90px;
    }

        .form-inner {
        margin: 60px auto 0px auto;
    }


    .banner__snow {
    margin-top: 0px;
        margin-right: 0px;
        position: absolute;
        right: 100px;
        top: 58px;
}

 .banner__snow img{
  width: 37px;
}

.rf-grid-row:first-child .rf-cell:nth-child(-n+4) {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .banner__img4 {
        bottom: -110px;
        width: 94px

    }

        .banner__img5 {
        bottom: -175px;
        width: 119px
    }

    .gallery__inner {
        height: 372px;
    }

    .gallery__item__text {
    padding: 12px 18px;
    max-width: 256px;
    font-size: 14px;
    bottom: 14px
    }

    .circled:before {
    top: -5px;
    left: -25px;
    background-size: 96px;
}

    .gallery__item__text1 .circled:before {
        top: -5px;
        left: -5px;
        background-size: 105px;
    }

    .gallery__item__text2 .circled:before {
        top: -5px;
        left: -5px;
        background-size: 135px;
    }

    .gallery__item__text2 .underlined:before, .gallery__item__text3 .underlined:before, .gallery__item__text4 .underlined:before {
    bottom: -23px;
    left: -5px;
    z-index: -1;
    background-size: 75px;
}



    .ticker__track span {
        font-size: 16px;
        line-height: 24px;
    }

    .ticker{
      height: 60px;
    }

    .online__info__title {
        font-size: 30px;
        line-height: 40px;
    }

    .online__info {
    gap: 12px;
    }

    .online__info {
        order: 1;
        padding: 28px 0px 72px 0px;
    }

    .online__inner {
        padding: 0px 26px;
    }

    .online__img {
     aspect-ratio: 1 / 1;
       width: 100%;
    }

    .online-arrow {
        width: 40px;
        height: 40px;
        top: 70%;
    }

    .online-arrow-left {
        left: -20px;
        z-index: 10
    }

        .online-arrow-right {
        right: -20px;
        z-index: 10;
    }

        .offer__title.mb-66 {
          font-size: 32px;
          line-height: 42px;
    }

    .offer__title .circled:before {
        background-size: 212px;
        background-size: 212px;
        top: -7px;
        left: -10px;
        z-index: 1;
    }

    .offer__title .underlined:before {
        background-size: 92px;
        bottom: -18px;
        left: -5px;
    }

    .offer__text {
        bottom: -66px;
        font-size: 12px;
        line-height: 16px;
    }

    .offer__title.mb-66 {
        margin-bottom: 100px;
    }

        .offer__item {
        max-width: 100%;
        flex: 0 0 100%;
        height: 56px;
        font-size: 16px;
    }

    .offer__items {
        bottom: -248px;
    }

    .mb-section.offer {
        margin-bottom: 330px;
    }

    .benefits__title {
        font-size: 32px;
        line-height: 42px;
    }

    .benefits__title .circled:before {
        background-size: 206px;
    }

        .benefits__sticker {
        font-size: 16px;
        line-height: 24px;
        height: 42px
    }

    .benefits__stickers {
    max-width: 286px;
   }

       .mb-section.benefits {
        margin-bottom: 142px;
    }

        .cta__title {
        font-size: 32px;
        line-height: 42px;
    }

        .cta__title .underlined:before {
        background-size: 218px;
        bottom: -20px;
        left: -3px;
    }

    .cta__img {
        height: 216px;
    }

    .promo-title {
    font-size: 24px;
    line-height: 34px;
    margin-bottom: 2px;
}

    .cta__item {
        height: 100px;
        padding: 0 16px;
    }


    .cta__item:hover {
    background-color: #C9F76E;
}

.faq__item {
    border-top: 1px solid #151515;
    border-bottom: 1px solid #151515;
}

    .faq__title {
        font-size: 32px;
        line-height: 42px;
    }

    .faq__btn {
        max-width: 200px;
        height: 52px;
        font-size: 16px;
        line-height: 22px; 
    }


    .faq__item {
    padding: 16px 60px 16px 16px;
  }

  .plus-btn {
    width: 36px;
    height: 36px;
}

.plus-btn {
    position: absolute;
    top: 18px;
    right: 16px;
}

    .faq__item__title {
        width: auto;
    }

    .plus-btn span {
    width: 18px;
    height: 2px;
}

    .rf-cell {
        min-height: 44px;
    }

        .bbanner__bg__img {
        max-width: 252px;
    }

        .bbanner__bg {
        height: 127px;
    }

        .rf-submit {
        height: 60px;
        font-size: 16px;
        line-height: 22px;
    }

    .footer__top__nav {
    flex-direction: column;
}

.footer__bottom .footer__top__title {
    font-weight: 700;
    font-size: 20px;
    line-height: 28px;
}

.footer__nav__list ul li a {
    font-weight: 500;
    font-size: 12px;
    line-height: 18px;
}

.footer__top__nav {
        gap: 16px;
        margin-bottom: 48px;
    }

        .dark-form {
        max-width: 100%;
        padding: 0px;
    }

        .dark-form__submit {
        max-width: 100%;
        height: 46px;
        font-size: 12px;
        line-height: 18px;
    }

        .hero__nav__item.hero__nav__item--lang {
        margin-right: inherit;
        position: relative;
    }






    .footer__center {
      align-items: start;
        gap: 16px;
        margin-top: 24px;
    }

    .footer-contacts li{
      font-size: 12px;
      line-height: 18px;
      gap: 8px;
    }

    .mb-16{
      margin-bottom: 8px;
    }




    .hero__nav__link {
    font-weight: 600;
    font-size: 16px;
    line-height: 18px;
    }

        .social .promo-text {
        font-size: 12px;
        text-align: center;
    }

    .footer__links {
    flex-direction: column;
    align-items: center;
    gap: 16px;
}


    .footer__links a {
    font-weight: 600;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0%;
    text-align: center;
    text-transform: uppercase;
    color: #A2A2A2;

    }

    .banner__bg__img.mb-8{
      margin-bottom: 16px;
    }

    .footer__links a:first-child {  
  order: 3;                    
}

.footer__links a:nth-child(2) {  
  order: 2;                   
}

.footer__links a:nth-child(3) { 
  order: 1;                  
}


   .footer .banner__bg__img {
    padding: 0px 16px 0px 16px;
}


.cta__title .underlined:before {
    width: 218px;
}

.benefits__title .circled:before {
    width: 206px;
}

.offer__title .circled:before {
    width: 212px;
}

.underlined:before {
    width: 92px;
}


  #faqModal {
    max-width: 328px;
    padding: 24px 16px;
}

#faqModal #faqClose {
    top: 16px;
    right: 10px;

}


.faq-modal .underlined:before {
    background-size: 142px;
    width: 142px;
    height: 19px;
    bottom: -7px;
    left: -12px;
}

.faq-cell input, .faq-cell textarea {
    padding: 16px;
}


.faq-grid-row {
  display: block;
}

.faq-cell:first-child {
  border-top: 1px solid #151515;
  border-bottom: none !important;        
}

.faq-cell:last-child {
  border-top: none;       
  border-bottom: 1px solid #151515 !important;
}

.faq-modal .faq__btn {
    height: 54px;
    margin: 24px auto 0px auto;
}

.faq__btn.modal--btn {
        max-width: 100%;
    }

    #faqModalSuccess,
    #contactSuccess,
    #regSuccess {
  max-width: 328px;
}





.banner__img2 {
  top: 55px;
}

.banner__snow {
  top: 38px;
}




}



@media (max-width: 400px) {

 .banner__img3 {
  top: 200px;
}



}


   





