:root {
  --main-color: #5a9917; /* #31B939; */
  --main-color-darken: #5a9917; /* #1f9f27; */
  --main-color-hover: #5a9917; /* #1f9f27; */
  --text-main-color: #1C1C1C;
  --text-color: #1C1C1C;
  --quiz-hover: #5a9917; /* rgba(49, 185, 57, 0.5); */
  --gradient-process-item: #5a9917; /* rgba(49, 185, 57, 0.9); */
  --gradient-articles-item: #5a9917; /* rgba(49, 185, 57, 0.44); */
  --hit-status-color: #9747FF;
  --sale-status-color: #F63123;
  --new-status-color: #F2B644;
  --product-status-color: #1C1C1C;
  --font-main: "Inter", sans-serif;
  --font-display: "Raleway", sans-serif;
}

body {
  font-family: var(--font-main);
}

/* Вертикальные видео в блоке our-works */
.our-works__slider {
  height: auto !important;
}
.our-works__slider .swiper-slide {
  height: auto;
}
.our-works__slide { 
  width: 100% !important;
  height: auto !important; 
  aspect-ratio: 9 / 16;
  max-width: none;
}
.our-works__slide img,
.our-works__slide video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.our-works__slide .slide-title {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  padding: 1vw 0.8vw;
  color: #fff;
  font-weight: 600;
  font-size: 0.85vw;
  line-height: 1.2;
  text-align: center;
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.65));
}
@media only screen and (max-width: 768px) {
  .our-works__slide .slide-title {
    font-size: 3.2vw;
    padding: 4vw 3vw;
  }
}

/* Без поиска в шапке */
.header .search-form {
  display: none !important;
}

/* Соцсети в шапке: полупрозрачный фон, скругление */
.header__social .social-links a {
  background-color: rgb(83 83 83 / 51%);
  border-radius: 0.5vw;
  padding: 0.4vw;
  box-sizing: border-box;
}
.header__social .social-links a img {
  width: 85%;
  height: 85%;
}

/* Контакты: VK / TG / Max как в шапке */
.contacts__info-social .social-links {
  justify-content: flex-start;
} 
.contacts__info-social .social-links a {
  width: 2.5vw !important;
  height: 2.5vw !important;
  margin-right: 0.6vw !important;
  border-radius: 0.5vw !important;
  background-color: none;
  background: none;
  padding: 0.35vw;
  box-sizing: border-box;
  display: flex !important;
  align-items: center;
  justify-content: center;
  overflow: visible !important;
  position: relative;
}
.contacts__info-social .social-links a img {
  position: static !important;
  width: 85% !important;
  height: 85% !important;
  object-fit: contain !important;
}
.contacts__info-social .social-links a:hover {
  transform: scale(1.12);
}
.contacts__address .map-container {
  min-height: 22vw;
  overflow: hidden;
}
.contacts__address .map-container iframe {
  min-height: 22vw;
}
@media only screen and (max-width: 768px) {
  .contacts__info-social .social-links a {
    width: 11vw !important;
    height: 11vw !important;
    border-radius: 2vw !important;
    margin-right: 2.5vw !important;
    padding: 1.5vw;
  }
  .contacts__address .map-container,
  .contacts__address .map-container iframe {
    min-height: 55vw;
  }
}

/* clear-talk: мессенджеры (свои классы, без .social-links / .clear-talk__link a) */
.clear-talk-messengers {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 1.2vw;
}
.clear-talk-messengers__btn {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 4.2vw !important;
  height: 4.2vw !important;
  margin: 0 !important;
  padding: 0.55vw !important; 
  box-sizing: border-box;
  background-color: rgb(83 83 83 / 51%);
  border-radius: 0.7vw;
  transition: transform 0.3s;
}
.clear-talk-messengers__btn:hover {
  transform: scale(1.12);
  padding: 0.55vw !important;
}
.clear-talk-messengers__btn img {
  width: 85% !important;
  height: 85% !important;
  object-fit: contain;
}
 
/* Консультация: те же мессенджеры, без стилей .get-consultation__links a */
.get-consultation__links .clear-talk-messengers { 
  display: flex;
  align-items: center;
  gap: 0.8vw;
}
.get-consultation__links .clear-talk-messengers__btn {
  width: 3.2vw !important;
  height: 3.2vw !important;
  margin: 0 !important;
  padding: 0.45vw !important;
  border-radius: 0.55vw !important;
  background-color: rgb(83 83 83 / 51%) !important;
}
.get-consultation__links .clear-talk-messengers__btn:hover {
  transform: scale(1.12);
  padding: 0.45vw !important;
}
.get-consultation__links .clear-talk-messengers__btn img {
  width: 85% !important;
  height: 85% !important;
  object-fit: contain !important;
}
@media only screen and (max-width: 768px) {
  .get-consultation__links .clear-talk-messengers {
    gap: 3vw;
  }
  .get-consultation__links .clear-talk-messengers__btn {
    width: 12vw !important;
    height: 12vw !important;
    padding: 1.8vw !important;
    border-radius: 2vw !important;
  }
  .get-consultation__links .clear-talk-messengers__btn:hover {
    padding: 1.8vw !important;
  }
}
/* FAQ: заголовок + мессенджеры */
.questions__link_new {
  flex-direction: column;
  gap: 1.5vw;
  margin-top: 2vw;
}
.questions__link__title {
  font-family: var(--font-display, "Raleway", sans-serif);
  font-weight: 700;
  font-size: 1.35vw;
  line-height: 1.4;
  letter-spacing: 0.02em;
  text-align: center;
  color: var(--text-main-color); 
  margin-bottom: 1.8229166667vw;
}
.questions__link__container {
  display: flex;
  justify-content: center;
  width: 100%;
}
.questions__link__container .clear-talk-messengers {
  justify-content: center;
}
.questions__link__container .clear-talk-messengers__btn {
  width: 4.2vw !important;
  height: 4.2vw !important;
  padding: 0.55vw !important;
  background: none !important;
}
.questions__link__container .clear-talk-messengers__btn:hover {
  padding: 0.55vw !important;
}
.questions__link__container .clear-talk-messengers__btn img {
  width: 85% !important;
  height: 85% !important;
}
@media only screen and (max-width: 768px) {
  .clear-talk-messengers {
    gap: 4vw;
    justify-content: center;
  }
  .clear-talk-messengers__btn,
  .questions__link__container .clear-talk-messengers__btn {
    width: 14vw !important;
    height: 14vw !important;
    padding: 2vw !important;
    border-radius: 2.5vw;
  }
  .clear-talk-messengers__btn:hover,
  .questions__link__container .clear-talk-messengers__btn:hover {
    padding: 2vw !important;
  }
  .questions__link {
    gap: 4vw;
    margin-top: 6vw;
  }
  .questions__link__title {
    font-size: 4.5vw;
    line-height: 1.35;
    padding: 0 4vw;
  }
}

/* Мобилка: зелёный лого при fixed/open (белый фон шапки) */ 
.header__logo .logo-fixed {
  display: none;
}
@media only screen and (max-width: 768px) {
  .header.fixed .header__logo .logo-default,
  .header.open .header__logo .logo-default {
    display: none;
  }
  .header.fixed .header__logo .logo-fixed,
  .header.open .header__logo .logo-fixed {
    display: block;
  }
}

/* Скрин-отзывы: один ряд-слайдер */ 
.process .filters {
  display: none !important;
}
.process__container.process__content {
  display: block !important;
}
.process__slider .swiper-slide {
  width: 280px;
  max-width: 85vw;
  height: auto;
  margin: 0;
  padding: 16px;
  box-sizing: border-box;
}
.process__item {
  display: flex !important; 
  align-items: center;
  justify-content: center;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
  margin: 0 !important;
  padding: 0;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  border-radius: 0.5vw;
  border: 1px solid rgba(28, 28, 28, 0.12);
  background: #fff;
  box-shadow: 0 0.1vw 0.4vw rgba(0, 0, 0, 0.06);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.process__item img {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  transition: transform 0.35s ease;
}
.process__item:hover {
  transform: translateY(-0.35vw);
  border-color: var(--main-color);
  box-shadow: 0 0.3vw 0.9vw rgba(0, 0, 0, 0.12);
}
.process__item:hover img {
  transform: scale(1.03);
}
@media only screen and (max-width: 768px) {
  .process__slider .swiper-slide {
    width: 70vw;
  }
  .process__item {
    border-radius: 2vw;
  }
  .process__item:hover {
    transform: translateY(-1vw);
  }
}

body.popup-open {
  overflow: hidden;
}
.popup.active,
.popup.visible {
  opacity: 1;
  visibility: visible;
  z-index: 10000;
}

/* Админ-панель Битрикс вне .page — глобальные !important лендинга её не ломают */
#bx-panel,
#bx-panel * { 
  -webkit-user-select: auto;
     -moz-user-select: auto;
      -ms-user-select: auto;
          user-select: auto;
}
#bx-panel input,
#bx-panel select,
#bx-panel textarea,
#bx-panel input::placeholder {
  color: inherit !important;
}

/* Портфолио: мобильный слайдер — 1 карточка на экран */
@media only screen and (max-width: 768px) {
  .portfolio.md-mobile-slider .portfolio__slider .swiper-container {
    overflow: hidden;
    padding-bottom: 0px;
  }
  .portfolio.md-mobile-slider .portfolio__slider .portfolio__item { 
    width: 100%; 
    margin: 0;
  }
  .portfolio.md-mobile-slider .portfolio__slider .slider-pagination {
    bottom: 0;
    text-align: center;
  }
}

/* Rutube в Fancybox: has-iframe не сбрасывает padding */
.fancybox__carousel .fancybox__slide.has-iframe .fancybox__content {
  padding: 0;
  background: rgba(24, 24, 27, 0.9);
  color: #fff;
}
.fancybox__carousel .fancybox__slide.has-iframe .fancybox__iframe { 
  display: block; 
  width: 100%;
  height: 100%;
  border: 0;
  background: transparent;
}

/* Footer */

/* Ссылка на политику в чекбоксе согласия */
.md-standart-form .form-checkbox p a,
.quiz-final__form .form-checkbox p a {
  color: var(--main-color, #5a9917);
  text-decoration: none;
} 
.md-standart-form .form-checkbox p a:hover,
.quiz-final__form .form-checkbox p a:hover { 
  text-decoration: underline;
}
 
.quiz-questions-container +.landing-form-msg{
  text-align: center;
}

.popup:has(.landing-lead-form.is-success) .main-popup__title,
.popup:has(.landing-lead-form.is-success) .main-popup__text {
  display: none;
}
.landing-form-success {
  text-align: center;
  padding: 8px 0 4px;
}
.landing-form-success__title {
  font-weight: 700;
  font-size: 22px;
  line-height: 1.3;
  color: #1a1a1a;
  margin: 0 0 10px;
}
.landing-form-success__text {
  font-size: 15px;
  line-height: 1.45;
  color: #444;
  margin: 0 0 18px;
}
.get-consultation .landing-form-success .landing-form-success__title{
  color: #fff;
}
.get-consultation .landing-form-success .landing-form-success__text {
  color: #fff;
}
.main-popup__form .landing-form-success .form-btn {
  width: 100%;
  max-width: 280px;
  margin: 0 auto;
}
.get-consultation__form.is-success {
  display: flex;
  align-items: center;
  justify-content: center;
}
.get-consultation__form .landing-form-success {
  padding: 24px 12px;
}
.quiz-final__content .landing-form-success {
  padding: 12px 0 8px;
  text-align: left;
}
@media (max-width: 768px) {
  .landing-form-success__title {
    font-size: 18px;
  }
  .landing-form-success__text {
    font-size: 14px;
  }
}