@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;500;600;700&family=Raleway:wght@400;500;600;700&display=swap");
#sandbox_theme_panel_250700 {
  position: absolute;
  left: 0;
  bottom: 0;
  right: auto !important;
  top: auto !important;
}
.site-main > .site-main-inner.margin-right {
  margin-right: 420px;
}
.product_new_form {
  display: inline-block;
  position: relative;
  line-height: 1;
  border: none;
  color: #fff;
  background-color: #0d6759;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.1);
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0%, #0c6255), color-stop(100%, #0e6c5d));
  background-image: -o-linear-gradient(bottom, #0c6255 0%, #0e6c5d 100%);
  background-image: -moz-linear-gradient(bottom, #0c6255 0%, #0e6c5d 100%);
  background-image: -webkit-linear-gradient(bottom, #0c6255 0%, #0e6c5d 100%);
  background-image: -ms-linear-gradient(bottom, #0c6255 0%, #0e6c5d 100%);
  background-image: linear-gradient(to top, #0c6255 0%, #0e6c5d 100%);
  -pie-background: linear-gradient(to top, #0c6255 0%, #0e6c5d 100%);
  padding: 10px 20px;
  font: 700 16px "Fira Sans", sans-serif;
  text-align: center;
  cursor: pointer;
}
.product_new_form:hover {
  background: #093d35;
}
.product_new_form.simple {
  margin-top: 15px;
}
.product_form {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  width: 100%;
  direction: ltr;
}
.product_form.opened .product_form-inner {
  visibility: visible;
  opacity: 1;
}
.product_form .product_form-inner {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: auto;
  z-index: 1;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  -ms-flex-align: start;
  padding: 20px;
  box-sizing: border-box;
  background: rgba(0, 0, 0, 0.3);
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s;
}
.product_form .product_form-inner .product_form-ins {
  padding: 30px;
  border: none;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  display: inline-block;
  width: 320px;
  box-sizing: border-box;
  vertical-align: middle;
  background: #fff;
  text-align: left;
  font-size: 12px;
  position: relative;
  max-width: 100%;
  flex: 0 0 auto;
  margin: auto;
}
.product_form .product_form-inner .product_form-ins .close {
  position: absolute;
  right: -15px;
  top: -15px;
  width: 30px;
  height: 30px;
  background: url(../close2.png) 0 0 no-repeat;
  cursor: pointer;
}
.product_form .product_form-inner .product_form-ins .tpl-anketa .title {
  font: 700 20px "Fira Sans", sans-serif;
  color: #0a3d3d;
  text-align: center;
  margin-bottom: 20px;
}
.product_form .product_form-inner .product_form-ins .tpl-anketa form .tpl-field {
  margin-top: 10px;
}
.product_form .product_form-inner .product_form-ins .tpl-anketa form .tpl-field .field-value input[type="text"], .product_form .product_form-inner .product_form-ins .tpl-anketa form .tpl-field .field-value input[type="email"], .product_form .product_form-inner .product_form-ins .tpl-anketa form .tpl-field .field-value input[type="phone"], .product_form .product_form-inner .product_form-ins .tpl-anketa form .tpl-field .field-value input[type="tel"], .product_form .product_form-inner .product_form-ins .tpl-anketa form .tpl-field .field-value textarea {
  box-sizing: border-box;
  padding: 5px 10px;
  width: 100%;
  font-size: 15px;
  outline: none;
}
.product_form .product_form-inner .product_form-ins .tpl-anketa form .tpl-field.tpl-field-button {
  text-align: center;
}
.product_form .product_form-inner .product_form-ins .tpl-anketa form .tpl-field.tpl-field-button button {
  background: #0d6759;
  color: #fff;
  display: inline-block;
  border: none;
  padding: 10px 20px;
  border-radius: 5px;
  font-size: 20px;
  cursor: pointer;
  outline: none;
}
.product_form .product_form-inner .product_form-ins .tpl-anketa form .tpl-field.tpl-field-button button:hover {
  background: #107e6d;
}
.product_form .product_form-inner .product_form-ins .tpl-anketa form .tpl-field.tpl-field-button button:active {
  background: #0a5045;
}
@media (max-width: 500px) {
  .shop-sorting-panel .sorting-wrap {
    display: none;
  }
}
@media (max-width: 960px) {
  .top-menu-scroller .top-menu.mobile {
    display: none !important;
  }
  .top-menu-scroller .regid-block {
    display: none !important;
  }
}
.top-panel-wr {
  display: none;
}
/* ==========================================
   М-УПАК — ТИПОГРАФИКА
========================================== */
/* Весь сайт — Raleway */
html, body, body * {
  font-family: "Raleway", sans-serif !important;
}
/* ==========================================
   ЗАГОЛОВКИ — FIRA SANS
========================================== */
/* Заголовки страниц */
body h1, body h2, body h3, body h4, body h5, body h6, body .conth1, body .shop-folder-name, body .shop-folder-title, body .folder-name, body .folder-title, body .shop-product-name, body .shop-product-title, body .product-name, body .product-title, body .shop2-product-name, body .shop2-product-title, body .shop-product-name a, body .shop-product-title a, body .product-name a, body .product-title a, body .shop2-product-name a, body .shop2-product-title a, body .shop-list-wrapper a, body .product-list a {
  /* H1 каталога */
  /* Заголовки категорий */
  /* Названия товаров */
  /* ссылки названий товаров */
  /* элементы, которые тема могла задать через font */
  font-family: "Fira Sans", sans-serif !important;
}
/* ==========================================
   М-УПАК — НОВАЯ ВЕРХНЯЯ ЧАСТЬ ШАПКИ
========================================== */
/* Скрываем старую верхнюю шапку */
.site-header > .header-bot-block {
  display: none !important;
}
/* ==========================================
   НОВАЯ ШАПКА
========================================== */
.header-modern {
  width: 100% !important;
  background: #fff !important;
  padding-top: 10px !important;
  padding-bottom: 0 !important;
  box-sizing: border-box !important;
}
/* Отступ между новой шапкой и меню */
.header-modern + .top-navigation-wrap {
  padding-top: 28px !important;
  box-sizing: border-box !important;
}
/* ==========================================
   ОСНОВНОЙ КОНТЕЙНЕР
========================================== */
.header-modern__inner {
  width: 100% !important;
  min-height: 113px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 36px !important;
  box-sizing: border-box !important;
}
/* ==========================================
   ЛОГОТИП + ДЕСКРИПШН
========================================== */
.header-modern__brand {
  display: flex !important;
  align-items: center !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}
.header-modern__logo {
  display: flex !important;
  align-items: center !important;
  width: 210px !important;
  min-width: 210px !important;
  height: 85px !important;
  text-decoration: none !important;
}
.header-modern__logo img {
  display: block !important;
  width: 210px !important;
  height: auto !important;
  max-height: 85px !important;
  object-fit: contain !important;
}
/* ==========================================
   ДЕСКРИПШН
========================================== */
.header-modern__descriptor {
  position: relative;
  margin-left: 22px;
  padding-left: 22px;
  border-left: 1px solid rgba(30, 44, 73, 0.16);
  max-width: 330px;
  min-width: 0;
}
.header-modern__descriptor-title {
  font-family: "Fira Sans", sans-serif !important;
  font-size: 22px;
  line-height: 1.15;
  font-weight: 600;
  color: #1e2c49;
}
.header-modern__descriptor-line {
  margin-top: 9px;
  font-family: "Raleway", sans-serif !important;
  font-size: 13px;
  line-height: 1.45;
  color: #7b858e;
}
/* ==========================================
   КНОПКА КОНСУЛЬТАЦИИ
========================================== */
.header-modern__consultation {
  flex: 0 0 auto !important;
}
.header-modern__consultation-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 12px 17px !important;
  border: 2px solid #0081fb !important;
  border-radius: 32px !important;
  background: #fff !important;
  color: #1D1D1B !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease, transform 0.3s ease !important;
}
.header-modern__consultation-icon {
  font-size: 24px;
  line-height: 1;
  transition: transform 0.3s ease;
}
.header-modern__consultation-btn:hover {
  background: #1e2c49 !important;
  border-color: #1e2c49 !important;
  color: #fff !important;
  transform: translateY(-2px);
}
.header-modern__consultation-btn:hover .header-modern__consultation-icon {
  transform: translate(2px, -2px);
}
/* ==========================================
   ПРАВАЯ ЧАСТЬ
========================================== */
.header-modern__right {
  display: flex !important;
  align-items: center !important;
  gap: 24px !important;
  flex: 0 0 auto !important;
  min-width: 0 !important;
}
/* ==========================================
   КОНТАКТЫ
========================================== */
.header-modern__contacts {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 20px !important;
  flex: 0 0 auto !important;
}
.header-modern__contact {
  display: flex !important;
  align-items: center !important;
  min-width: 0 !important;
}
.header-modern__contact-link {
  display: flex !important;
  align-items: center !important;
  min-width: 0 !important;
  text-decoration: none !important;
  color: #1D1D1B !important;
}
.header-modern__contact-content {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
}
.header-modern__contact-label {
  font-family: "Raleway", sans-serif !important;
  font-size: 9px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.11em !important;
  color: #8b949e !important;
}
.header-modern__contact-value {
  margin-top: 4px !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  color: #1D1D1B !important;
}
/* ==========================================
   ИКОНКИ КОНТАКТОВ
========================================== */
.header-modern__contact-icon {
  position: relative !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  margin-right: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  color: #1D1D1B !important;
}
/* Убираем старые элементы CMS */
.header-modern__contact-icon .s1, .header-modern__contact-icon .s2, .header-modern__icon-mark {
  display: none !important;
}
/* ==========================================
   ТЕЛЕФОН
========================================== */
/* ==========================================
   ИКОНКА ТЕЛЕФОНА
========================================== */
.header-modern__phone-icon {
  position: relative !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  margin-right: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
}
/* сама иконка */
.header-modern__phone-icon img {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  width: 40px !important;
  height: 40px !important;
  object-fit: contain !important;
  animation: phoneBounce 3.8s ease-in-out infinite;
}
/* внешний импульс */
.header-modern__phone-icon:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 26px;
  height: 26px;
  margin-left: -13px;
  margin-top: -13px;
  border: 2px solid rgba(0, 122, 245, 0.55);
  border-radius: 50%;
  opacity: 0;
  z-index: 1;
  animation: phonePulse 3.8s ease-out infinite;
}
/* второй мягкий импульс */
.header-modern__phone-icon:after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 26px;
  height: 26px;
  margin-left: -13px;
  margin-top: -13px;
  border: 1px solid rgba(0, 122, 245, 0.25);
  border-radius: 50%;
  opacity: 0;
  z-index: 0;
  animation: phonePulse 3.8s ease-out infinite 0.22s;
}
/* ==========================================
   АНИМАЦИЯ ТЕЛЕФОНА
========================================== */
@keyframes phoneBounce {
  0%, 72%, 100% {
    transform: translateY(0) scale(1);
  }
  75% {
    transform: translateY(-2px) scale(1.03);
  }
  78% {
    transform: translateY(1px) scale(0.98);
  }
  81% {
    transform: translateY(-1px) scale(1.02);
  }
  84% {
    transform: translateY(0) scale(1);
  }
}
@keyframes phonePulse {
  0% {
    opacity: 0;
    transform: scale(0.55);
  }
  8% {
    opacity: 0.65;
  }
  38% {
    opacity: 0;
    transform: scale(1.65);
  }
  100% {
    opacity: 0;
    transform: scale(1.65);
  }
}
/* ==========================================
   ИКОНКА ПОЧТЫ
========================================== */
.header-modern__email-icon {
  position: relative !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  margin-right: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
}
.header-modern__email-icon img {
  position: relative !important;
  z-index: 3 !important;
  display: block !important;
  width: 40px !important;
  height: 40px !important;
  max-width: none !important;
  object-fit: contain !important;
  animation: emailAttention 4.2s ease-in-out infinite;
}
.header-modern__email-icon:before {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  width: 26px;
  height: 26px;
  margin-left: -13px;
  margin-top: -13px;
  border: 2px solid rgba(0, 122, 245, 0.45);
  border-radius: 50%;
  opacity: 0;
  animation: emailPulse 4.2s ease-out infinite;
}
.header-modern__email-icon:after {
  content: "";
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 50%;
  width: 26px;
  height: 26px;
  margin-left: -13px;
  margin-top: -13px;
  border: 1px solid rgba(0, 122, 245, 0.22);
  border-radius: 50%;
  opacity: 0;
  animation: emailPulse 4.2s ease-out infinite 0.25s;
}
@keyframes emailAttention {
  0%, 70%, 100% {
    transform: translateY(0) scale(1);
  }
  74% {
    transform: translateY(-3px) scale(1.08);
  }
  78% {
    transform: translateY(1px) scale(0.97);
  }
  82% {
    transform: translateY(-2px) scale(1.05);
  }
  86% {
    transform: translateY(0) scale(1);
  }
}
@keyframes emailPulse {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }
  8% {
    opacity: 0.7;
  }
  38% {
    opacity: 0;
    transform: scale(1.7);
  }
  100% {
    opacity: 0;
    transform: scale(1.7);
  }
}
/* ==========================================
   СОЦСЕТИ + КОРЗИНА + ОПЛАТА
========================================== */
.header-modern__actions {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 10px !important;
  flex: 0 0 auto !important;
}
.header-modern__socials {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
}
.header-modern__social {
  width: 40px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  border: 1px solid #0079f5 !important;
  border-radius: 23px !important;
  background: transparent !important;
  color: #1D1D1B !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: 0.3s ease !important;
}
.header-modern__social:hover {
  background: #1e2c49 !important;
  color: #fff !important;
  transform: translateY(-2px);
}
/* ==========================================
   СЕРВИСНЫЕ КНОПКИ
========================================== */
.header-modern__service-actions {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}
/* ==========================================
   КОРЗИНА
========================================== */
.header-modern__cart {
  position: relative !important;
  width: 60px !important;
  height: 60px !important;
  min-width: 60px !important;
  flex: 0 0 60px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 4px !important;
  color: #1e2c49 !important;
  text-decoration: none !important;
  overflow: visible !important;
  z-index: 20 !important;
}
/* ==========================================
   НАДПИСЬ НАД КОРЗИНОЙ
========================================== */
.header-modern__cart-hint {
  position: absolute !important;
  left: 50% !important;
  top: -32px !important;
  display: block !important;
  white-space: nowrap !important;
  transform: translateX(-50%) !important;
  color: #1e2c49 !important;
  font-family: "Raleway", sans-serif !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  pointer-events: none !important;
  z-index: 10 !important;
  transition: transform 0.3s ease, color 0.3s ease !important;
}
.header-modern__cart-hint-empty, .header-modern__cart-hint-filled {
  display: inline-block !important;
}
/* ==========================================
   НАВЕДЕНИЕ НА КОРЗИНУ
========================================== */
.header-modern__cart:hover .header-modern__cart-hint {
  transform: translateX(-50%) translateY(-3px) !important;
}
.header-modern__cart:hover .header-modern__cart-hint-filled {
  color: #007af5 !important;
}
/* ==========================================
   КОРЗИНА — SVG
========================================== */
.header-modern__cart-icon {
  position: relative !important;
  width: 60px !important;
  height: 60px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
}
/* ==========================================
   САМА SVG
========================================== */
.header-modern__cart-icon img {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  width: 60px !important;
  height: 60px !important;
  object-fit: contain !important;
  transform-origin: center center;
  /* ТВОЯ ОРИГИНАЛЬНАЯ АНИМАЦИЯ */
  animation: cartAttention 3.6s ease-in-out infinite;
}
/* ==========================================
   ТВОЙ ОРИГИНАЛЬНЫЙ ИМПУЛЬС
========================================== */
.header-modern__cart-icon:before {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  width: 34px;
  height: 34px;
  margin-left: -17px;
  margin-top: -17px;
  border: 2px solid rgba(0, 122, 245, 0.42);
  border-radius: 50%;
  opacity: 0;
  animation: cartPulse 3.6s ease-out infinite;
}
/* ==========================================
   ТВОЙ ВТОРОЙ ИМПУЛЬС
========================================== */
.header-modern__cart-icon:after {
  content: "";
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 50%;
  width: 34px;
  height: 34px;
  margin-left: -17px;
  margin-top: -17px;
  border: 1px solid rgba(0, 122, 245, 0.22);
  border-radius: 50%;
  opacity: 0;
  animation: cartPulse 3.6s ease-out infinite 0.28s;
}
/* ==========================================
   СЧЁТЧИК КОРЗИНЫ
========================================== */
.header-modern__cart-count {
  position: absolute !important;
  top: 50% !important;
  right: -4px !important;
  min-width: 20px !important;
  height: 20px !important;
  padding: 0 5px !important;
  transform: translateY(-50%) !important;
  display: none;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  border-radius: 10px !important;
  background: #007af5 !important;
  color: #fff !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  z-index: 5 !important;
}
/* Показываем только когда товаров больше 0 */
.header-modern__cart.has-items .header-modern__cart-count {
  display: flex !important;
}
/* ==========================================
   ТВОЯ ОРИГИНАЛЬНАЯ АНИМАЦИЯ
========================================== */
@keyframes cartAttention {
  0%, 68%, 100% {
    transform: translateY(0) scale(1) rotate(0deg);
  }
  72% {
    transform: translateY(-4px) scale(1.08) rotate(-3deg);
  }
  76% {
    transform: translateY(1px) scale(0.98) rotate(3deg);
  }
  80% {
    transform: translateY(-2px) scale(1.05) rotate(-2deg);
  }
  84% {
    transform: translateY(0) scale(1) rotate(0deg);
  }
}
@keyframes cartPulse {
  0% {
    opacity: 0;
    transform: scale(0.45);
  }
  8% {
    opacity: 0.75;
  }
  38% {
    opacity: 0;
    transform: scale(1.65);
  }
  100% {
    opacity: 0;
    transform: scale(1.65);
  }
}
/* ==========================================
   ОНЛАЙН-ОПЛАТА
========================================== */
.header-modern__payment {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 15px 30px !important;
  border-radius: 32px !important;
  background: #4AA4FF !important;
  color: #fff !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: transform 0.3s ease, background 0.3s ease !important;
}
.header-modern__payment:hover {
  transform: translateY(-2px);
  background: #263b60 !important;
}
.header-modern__payment-icon {
  font-size: 24px;
  line-height: 1;
}
/* ==========================================
   АНИМАЦИЯ КОРЗИНЫ
========================================== */
@keyframes cartFloat {
  0%, 78%, 100% {
    transform: translateY(0);
  }
  82% {
    transform: translateY(-2px);
  }
  86% {
    transform: translateY(0);
  }
}
/* ==========================================
   АДАПТИВ
========================================== */
@media (max-width: 1100px) {
  .header-modern__inner {
    gap: 20px !important;
  }
  .header-modern__descriptor {
    max-width: 250px !important;
  }
  .header-modern__contact--email {
    max-width: 230px !important;
  }
  .header-modern__contact--email .header-modern__contact-value {
    max-width: 230px !important;
  }
}
@media (max-width: 850px) {
  .header-modern__inner {
    flex-wrap: wrap !important;
  }
  .header-modern__brand {
    width: 100% !important;
  }
  .header-modern__right {
    width: 100% !important;
    justify-content: space-between !important;
  }
}
@media (max-width: 600px) {
  .header-modern__inner {
    display: block !important;
  }
  .header-modern__brand {
    display: block !important;
  }
  .header-modern__logo, .header-modern__logo img {
    width: 210px !important;
    min-width: 210px !important;
  }
  .header-modern__descriptor {
    margin-top: 15px !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-top: 12px !important;
    border-left: 0 !important;
    border-top: 1px solid rgba(30, 44, 73, 0.16) !important;
    max-width: none !important;
  }
  .header-modern__right {
    display: block !important;
    width: 100% !important;
    margin-top: 20px !important;
  }
  .header-modern__contacts {
    display: block !important;
  }
  .header-modern__contact {
    margin-bottom: 14px !important;
  }
  .header-modern__actions {
    align-items: flex-start !important;
    margin-top: 15px !important;
  }
}
/* ==========================================
   ВЫРАВНИВАНИЕ НОВОЙ ШАПКИ
========================================== */
@media (min-width: 1200px) {
  .header-modern {
    width: 1284px !important;
    max-width: 1284px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
@media (min-width: 1536px) {
  .header-modern {
    width: 1400px !important;
    max-width: 1400px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
/* ==========================================================
   НОВАЯ НАВИГАЦИЯ
========================================================== */
.top-navigation-wrap {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
}
.top-navigation-in {
  width: 100% !important;
  max-width: none !important;
  display: block !important;
  padding: 16px 22px 18px !important;
  box-sizing: border-box !important;
  background: #A1D6DC !important;
  border-radius: 32px !important;
  box-shadow: 0 10px 28px rgba(30, 44, 73, 0.1) !important;
}
/* ==========================================================
   ХЛЕБНЫЕ КРОШКИ
========================================================== */
.modern-breadcrumbs {
  width: 100% !important;
  height: 48px !important;
  display: flex !important;
  align-items: center !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
.modern-breadcrumbs__home {
  flex: 0 0 auto !important;
  width: 58px !important;
  height: 48px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin-right: 12px !important;
  color: #fff !important;
  text-decoration: none !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  transition: transform 0.25s ease, opacity 0.25s ease !important;
}
.modern-breadcrumbs__home:hover {
  transform: translateY(-2px) !important;
  opacity: 1 !important;
}
.modern-breadcrumbs__home-icon {
  display: block !important;
  width: 40px !important;
  height: 40px !important;
  max-width: none !important;
  margin: 0 !important;
  object-fit: contain !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform-origin: center center !important;
  transition: transform 0.25s ease, opacity 0.25s ease !important;
}
.modern-breadcrumbs__home:hover .modern-breadcrumbs__home-icon {
  transform: scale(1.1) !important;
  opacity: 1 !important;
}
.modern-breadcrumbs__path {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 16px !important;
  line-height: 36px !important;
  font-weight: 400 !important;
  color: rgba(255, 255, 255, 0.82) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.modern-breadcrumbs__path a {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 2px 3px !important;
  color: rgba(255, 255, 255, 0.84) !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 16px !important;
  line-height: 32px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  border-radius: 6px !important;
  transition: color 0.22s ease, background 0.22s ease, transform 0.22s ease !important;
}
.modern-breadcrumbs__path a:hover {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.11) !important;
  transform: translateY(-1px) !important;
}
.modern-breadcrumbs__path a:last-child {
  color: rgba(255, 255, 255, 0.98) !important;
  font-weight: 500 !important;
}
.modern-breadcrumbs__path a + a {
  margin-left: 17px !important;
}
.modern-breadcrumbs__path a + a:before {
  content: "" !important;
  position: absolute !important;
  left: -12px !important;
  top: 50% !important;
  width: 5px !important;
  height: 5px !important;
  margin-top: -2.5px !important;
  background: rgba(255, 255, 255, 0.6) !important;
  border-radius: 50% !important;
}
/* ==========================================================
   НИЖНЯЯ СТРОКА
========================================================== */
.modern-navigation-row {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  gap: 34px !important;
  margin-top: 7px !important;
  box-sizing: border-box !important;
}
/* ==========================================================
   СТАРЫЕ ЭЛЕМЕНТЫ ПОИСКА
========================================================== */
.top-panel-search-button, .search-block-wr, .top-navigation-search-preview {
  display: none !important;
}
/* ==========================================================
   СТАРЫЕ ХЛЕБНЫЕ КРОШКИ В КОНТЕНТЕ
========================================================== */
.site-main-inner > .site-path-wrap {
  display: none !important;
}
/* ==========================================================
   МЕНЮ
========================================================== */
.modern-menu {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
}
.modern-menu .top-menu-wrapper {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-sizing: border-box !important;
}
.modern-menu .top-menu-scroller {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  background: transparent !important;
  box-sizing: border-box !important;
}
.modern-menu .regid-block, .modern-menu .left-menu {
  display: none !important;
}
.modern-menu {
  position: relative !important;
  flex: 0 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  margin-left: 12px !important;
  padding: 0 !important;
  border: 0 !important;
  box-sizing: border-box !important;
}
/* Меню и индикатор живут внутри одного контейнера */
.modern-menu .top-menu-wrapper {
  position: relative !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-sizing: border-box !important;
}
.modern-menu .top-menu-scroller {
  position: relative !important;
  width: auto !important;
  max-width: none !important;
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 0 13px !important;
  background: transparent !important;
  box-sizing: border-box !important;
}
/* ==========================================================
   ЕДИНАЯ ЛИНИЯ ПОД МЕНЮ
========================================================== */
.modern-menu .top-menu-scroller:before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 4px !important;
  height: 2px !important;
  background: rgba(255, 255, 255, 0.5) !important;
  border-radius: 999px !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
/* ==========================================================
   ОДИН ДВИЖУЩИЙСЯ ИНДИКАТОР
========================================================== */
.modern-menu .top-menu-scroller:after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 2px !important;
  width: var(--menu-indicator-width, 34px) !important;
  height: 4px !important;
  background: linear-gradient(90deg, #FFFFFF 0%, #DDF5F7 100%) !important;
  border-radius: 999px !important;
  transform: translateX(var(--menu-indicator-x, 0px)) !important;
  opacity: var(--menu-indicator-opacity, 0) !important;
  box-shadow: 0 2px 8px rgba(255, 255, 255, 0.28) !important;
  z-index: 4 !important;
  pointer-events: none !important;
  transition: transform 0.42s cubic-bezier(0.22, 0.61, 0.36, 1), width 0.3s cubic-bezier(0.22, 0.61, 0.36, 1), opacity 0.2s ease !important;
}
/* ==========================================================
   МЕНЮ — ОДНА ГОРИЗОНТАЛЬНАЯ СТРОКА
========================================================== */
.modern-menu .top-menu {
  position: relative !important;
  width: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  z-index: 3 !important;
  box-sizing: border-box !important;
}
.modern-menu .top-menu li {
  flex: 0 0 auto !important;
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  list-style: none !important;
}
.modern-menu .top-menu li a {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  min-height: 44px !important;
  padding: 8px 2px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #1D1D1B !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 15px !important;
  line-height: 20px !important;
  font-weight: 600 !important;
  letter-spacing: 0.045em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: color 0.22s ease, opacity 0.22s ease !important;
}
.modern-menu .top-menu li a:hover, .modern-menu .top-menu li.active > a, .modern-menu .top-menu li.current > a, .modern-menu .top-menu li.selected > a {
  color: #1D1D1B !important;
  background: transparent !important;
  transform: none !important;
  box-shadow: none !important;
}
/* ==========================================================
   МОБИЛЬНЫЙ ВАРИАНТ
========================================================== */
@media (max-width: 800px) {
  .modern-menu {
    margin-left: 0 !important;
    padding-left: 0 !important;
    border-left: 0 !important;
  }
  .modern-menu .top-menu-scroller {
    padding-bottom: 10px !important;
  }
  .modern-menu .top-menu {
    gap: 9px !important;
    flex-wrap: wrap !important;
  }
  .modern-menu .top-menu li a {
    min-height: 38px !important;
    padding: 7px 2px !important;
    font-size: 12px !important;
    line-height: 18px !important;
  }
  .modern-menu .top-menu-scroller:after {
    height: 4px !important;
    bottom: 2px !important;
  }
}
.modern-menu .top-panel-navigation-button {
  display: none !important;
}
/* ==========================================================
   ВЕРХНИЙ ПОИСК 2.131
========================================================== */
.modern-search {
  position: relative !important;
  flex: 0 1 390px !important;
  width: 390px !important;
  min-width: 340px !important;
  max-width: 390px !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.modern-search__box {
  position: relative !important;
  width: 100% !important;
  display: block !important;
  box-sizing: border-box !important;
}
/* ==========================================================
   ФОРМА ПОИСКА
========================================================== */
.modern-search #smart-search-block {
  position: relative !important;
  width: 100% !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.modern-search #smart-shop2-name {
  width: 100% !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 0 155px 0 18px !important;
  border: 0 !important;
  border-radius: 32px !important;
  background: #fff !important;
  color: #1D1D1B !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 13px !important;
  outline: none !important;
  box-sizing: border-box !important;
  box-shadow: 0 3px 12px rgba(30, 44, 73, 0.08) !important;
}
/*
   Убираем штатный «Поиск»,
   потому что вместо него у нас
   собственная анимированная надпись.
*/
.modern-search #smart-shop2-name::placeholder {
  color: transparent !important;
  opacity: 0 !important;
}
/* ==========================================================
   КНОПКА НАЙТИ
========================================================== */
.modern-search #smart-search-block .search-block__btn {
  position: absolute !important;
  top: 5px !important;
  bottom: 5px !important;
  right: 5px !important;
  width: 100px !important;
  height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: #4AA4FF !important;
  color: #fff !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  z-index: 5 !important;
  box-sizing: border-box !important;
}
.modern-search #smart-search-block .search-block__btn ins {
  display: inline !important;
  color: #fff !important;
  text-decoration: none !important;
}
.modern-search #smart-search-block .search-block__btn i {
  display: none !important;
}
/* ==========================================================
   ВЫПАДАЮЩИЕ ПОДСКАЗКИ
========================================================== */
.modern-search #search-result {
  position: absolute !important;
  left: 0 !important;
  top: 52px !important;
  width: 620px !important;
  max-width: calc(100vw - 30px) !important;
  margin: 0 !important;
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 18px 50px rgba(30, 44, 73, 0.2) !important;
  overflow: hidden !important;
  z-index: 1000 !important;
}
/* ==========================================================
   ЖИВОЙ ТЕКСТ
========================================================== */
.modern-search-placeholder {
  position: absolute !important;
  left: 16px !important;
  top: 0 !important;
  width: calc(100% - 110px) !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  pointer-events: none !important;
  color: #7f8d95 !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  z-index: 2 !important;
  transition: opacity 0.2s ease !important;
}
.modern-search-placeholder__text {
  display: inline-block !important;
}
.modern-search-placeholder__cursor {
  display: inline-block !important;
  width: 1px !important;
  height: 16px !important;
  flex: 0 0 1px !important;
  margin-left: 3px !important;
  background: #21aaa8 !important;
  animation: modernSearchBlink 0.9s steps(1) infinite !important;
}
@keyframes modernSearchBlink {
  0%, 49% {
    opacity: 0.8;
  }
  50%, 100% {
    opacity: 0;
  }
}
.modern-search__box.is-search-active .modern-search-placeholder {
  opacity: 0 !important;
}
/* ==========================================================
   ШИРИНА НАВИГАЦИИ ПО ШИРИНЕ САЙТА
========================================================== */
@media (min-width: 1200px) {
  .top-navigation-wrap {
    width: calc(100% + 82px) !important;
    margin-left: -41px !important;
    margin-right: -41px !important;
    padding-top: 28px !important;
    box-sizing: border-box !important;
  }
  .top-navigation-in {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
/* ==========================================================
   МОБИЛЬНАЯ ВЕРСИЯ
========================================================== */
/* На мобильном разделитель между поиском и меню не нужен. */
/* ==========================================================
   МОБИЛЬНАЯ ВЕРСИЯ
========================================================== */
@media (max-width: 800px) {
  .modern-navigation-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    gap: 10px !important;
    margin-top: 6px !important;
  }
  .modern-search {
    position: relative !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .modern-search__box {
    width: 100% !important;
  }
  .modern-search #smart-search-block {
    width: 100% !important;
    height: 44px !important;
    margin: 0 !important;
  }
  .modern-search #smart-shop2-name {
    width: 100% !important;
    height: 44px !important;
    padding-left: 14px !important;
    padding-right: 94px !important;
    border-radius: 11px !important;
    font-size: 13px !important;
  }
  .modern-search #smart-search-block .search-block__btn {
    top: 5px !important;
    right: 5px !important;
    width: 70px !important;
    height: 34px !important;
    border-radius: 8px !important;
    font-size: 11px !important;
  }
  .modern-search-placeholder {
    left: 14px !important;
    width: calc(100% - 90px) !important;
    height: 44px !important;
  }
  .modern-search #search-result {
    position: absolute !important;
    left: 0 !important;
    top: 51px !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: 70vh !important;
    margin: 0 !important;
    border-radius: 14px !important;
    overflow: auto !important;
    z-index: 1000 !important;
  }
  .modern-menu {
    width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    border-left: 0 !important;
  }
  .modern-menu:before {
    display: none !important;
  }
  .modern-menu .top-menu-wrapper {
    width: 100% !important;
  }
  .modern-menu .top-menu-scroller {
    width: 100% !important;
  }
  .modern-menu .top-menu {
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 3px 4px !important;
  }
  .modern-menu .top-menu li {
    flex: 0 0 auto !important;
  }
  .modern-menu .top-menu li a {
    padding: 8px 7px !important;
    font-size: 12px !important;
    line-height: 18px !important;
    text-transform: uppercase !important;
  }
  .top-navigation-in {
    width: 100% !important;
    padding: 10px 12px 12px !important;
    border-radius: 999px !important;
  }
  .top-navigation-wrap {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .modern-breadcrumbs {
    width: 100% !important;
    height: 20px !important;
  }
  .modern-breadcrumbs__path {
    font-size: 10px !important;
    line-height: 20px !important;
  }
  .modern-menu .top-panel-navigation-button {
    display: none !important;
  }
}
/* ==========================================================
   СОВСЕМ УЗКИЕ ЭКРАНЫ
========================================================== */
@media (max-width: 480px) {
  .top-navigation-in {
    padding: 9px 10px 11px !important;
  }
  .modern-navigation-row {
    gap: 8px !important;
  }
  .modern-search #smart-shop2-name {
    padding-left: 13px !important;
    padding-right: 82px !important;
  }
  .modern-search #smart-search-block .search-block__btn {
    width: 64px !important;
  }
  .modern-search-placeholder {
    left: 13px !important;
    width: calc(100% - 82px) !important;
    font-size: 12px !important;
  }
  .modern-menu .top-menu {
    gap: 2px 4px !important;
  }
  .modern-menu .top-menu li a {
    padding: 7px 5px !important;
    font-size: 11px !important;
    line-height: 17px !important;
    text-transform: uppercase !important;
  }
}
/* ==========================================================
   УМНЫЙ ПОИСК — КАРТОЧКИ ПОДСКАЗОК
========================================================== */
/* ----------------------------------------------------------
   ОБЩЕЕ ОКНО
---------------------------------------------------------- */
.modern-search #search-result {
  position: absolute !important;
  top: 54px !important;
  left: 0 !important;
  width: 760px !important;
  max-width: calc(100vw - 30px) !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border: 1px solid rgba(30, 44, 73, 0.08) !important;
  border-radius: 18px !important;
  box-shadow: 0 22px 55px rgba(30, 44, 73, 0.18) !important;
  overflow: hidden !important;
  z-index: 9999 !important;
  box-sizing: border-box !important;
}
/* ----------------------------------------------------------
   ВЕРХНЯЯ ЧАСТЬ
---------------------------------------------------------- */
.modern-search #search-result .search-result-top {
  display: flex !important;
  align-items: stretch !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
/* ----------------------------------------------------------
   ЛЕВАЯ ЧАСТЬ — ТОВАРЫ
---------------------------------------------------------- */
.modern-search #search-result .search-result-left {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 20px !important;
  border-right: 1px solid #edf1f3 !important;
  box-sizing: border-box !important;
}
/* ----------------------------------------------------------
   ПРАВАЯ ЧАСТЬ
---------------------------------------------------------- */
.modern-search #search-result .search-result-right {
  flex: 0 0 260px !important;
  width: 260px !important;
  min-width: 260px !important;
  margin: 0 !important;
  padding: 20px !important;
  box-sizing: border-box !important;
}
/* ----------------------------------------------------------
   ЗАГОЛОВКИ
---------------------------------------------------------- */
.modern-search #search-result .products-search-title, .modern-search #search-result .folders-search-title, .modern-search #search-result .vendors-search-title {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  color: #1D1D1B !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}
.modern-search #search-result .products-search-title span, .modern-search #search-result .folders-search-title span, .modern-search #search-result .vendors-search-title span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 21px !important;
  height: 21px !important;
  padding: 0 6px !important;
  border-radius: 11px !important;
  background: #edf6f6 !important;
  color: #249e9b !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  box-sizing: border-box !important;
}
/* ----------------------------------------------------------
   СПИСОК ТОВАРОВ
---------------------------------------------------------- */
.modern-search #search-result .product-items {
  width: 100% !important;
  max-height: 330px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-y: auto !important;
  box-sizing: border-box !important;
}
/* Карточка товара */
.modern-search #search-result .product-item {
  width: 100% !important;
  min-height: 76px !important;
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 9px 0 !important;
  border-bottom: 1px solid #edf1f3 !important;
  box-sizing: border-box !important;
  transition: background 0.2s ease, transform 0.2s ease !important;
}
.modern-search #search-result .product-item:last-child {
  border-bottom: 0 !important;
}
.modern-search #search-result .product-item:hover {
  background: #f7fbfb !important;
  transform: translateX(2px) !important;
}
/* ----------------------------------------------------------
   ФОТО ТОВАРА
---------------------------------------------------------- */
.modern-search #search-result .product-image {
  flex: 0 0 58px !important;
  width: 58px !important;
  height: 58px !important;
  margin: 0 12px 0 0 !important;
  border-radius: 9px !important;
  background: #f4f7f8 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
.modern-search #search-result .product-image a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  text-decoration: none !important;
}
.modern-search #search-result .product-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  object-fit: cover !important;
  border: 0 !important;
}
.modern-search #search-result .product-image.no-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.modern-search #search-result .product-image.no-image:before {
  content: " " !important;
  display: block !important;
  width: 22px !important;
  height: 22px !important;
  border: 1px solid #c9d5d9 !important;
  border-radius: 4px !important;
}
/* ----------------------------------------------------------
   ТЕКСТ ТОВАРА
---------------------------------------------------------- */
.modern-search #search-result .product-text {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.modern-search #search-result .product-name {
  width: 100% !important;
  margin: 0 0 7px !important;
  padding: 0 !important;
  line-height: 1.25 !important;
}
.modern-search #search-result .product-name a {
  display: -webkit-box !important;
  width: 100% !important;
  overflow: hidden !important;
  color: #1D1D1B !important;
  font-family: "Raleway", sans-serif !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
}
.modern-search #search-result .product-name a:hover {
  color: #159c99 !important;
}
/* ----------------------------------------------------------
   ЦЕНА
---------------------------------------------------------- */
.modern-search #search-result .product-text-price {
  display: flex !important;
  align-items: baseline !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.modern-search #search-result .price {
  margin: 0 !important;
  color: #1D1D1B !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
}
.modern-search #search-result .price span, .modern-search #search-result .price-old span {
  font-size: 10px !important;
  font-weight: 400 !important;
}
.modern-search #search-result .price-old {
  margin: 0 !important;
  color: #99a4aa !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 10px !important;
  text-decoration: line-through !important;
}
/* ----------------------------------------------------------
   КАТЕГОРИИ
---------------------------------------------------------- */
.modern-search #search-result .result-folders {
  margin: 0 !important;
  padding: 0 0 20px !important;
  border-bottom: 1px solid #edf1f3 !important;
}
.modern-search #search-result .folder-items {
  width: 100% !important;
  max-height: 140px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-y: auto !important;
}
.modern-search #search-result .folder-item {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
.modern-search #search-result .found-folder {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 7px 8px !important;
  border-radius: 7px !important;
  color: #1D1D1B !important;
  font-family: "Raleway", sans-serif !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}
.modern-search #search-result .found-folder:hover {
  background: #eef7f7 !important;
  color: #159c99 !important;
}
/* ----------------------------------------------------------
   ПРОИЗВОДИТЕЛИ
---------------------------------------------------------- */
.modern-search #search-result .result-vendors {
  margin: 20px 0 0 !important;
  padding: 0 !important;
}
.modern-search #search-result .vendor-items {
  width: 100% !important;
  max-height: 140px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-y: auto !important;
}
.modern-search #search-result .vendor-item {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
.modern-search #search-result .found-vendor {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 7px 8px !important;
  border-radius: 7px !important;
  color: #1D1D1B !important;
  font-family: "Raleway", sans-serif !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}
.modern-search #search-result .found-vendor:hover {
  background: #eef7f7 !important;
  color: #159c99 !important;
}
/* ----------------------------------------------------------
   НИЖНЯЯ КНОПКА
---------------------------------------------------------- */
.modern-search #search-result .search-result-bottom {
  width: 100% !important;
  margin: 0 !important;
  padding: 13px 18px !important;
  border-top: 1px solid #edf1f3 !important;
  background: #fafcfc !important;
  box-sizing: border-box !important;
}
.modern-search #search-result .search-result-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border-radius: 9px !important;
  background: #1e2c49 !important;
  color: #fff !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  transition: background 0.2s ease, transform 0.2s ease !important;
}
.modern-search #search-result .search-result-btn:hover {
  background: #263b60 !important;
  transform: translateY(-1px) !important;
}
/* ==========================================================
   СКРОЛЛ
========================================================== */
.modern-search #search-result .product-items, .modern-search #search-result .folder-items, .modern-search #search-result .vendor-items {
  scrollbar-width: thin;
  scrollbar-color: #c7d4d7 transparent;
}
.modern-search #search-result .product-items::-webkit-scrollbar, .modern-search #search-result .folder-items::-webkit-scrollbar, .modern-search #search-result .vendor-items::-webkit-scrollbar {
  width: 5px !important;
}
.modern-search #search-result .product-items::-webkit-scrollbar-thumb, .modern-search #search-result .folder-items::-webkit-scrollbar-thumb, .modern-search #search-result .vendor-items::-webkit-scrollbar-thumb {
  background: #c7d4d7 !important;
  border-radius: 999px !important;
}
/* ==========================================================
   АДАПТИВ
========================================================== */
@media (max-width: 800px) {
  .modern-search #search-result {
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 14px !important;
  }
  .modern-search #search-result .search-result-top {
    display: block !important;
  }
  .modern-search #search-result .search-result-left {
    width: 100% !important;
    padding: 15px !important;
    border-right: 0 !important;
    border-bottom: 1px solid #edf1f3 !important;
  }
  .modern-search #search-result .search-result-right {
    width: 100% !important;
    min-width: 0 !important;
    padding: 15px !important;
  }
  .modern-search #search-result .product-items {
    max-height: 280px !important;
  }
  .modern-search #search-result .product-image {
    flex-basis: 52px !important;
    width: 52px !important;
    height: 52px !important;
    margin-right: 10px !important;
  }
}
@media (max-width: 480px) {
  .modern-search #search-result .product-name a {
    font-size: 11px !important;
  }
  .modern-search #search-result .price {
    font-size: 12px !important;
  }
}
/* ==========================================================
   ПОИСК — УБИРАЕМ ПОДЧЁРКИВАНИЯ
========================================================== */
.modern-search #search-result a, .modern-search #search-result a:hover, .modern-search #search-result .product-name a, .modern-search #search-result .found-folder, .modern-search #search-result .found-vendor, .modern-search #search-result .search-result-btn {
  text-decoration: none !important;
}
/* ==========================================================
   ИКОНКА КАТАЛОГА
========================================================== */
.top-categor-title .s1 {
  position: relative !important;
  flex: 0 0 32px !important;
  width: 32px !important;
  height: 32px !important;
  margin-left: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.14) !important;
  transition: transform 0.35s cubic-bezier(0.22, 0.61, 0.36, 1), background 0.25s ease !important;
}
.top-categor-title .s2 {
  position: relative !important;
  display: block !important;
  width: 12px !important;
  height: 8px !important;
  border-right: 2px solid #fff !important;
  border-bottom: 2px solid #fff !important;
  transform: rotate(45deg) translate(-2px, -2px) !important;
  transition: transform 0.35s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
}
/* Анимация иконки */
.top-categor-title:hover .s1 {
  background: rgba(255, 255, 255, 0.22) !important;
  transform: rotate(90deg) scale(1.08) !important;
}
.top-categor-title:hover .s2 {
  transform: rotate(45deg) translate(1px, 1px) scale(1.08) !important;
}
/* ==========================================================
   СПИСОК КАТАЛОГА
========================================================== */
.top-categor-wr .left-categor {
  position: absolute !important;
  top: calc(100% + 8px) !important;
  left: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 10px !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 45px rgba(30, 44, 73, 0.18) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-8px) scale(0.98) !important;
  transform-origin: top center !important;
  transition: opacity 0.22s ease, visibility 0.22s ease, transform 0.28s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
  z-index: 9999 !important;
  box-sizing: border-box !important;
}
/* Открытие при наведении */
.top-categor-wr:hover .left-categor {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) scale(1) !important;
}
/* ==========================================================
   ПУНКТЫ КАТАЛОГА
========================================================== */
.top-categor-wr .left-categor li {
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.top-categor-wr .left-categor li > a {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 7px 12px !important;
  border-radius: 13px !important;
  color: #1D1D1B !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease !important;
}
/* Наведение */
.top-categor-wr .left-categor li > a:hover {
  background: #F2F8FF !important;
  color: #1D1D1B !important;
  transform: translateX(4px) !important;
}
/* ==========================================================
   ФРЕЙМ ПОД ИКОНКУ ТОВАРА
========================================================== */
.top-categor-wr .left-categor li > a:before {
  content: "" !important;
  flex: 0 0 40px !important;
  width: 40px !important;
  height: 40px !important;
  margin-right: 12px !important;
  border-radius: 10px !important;
  background: #EDF5FC !important;
  border: 1px solid rgba(84, 161, 241, 0.16) !important;
  box-sizing: border-box !important;
  transition: transform 0.28s cubic-bezier(0.22, 0.61, 0.36, 1), background 0.22s ease, box-shadow 0.22s ease !important;
}
/* Реакция фрейма */
.top-categor-wr .left-categor li > a:hover:before {
  background: #E0F0FF !important;
  transform: scale(1.06) rotate(-2deg) !important;
  box-shadow: 0 5px 12px rgba(84, 161, 241, 0.16) !important;
}
/* ==========================================================
   УБИРАЕМ ПЛЮСЫ
========================================================== */
.top-categor-wr .left-categor .s1, .top-categor-wr .left-categor .s2, .top-categor-wr .left-categor .plus, .top-categor-wr .left-categor .submenu-toggle, .top-categor-wr .left-categor .menu-plus {
  display: none !important;
}
/* ==========================================================
   АНИМАЦИЯ ПОЯВЛЕНИЯ ПУНКТОВ
========================================================== */
.top-categor-wr:hover .left-categor li {
  animation: catalogItemIn 0.32s ease both !important;
}
.top-categor-wr:hover .left-categor li:nth-child(2) {
  animation-delay: 0.03s !important;
}
.top-categor-wr:hover .left-categor li:nth-child(3) {
  animation-delay: 0.06s !important;
}
.top-categor-wr:hover .left-categor li:nth-child(4) {
  animation-delay: 0.09s !important;
}
.top-categor-wr:hover .left-categor li:nth-child(5) {
  animation-delay: 0.12s !important;
}
@keyframes catalogItemIn {
  from {
    opacity: 0;
    transform: translateY(5px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* ==========================================================
   СТРЕЛКА / ИКОНКА
========================================================== */
.top-categor-title .s1 {
  position: relative !important;
  width: 31px !important;
  height: 31px !important;
  flex: 0 0 31px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 12px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.16) !important;
  transition: transform 0.35s cubic-bezier(0.22, 0.61, 0.36, 1), background 0.25s ease !important;
}
.top-categor-title .s2 {
  position: relative !important;
  width: 11px !important;
  height: 11px !important;
  display: block !important;
  border-right: 2px solid #fff !important;
  border-bottom: 2px solid #fff !important;
  transform: rotate(45deg) translate(-2px, -2px) !important;
  transition: transform 0.35s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
}
.top-categor-wr:hover .top-categor-title .s1 {
  transform: rotate(90deg) scale(1.08) !important;
  background: rgba(255, 255, 255, 0.23) !important;
}
/* ==========================================================
   ВЫПАДАЮЩЕЕ МЕНЮ
========================================================== */
.top-categor-wr .left-categor {
  position: absolute !important;
  top: calc(100% + 10px) !important;
  left: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 9px !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 22px !important;
  box-shadow: 0 20px 45px rgba(30, 44, 73, 0.17) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-9px) scale(0.985) !important;
  transform-origin: top center !important;
  transition: opacity 0.22s ease, visibility 0.22s ease, transform 0.28s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
  box-sizing: border-box !important;
  z-index: 9999 !important;
}
/* ОТКРЫВАЕТСЯ ПРИ НАВЕДЕНИИ */
.top-categor-wr:hover .left-categor {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) scale(1) !important;
}
/* ==========================================================
   ПУНКТЫ
========================================================== */
.top-categor-wr .left-categor li {
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
/* Ссылка */
.top-categor-wr .left-categor li > a {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 6px 10px !important;
  color: #1D1D1B !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  border-radius: 12px !important;
  box-sizing: border-box !important;
  transition: background 0.2s ease, transform 0.2s ease, color 0.2s ease !important;
}
/* Hover */
.top-categor-wr .left-categor li > a:hover {
  background: #F2F8FF !important;
  color: #1D1D1B !important;
  transform: translateX(4px) !important;
}
/* ==========================================================
   ФРЕЙМ ПОД ИКОНКУ
========================================================== */
.top-categor-wr .left-categor li > a:before {
  content: "" !important;
  flex: 0 0 42px !important;
  width: 42px !important;
  height: 42px !important;
  margin-right: 12px !important;
  border-radius: 11px !important;
  background: #EEF6FF !important;
  box-sizing: border-box !important;
  transition: transform 0.28s ease, background 0.22s ease, box-shadow 0.22s ease !important;
}
.top-categor-wr .left-categor li > a:hover:before {
  background: #E1F0FF !important;
  transform: scale(1.05) !important;
  box-shadow: 0 5px 12px rgba(84, 161, 241, 0.14) !important;
}
/* ==========================================================
   ЕСЛИ SHOP2 САМ ВЫВЕЛ КАРТИНКУ КАТЕГОРИИ
========================================================== */
.top-categor-wr .left-categor li > a .item-image {
  position: relative !important;
  flex: 0 0 42px !important;
  width: 42px !important;
  height: 42px !important;
  margin-right: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 11px !important;
  background: #EEF6FF !important;
  overflow: hidden !important;
  z-index: 2 !important;
  box-sizing: border-box !important;
}
.top-categor-wr .left-categor li > a .item-image img {
  display: block !important;
  width: 30px !important;
  height: 30px !important;
  object-fit: contain !important;
  transition: transform 0.28s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
}
.top-categor-wr .left-categor li > a:hover .item-image img {
  transform: scale(1.12) rotate(-3deg) !important;
}
/* Если есть настоящая картинка — псевдофрейм не нужен */
.top-categor-wr .left-categor li > a:has(.item-image):before {
  display: none !important;
}
/* ==========================================================
   ТЕКСТ
========================================================== */
.top-categor-wr .left-categor li > a .item-text {
  min-width: 0 !important;
  flex: 1 1 auto !important;
  display: block !important;
  color: inherit !important;
  line-height: 1.3 !important;
}
/* ==========================================================
   УБИРАЕМ СТАНДАРТНЫЕ ПЛЮСЫ
========================================================== */
.top-categor-wr .left-categor li > .s1, .top-categor-wr .left-categor li > .s2, .top-categor-wr .left-categor li > .plus, .top-categor-wr .left-categor li > .menu-plus, .top-categor-wr .left-categor li > .submenu-toggle {
  display: none !important;
}
/* ==========================================================
   ПЛАВНОЕ ПОЯВЛЕНИЕ
========================================================== */
.top-categor-wr:hover .left-categor > li {
  animation: catalogItemAppear 0.3s ease both !important;
}
.top-categor-wr:hover .left-categor > li:nth-child(2) {
  animation-delay: 0.03s !important;
}
.top-categor-wr:hover .left-categor > li:nth-child(3) {
  animation-delay: 0.06s !important;
}
.top-categor-wr:hover .left-categor > li:nth-child(4) {
  animation-delay: 0.09s !important;
}
.top-categor-wr:hover .left-categor > li:nth-child(5) {
  animation-delay: 0.12s !important;
}
@keyframes catalogItemAppear {
  from {
    opacity: 0;
    transform: translateY(5px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* ==========================================================
   СУЩЕСТВУЮЩИЙ СТАРЫЙ КАТАЛОГ
   Реальные классы из DOM:
   .left-categor-wr
   .left-categor-title
   .left-categor
========================================================== */
.left-categor-wr {
  position: relative !important;
  width: 100% !important;
  max-width: 420px !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 50 !important;
}
/* ==========================================================
   ПЛАШКА "КАТАЛОГ"
========================================================== */
.left-categor-wr > .left-categor-title {
  position: relative !important;
  width: 100% !important;
  height: 60px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin: 0 !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
  background: #54A1F1 !important;
  background-image: none !important;
  border: 0 !important;
  border-width: 0 !important;
  border-style: none !important;
  border-radius: 32px !important;
  box-shadow: 0 9px 24px rgba(84, 161, 241, 0.22) !important;
  color: #fff !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  transition: box-shadow 0.22s ease, transform 0.22s ease !important;
}
.left-categor-wr > .left-categor-title:hover {
  background: #54A1F1 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 12px 28px rgba(84, 161, 241, 0.28) !important;
}
/* ==========================================================
   СТРЕЛКА
========================================================== */
.left-categor-wr > .left-categor-title .s1 {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  flex: 0 0 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 12px !important;
  background: rgba(255, 255, 255, 0.17) !important;
  border: 0 !important;
  border-radius: 50% !important;
  transition: transform 0.3s ease, background 0.2s ease !important;
}
.left-categor-wr > .left-categor-title .s2 {
  display: block !important;
  width: 10px !important;
  height: 10px !important;
  border-right: 2px solid #fff !important;
  border-bottom: 2px solid #fff !important;
  transform: rotate(45deg) translate(-2px, -2px) !important;
  transition: transform 0.3s ease !important;
}
.left-categor-wr:hover > .left-categor-title .s1 {
  transform: rotate(90deg) !important;
  background: rgba(255, 255, 255, 0.24) !important;
}
/* ==========================================================
   СПИСОК — ЗАКРЫТ ПО УМОЛЧАНИЮ
========================================================== */
.left-categor-wr > .left-categor {
  position: absolute !important;
  top: calc(100% + 10px) !important;
  left: 0 !important;
  width: 100% !important;
  max-width: 420px !important;
  display: block !important;
  margin: 0 !important;
  padding: 8px !important;
  box-sizing: border-box !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 45px rgba(30, 44, 73, 0.16) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(-8px) !important;
  z-index: 99999 !important;
  transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.25s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
}
/* ==========================================================
   СПИСОК — ОТКРЫВАЕТСЯ ТОЛЬКО ПРИ НАВЕДЕНИИ
========================================================== */
.left-categor-wr:hover > .left-categor {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}
/* ==========================================================
   УБИРАЕМ СТАРЫЕ МАРКЕРЫ / ТОЧКИ
========================================================== */
.left-categor-wr > .left-categor, .left-categor-wr > .left-categor ul, .left-categor-wr > .left-categor li {
  list-style: none !important;
  list-style-type: none !important;
  list-style-image: none !important;
}
.left-categor-wr > .left-categor li::marker, .left-categor-wr > .left-categor ul li::marker {
  content: "" !important;
  display: none !important;
}
.left-categor-wr > .left-categor li::before, .left-categor-wr > .left-categor li::after {
  content: none !important;
  display: none !important;
}
/* ==========================================================
   ОСНОВНЫЕ ПУНКТЫ
========================================================== */
.left-categor-wr > .left-categor > li {
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.left-categor-wr > .left-categor > li > a {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 56px !important;
  margin: 0 !important;
  padding: 7px 10px !important;
  box-sizing: border-box !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 13px !important;
  color: #1D1D1B !important;
  font-family: "Raleway", sans-serif !important;
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}
.left-categor-wr > .left-categor > li > a:hover {
  background: #F2F7FC !important;
  color: #1D1D1B !important;
}
/* ==========================================================
   ФРЕЙМ ПОД ИКОНКУ
========================================================== */
/* ==========================================================
   ПОДКАТЕГОРИИ
========================================================== */
.left-categor-wr .left-categor ul {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  list-style: none !important;
}
.left-categor-wr .left-categor ul li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.left-categor-wr .left-categor ul li > a {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 40px !important;
  padding: 5px 10px !important;
  box-sizing: border-box !important;
  color: #66727A !important;
  font-family: "Raleway", sans-serif !important;
  font-size: 13px !important;
  line-height: 18px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  transition: background 0.18s ease, color 0.18s ease !important;
}
.left-categor-wr .left-categor ul li > a:hover {
  background: #F3F7FB !important;
  color: #1D1D1B !important;
}
/* Иконка у подкатегории немного меньше */
/* ==========================================================
   УБИРАЕМ ЛЮБЫЕ ШТАТНЫЕ ПЛЮСЫ
========================================================== */
.left-categor-wr .left-categor li[class*="haschild"]::before, .left-categor-wr .left-categor li[class*="haschild"]::after {
  display: none !important;
  content: none !important;
}
/* ==========================================================
   МОБИЛЬНЫЙ
========================================================== */
@media (max-width: 800px) {
  .left-categor-wr {
    max-width: none !important;
  }
  .left-categor-wr > .left-categor-title {
    min-height: 52px !important;
    height: 52px !important;
    border-radius: 28px !important;
    font-size: 16px !important;
  }
  .left-categor-wr > .left-categor {
    max-width: none !important;
    border-radius: 18px !important;
  }
}
/* ==========================================================
   КАТАЛОГ — ФИНАЛЬНЫЕ СТРЕЛКИ
   Работаем с реальным старым каталогом:
   .left-categor-wr / .left-categor-title / .left-categor
========================================================== */
/* ----------------------------------------------------------
   УБИРАЕМ СТАРУЮ ГРАФИКУ ПЛЮСА У ЗАГОЛОВКА
---------------------------------------------------------- */
.left-categor-wr > .left-categor-title .s1, .left-categor-wr > .left-categor-title .s2 {
  display: none !important;
}
/* Чистая стрелка у "Каталог" */
.left-categor-wr > .left-categor-title {
  position: relative !important;
  padding-right: 62px !important;
}
.left-categor-wr > .left-categor-title::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  right: 22px !important;
  width: 11px !important;
  height: 11px !important;
  margin-top: -7px !important;
  border-right: 2px solid #FFFFFF !important;
  border-bottom: 2px solid #FFFFFF !important;
  background: transparent !important;
  transform: rotate(45deg) !important;
  box-sizing: border-box !important;
  transition: transform 0.28s ease, border-color 0.2s ease !important;
}
.left-categor-wr:hover > .left-categor-title::after {
  transform: rotate(225deg) !important;
}
/* ----------------------------------------------------------
   УБИРАЕМ ЛЮБЫЕ ШТАТНЫЕ ПЛЮСЫ
---------------------------------------------------------- */
.left-categor-wr .menu-plus, .left-categor-wr .plus, .left-categor-wr .submenu-toggle, .left-categor-wr [class*="plus"], .left-categor-wr [class*="Plus"] {
  display: none !important;
}
/* ----------------------------------------------------------
   СТРЕЛКА У ОСНОВНЫХ КАТЕГОРИЙ
   Появляется только если у li есть дочерний ul
---------------------------------------------------------- */
.left-categor-wr > .left-categor > li:has(> ul)::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  right: 17px !important;
  width: 8px !important;
  height: 8px !important;
  margin-top: -5px !important;
  border-right: 2px solid #54A1F1 !important;
  border-bottom: 2px solid #54A1F1 !important;
  transform: rotate(45deg) !important;
  pointer-events: none !important;
  transition: transform 0.22s ease, border-color 0.2s ease !important;
}
/* При наведении — стрелка вверх */
.left-categor-wr > .left-categor > li:has(> ul):hover::after {
  transform: rotate(225deg) !important;
  border-color: #1D1D1B !important;
}
/* Чтобы стрелка не лежала поверх текста */
.left-categor-wr > .left-categor > li:has(> ul) > a {
  padding-right: 38px !important;
}
/* ----------------------------------------------------------
   НИ ОДНОЙ ТОЧКИ
---------------------------------------------------------- */
.left-categor-wr, .left-categor-wr ul, .left-categor-wr li {
  list-style: none !important;
  list-style-type: none !important;
  list-style-image: none !important;
}
.left-categor-wr li::marker {
  content: "" !important;
  font-size: 0 !important;
}
/* ----------------------------------------------------------
   УБИРАЕМ РАМКИ С ЛОКАЛЬНОГО КАТАЛОГА
---------------------------------------------------------- */
.left-categor-wr, .left-categor-wr > .left-categor-title, .left-categor-wr > .left-categor, .left-categor-wr > .left-categor li, .left-categor-wr > .left-categor li > a {
  border: 0 !important;
  outline: 0 !important;
}
/* ----------------------------------------------------------
   ОСНОВНОЙ ЦВЕТ ПЛАШКИ
---------------------------------------------------------- */
.left-categor-wr > .left-categor-title {
  background: #54A1F1 !important;
  background-image: none !important;
  border-radius: 32px !important;
}
/* ----------------------------------------------------------
   ПОДКАТЕГОРИИ:
   СКРЫТЫ → ОТКРЫВАЮТСЯ ПРИ НАВЕДЕНИИ
---------------------------------------------------------- */
.left-categor-wr > .left-categor > li > ul {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  height: auto !important;
  margin: 0 !important;
  padding: 4px 0 7px !important;
  transform: translateY(-4px) !important;
  overflow: hidden !important;
  transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease !important;
}
.left-categor-wr > .left-categor > li:hover > ul {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}
/* Более глубокие уровни — та же механика */
.left-categor-wr .left-categor ul li > ul {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-3px) !important;
}
.left-categor-wr .left-categor ul li:hover > ul {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}
/* ----------------------------------------------------------
   ФРЕЙМЫ ПОД ИКОНКИ
---------------------------------------------------------- */
/* Иконки основных пунктов каталога */
/* ----------------------------------------------------------
   ОСНОВНЫЕ ПУНКТЫ
---------------------------------------------------------- */
.left-categor-wr > .left-categor > li > a {
  min-height: 56px !important;
  display: flex !important;
  align-items: center !important;
  padding: 7px 38px 7px 10px !important;
  box-sizing: border-box !important;
  background: transparent !important;
  border-radius: 13px !important;
  color: #1D1D1B !important;
  text-decoration: none !important;
}
.left-categor-wr > .left-categor > li > a:hover {
  background: #F2F7FC !important;
}
/* ----------------------------------------------------------
   ПОДКАТЕГОРИИ
---------------------------------------------------------- */
.left-categor-wr > .left-categor > li > ul > li > a {
  min-height: 40px !important;
  display: flex !important;
  align-items: center !important;
  padding: 5px 34px 5px 54px !important;
  color: #66727A !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 9px !important;
  text-decoration: none !important;
}
.left-categor-wr > .left-categor > li > ul > li > a:hover {
  background: #F3F7FB !important;
  color: #1D1D1B !important;
}
/* ----------------------------------------------------------
   САМ СПИСОК — БЕЛАЯ ПЛАШКА
---------------------------------------------------------- */
.left-categor-wr > .left-categor {
  margin-top: 10px !important;
  padding: 8px !important;
  background: #FFFFFF !important;
  border-radius: 32px !important;
  box-shadow: 0 12px 32px rgba(30, 44, 73, 0.1) !important;
}
/* ==========================================================
   КАТАЛОГ — СТАТИЧНЫЙ
   Основные категории всегда видны.
   Подкатегории по-прежнему открываются при наведении.
========================================================== */
.left-categor-wr > .left-categor {
  position: static !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  max-height: none !important;
  margin: 10px 0 0 !important;
  padding: 8px !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  overflow: visible !important;
  background: #FFFFFF !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 32px !important;
  box-shadow: 0 12px 32px rgba(30, 44, 73, 0.1) !important;
}
/* Запрещаем старому hover-коду прятать весь каталог */
.left-categor-wr:hover > .left-categor {
  position: static !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
}
/* Основные категории всегда на месте */
.left-categor-wr > .left-categor > li {
  display: block !important;
}
/* Подкатегории НЕ превращаем в статичные:
   они остаются скрытыми до наведения на конкретную категорию. */
.left-categor-wr > .left-categor > li > ul {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-4px) !important;
}
.left-categor-wr > .left-categor > li:hover > ul {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}
/* ==========================================================
   КАТАЛОГ — СТРЕЛКИ ТОЛЬКО У ПУНКТОВ
========================================================== */
/* У самого заголовка «Каталог» стрелки НЕ будет */
.left-categor-wr > .left-categor-title .s1, .left-categor-wr > .left-categor-title .s2, .left-categor-wr > .left-categor-title::after {
  display: none !important;
  content: none !important;
}
.left-categor-wr > .left-categor-title {
  padding-right: 22px !important;
}
/* Убираем любые старые плюсы у пунктов */
.left-categor-wr .left-categor li .s1, .left-categor-wr .left-categor li .s2, .left-categor-wr .left-categor li .plus, .left-categor-wr .left-categor li .menu-plus, .left-categor-wr .left-categor li .submenu-toggle, .left-categor-wr .left-categor li [class*="plus"], .left-categor-wr .left-categor li [class*="Plus"] {
  display: none !important;
}
/* Чистая стрелка только у категорий, у которых есть подпункты */
.left-categor-wr > .left-categor > li:has(> ul)::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  right: 18px !important;
  width: 8px !important;
  height: 8px !important;
  margin-top: -5px !important;
  border-right: 2px solid #54A1F1 !important;
  border-bottom: 2px solid #54A1F1 !important;
  background: transparent !important;
  transform: rotate(45deg) !important;
  pointer-events: none !important;
  transition: transform 0.22s ease, border-color 0.22s ease !important;
}
/* При наведении стрелка поворачивается вверх */
.left-categor-wr > .left-categor > li:has(> ul):hover::after {
  transform: rotate(225deg) !important;
  border-color: #1D1D1B !important;
}
/* Резервируем место под стрелку */
.left-categor-wr > .left-categor > li:has(> ul) > a {
  padding-right: 40px !important;
}
/* ==========================================================
   КАЛЬКУЛЯТОР — ВМЕСТО ЗАГОЛОВКА КАТАЛОГА
========================================================== */
.left-categor-wr > .left-categor-calculator, .left-categor-calculator {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 270px !important;
  min-height: 64px !important;
  height: 64px !important;
  margin: 0 0 10px 0 !important;
  padding: 8px !important;
  box-sizing: border-box !important;
  background: #1D1D1B !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 24px !important;
  color: #1D1D1B !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  box-shadow: 0 10px 28px rgba(30, 44, 73, 0.1) !important;
  overflow: hidden !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s ease !important;
}
.left-categor-wr > .left-categor-calculator:hover, .left-categor-calculator:hover {
  color: #1D1D1B !important;
  text-decoration: none !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 18px 38px rgba(30, 44, 73, 0.16) !important;
}
.left-categor-calculator__icon img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}
/* Убираем влияние старых стилей ссылок */
.left-categor-wr > .left-categor-calculator:link, .left-categor-wr > .left-categor-calculator:visited, .left-categor-wr > .left-categor-calculator:hover, .left-categor-wr > .left-categor-calculator:active, .left-categor-wr > .left-categor-calculator:focus {
  color: #1D1D1B !important;
  text-decoration: none !important;
  border: 0 !important;
  outline: 0 !important;
}
/* Иконка калькулятора — без фрейма */
.left-categor-calculator__icon {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 70px !important;
  height: 70px !important;
  min-width: 70px !important;
  flex: 0 0 60px !important;
  margin: 0 8px 0 -2px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.left-categor-calculator__icon img {
  display: block !important;
  width: 60px !important;
  height: 60px !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  transform: scale(1) !important;
  transform-origin: center center !important;
}
/* Текст */
.left-categor-calculator__text {
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  font-family: "Fira Sans", sans-serif !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
/* Круг со стрелкой */
.left-categor-calculator__arrow {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  flex: 0 0 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 50% !important;
  background: #A1D6DC !important;
  box-sizing: border-box !important;
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), background 0.3s ease !important;
}
/* Нормальная стрелка → */
.left-categor-calculator__arrow svg {
  display: block !important;
  width: 26px !important;
  height: 26px !important;
  margin: 0 !important;
  padding: 0 !important;
  fill: none !important;
  stroke: #1D1D1B !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.left-categor-calculator:hover .left-categor-calculator__arrow {
  transform: translateX(6px) !important;
  background: #C5E7AF !important;
}
.left-categor-calculator:hover .left-categor-calculator__icon {
  transform: scale(1.04) !important;
  background: transparent !important;
}
/* Категории начинаются сразу под кнопкой */
.left-categor-wr > .left-categor {
  margin-top: 10px !important;
}
/* На узких экранах */
@media (max-width: 800px) {
  .left-categor-wr > .left-categor-calculator, .left-categor-calculator {
    max-width: none !important;
    min-height: 58px !important;
    height: 58px !important;
    border-radius: 999px !important;
  }
  .left-categor-calculator__icon, .left-categor-calculator__arrow {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    flex-basis: 42px !important;
  }
  .left-categor-calculator__text {
    font-size: 16px !important;
  }
  .left-categor-calculator__arrow svg {
    width: 22px !important;
    height: 22px !important;
  }
}
/* ==========================================================
   КАТАЛОГ — ПОДПУНКИ БЕЗ ТОЧЕК И ФРЕЙМОВ
========================================================== */
/* Убираем абсолютно все маркеры у подпунктов */
.left-categor-wr .left-categor ul, .left-categor-wr .left-categor ul li {
  list-style: none !important;
  list-style-type: none !important;
  list-style-image: none !important;
}
.left-categor-wr .left-categor ul li::marker {
  content: none !important;
  display: none !important;
}
.left-categor-wr .left-categor ul li::before, .left-categor-wr .left-categor ul li::after {
  content: none !important;
  display: none !important;
}
/* Фрейм только у ПЕРВОГО уровня */
/* У любого подпункта — никакого фрейма */
/* Подпункты идут обычным текстом */
.left-categor-wr > .left-categor > li > ul > li > a, .left-categor-wr .left-categor ul li > a {
  padding-left: 12px !important;
}
/* Убираем возможный отступ/область старого маркера */
.left-categor-wr .left-categor ul li > a {
  list-style: none !important;
  text-indent: 0 !important;
}
/* Если тема создаёт маркер через background */
.left-categor-wr .left-categor ul li > a {
  background-image: none !important;
}
/* ==========================================================
   ЖЁСТКО УБИРАЕМ ТОЧКИ ПЕРЕД ТЕКСТОМ ПОДПУНКОВ
========================================================== */
/* Любой возможный маркер внутри подпунктов */
.left-categor-wr .left-categor .level-2 > li, .left-categor-wr .left-categor .level-3 > li, .left-categor-wr .left-categor ul li {
  list-style: none !important;
  list-style-type: none !important;
  list-style-position: outside !important;
  text-indent: 0 !important;
}
/* Псевдоэлемент самого LI */
.left-categor-wr .left-categor .level-2 > li::before, .left-categor-wr .left-categor .level-2 > li::after, .left-categor-wr .left-categor .level-3 > li::before, .left-categor-wr .left-categor .level-3 > li::after, .left-categor-wr .left-categor ul li::before, .left-categor-wr .left-categor ul li::after {
  content: "" !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
}
/* Псевдоэлементы ссылки — именно они могут давать точку в тексте */
.left-categor-wr .left-categor .level-2 > li > a::before, .left-categor-wr .left-categor .level-2 > li > a::after, .left-categor-wr .left-categor .level-3 > li > a::before, .left-categor-wr .left-categor .level-3 > li > a::after, .left-categor-wr .left-categor ul li > a::before, .left-categor-wr .left-categor ul li > a::after {
  content: "" !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}
/* У самой ссылки не должно быть маркера/отступа */
.left-categor-wr .left-categor .level-2 > li > a, .left-categor-wr .left-categor .level-3 > li > a, .left-categor-wr .left-categor ul li > a {
  list-style: none !important;
  list-style-type: none !important;
  text-indent: 0 !important;
  background-image: none !important;
}
/* ==========================================================
   КАТАЛОГ — ШИРЕ + ОТСТУП СНИЗУ
========================================================== */
/* Весь левый блок каталога/калькулятора */
.left-categor-wr {
  width: 100% !important;
  max-width: 420px !important;
  margin-bottom: 24px !important;
}
/* Кнопка «Калькулятор» — той же ширины */
.left-categor-wr > .left-categor-calculator, .left-categor-calculator {
  width: 100% !important;
  max-width: 420px !important;
}
/* Сам каталог — шире */
.left-categor-wr > .left-categor {
  width: 100% !important;
  max-width: 420px !important;
  margin-bottom: 24px !important;
}
/* Чтобы контент внутри не ужимался */
.left-categor-wr > .left-categor > li > a {
  width: 100% !important;
}
.left-categor-wr > .left-categor > li > ul {
  width: 100% !important;
}
/* Дополнительный зазор между каталогом и следующим блоком */
.left-categor-wr + .shop2-filter-wr {
  margin-top: 24px !important;
}
.left-categor-wr + .shop2-filter-wr, .left-categor-wr ~ .edit-block-wr {
  clear: both !important;
}
/* На десктопе оставляем более просторную ширину */
@media (min-width: 801px) {
  .left-categor-wr {
    max-width: 420px !important;
  }
  .left-categor-wr > .left-categor-calculator, .left-categor-calculator, .left-categor-wr > .left-categor {
    max-width: 420px !important;
  }
}
/* ==========================================================
   ФИНАЛ — СКРУГЛЕНИЯ
========================================================== */
/* Кнопка «Калькулятор» */
.left-categor-wr > .left-categor-calculator, .left-categor-calculator {
  border-radius: 24px !important;
}
/* Основные пункты каталога при наведении */
.left-categor-wr > .left-categor > li > a:hover {
  border-radius: 21px !important;
}
/* Подпункты при наведении */
.left-categor-wr > .left-categor > li > ul > li > a:hover, .left-categor-wr .left-categor ul li > a:hover {
  border-radius: 12px !important;
}
/* Более глубокие подпункты тоже */
.left-categor-wr .left-categor ul ul li > a:hover {
  border-radius: 21px !important;
}
/* ФИНАЛ: у иконки калькулятора вообще не должно быть фона */
.left-categor-wr .left-categor-calculator__icon, .left-categor-wr .left-categor-calculator:hover .left-categor-calculator__icon, .left-categor-wr .left-categor-calculator:focus .left-categor-calculator__icon, .left-categor-wr .left-categor-calculator:active .left-categor-calculator__icon {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
/* ==========================================================
   КАТАЛОГ — ИКОНКИ ОСНОВНЫХ ПУНКТОВ
========================================================== */
.left-categor-wr > .left-categor > li > a .catalog-icon-frame {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 50px !important;
  height: 50px !important;
  min-width: 50px !important;
  min-height: 50px !important;
  flex: 0 0 50px !important;
  margin: 0 12px 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}
.left-categor-wr > .left-categor > li > a .catalog-icon-frame img {
  display: block !important;
  width: 50px !important;
  height: 50px !important;
  min-width: 50px !important;
  min-height: 50px !important;
  max-width: 50px !important;
  max-height: 50px !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}
/* ==========================================================
   КАТАЛОГ — НАВЕДЕНИЕ НА ОСНОВНЫЕ ПУНКТЫ
========================================================== */
.left-categor-wr > .left-categor > li > a {
  transition: background 0.22s ease, color 0.22s ease, transform 0.22s ease, box-shadow 0.22s ease !important;
}
.left-categor-wr > .left-categor > li > a:hover, .left-categor-wr > .left-categor > li > a:focus {
  background: #EAF5FF !important;
  border-radius: 21px !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 14px rgba(30, 44, 73, 0.08) !important;
}
.left-categor-wr > .left-categor > li > a:hover .catalog-icon-frame, .left-categor-wr > .left-categor > li > a:focus .catalog-icon-frame {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}
.left-categor-wr > .left-categor > li > a:hover .catalog-icon-frame img, .left-categor-wr > .left-categor > li > a:focus .catalog-icon-frame img {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}
/* ==========================================================
   КАТАЛОГ — ОБЩИЙ ФОН ПОДПУНКТОВ
========================================================== */
.left-categor-wr > .left-categor > li > ul {
  margin: 4px 0 8px 0 !important;
  padding: 6px !important;
  background: #F4F8FC !important;
  border: 0 !important;
  border-radius: 21px !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}
/* ==========================================================
   КАТАЛОГ — ПОДПУНКТЫ
========================================================== */
.left-categor-wr > .left-categor > li > ul > li > a {
  width: 100% !important;
  min-height: 36px !important;
  padding: 6px 12px !important;
  box-sizing: border-box !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 14px !important;
  color: #66727A !important;
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease !important;
}
.left-categor-wr > .left-categor > li > ul > li > a:hover, .left-categor-wr > .left-categor > li > ul > li > a:focus {
  background: #EAF5FF !important;
  color: #1D1D1B !important;
  border-radius: 14px !important;
  transform: translateX(4px) !important;
}
/* ==========================================================
   ШАПКА — СТРЕЛКИ + HOVER КНОПОК КОНСУЛЬТАЦИЯ / ОНЛАЙН-ОПЛАТА
========================================================== */
/* Кнопки */
.header-modern__consultation-btn, .header-modern__payment {
  position: relative !important;
  overflow: hidden !important;
  transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease, transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s ease !important;
}
/* Круг со стрелкой */
.header-modern__consultation-icon, .header-modern__payment-icon {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  flex: 0 0 32px !important;
  margin-left: 2px !important;
  border-radius: 50% !important;
  background: #4AA4FF !important;
  font-size: 0 !important;
  line-height: 1 !important;
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), background 0.3s ease, box-shadow 0.3s ease !important;
}
/* Если SVG уже есть в header.tpl */
.header-modern__consultation-icon svg, .header-modern__payment-icon svg {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  fill: none !important;
  stroke: #1D1D1B !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
/* Консультация — базовый вид */
.header-modern__consultation-btn {
  background: #fff !important;
  color: #1D1D1B !important;
}
/* Онлайн-оплата — базовый вид */
.header-modern__payment {
  background: #4AA4FF !important;
  color: #fff !important;
}
.header-modern__payment .header-modern__payment-icon {
  background: #fff !important;
}
/* ==========================================================
   HOVER — ТЁМНЫЙ ФОН + ZOOM
========================================================== */
.header-modern__consultation-btn:hover, .header-modern__payment:hover {
  background: #1D1D1B !important;
  border-color: #1D1D1B !important;
  color: #fff !important;
  transform: translateY(-3px) scale(1.025) !important;
  box-shadow: 0 12px 28px rgba(29, 29, 27, 0.2), 0 0 0 1px rgba(255, 255, 255, 0.06) inset !important;
}
/* Стрелка при наведении */
.header-modern__consultation-btn:hover .header-modern__consultation-icon, .header-modern__payment:hover .header-modern__payment-icon {
  transform: translateX(5px) scale(1.08) !important;
}
/* Цвет кругов при наведении */
.header-modern__consultation-btn:hover .header-modern__consultation-icon {
  background: #C5E7AF !important;
}
.header-modern__payment:hover .header-modern__payment-icon {
  background: #C5E7AF !important;
}
/* ==========================================================
   БЛЕСК ПРИ НАВЕДЕНИИ
========================================================== */
.header-modern__consultation-btn::after, .header-modern__payment::after {
  content: "" !important;
  position: absolute !important;
  top: -60% !important;
  left: -80% !important;
  width: 45% !important;
  height: 220% !important;
  background: linear-gradient(105deg, transparent 0%, rgba(255, 255, 255, 0) 35%, rgba(255, 255, 255, 0.65) 50%, rgba(255, 255, 255, 0) 65%, transparent 100%) !important;
  transform: translateX(0) rotate(12deg) !important;
  pointer-events: none !important;
  z-index: 5 !important;
  opacity: 0 !important;
}
.header-modern__consultation-btn:hover::after, .header-modern__payment:hover::after {
  opacity: 1 !important;
  animation: headerButtonShine 0.75s ease-out forwards !important;
}
@keyframes headerButtonShine {
  from {
    transform: translateX(0) rotate(12deg);
  }
  to {
    transform: translateX(430%) rotate(12deg);
  }
}
/* Контент кнопки поверх блика */
.header-modern__consultation-btn > *, .header-modern__payment > * {
  position: relative !important;
  z-index: 6 !important;
}
/* Не даём старым стилям сдвигать стрелку вверх */
.header-modern__consultation-btn:hover .header-modern__consultation-icon {
  transform: translateX(5px) scale(1.08) !important;
}
/* Адаптив */
@media (max-width: 800px) {
  .header-modern__consultation-icon, .header-modern__payment-icon {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    flex-basis: 30px !important;
  }
  .header-modern__consultation-icon svg, .header-modern__payment-icon svg {
    width: 17px !important;
    height: 17px !important;
  }
}
/* ==========================================================
   ШАПКА — ДОПОЛНИТЕЛЬНАЯ НАСТРОЙКА
========================================================== */
/* Дескрипшн — шире, консультация ближе к нему */
.header-modern__descriptor {
  max-width: 410px !important;
  width: 410px !important;
}
.header-modern__consultation {
  margin-left: -18px !important;
}
/* Телефон */
.header-modern__phone-icon, .header-modern__email-icon, .header-modern__cart, .header-modern__social {
  transform-origin: center center !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s ease !important;
}
/* Zoom при наведении — телефон и почта */
.header-modern__contact--phone:hover .header-modern__phone-icon, .header-modern__contact--email:hover .header-modern__email-icon {
  transform: scale(1.12) !important;
}
/* Zoom при наведении — корзина */
.header-modern__cart:hover {
  transform: scale(1.1) !important;
}
/* Zoom при наведении — соцсети */
.header-modern__social:hover {
  transform: translateY(-2px) scale(1.08) !important;
}
/* На самом телефоне — нужный номер */
.header-modern__contact--phone .header-modern__contact-value {
  font-size: 0 !important;
}
.header-modern__contact--phone .header-modern__contact-value::after {
  content: "8 (812) 622 21 85" !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
}
/* На узких экранах возвращаем нормальную ширину */
@media (max-width: 1100px) {
  .header-modern__descriptor {
    width: auto !important;
    max-width: 330px !important;
  }
  .header-modern__consultation {
    margin-left: 0 !important;
  }
}
/* =========================================================
   MODERN M-UPAK FOOTER
   ========================================================= */
.site-footer {
  position: relative;
  width: 100%;
  background: #1D1D1B;
  color: #fff;
  overflow: hidden;
  isolation: isolate;
}
/* =========================================================
   DECORATIVE CIRCLES
   ========================================================= */
.site-footer__decor {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}
.site-footer__circle {
  position: absolute;
  display: block;
  border: 3px solid rgba(74, 164, 255, 0.42);
  border-radius: 50%;
  box-sizing: border-box;
  will-change: transform;
  transition: border-color 0.6s ease, opacity 0.6s ease, transform 1s cubic-bezier(0.22, 1, 0.36, 1);
}
/* Большой круг слева */
.site-footer__circle--1 {
  width: 390px;
  height: 390px;
  left: -190px;
  top: 80px;
  animation: footerCircleFloat1 9s ease-in-out infinite;
}
/* Круг рядом с логотипом */
.site-footer__circle--2 {
  width: 210px;
  height: 210px;
  left: 180px;
  bottom: -115px;
  border-width: 2px;
  opacity: 0.7;
  animation: footerCircleFloat2 7s ease-in-out infinite;
}
/* Большой круг справа */
.site-footer__circle--3 {
  width: 470px;
  height: 470px;
  right: -235px;
  top: -180px;
  border-width: 3px;
  opacity: 0.45;
  animation: footerCircleFloat3 11s ease-in-out infinite;
}
/* Маленький круг возле формы */
.site-footer__circle--4 {
  width: 125px;
  height: 125px;
  right: 390px;
  bottom: -45px;
  border-width: 2px;
  opacity: 0.6;
  animation: footerCircleFloat4 6s ease-in-out infinite;
}
/* Маленький акцент */
.site-footer__circle--5 {
  width: 55px;
  height: 55px;
  right: 48%;
  top: 55px;
  border-width: 2px;
  opacity: 0.65;
  animation: footerCircleFloat5 5s ease-in-out infinite;
}
/* =========================================================
   CIRCLE ANIMATIONS
   ========================================================= */
@keyframes footerCircleFloat1 {
  0%, 100% {
    transform: translate3d(0, 0, 0) rotate(0deg);
  }
  50% {
    transform: translate3d(25px, -18px, 0) rotate(7deg);
  }
}
@keyframes footerCircleFloat2 {
  0%, 100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(-18px, -25px, 0);
  }
}
@keyframes footerCircleFloat3 {
  0%, 100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(-30px, 25px, 0) rotate(-5deg);
  }
}
@keyframes footerCircleFloat4 {
  0%, 100% {
    transform: translate3d(0, 0, 0) scale(1);
  }
  50% {
    transform: translate3d(12px, -18px, 0) scale(1.08);
  }
}
@keyframes footerCircleFloat5 {
  0%, 100% {
    transform: translate3d(0, 0, 0) scale(1);
  }
  50% {
    transform: translate3d(-12px, 15px, 0) scale(1.12);
  }
}
/* =========================================================
   CONTENT ABOVE DECOR
   ========================================================= */
.site-footer__top, .site-footer__bottom {
  position: relative;
  z-index: 2;
}
/* =========================================================
   TOP GRID
   ========================================================= */
.site-footer__top {
  display: grid;
  grid-template-columns: 1fr 1.15fr 0.9fr 1.25fr;
  gap: 55px;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 75px 40px 65px;
  box-sizing: border-box;
}
/* =========================================================
   LOGO
   ========================================================= */
.site-footer__brand {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.site-footer__logo {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  text-decoration: none;
  transform: translateZ(0);
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}
.site-footer__logo img {
  display: block;
  width: 220px;
  height: auto;
  transform-origin: center center;
  will-change: transform, filter;
  transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1), filter 0.45s ease;
}
/* =========================================================
   LOGO HOVER
   ========================================================= */
.site-footer__logo:hover {
  transform: translateY(-6px) scale(1.015);
}
.site-footer__logo:hover img {
  transform: scale(1.055) rotate(-1deg);
  filter: drop-shadow(0 12px 22px rgba(74, 164, 255, 0.22));
}
/*
   Когда курсор на логотипе —
   реагируют и декоративные круги
*/
.site-footer:has(.site-footer__logo:hover) .site-footer__circle--1 {
  transform: translate3d(42px, -22px, 0) scale(1.06);
  border-color: rgba(74, 164, 255, 0.72);
}
.site-footer:has(.site-footer__logo:hover) .site-footer__circle--2 {
  transform: translate3d(-30px, -35px, 0) scale(1.08);
  border-color: rgba(74, 164, 255, 0.7);
}
.site-footer:has(.site-footer__logo:hover) .site-footer__circle--3 {
  transform: translate3d(-45px, 35px, 0) scale(1.05);
  border-color: rgba(74, 164, 255, 0.65);
}
.site-footer:has(.site-footer__logo:hover) .site-footer__circle--4 {
  transform: translate3d(25px, -30px, 0) scale(1.15);
  border-color: rgba(74, 164, 255, 0.8);
}
.site-footer:has(.site-footer__logo:hover) .site-footer__circle--5 {
  transform: translate3d(-18px, 22px, 0) scale(1.25);
  border-color: rgba(74, 164, 255, 0.9);
}
/* =========================================================
   DESCRIPTION
   ========================================================= */
.site-footer__description {
  margin-top: 25px;
  font-size: 16px;
  line-height: 1.55;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.62);
}
/* =========================================================
   LABELS
   ========================================================= */
.site-footer__label {
  margin-bottom: 25px;
  font-size: 13px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #4AA4FF;
}
/* =========================================================
   MENU
   ========================================================= */
.site-footer__menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.site-footer__menu li {
  margin: 0 0 11px;
  padding: 0;
}
.site-footer__menu a {
  display: inline-block;
  color: rgba(255, 255, 255, 0.82);
  font-size: 16px;
  line-height: 1.4;
  text-decoration: none;
  transition: color 0.25s ease, transform 0.25s ease;
}
.site-footer__menu a:hover {
  color: #4AA4FF;
  transform: translateX(6px);
}
/* =========================================================
   CONTACTS
   ========================================================= */
.site-footer__phone {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 18px;
}
.site-footer__phone a {
  color: #fff;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 700;
  text-decoration: none;
  transition: color 0.25s ease;
}
.site-footer__phone a:hover {
  color: #4AA4FF;
}
.site-footer__address {
  max-width: 300px;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.6);
}
/* =========================================================
   SOCIAL
   ========================================================= */
.site-footer__social {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 25px;
}
.site-footer__social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 50%;
  transition: border-color 0.25s ease, background 0.25s ease, transform 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}
.site-footer__social img {
  display: block;
  width: 22px;
  height: 22px;
  object-fit: contain;
}
.site-footer__social a:hover {
  border-color: #4AA4FF;
  background: rgba(74, 164, 255, 0.12);
  transform: translateY(-4px) scale(1.05);
}
/* =========================================================
   FORM
   ========================================================= */
.site-footer__form {
  position: relative;
  padding: 28px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.045);
  box-sizing: border-box;
  animation: footerFormIn 0.8s cubic-bezier(0.22, 1, 0.36, 1) both;
}
.site-footer__form-title {
  margin-bottom: 10px;
  font-family: "Fira Sans", sans-serif;
  font-size: 28px;
  line-height: 1.1;
  font-weight: 700;
  color: #fff;
}
.site-footer__form-text {
  margin-bottom: 23px;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.58);
}
/* =========================================================
   FORM FIELDS
   ========================================================= */
.site-footer__field {
  position: relative;
  margin-bottom: 10px;
}
.site-footer__field input {
  display: block;
  width: 100%;
  height: 48px;
  padding: 0 15px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 9px;
  outline: none;
  background: rgba(255, 255, 255, 0.055);
  color: #fff;
  font-family: inherit;
  font-size: 14px;
  box-sizing: border-box;
  transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
}
.site-footer__field input::placeholder {
  color: rgba(255, 255, 255, 0.45);
}
.site-footer__field input:hover {
  border-color: rgba(74, 164, 255, 0.55);
}
.site-footer__field input:focus {
  border-color: #4AA4FF;
  background: rgba(74, 164, 255, 0.06);
  box-shadow: 0 0 0 3px rgba(74, 164, 255, 0.1);
}
/* =========================================================
   AGREEMENTS
   ========================================================= */
.site-footer__agreement {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: 9px;
  cursor: pointer;
  font-size: 11px;
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.48);
}
.site-footer__agreement input {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  margin: 1px 0 0;
  accent-color: #4AA4FF;
  cursor: pointer;
}
.site-footer__agreement span {
  display: block;
}
.site-footer__agreement a {
  color: rgba(255, 255, 255, 0.75);
  text-decoration: underline;
  transition: color 0.2s ease;
}
.site-footer__agreement a:hover {
  color: #4AA4FF;
}
/* =========================================================
   BUTTON
   ========================================================= */
.site-footer__submit {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 52px;
  margin-top: 20px;
  padding: 0 17px 0 20px;
  border: 0;
  border-radius: 9px;
  background: #4AA4FF;
  color: #fff;
  font-family: inherit;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.25s ease, transform 0.3s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.3s ease;
}
.site-footer__submit svg {
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
.site-footer__submit:hover {
  background: #3697F5;
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(74, 164, 255, 0.24);
}
.site-footer__submit:hover svg {
  transform: translateX(6px);
}
.site-footer__submit:active {
  transform: translateY(0);
}
/* =========================================================
   FORM ENTRANCE
   ========================================================= */
@keyframes footerFormIn {
  from {
    opacity: 0;
    transform: translateY(30px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
/* =========================================================
   BOTTOM
   ========================================================= */
.site-footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 22px 40px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  box-sizing: border-box;
}
.site-footer__copyright, .site-footer__legal {
  font-size: 12px;
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.4);
}
.site-footer__counters {
  margin-left: auto;
}
/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 1100px) {
  .site-footer__top {
    grid-template-columns: 1fr 1fr;
    gap: 45px;
  }
  .site-footer__circle--4 {
    right: 30px;
  }
}
@media (max-width: 800px) {
  .site-footer__top {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 55px 25px 45px;
  }
  .site-footer__logo img {
    width: 190px;
  }
  .site-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
    padding: 20px 25px;
  }
  .site-footer__counters {
    margin-left: 0;
  }
  .site-footer__circle--1 {
    width: 280px;
    height: 280px;
    left: -170px;
  }
  .site-footer__circle--3 {
    width: 330px;
    height: 330px;
    right: -190px;
  }
  .site-footer__circle--5 {
    right: 25px;
  }
}
@media (max-width: 480px) {
  .site-footer__top {
    padding: 45px 18px 35px;
  }
  .site-footer__form {
    padding: 22px;
    border-radius: 14px;
  }
  .site-footer__form-title {
    font-size: 24px;
  }
  .site-footer__phone a {
    font-size: 20px;
  }
  .site-footer__bottom {
    padding: 18px;
  }
  .site-footer__circle--2, .site-footer__circle--4, .site-footer__circle--5 {
    opacity: 0.35;
  }
}
/* =========================================================
   REDUCED MOTION
   ========================================================= */
@media (prefers-reduced-motion: reduce) {
  .site-footer__circle, .site-footer__form {
    animation: none;
  }
  .site-footer__logo, .site-footer__logo img, .site-footer__menu a, .site-footer__social a, .site-footer__submit, .site-footer__submit svg {
    transition: none;
  }
}
