

/* Start:/local/templates/qfast/components/bitrix/news.detail/qfast_product/style.min.css?177586794079503*/
/* ==========================================================================
   Catalog element / qfast — адаптивный стиль (1920x1080 base)

   Блоки и префиксы переменных:
     .product-hero      → --hero-*
     .product-detail    → --pd-*
     .product-feature   → --pf-*
     .features          → --ft-*  (общий для handle/water/wring/premium/
                                   flex-edge/microfiber/mechanisms/duo-feature)

   Брейкпоинты:
     1. Base: desktop 1920 (clamp() на все размеры)
     2. @media (max-width: 1599px) — tablet: переопределение переменных
     3. @media (max-width: 767px)  — mobile: переопределение переменных + layout
     4. Portrait tablet  — @media (max-aspect-ratio: 3/4) and (min-width: 768px)
     5. Portrait phone   — @media (max-aspect-ratio: 3/4) and (max-width: 767px)

   SVG: внутренние координаты путей логотипов (.product-hero__logo-vector-*,
   .product-hero__logo-m-vector-*, .product-hero__group*) НЕ масштабируются —
   это локальные pixel-координаты внутри SVG-грида.
   ========================================================================== */


/* ==========================================================================
   product-hero — переменные (base 1920)
   ========================================================================== */
.product-hero {
  /* Layout */
  --hero-height:         clamp(500px, 71.3dvh, 770px);          /* 770 */
  --hero-side-pad:       80px;                                  /* 80 — align с .site-header__inner left:80px */
  --hero-col-gap:        clamp(16px, 2.08dvw, 40px);            /* 40 */
  --hero-col-bottom-pad: clamp(24px, 4.17dvw, 80px);            /* 80 */

  /* Card */
  --hero-card-maxw:      clamp(320px, 29.17dvw, 560px);         /* 560 */
  --hero-card-pad:       clamp(20px, 1.67dvw, 32px);            /* 32 */
  --hero-card-radius:    clamp(16px, 1.67dvw, 32px);            /* 32 */
  --hero-card-gap:       clamp(12px, 1.25dvw, 24px);            /* 24 */
  --hero-card-gap-inner: clamp(8px, 0.63dvw, 12px);             /* 12 */

  /* Back button */
  --hero-back-w:         clamp(74px, 5.21dvw, 100px);           /* 100 */
  --hero-back-h:         clamp(24px, 1.56dvw, 30px);            /* 30 */
  --hero-back-left:      var(--hero-side-pad);                  /* 80 */
  --hero-back-top:       clamp(60px, 10.28dvh, 111px);          /* 111 */
  --hero-back-pad-r:     clamp(10px, 1.04dvw, 20px);            /* 20 */
  --hero-back-icon:      clamp(20px, 1.56dvw, 30px);            /* 30 */
  --hero-back-icon-pad:  clamp(3px, 0.26dvw, 5px);              /* 5 */

  /* Buttons */
  --hero-buy-w:          clamp(160px, 11.46dvw, 220px);         /* 220 */
  --hero-buy-h:          clamp(38px, 2.71dvw, 52px);            /* 52 */
  --hero-buy-pad-x:      clamp(24px, 3.13dvw, 60px);            /* 60 */
  --hero-link-sz:        clamp(38px, 2.71dvw, 52px);            /* 52 ozon/wb */

  /* Color dots */
  --hero-dot:            clamp(20px, 1.56dvw, 30px);            /* 30 */

  /* Fonts */
  --hero-fs-back:        clamp(12px, 0.83dvw, 16px);            /* 16 */
  --hero-fs-name:        clamp(16px, 1.25dvw, 24px);            /* 24 */
  --hero-fs-label:       clamp(14px, 1.04dvw, 20px);            /* 20 */
  --hero-fs-price:       clamp(16px, 1.25dvw, 24px);            /* 24 */
  --hero-fs-buy:         clamp(14px, 1.04dvw, 20px);            /* 20 */

  align-self: stretch;
  height: var(--hero-height);
  position: relative;
  background: #EFEFEF;
  overflow: hidden;
}

/* ---- Container ---- */
.product-hero__container {
  position: relative;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 var(--hero-side-pad);
  height: 100%;
  z-index: 1;
  display: flex;
  flex-direction: column;
}

.product-hero__columns {
  display: flex;
  align-items: anchor-center;
  flex: 1;
  gap: var(--hero-col-gap);
  padding-bottom: var(--hero-col-bottom-pad);
}

/* ---- Background image ---- */
.product-hero__bg-image {
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
  object-fit: cover;
  object-position: center center;
}

/* ==========================================================================
   product-hero: desktop header (show at tablet/mobile) и mobile header
   ВНИМАНИЕ: все координаты внутри логотипов (.product-hero__logo-vector-*,
   .product-hero__logo-m-vector-*, .product-hero__group-*) — это пиксельный
   грид SVG, НЕ масштабировать. Эти блоки оставлены без изменений.
   ========================================================================== */
.product-hero__header {
  display: none;
  width: 1200px;
  height: 75px;
  left: 0; top: 0;
  position: absolute;
  overflow: hidden;
}

.product-hero__header-nav {
  width: 1160px;
  max-height: 35px; min-height: 35px;
  left: 20px; top: 20px;
  position: absolute;
  justify-content: space-between;
  align-items: center;
  display: inline-flex;
}

.product-hero__logo {
  width: 192.65px; height: 24px;
  position: relative;
  box-shadow: 0px 4px 8px rgba(3.13, 26.05, 26.05, 0.10);
  backdrop-filter: blur(7.50px);
}

.product-hero__group       { width: 49.67px; height: 24px; left: 0; top: 0; position: absolute; }
.product-hero__logo-vector-1  { width: 15.62px; height: 7.14px;  left: 17.15px; top: 4.82px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-vector-2  { width: 49.67px; height: 24px;    left: 0;       top: 0;      position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__group-2     { width: 136.98px; height: 21.47px; left: 55.67px; top: 1.36px; position: absolute; }
.product-hero__logo-vector-3  { width: 22.34px; height: 21.47px; left: 0;       top: 0;      position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-vector-4  { width: 14.99px; height: 17.03px; left: 24.59px; top: 0.82px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-vector-5  { width: 14.66px; height: 16.20px; left: 41.58px; top: 1.31px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-vector-6  { width: 16.64px; height: 15.34px; left: 56.57px; top: 1.74px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-vector-7  { width: 15.83px; height: 14.63px; left: 70.24px; top: 2.30px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__group-3     { width: 48.45px; height: 17.43px; left: 88.53px; top: 0.82px; position: absolute; }
.product-hero__logo-vector-8  { width: 10.68px; height: 14.66px; left: 0;       top: 1.54px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-vector-9  { width: 4.50px;  height: 15.25px; left: 12.06px; top: 1.13px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-vector-10 { width: 12.77px; height: 15.98px; left: 18.47px; top: 0.62px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-vector-11 { width: 15.65px; height: 17.43px; left: 32.80px; top: 0;      position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }

.product-hero__header-menu {
  max-width: 407px; min-width: 407px;
  max-height: 35px; min-height: 35px;
  background: rgba(239.46, 239.46, 239.46, 0.80);
  box-shadow: 0px 4px 8px rgba(3.13, 26.05, 26.05, 0.10);
  border-radius: 1000px;
  backdrop-filter: blur(7.50px);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.product-hero__buy-btn-polzunki-dlya-khedera,
.product-hero__buy-btn-polzunki-dlya-khedera-2,
.product-hero__buy-btn-polzunki-dlya-khedera-3,
.product-hero__buy-btn-polzunki-dlya-khedera-4 {
  height: 35px;
  padding: 12px 24px;
  border-radius: 1000px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  display: flex;
}
.product-hero__buy-btn-polzunki-dlya-khedera   { max-width: 99px;  min-width: 99px; }
.product-hero__buy-btn-polzunki-dlya-khedera-2 { max-width: 96px;  min-width: 96px; }
.product-hero__buy-btn-polzunki-dlya-khedera-3 { max-width: 79px;  min-width: 79px; }
.product-hero__buy-btn-polzunki-dlya-khedera-4 { max-width: 133px; min-width: 133px; }

.product-hero__nav-item,
.product-hero__nav-item-2,
.product-hero__nav-item-3,
.product-hero__nav-item-4 {
  color: #094141;
  font-size: 14px;
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.70px;
  white-space: nowrap;
}

.product-hero__header-actions {
  max-width: 110px; min-width: 110px;
  max-height: 35px; min-height: 35px;
  background: rgba(239.46, 239.46, 239.46, 0.80);
  box-shadow: 0px 4px 8px rgba(3.13, 26.05, 26.05, 0.10);
  border-radius: 1000px;
  backdrop-filter: blur(7.50px);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.product-hero__header-ikonki,
.product-hero__header-ikonki-2 { width: 55px; height: 35px; position: relative; }

/* ---- Mobile header (SVG-грид — не масштабируем) ---- */
.product-hero__header-mobile {
  display: none;
  width: 360px; height: 52px;
  left: 0; top: 0;
  position: absolute;
  overflow: hidden;
}

.product-hero__header-mobile-nav {
  width: 320px;
  max-height: 25px; min-height: 25px;
  left: 20px; top: 13.50px;
  position: absolute;
  justify-content: space-between;
  align-items: center;
  display: inline-flex;
}

.product-hero__logo-mobile {
  width: 160.57px; height: 20px;
  position: relative;
  box-shadow: 0px 4px 8px rgba(3.13, 26.05, 26.05, 0.10);
  backdrop-filter: blur(7.50px);
}

.product-hero__group-mobile   { width: 41.40px; height: 20px; left: 0; top: 0; position: absolute; }
.product-hero__logo-m-vector-1  { width: 13.02px; height: 5.95px;  left: 14.29px; top: 4.02px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-m-vector-2  { width: 41.40px; height: 20px;    left: 0;       top: 0;      position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__group-2-mobile { width: 114.16px; height: 17.89px; left: 46.41px; top: 1.13px; position: absolute; }
.product-hero__logo-m-vector-3  { width: 18.62px; height: 17.89px; left: 0;       top: 0;      position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-m-vector-4  { width: 12.49px; height: 14.19px; left: 20.50px; top: 0.68px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-m-vector-5  { width: 12.22px; height: 13.50px; left: 34.65px; top: 1.09px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-m-vector-6  { width: 13.87px; height: 12.79px; left: 47.15px; top: 1.45px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-m-vector-7  { width: 13.20px; height: 12.19px; left: 58.54px; top: 1.91px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__group-3-mobile { width: 40.38px; height: 14.53px; left: 73.78px; top: 0.68px; position: absolute; }
.product-hero__logo-m-vector-8  { width: 8.91px;  height: 12.22px; left: 0;       top: 1.28px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-m-vector-9  { width: 3.75px;  height: 12.71px; left: 10.05px; top: 0.94px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-m-vector-10 { width: 10.64px; height: 13.32px; left: 15.40px; top: 0.52px; position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }
.product-hero__logo-m-vector-11 { width: 13.04px; height: 14.53px; left: 27.34px; top: 0;      position: absolute; background: rgba(239.46, 239.46, 239.46, 0.80); }

.product-hero__ikonki-mobile {
  width: 60px; height: 25px;
  position: relative;
  background: rgba(239.46, 239.46, 239.46, 0.80);
  box-shadow: 0px 4px 8px rgba(3.13, 26.05, 26.05, 0.10);
  border-radius: 1000px;
  backdrop-filter: blur(7.50px);
}

/* ---- Back button ---- */
.product-hero__back {
  max-width: var(--hero-back-w); min-width: var(--hero-back-w);
  max-height: var(--hero-back-h); min-height: var(--hero-back-h);
  padding-right: var(--hero-back-pad-r);
  left: var(--hero-back-left);
  top: var(--hero-back-top);
  position: absolute;
  background: rgba(239, 239, 239, 0.85);
  border-radius: 1000px;
  justify-content: flex-start;
  align-items: center;
  gap: clamp(4px, 0.26dvw, 5px);
  display: inline-flex;
  z-index: 2;
  text-decoration: none;
  cursor: pointer;
}

.product-hero__back-icon {
  width: var(--hero-back-icon);
  height: var(--hero-back-icon);
  padding: var(--hero-back-icon-pad);
  border-radius: 1000px;
  justify-content: center;
  align-items: center;
  gap: clamp(4px, 0.26dvw, 5px);
  display: flex;
}

.product-hero__back-text {
  justify-content: center;
  display: flex;
  flex-direction: column;
  color: #094141;
  font-size: var(--hero-fs-back);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
  white-space: nowrap;
}

/* ---- Brand letters ---- */
.product-hero__brand {
  flex: 2;
  min-width: 0;
  overflow: hidden;
}

.product-hero__brand svg {
  width: 52%;
  height: 77%;
}

/* ---- Product card ---- */
.product-hero__card {
  flex: 1;
  max-width: var(--hero-card-maxw);
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: var(--hero-card-gap-inner);
  display: inline-flex;
  z-index: 2;
  flex-shrink: 0;
}

.product-hero__card-inner {
  align-self: stretch;
  padding: var(--hero-card-pad);
  background: rgba(239, 239, 239, 0.85);
  border-radius: var(--hero-card-radius);
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: var(--hero-card-gap);
  display: flex;
}

.product-hero__name-wrap {
  width: fit-content;
}

.product-hero__name {
  justify-content: center;
  display: flex;
  flex-direction: column;
  color: #094141;
  font-size: var(--hero-fs-name);
  font-family: Inter;
  font-weight: 900;
  line-height: 110%;
  word-wrap: break-word;
  white-space: pre-wrap;
}

.product-hero__divider-top,
.product-hero__divider-bottom {
  align-self: stretch;
  height: 1px;
  background: #EFEFEF;
}

.product-hero__colors {
  align-self: stretch;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: var(--hero-card-gap-inner);
  display: flex;
}

.product-hero__color-label {
  align-self: stretch;
  justify-content: center;
  display: flex;
  flex-direction: column;
  color: #094141;
  font-size: var(--hero-fs-label);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  word-wrap: break-word;
}

.product-hero__color-dots {
  justify-content: flex-start;
  align-items: center;
  gap: 0;
  display: inline-flex;
}

.product-hero__color-dot {
  width: var(--hero-dot);
  height: var(--hero-dot);
  padding: 0;
  border: 2px solid transparent;
  border-radius: 50%;
  cursor: pointer;
  background: none;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color 0.3s ease;
  text-decoration: none;
  flex-shrink: 0;
  box-sizing: content-box;
}

.product-hero__color-dot svg {
  width: 85%;
  height: 85%;
  display: block;
  border-radius: 50%;
}

.product-hero__color-dot--active {
  border-color: var(--dot-color, #094141);
}

.product-hero__purchase {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: var(--hero-card-gap-inner);
  display: flex;
}

.product-hero__prices {
  justify-content: flex-start;
  align-items: center;
  gap: clamp(8px, 0.68dvw, 13px);
  display: inline-flex;
}

.product-hero__price-wrap,
.product-hero__price-old-wrap {
  max-width: 807.87px;
  padding-top: 3.03px;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 8.02px;
  display: flex;
}

.product-hero__price-old-wrap {
  position: relative;
  opacity: 0.50;
}

.product-hero__price,
.product-hero__price-old {
  justify-content: center;
  display: flex;
  flex-direction: column;
  color: #094141;
  font-size: var(--hero-fs-price);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  white-space: nowrap;
}

.product-hero__price-old-line {
  width: clamp(49px, 4.38dvw, 84px);
  height: 2px;
  left: -1.14px;
  top: 16.02px;
  position: absolute;
  background: #094141;
}

.product-hero__buttons {
  justify-content: flex-start;
  align-items: center;
  gap: clamp(4px, 0.42dvw, 8px);
  display: inline-flex;
}

.product-hero__buy-btn {
  width: var(--hero-buy-w);
  height: var(--hero-buy-h);
  padding-left: var(--hero-buy-pad-x);
  padding-right: var(--hero-buy-pad-x);
  background: #094141;
  border-radius: 1000px;
  justify-content: center;
  align-items: center;
  gap: clamp(6px, 0.52dvw, 10px);
  display: flex;
  border: none;
  cursor: pointer;
  transition: opacity 0.2s;
}

.product-hero__buy-btn:hover { opacity: 0.85; }

.product-hero__buy-text {
  color: white;
  font-size: var(--hero-fs-buy);
  font-family: Inter;
  font-weight: 700;
  line-height: 120%;
  white-space: nowrap;
}

.product-hero__ozon-link,
.product-hero__wb-link {
  width: var(--hero-link-sz);
  height: var(--hero-link-sz);
  position: relative;
  overflow: hidden;
  border-radius: 50%;
  display: flex;
  flex-shrink: 0;
  aspect-ratio: 1 / 1;
  transition: opacity 0.2s;
}

.product-hero__ozon-link svg,
.product-hero__wb-link svg {
  width: 100%;
  height: 100%;
  display: block;
}

.product-hero__ozon-link svg path[fill="#EFEFEF"],
.product-hero__wb-link svg path[fill="#EFEFEF"] { fill: #E2F397; transition: fill 0.3s ease; }
.product-hero__ozon-link:hover svg path[fill="#EFEFEF"],
.product-hero__wb-link:hover svg path[fill="#EFEFEF"] { fill: #fff; }

.product-hero__ozon-link:hover,
.product-hero__wb-link:hover { opacity: 0.7; }

/* ---- Mobile buy section ---- */
.product-hero__mobile-section {
  display: none;
  max-width: 188px; min-width: 188px;
  max-height: 30px; min-height: 30px;
  left: 152.11px; top: 599px;
  position: absolute;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 12px;
}

.product-hero__buttons-mobile {
  max-width: 188px; min-width: 188px;
  max-height: 30px; min-height: 30px;
  justify-content: flex-start;
  align-items: center;
  gap: 4px;
  display: flex;
}

.product-hero__buy-btn-mobile {
  width: 120px; height: 30px;
  padding: 0 24px;
  background: #094141;
  border-radius: 1000px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  display: flex;
  border: none;
  cursor: pointer;
  transition: opacity 0.2s;
}

.product-hero__buy-btn-mobile:hover { opacity: 0.85; }

.product-hero__buy-text-mobile {
  color: white;
  font-size: 14px;
  font-family: Inter;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: -0.02em;
  white-space: nowrap;
}

.product-hero__ozon-link-mobile,
.product-hero__wb-link-mobile {
  width: 30px; height: 30px;
  position: relative;
  overflow: hidden;
  border-radius: 480.75px;
  display: flex;
  flex-shrink: 0;
  aspect-ratio: 1 / 1;
  transition: opacity 0.2s;
}

.product-hero__ozon-link-mobile { background: #E2F397; }

.product-hero__ozon-link-mobile svg path[fill="#EFEFEF"],
.product-hero__wb-link-mobile svg path[fill="#EFEFEF"] { fill: #E2F397; transition: fill 0.3s ease; }
.product-hero__ozon-link-mobile:hover svg path[fill="#EFEFEF"],
.product-hero__wb-link-mobile:hover svg path[fill="#EFEFEF"] { fill: #fff; }

.product-hero__ozon-link-mobile:hover,
.product-hero__wb-link-mobile:hover { opacity: 0.7; }


/* ==========================================================================
   product-detail — переменные + base
   ========================================================================== */
.product-detail {
  --pd-side-pad:       clamp(20px, 4.17dvw, 80px);    /* 80 */
  --pd-bottom-pad:     clamp(40px, 4.17dvw, 80px);    /* 80 */
  --pd-col-gap:        clamp(20px, 2.08dvw, 40px);    /* 40 */
  --pd-sidebar-maxw:   clamp(320px, 29.17dvw, 560px); /* 560 */
  --pd-specs-pad:      clamp(20px, 1.67dvw, 32px);    /* 32 */
  --pd-specs-radius:   clamp(16px, 1.25dvw, 24px);    /* 24 */
  --pd-specs-top:      clamp(60px, 9.26dvh, 100px);   /* 100 */

  --pd-fs-section-ttl: clamp(20px, 1.67dvw, 32px);    /* 32 */
  --pd-fs-text:        clamp(14px, 0.83dvw, 16px);    /* 16 */
  --pd-fs-specs-ttl:   clamp(18px, 1.25dvw, 24px);    /* 24 */
  --pd-fs-spec:        clamp(12px, 0.73dvw, 14px);    /* 14 */

  --pd-mb-section:     clamp(16px, 1.56dvw, 30px);    /* 30 */
  --pd-mb-desc:        clamp(32px, 3.13dvw, 60px);    /* 60 */
  --pd-mb-specs-ttl:   clamp(16px, 1.25dvw, 24px);    /* 24 */
  --pd-spec-pad-y:     clamp(8px, 0.63dvw, 12px);     /* 12 */

  max-width: 1920px;
  margin: 0 auto;
  padding: 0 var(--pd-side-pad) var(--pd-bottom-pad);
}

.product-detail__columns {
  display: flex;
  gap: var(--pd-col-gap);
  align-items: stretch;
}

.product-detail__content {
  flex: 2;
  min-width: 0;
}

.product-detail__section-title {
  color: #094141;
  font-size: var(--pd-fs-section-ttl);
  font-family: Inter, sans-serif;
  font-weight: 900;
  line-height: 110%;
  letter-spacing: -0.05em;
  margin-bottom: var(--pd-mb-section);
}

.product-detail__description {
  margin-bottom: var(--pd-mb-desc);
}

.product-detail__text {
  color: #094141;
  font-size: var(--pd-fs-text);
  font-family: Inter, sans-serif;
  font-weight: 400;
  line-height: 160%;
  letter-spacing: -0.02em;
}

.product-detail__text p { margin-bottom: clamp(12px, 0.83dvw, 16px); }
.product-detail__text p:last-child { margin-bottom: 0; }

.product-detail__sidebar {
  flex: 1;
  max-width: var(--pd-sidebar-maxw);
  flex-shrink: 0;
}

.product-detail__specs {
  position: sticky;
  top: var(--pd-specs-top);
  padding: var(--pd-specs-pad);
  background: #F5F5F0;
  border-radius: var(--pd-specs-radius);
}

.product-detail__specs-title {
  color: #094141;
  font-size: var(--pd-fs-specs-ttl);
  font-family: Inter, sans-serif;
  font-weight: 900;
  line-height: 110%;
  letter-spacing: -0.05em;
  margin: 0 0 var(--pd-mb-specs-ttl);
}

.product-detail__specs-list {
  display: flex;
  flex-direction: column;
}

.product-detail__spec {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  padding: var(--pd-spec-pad-y) 0;
  border-bottom: 1px solid rgba(9, 65, 65, 0.1);
  gap: 4px 16px;
}

.product-detail__spec:first-child { border-top: 1px solid rgba(9, 65, 65, 0.1); }

.product-detail__spec-name {
  color: rgba(9, 65, 65, 0.5);
  font-size: var(--pd-fs-spec);
  font-family: Inter, sans-serif;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.02em;
  white-space: nowrap;
}

.product-detail__spec-value {
  color: #094141;
  font-size: var(--pd-fs-spec);
  font-family: Inter, sans-serif;
  font-weight: 400;
  line-height: 140%;
  letter-spacing: -0.02em;
  text-align: right;
  flex: 1;
  min-width: 50%;
}

.product-detail__spec-value:only-child,
.product-detail__spec:has(.product-detail__spec-value:last-child:nth-child(2)) .product-detail__spec-value {
  text-align: right;
}

.product-detail__instruction {
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.42dvw, 8px);
  margin-top: var(--pd-mb-specs-ttl);
  padding: clamp(10px, 0.73dvw, 14px) 0;
  color: #094141;
  font-size: var(--pd-fs-spec);
  font-family: Inter, sans-serif;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: -0.02em;
  text-decoration: none;
  border-top: 1px solid rgba(9, 65, 65, 0.1);
  transition: opacity 0.2s;
}

.product-detail__instruction:hover { opacity: 0.7; }
.product-detail__instruction svg { flex-shrink: 0; }


/* ==========================================================================
   product-feature — image + floating badge
   ========================================================================== */
.product-feature {
  --pf-radius:       clamp(16px, 1.67dvw, 32px);   /* 32 */
  --pf-badge-off:    clamp(16px, 2.08dvw, 40px);   /* 40 */
  --pf-badge-pad:    clamp(12px, 1.67dvw, 32px);   /* 32 */
  --pf-badge-radius: clamp(12px, 1.04dvw, 20px);   /* 20 */
  --pf-badge-gap:    clamp(12px, 1.25dvw, 24px);   /* 24 */
  --pf-badge-w:      clamp(320px, 32dvw, 614px);   /* 614 */
  --pf-icon:         clamp(32px, 2.71dvw, 52px);   /* 52 */
  --pf-info-gap:     clamp(4px, 0.52dvw, 10px);    /* 10 */
  --pf-fs-title:     clamp(18px, 1.67dvw, 32px);   /* 32 */
  --pf-fs-text:      clamp(14px, 1.25dvw, 24px);   /* 24 */

  position: relative;
  width: 100%;
  aspect-ratio: 1235 / 1080;
  overflow: hidden;
  border-radius: var(--pf-radius);
}

.product-feature__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-feature__badge {
  position: absolute;
  bottom: var(--pf-badge-off);
  right: var(--pf-badge-off);
  padding: var(--pf-badge-pad);
  background: rgba(239, 239, 239, 0.85);
  box-shadow: 0px 4px 8px rgba(3, 26, 26, 0.10);
  border-radius: var(--pf-badge-radius);
  backdrop-filter: blur(7.5px);
  display: inline-flex;
  align-items: flex-start;
  gap: var(--pf-badge-gap);
  width: var(--pf-badge-w);
}

.product-feature__icon {
  width: var(--pf-icon);
  height: var(--pf-icon);
  flex-shrink: 0;
  background: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-feature__info {
  display: flex;
  flex-direction: column;
  gap: var(--pf-info-gap);
}

.product-feature__title {
  color: #094141;
  font-size: var(--pf-fs-title);
  font-weight: 900;
  line-height: 1.1;
}

.product-feature__text {
  color: #094141;
  font-size: var(--pf-fs-text);
  font-weight: 400;
  line-height: 1.2;
}


/* ==========================================================================
   features — корневой блок (hansdle, water, wring, premium, flex-edge,
   microfiber, mechanisms, duo-feature)
   ========================================================================== */
.features {
  /* Палитра */
  --color-dark: #094141;
  --color-accent-green: #E2F397;
  --color-accent-red: #6E56A4;
  --color-accent-blue: #BDEEFF;
  --color-text: var(--color-dark);
  --color-card-bg: rgba(239, 239, 239, 0.80);

  /* Block-level defaults */
  --block-icon-bg: var(--color-accent-green);
  --block-icon-fill: var(--color-dark);
  --block-tag-bg: var(--color-accent-green);
  --block-tag-text: var(--color-dark);
  --block-heading-bg: var(--color-dark);
  --block-heading-text: var(--color-accent-green);
  --block-card-bg: var(--color-card-bg);
  --block-aspect: 1235 / 650;
  --block-aspect-tall: 1235 / 1080;

  /* Размеры (общие для всех подблоков) */
  --ft-radius-lg:    clamp(16px, 1.67dvw, 32px);   /* 32 */
  --ft-radius-md:    clamp(12px, 1.25dvw, 24px);   /* 24 */
  --ft-radius-sm:    clamp(10px, 1.04dvw, 20px);   /* 20 */
  --ft-radius-xs:    clamp(8px, 0.63dvw, 12px);    /* 12 */

  --ft-card-pad:     clamp(16px, 1.67dvw, 32px);   /* 32 */
  --ft-card-pad-md:  clamp(14px, 1.25dvw, 24px);   /* 24 */
  --ft-card-pad-sm:  clamp(10px, 1.15dvw, 22px);   /* 22 */
  --ft-card-pad-xs:  clamp(8px, 0.63dvw, 12px);    /* 12 */
  --ft-card-gap:     clamp(12px, 1.25dvw, 24px);   /* 24 */
  --ft-card-gap-sm:  clamp(8px, 0.78dvw, 15px);    /* 15 */

  --ft-icon-lg:      clamp(36px, 2.92dvw, 56px);   /* 56 */
  --ft-icon-md:      clamp(32px, 2.71dvw, 52px);   /* 52 */
  --ft-icon-sm:      clamp(28px, 2.08dvw, 40px);   /* 40 */

  --ft-tag-h:        clamp(36px, 2.92dvw, 56px);   /* 56 */
  --ft-tag-pad-x:    clamp(16px, 1.56dvw, 30px);   /* 30 */
  --ft-tag-pad-xm:   clamp(14px, 1.04dvw, 20px);   /* 20 */
  --ft-tag-radius:   clamp(36px, 2.81dvw, 54px);   /* 54 */

  --ft-info-gap:     clamp(4px, 0.52dvw, 10px);    /* 10 */
  --ft-info-gap-sm:  clamp(4px, 0.42dvw, 8px);     /* 8 */

  /* Typography */
  --ft-fs-title:       clamp(18px, 1.67dvw, 32px);   /* 32 */
  --ft-fs-title-md:    clamp(16px, 1.25dvw, 24px);   /* 24 */
  --ft-fs-text-lg:     clamp(14px, 1.25dvw, 24px);   /* 24 */
  --ft-fs-text:        clamp(14px, 1.04dvw, 20px);   /* 20 */
  --ft-fs-text-em:     clamp(14px, 1.2dvw, 25px);    /* 25 */
  --ft-fs-stat:        clamp(32px, 3.3dvw, 63.3px);  /* 63.3 / 65 */
  --ft-fs-nozzle:      clamp(18px, 1.84dvw, 35.24px);/* 35.24 */

  /* Divider */
  --ft-divider-h:    clamp(24px, 4.17dvw, 80px);   /* 80 */

  display: flex;
  flex-direction: column;
  width: 100%;
}

/* Block palette overrides (без изменений) */
.handle      { --block-icon-bg: white; --block-icon-fill: var(--color-accent-red); }
.wring {
  --block-icon-bg: white;
  --block-icon-fill: var(--color-accent-red);
  --block-tag-bg: var(--color-accent-green);
  --block-tag-text: var(--color-dark);
  --block-card-bg: #EFE9DD;
}
.premium     { --block-icon-bg: white; --block-icon-fill: var(--color-accent-red); }
.flex-edge {
  --block-tag-bg: var(--color-accent-red);
  --block-tag-text: white;
  --block-tag-alt-bg: var(--color-accent-green);
  --block-tag-alt-text: var(--color-dark);
}
.microfiber {
  --block-icon-bg: var(--color-accent-blue);
  --block-tag-bg: var(--color-accent-blue);
  --block-heading-bg: var(--color-dark);
  --block-heading-text: var(--color-accent-green);
}
.mechanisms { --block-icon-bg: white; --block-icon-fill: var(--color-accent-red); }
.vedro,
.duo-feature { --block-icon-bg: white; --block-icon-fill: var(--color-accent-red); }
.product-scheme { --block-icon-fill: var(--color-accent-red); }

.features__divider {
  height: var(--section-gap);
  background: transparent;
  flex-shrink: 0;
}


/* ===========================
   handle — «Телескопическая ручка»
   =========================== */
.handle { background: white; overflow: hidden; }

.handle__media {
  position: relative;
  width: 100%;
  aspect-ratio: var(--block-aspect-tall);
  overflow: hidden;
  border-radius: var(--ft-radius-lg);
}

.handle__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.handle__card {
  position: absolute;
  left: 50%;
  bottom: 5%;
  max-width: 48%;
  padding: var(--ft-card-pad);
  background: var(--block-card-bg);
  box-shadow: 0px 4px 8px rgba(3, 26, 26, 0.10);
  border-radius: var(--ft-radius-sm);
  backdrop-filter: blur(7.5px);
  display: inline-flex;
  align-items: flex-start;
  gap: var(--ft-card-gap);
}

.handle__icon {
  width: var(--ft-icon-md);
  height: var(--ft-icon-md);
  flex-shrink: 0;
  background: var(--block-icon-bg);
  color: var(--block-icon-fill);
  overflow: hidden;
  border-radius: 50%;
}
.handle__icon svg { width: 100%; height: 100%; }

.handle__info {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--ft-info-gap);
}

.handle__title {
  color: var(--color-text);
  font-size: var(--ft-fs-title-md);
  font-family: Inter;
  font-weight: 900;
  line-height: 110%;
}

.handle__text {
  color: var(--color-text);
  font-size: var(--ft-fs-text-lg);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
}

.handle__tag {
  position: absolute;
  left: 2%;
  top: 2.2%;
  height: var(--ft-tag-h);
  padding: 0 var(--ft-tag-pad-x);
  background: var(--block-tag-bg);
  border-radius: var(--ft-tag-radius);
  display: inline-flex;
  align-items: center;
  gap: clamp(6px, 0.52dvw, 10px);
}

.handle__tag-label {
  color: var(--color-text);
  font-size: var(--ft-fs-text);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
}


/* ===========================
   water — «Чистая вода / Экономия»
   =========================== */
.water { background: white; overflow: hidden; }

.water__media {
  position: relative;
  width: 100%;
  aspect-ratio: var(--block-aspect);
  background: #F2EEE5;
  overflow: hidden;
  border-radius: var(--ft-radius-lg);
}

.water__images {
  position: absolute;
  left: 41%;
  top: -1.3%;
  width: 61.3%;
  height: 137%;
}

.water__image { position: absolute; }
.water__image--bg      { width: 100%; height: 100%; left: 0; top: 0; }
.water__image--overlay { width: 93.3%; height: 39.1%; left: 1.2%; top: 39.8%; }

.water__cards {
  position: absolute;
  left: 2.3%;
  top: 3.7%;
  width: 42%;
  display: flex;
  flex-direction: column;
  gap: var(--ft-card-gap);
}

.water__card {
  padding: var(--ft-card-pad);
  background: white;
  box-shadow: 0px 4px 8px rgba(3, 26, 26, 0.10);
  border-radius: var(--ft-radius-md);
  backdrop-filter: blur(7.5px);
  display: flex;
  flex-direction: column;
  gap: var(--ft-info-gap);
}

.water__card-inner {
  display: flex;
  flex-direction: column;
  gap: var(--ft-card-gap);
}

.water__card-header {
  display: inline-flex;
  align-items: center;
  gap: var(--ft-info-gap-sm);
}

.water__icon {
  width: var(--ft-icon-lg);
  height: var(--ft-icon-lg);
  flex-shrink: 0;
  background: var(--block-icon-bg);
  color: var(--block-icon-fill);
  overflow: hidden;
  border-radius: 50%;
}
.water__icon svg { width: 100%; height: 100%; }

.water__tag {
  height: var(--ft-tag-h);
  padding: 0 var(--ft-tag-pad-xm);
  background: var(--block-tag-bg);
  border-radius: var(--ft-tag-radius);
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.52dvw, 10px);
}

.water__tag-label {
  color: var(--color-text);
  font-size: var(--ft-fs-text-em);
  font-family: Inter;
  font-weight: 400;
  line-height: 130%;
  letter-spacing: -0.02em;
}

.water__text {
  color: var(--color-text);
  font-size: var(--ft-fs-text);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
}

.water__stat {
  display: inline-flex;
  align-items: center;
  gap: var(--ft-card-gap);
}

.water__stat-value {
  color: var(--color-text);
  font-size: var(--ft-fs-stat);
  font-family: Inter;
  font-weight: 900;
  line-height: 100%;
  letter-spacing: -0.02em;
}

.water__stat-text {
  color: var(--color-text);
  font-size: var(--ft-fs-text);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
}


/* ===========================
   wring — «Бесконтактный отжим»
   =========================== */
.wring {
  display: grid;
  grid-template-columns: 37fr 63fr;
  gap: clamp(8px, 0.63dvw, 12px);
  background: white;
  overflow: hidden;
}

.wring__section {
  position: relative;
  overflow: hidden;
  border-radius: var(--ft-radius-lg);
}

.wring__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.wring__tag {
  position: absolute;
  left: 5%; top: 5%;
  height: var(--ft-tag-h);
  padding: 0 var(--ft-tag-pad-x);
  background: var(--block-tag-bg);
  border-radius: var(--ft-tag-radius);
  display: inline-flex;
  align-items: center;
  gap: clamp(6px, 0.52dvw, 10px);
}

.wring__tag-label {
  color: var(--block-tag-text);
  font-size: var(--ft-fs-text);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
}

.wring__card {
  position: absolute;
  right: 4%;
  bottom: 6%;
  left: 4%;
  padding: var(--ft-card-pad-md);
  background: var(--block-card-bg);
  box-shadow: 0px 4px 8px rgba(3, 26, 26, 0.10);
  border-radius: var(--ft-radius-md);
  backdrop-filter: blur(7.5px);
  display: inline-flex;
  flex-direction: column;
  gap: clamp(8px, 0.63dvw, 12px);
}

.wring__card-inner {
  display: inline-flex;
  align-items: flex-start;
  gap: var(--ft-card-gap-sm);
}

.wring__icon {
  width: var(--ft-icon-lg);
  height: var(--ft-icon-lg);
  flex-shrink: 0;
  background: var(--block-icon-bg);
  color: var(--block-icon-fill);
  overflow: hidden;
  border-radius: 50%;
}
.wring__icon svg { width: 100%; height: 100%; }

.wring__info {
  display: flex;
  flex-direction: column;
  gap: var(--ft-info-gap-sm);
}

.wring__title {
  color: var(--color-text);
  font-size: var(--ft-fs-title-md);
  font-family: Inter;
  font-weight: 900;
  line-height: 110%;
}

.wring__text {
  color: var(--color-text);
  font-size: var(--ft-fs-text);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
}


/* ===========================
   premium — «Премиум материалы»
   =========================== */
.premium { background: white; overflow: hidden; }

.premium__media {
  position: relative;
  width: 100%;
  aspect-ratio: var(--block-aspect-tall);
  overflow: hidden;
  border-radius: var(--ft-radius-lg);
}

.premium__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 60%;
}

.premium__tag {
  position: absolute;
  right: 3%;
  bottom: 5%;
  height: var(--ft-tag-h);
  padding: 0 var(--ft-tag-pad-x);
  background: var(--block-tag-bg);
  border-radius: var(--ft-tag-radius);
  display: inline-flex;
  align-items: center;
  gap: clamp(6px, 0.52dvw, 10px);
}

.premium__tag-label {
  color: var(--color-text);
  font-size: var(--ft-fs-text);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
}

.premium__card {
  position: absolute;
  left: 3.6%;
  top: 4.6%;
  max-width: 45%;
  padding: var(--ft-card-pad-md);
  background: var(--block-card-bg);
  box-shadow: 0px 4px 8px rgba(3, 26, 26, 0.10);
  border-radius: var(--ft-radius-sm);
  backdrop-filter: blur(7.5px);
  display: inline-flex;
  flex-direction: column;
  gap: var(--ft-card-gap);
}

.premium__card-inner {
  display: inline-flex;
  align-items: flex-start;
  gap: var(--ft-card-gap);
}

.premium__icon {
  width: var(--ft-icon-md);
  height: var(--ft-icon-md);
  flex-shrink: 0;
  background: var(--block-icon-bg);
  color: var(--block-icon-fill);
  overflow: hidden;
  border-radius: 50%;
}
.premium__icon svg { width: 100%; height: 100%; }

.premium__info {
  display: flex;
  flex-direction: column;
  gap: var(--ft-info-gap-sm);
}

.premium__title {
  color: var(--color-text);
  font-size: var(--ft-fs-title);
  font-family: Inter;
  font-weight: 900;
  line-height: 110%;
}

.premium__text {
  color: var(--color-text);
  font-size: var(--ft-fs-text);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
}


/* ===========================
   flex-edge — «Гибкий край»
   =========================== */
.flex-edge {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(8px, 0.78dvw, 15px);
  background: white;
  overflow: hidden;
}

.flex-edge__section {
  position: relative;
  overflow: hidden;
  border-radius: var(--ft-radius-lg);
}

.flex-edge__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.flex-edge__badge {
  position: absolute;
  right: 5%;
  bottom: 8%;
}

.flex-edge__badge-inner {
  padding: clamp(8px, 0.63dvw, 12px);
  background: var(--block-card-bg);
  box-shadow: 0px 4px 8px rgba(3, 26, 26, 0.10);
  border-radius: var(--ft-radius-md);
  backdrop-filter: blur(7.5px);
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(8px, 0.63dvw, 12px);
}

.flex-edge__badge-icon {
  width: clamp(48px, 3.91dvw, 75px);
  height: clamp(48px, 3.91dvw, 75px);
  position: relative;
  background: white;
  color: var(--block-tag-bg);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.flex-edge__badge-volume {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -30%);
  z-index: 1;
  color: white;
  font-size: clamp(12px, 0.83dvw, 16px);
  font-family: Inter;
  font-weight: 900;
  line-height: 1;
}

.flex-edge__badge-vector {
  width: clamp(20px, 1.77dvw, 34px);
  height: clamp(28px, 2.40dvw, 46px);
  margin-top: -4px;
}

.flex-edge__badge-label {
  color: var(--block-tag-bg);
  font-size: var(--ft-fs-title-md);
  font-family: Inter;
  font-weight: 900;
  line-height: 110%;
}

.flex-edge__tags {
  position: absolute;
  left: 2.7%;
  top: 5.2%;
  display: flex;
  flex-direction: column;
  gap: clamp(8px, 0.63dvw, 12px);
}

.flex-edge__tag {
  height: var(--ft-tag-h);
  padding: 0 var(--ft-tag-pad-x);
  border-radius: var(--ft-tag-radius);
  display: inline-flex;
  align-items: center;
  gap: clamp(6px, 0.52dvw, 10px);
}

.flex-edge__tag--accent { background: var(--block-tag-bg); }
.flex-edge__tag--green  { background: var(--block-tag-alt-bg); }

.flex-edge__tag.flex-edge__tag--accent { width: fit-content; }

.flex-edge__tag-label {
  font-size: var(--ft-fs-text);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
}

.flex-edge__tag-label--accent { color: var(--block-tag-text); }
.flex-edge__tag-label--green  { color: var(--block-tag-alt-text); }


/* ===========================
   microfiber — «Насадки из микрофибры»
   =========================== */
.microfiber { background: white; overflow: hidden; }

.microfiber__media {
  position: relative;
  width: 100%;
  aspect-ratio: var(--block-aspect);
  background: #EFEFEF;
  overflow: hidden;
  border-radius: var(--ft-radius-lg);
}

.microfiber__shadow {
  position: absolute;
  left: 20%; top: 20%;
  width: 23%; height: 48%;
  mix-blend-mode: multiply;
  filter: blur(17.4px);
}

.microfiber__image {
  position: absolute;
  left: -9.5%;
  top: -3.9%;
  width: 76%;
  height: 145%;
  object-fit: contain;
  object-position: top;
}

.microfiber__heading {
  position: absolute;
  left: 2.6%;
  top: 4.9%;
  padding: clamp(14px, 1.30dvw, 25px) clamp(16px, 1.77dvw, 34px);
  background: var(--block-heading-bg);
  border-radius: var(--ft-radius-xs);
  display: inline-flex;
  align-items: center;
  gap: clamp(6px, 0.52dvw, 10px);
  z-index: 2;
}

.microfiber__heading-text {
  color: var(--block-heading-text);
  font-size: var(--ft-fs-title-md);
  font-family: Inter;
  font-weight: 900;
  line-height: 110%;
}

.microfiber__card {
  background: var(--block-card-bg);
  box-shadow: 0px 4px 8px rgba(3, 26, 26, 0.10);
  border-radius: var(--ft-radius-md);
  backdrop-filter: blur(7.5px);
}

.microfiber__card--antibac {
  position: absolute;
  right: 2%; top: 5%;
  width: 42%;
  padding: var(--ft-card-pad);
  display: flex;
  flex-direction: column;
  gap: var(--ft-card-gap);
  z-index: 1;
}

.microfiber__card--surfaces {
  position: absolute;
  right: 2%; bottom: 5%;
  width: 29%;
  display: flex;
  align-items: center;
  overflow: hidden;
  z-index: 1;
}

.microfiber__card-header {
  display: inline-flex;
  align-items: center;
  gap: var(--ft-info-gap-sm);
}

.microfiber__icon {
  width: var(--ft-icon-lg);
  height: var(--ft-icon-lg);
  flex-shrink: 0;
  background: var(--color-accent-blue);
  color: var(--block-icon-fill);
  overflow: hidden;
  border-radius: 50%;
}
.microfiber__icon svg { width: 100%; height: 100%; }

.microfiber__tag {
  height: var(--ft-tag-h);
  padding: 0 var(--ft-card-pad-md);
  background: var(--color-accent-blue);
  border-radius: var(--ft-tag-radius);
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.52dvw, 10px);
}

.microfiber__tag-label {
  color: var(--color-text);
  font-size: var(--ft-fs-text-em);
  font-family: Inter;
  font-weight: 400;
  line-height: 1;
}

.microfiber__stat {
  display: inline-flex;
  align-items: center;
  gap: var(--ft-card-gap);
}

.microfiber__stat-value {
  color: var(--color-text);
  font-size: var(--ft-fs-stat);
  font-family: Inter;
  font-weight: 900;
  line-height: 100%;
  letter-spacing: -0.02em;
}

.microfiber__stat-text {
  color: var(--color-text);
  font-size: var(--ft-fs-text);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
}

.microfiber__surface-info {
  padding: var(--ft-tag-pad-xm);
  display: flex;
  flex-direction: column;
  gap: var(--ft-info-gap-sm);
}

.microfiber__surface-count {
  color: var(--color-text);
  font-size: var(--ft-fs-stat);
  font-family: Inter;
  font-weight: 900;
  line-height: 100%;
  letter-spacing: -0.02em;
}

.microfiber__nozzle-title {
  color: var(--color-text);
  font-size: var(--ft-fs-nozzle);
  font-family: Inter;
  font-weight: 900;
  line-height: 110%;
  letter-spacing: -0.02em;
}

.microfiber__surface-text {
  color: var(--color-text);
  font-size: var(--ft-fs-text);
  font-family: Inter;
  font-weight: 400;
  line-height: 110%;
}

.microfiber__surface-photo {
  flex-shrink: 0;
  width: clamp(140px, 12.29dvw, 236px);
  height: clamp(140px, 12.24dvw, 235px);
  overflow: hidden;
}

.microfiber__surface-layer {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/* ===========================
   mechanisms — «Плавные механизмы»
   =========================== */
.mechanisms { background: white; overflow: hidden; }

.mechanisms__media {
  position: relative;
  width: 100%;
  aspect-ratio: var(--block-aspect-tall);
  overflow: hidden;
  border-radius: var(--ft-radius-lg);
}

.mechanisms__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 61%;
}

.mechanisms__card {
  position: absolute;
  left: 58%;
  bottom: 6%;
  max-width: 40%;
  padding: var(--ft-card-pad);
  background: var(--block-card-bg);
  box-shadow: 0px 4px 8px rgba(3, 26, 26, 0.10);
  border-radius: var(--ft-radius-sm);
  backdrop-filter: blur(7.5px);
  display: inline-flex;
  align-items: flex-start;
  gap: var(--ft-card-gap);
}

.mechanisms__icon {
  width: var(--ft-icon-md);
  height: var(--ft-icon-md);
  flex-shrink: 0;
  background: var(--block-icon-bg);
  color: var(--block-icon-fill);
  overflow: hidden;
  border-radius: 50%;
}
.mechanisms__icon svg { width: 100%; height: 100%; }

.mechanisms__info {
  display: flex;
  flex-direction: column;
  gap: var(--ft-info-gap);
}

.mechanisms__title {
  color: var(--color-text);
  font-size: var(--ft-fs-title);
  font-family: Inter;
  font-weight: 900;
  line-height: 110%;
}

.mechanisms__text {
  color: var(--color-text);
  font-size: var(--ft-fs-text-lg);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
}


/* ===========================
   duo-feature — двойная секция
   =========================== */
.duo-feature {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(8px, 0.78dvw, 15px);
  background: white;
  overflow: hidden;
}

.duo-feature__col {
  position: relative;
  overflow: hidden;
  border-radius: var(--ft-radius-lg);
  aspect-ratio: 610 / 768;
}

.duo-feature__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.duo-feature__image--right { object-position: 37% 50%; }

.duo-feature__card {
  position: absolute;
  border-radius: var(--ft-radius-sm);
  backdrop-filter: blur(7.5px);
  display: inline-flex;
  align-items: flex-start;
}

.duo-feature__card--left,
.duo-feature__card--right-top {
  left: 5%;
  right: 5%;
  padding: var(--ft-card-pad);
  background: var(--block-card-bg);
  box-shadow: 0px 4px 8px rgba(3, 26, 26, 0.10);
  gap: var(--ft-card-gap);
}
.duo-feature__card--left      { bottom: 8%; }
.duo-feature__card--right-top { bottom: 28%; }

.duo-feature__card--ergo {
  left: 5.4%;
  bottom: 5.8%;
  right: 5%;
  padding: var(--ft-card-pad-sm);
  background: var(--block-card-bg);
  backdrop-filter: blur(4px);
  gap: var(--ft-card-pad-sm);
}

.duo-feature__icon {
  width: var(--ft-icon-md);
  height: var(--ft-icon-md);
  flex-shrink: 0;
  background: var(--block-icon-bg);
  color: var(--block-icon-fill);
  overflow: hidden;
  border-radius: 50%;
}
.duo-feature__icon svg { width: 100%; height: 100%; }

.duo-feature__info {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--ft-info-gap);
}

.duo-feature__title {
  color: var(--color-text);
  font-size: var(--ft-fs-title);
  font-family: Inter;
  font-weight: 900;
  line-height: 110%;
}

.duo-feature__text {
  color: var(--color-text);
  font-family: Inter;
  font-weight: 400;
  line-height: 120%;
}

.duo-feature__text--left,
.duo-feature__text--right { font-size: var(--ft-fs-text-lg); letter-spacing: -0.05em; }
.duo-feature__text--ergo  { font-size: var(--ft-fs-text);    letter-spacing: -0.05em; }


/* ==========================================================================
   Utilities — width/position/split (без изменений)
   ========================================================================== */
.--w25 { left: auto !important; right: auto !important; width: 25% !important; max-width: none !important; }
.--w30 { left: auto !important; right: auto !important; width: 30% !important; max-width: none !important; }
.--w35 { left: auto !important; right: auto !important; width: 35% !important; max-width: none !important; }
.--w40 { left: auto !important; right: auto !important; width: 40% !important; max-width: none !important; }
.--w45 { left: auto !important; right: auto !important; width: 45% !important; max-width: none !important; }
.--w50 { left: auto !important; right: auto !important; width: 50% !important; max-width: none !important; }
.--w55 { left: auto !important; right: auto !important; width: 55% !important; max-width: none !important; }
.--w60 { left: auto !important; right: auto !important; width: 60% !important; max-width: none !important; }
.--w65 { left: auto !important; right: auto !important; width: 65% !important; max-width: none !important; }
.--w70 { left: auto !important; right: auto !important; width: 70% !important; max-width: none !important; }
.--w75 { left: auto !important; right: auto !important; width: 75% !important; max-width: none !important; }
.--w80 { left: auto !important; right: auto !important; width: 80% !important; max-width: none !important; }
.--w85 { left: auto !important; right: auto !important; width: 85% !important; max-width: none !important; }
.--w90 { left: auto !important; right: auto !important; width: 90% !important; max-width: none !important; }

.--pos-left     { left: 4% !important;  right: auto !important; }
.--pos-center-x { left: 50% !important; right: auto !important; transform: translateX(-50%); }
.--pos-right    { left: auto !important; right: 4% !important; }

.--pos-top      { top: 4% !important;  bottom: auto !important; }
.--pos-center-y { top: 50% !important; bottom: auto !important; transform: translateY(-50%); }
.--pos-bottom   { top: auto !important; bottom: 4% !important; }

.--pos-center-x.--pos-center-y { transform: translate(-50%, -50%); }

.--split-25-75 { grid-template-columns: 25fr 75fr !important; }
.--split-30-70 { grid-template-columns: 30fr 70fr !important; }
.--split-33-67 { grid-template-columns: 33fr 67fr !important; }
.--split-35-65 { grid-template-columns: 35fr 65fr !important; }
.--split-40-60 { grid-template-columns: 40fr 60fr !important; }
.--split-45-55 { grid-template-columns: 45fr 55fr !important; }
.--split-50-50 { grid-template-columns: 1fr 1fr !important; }
.--split-55-45 { grid-template-columns: 55fr 45fr !important; }
.--split-60-40 { grid-template-columns: 60fr 40fr !important; }
.--split-65-35 { grid-template-columns: 65fr 35fr !important; }
.--split-67-33 { grid-template-columns: 67fr 33fr !important; }
.--split-70-30 { grid-template-columns: 70fr 30fr !important; }
.--split-75-25 { grid-template-columns: 75fr 25fr !important; }


/* ==========================================================================
   Переопределения: smart-система (красный tag, badge alt-padding)
   ========================================================================== */
.features--shvabra-s-otzhimom-i-skladnym-vedrom-4 .wring,
.features--shvabra-s-otzhimom-i-skladnym-vedrom-5 .wring,
.features--shvabra-s-otzhimom-i-skladnym-vedrom-6 .wring,
.features--shvabra-s-otzhimom-i-skladnym-vedrom-7 .wring {
  --block-tag-bg: var(--color-accent-red);
  --block-tag-text: white;
}

.features--shvabra-s-otzhimom-i-skladnym-vedrom-4 .flex-edge__badge-icon,
.features--shvabra-s-otzhimom-i-skladnym-vedrom-5 .flex-edge__badge-icon,
.features--shvabra-s-otzhimom-i-skladnym-vedrom-6 .flex-edge__badge-icon,
.features--shvabra-s-otzhimom-i-skladnym-vedrom-7 .flex-edge__badge-icon {
  padding: clamp(10px, 0.83dvw, 16px) clamp(14px, 1.15dvw, 22px);
}

.features--shvabra-s-otzhimom-i-skladnym-vedrom-4 .flex-edge__badge-vector,
.features--shvabra-s-otzhimom-i-skladnym-vedrom-5 .flex-edge__badge-vector,
.features--shvabra-s-otzhimom-i-skladnym-vedrom-6 .flex-edge__badge-vector,
.features--shvabra-s-otzhimom-i-skladnym-vedrom-7 .flex-edge__badge-vector {
  width: clamp(18px, 1.56dvw, 30px);
  height: clamp(24px, 2.14dvw, 41px);
}


/* ===========================
   product-scheme — «Складная / Умная система»
   (схема изделия: лейбл-номер + иллюстрация)
   Базовое разрешение 1920×1080. Карточка-контейнер ~1237px.
   =========================== */
.product-scheme {
  /* Цвет — наследуется на SVG (currentColor внутри иллюстраций) */
  color: var(--color-accent-red);

  /* Геометрия */
  --ps-radius-lg:    clamp(16px, 1.67dvw, 32px);   /* 32 */
  --ps-radius-md:    clamp(8px, 0.63dvw, 12px);    /* 12 */
  --ps-pad:          clamp(14px, 1.25dvw, 24px);   /* 24 */
  --ps-card-pad:     clamp(16px, 1.67dvw, 32px);   /* 32 */
  --ps-card-pad-top: clamp(24px, 2.71dvw, 52px);   /* 52 */
  --ps-gap:          clamp(8px, 0.63dvw, 12px);    /* 12 */
  --ps-label-gap:    clamp(8px, 0.83dvw, 16px);    /* 16 */
  --ps-label-gap-sm: clamp(8px, 0.63dvw, 12px);    /* 12 */

  /* Номера */
  --ps-num-size:     clamp(36px, 2.86dvw, 55px);   /* 55 */
  --ps-num-pad:      clamp(6px, 0.52dvw, 10px);    /* 10 */

  /* Типографика */
  --ps-fs-title:     clamp(16px, 1.67dvw, 32px);   /* 32 */

  /* Иллюстрации */
  --ps-illus-h:      clamp(120px, 11.46dvw, 220px);      /* 220 */
  --ps-handle-h:     clamp(18px, 1.75dvw, 33.57px);      /* 33.57 */
  --ps-card-h:       clamp(260px, 22.34dvw, 429px);      /* 429 */
  --ps-head-h:       clamp(120px, 10.13dvw, 194.57px);   /* 194.57 */
  --ps-foot-h:       clamp(170px, 14.79dvw, 283.89px);   /* 283.89 */

  position: relative;
  width: 100%;
  padding: var(--ps-pad);
  background: #EFE9DD;
  border-radius: var(--ps-radius-lg);
  overflow: hidden;
  isolation: isolate;
}

.product-scheme__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  color: var(--color-accent-red);
  pointer-events: none;
  z-index: 0;
}

.product-scheme__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: var(--ps-gap);
}

.product-scheme__head {
  min-height: var(--ps-head-h);
  padding: var(--ps-card-pad);
  background: #fff;
  border-radius: var(--ps-radius-md);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  gap: clamp(16px, 2.19dvw, 42px);
}

.product-scheme__head-line {
  display: block;
  width: 100%;
  height: var(--ps-handle-h);
  background-color: var(--color-accent-red);
  -webkit-mask: var(--illus-url) center/contain no-repeat;
          mask: var(--illus-url) center/contain no-repeat;
}

.product-scheme__label {
  display: inline-flex;
  align-items: center;
  gap: var(--ps-label-gap);
  min-height: var(--ps-num-size);
}

.product-scheme__num {
  flex-shrink: 0;
  width: var(--ps-num-size);
  height: var(--ps-num-size);
  padding: var(--ps-num-pad);
  background: var(--color-accent-red);
  border-radius: 50%;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.product-scheme__num img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.product-scheme__label-text {
  color: var(--color-accent-red);
  font-size: var(--ps-fs-title);
  font-family: Inter, sans-serif;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -0.2px;
}

.product-scheme__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--ps-gap);
}

.product-scheme__card {
  min-height: var(--ps-card-h);
  padding: var(--ps-card-pad-top) var(--ps-card-pad) var(--ps-card-pad);
  background: #fff;
  border-radius: var(--ps-radius-md);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  gap: var(--ps-card-pad);
}

.product-scheme__illus {
  display: block;
  width: 100%;
  max-width: 100%;
  height: var(--ps-illus-h);
  background-color: var(--color-accent-red);
  -webkit-mask: var(--illus-url) center/contain no-repeat;
          mask: var(--illus-url) center/contain no-repeat;
  flex-shrink: 0;
}

.product-scheme__card .product-scheme__label {
  align-self: stretch;
  justify-content: flex-start;
  gap: var(--ps-label-gap-sm);
}

/* Нижний ряд (только smart) */
.product-scheme__foot {
  min-height: var(--ps-foot-h);
  padding: var(--ps-card-pad);
  background: #fff;
  border-radius: var(--ps-radius-md);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-end;
  gap: clamp(16px, 1.67dvw, 32px);
}

.product-scheme__foot .product-scheme__label {
  align-self: stretch;
}

.product-scheme__foot-illus {
  display: block;
  width: 100%;
  max-width: 100%;
  height: clamp(80px, 6.92dvw, 133px);
  background-color: var(--color-accent-red);
  -webkit-mask: var(--illus-url) center/contain no-repeat;
          mask: var(--illus-url) center/contain no-repeat;
}


/* ==========================================================================
   TABLET — @media (max-width: 1599px)
   Только переопределение переменных + layout (бывшие 1200/1440/1024 mq
   унифицированы в один брейкпоинт проекта).
   ========================================================================== */
@media (max-width: 1599px) {

  /* product-hero */
  .product-hero {
    --hero-height:         500px;
    --hero-side-pad:       20px;
    --hero-col-gap:        20px;
    --hero-col-bottom-pad: 40px;

    --hero-card-maxw:      373px;
    --hero-card-pad:       20px;
    --hero-card-radius:    20px;
    --hero-card-gap:       15px;

    --hero-back-w:         62.38px;
    --hero-back-h:         18.75px;
    --hero-back-left:      79px;
    --hero-back-top:       75px;
    --hero-back-pad-r:     12.50px;
    --hero-back-icon:      18.75px;
    --hero-back-icon-pad:  3.13px;

    --hero-buy-w:          137.50px;
    --hero-buy-h:          32.50px;
    --hero-buy-pad-x:      37.50px;
    --hero-link-sz:        32.50px;

    --hero-dot:            20px;

    --hero-fs-back:        10px;
    --hero-fs-name:        15px;
    --hero-fs-label:       12.50px;
    --hero-fs-price:       15px;
    --hero-fs-buy:         12.50px;

    background: white;
  }

  .product-hero__header { display: block; }
  .product-hero__divider-top,
  .product-hero__divider-bottom { height: 0.63px; }
  .product-hero__colors { max-height: 47.50px; min-height: 47.50px; gap: 7.50px; }
  .product-hero__color-dots { max-width: 70px; min-width: 70px; gap: 3.75px; }
  .product-hero__color-dot img { width: 20px; height: 20px; }
  .product-hero__purchase { max-width: 212.50px; min-width: 212.50px; gap: 7.50px; }
  .product-hero__prices { gap: 8.13px; }
  .product-hero__price-old-line { width: 53px; height: 1.24px; left: -0.72px; top: 9.95px; }
  .product-hero__buttons { gap: 5px; }
  .product-hero__buy-btn { border-radius: 625px; gap: 6.25px; }
  .product-hero__ozon-link,
  .product-hero__wb-link  { border-radius: 520.81px; }
  .product-hero__back { border-radius: 625px; gap: 3.13px; }
  .product-hero__back-icon { border-radius: 625px; gap: 3.13px; }
  .product-hero__name { white-space: pre-wrap; }

  /* product-detail */
  .product-detail {
    --pd-side-pad:       20px;
    --pd-bottom-pad:     50px;
    --pd-col-gap:        40px;
    --pd-sidebar-maxw:   373px;
    --pd-specs-pad:      24px;
    --pd-specs-radius:   20px;

    --pd-fs-section-ttl: 24px;
    --pd-fs-specs-ttl:   20px;
    --pd-mb-section:     20px;
    --pd-mb-specs-ttl:   20px;
  }

  /* product-feature */
  .product-feature {
    --pf-radius:       24px;
    --pf-badge-off:    24px;
    --pf-badge-pad:    12px;
    --pf-badge-radius: 12.5px;
    --pf-badge-gap:    12px;
    --pf-info-gap:     8px;
    --pf-fs-title:     18px;
    --pf-fs-text:      14px;

    aspect-ratio: 768 / 600;
  }

  .product-feature__badge {
    backdrop-filter: blur(4.69px);
    box-shadow: 0px 2.5px 5px rgba(3, 26, 26, 0.10);
    max-width: 50%;
  }
}


/* ==========================================================================
   MOBILE — @media (max-width: 767px)
   ========================================================================== */
@media (max-width: 767px) {

  /* product-hero */
  .product-hero {
    width: 100%;
    height: 700px;
    background: white;
  }

  .product-hero__header { display: none; }
  .product-hero__header-mobile { display: block; }
  .product-hero__back { display: none; }

  .product-hero__container { padding: 0; }
  .product-hero__columns { display: contents; }

  .product-hero__brand {
    position: absolute;
    left: 20px;
    top: 110px;
    width: calc(100% - 40px);
    max-width: 320px;
    height: 123px;
    overflow: hidden;
    z-index: 2;
  }

  .product-hero__brand svg { width: 100%; height: 100%; }

  .product-hero__card {
    position: absolute;
    left: 20px;
    top: 250px;
    width: calc(100% - 40px);
    max-width: 320px;
    display: inline-flex;
    z-index: 2;
  }

  .product-hero__card-inner { padding: 24px; border-radius: 12px; gap: 12px; }

  .product-hero__name {
    align-self: stretch;
    font-size: 18px;
    white-space: normal;
    word-wrap: break-word;
  }

  .product-hero__divider-top,
  .product-hero__divider-bottom { display: none; }

  .product-hero__colors {
    flex-direction: row;
    align-items: center;
    gap: 12px;
    max-height: 22px;
    min-height: 22px;
  }

  .product-hero__color-dots {
    max-width: 62px; min-width: 62px;
    max-height: 22px; min-height: 22px;
    gap: 4px;
  }

  .product-hero__color-dot { width: 16px; height: 16px; }
  .product-hero__color-dot img { width: 16px; height: 16px; }

  .product-hero__color-label {
    font-size: 14px;
    letter-spacing: -0.05em;
    white-space: nowrap;
  }

  .product-hero__purchase {
    max-width: none; min-width: auto;
    max-height: none; min-height: auto;
  }

  .product-hero__prices {
    max-width: 106px; min-width: 106px;
    max-height: 20.03px; min-height: 20.03px;
    gap: 8px;
  }

  .product-hero__price-wrap,
  .product-hero__price-old-wrap {
    min-width: 49px;
    max-height: 20.03px; min-height: 20.03px;
    padding-top: 3.03px;
    gap: 8.02px;
  }

  .product-hero__price,
  .product-hero__price-old {
    font-size: 14px;
    letter-spacing: -0.05em;
  }

  .product-hero__price-old-line {
    width: 49px; height: 1.25px;
    left: -0.66px; top: 10.02px;
  }

  .product-hero__buttons { display: none; }
  .product-hero__mobile-section {
    display: inline-flex;
    left: 50%;
    top: auto;
    bottom: 20px;
    transform: translateX(-50%);
    max-width: none;
    min-width: 0;
    width: auto;
    z-index: 5;
  }
  .product-hero__buttons-mobile {
    max-width: none;
    min-width: 0;
    width: auto;
  }
  .product-hero__ozon-link-mobile,
  .product-hero__wb-link-mobile { pointer-events: auto; }

  /* product-detail */
  .product-detail {
    --pd-side-pad:       20px;
    --pd-bottom-pad:     40px;
    --pd-specs-pad:      24px;
    --pd-specs-radius:   16px;

    --pd-fs-section-ttl: 20px;
    --pd-fs-specs-ttl:   18px;
    --pd-fs-text:        14px;
    --pd-mb-section:     16px;
    --pd-mb-specs-ttl:   16px;
    --pd-mb-desc:        0;
  }

  .product-detail__columns { flex-direction: column; gap: 40px; }
  .product-detail__sidebar { width: 100%; }
  .product-detail__specs   { position: static; }

  /* product-feature */
  .product-feature {
    --pf-radius: 0;
    aspect-ratio: 360 / 426;
  }

  .product-feature__badge {
    top: 20px; left: 20px;
    bottom: auto; right: auto;
    padding: 12px;
    border-radius: 12px;
    backdrop-filter: blur(4.51px);
    box-shadow: 0px 2.4px 4.8px rgba(3, 26, 26, 0.10);
    gap: 12px;
    width: auto;
    max-width: calc(100% - 40px);
  }

  .product-feature__icon { width: 28px; height: 28px; }
  .product-feature__info { gap: 4px; }
  .product-feature__title { font-size: 14px; font-weight: 700; line-height: 1.2; }
  .product-feature__text  { font-size: 12px; line-height: 1.2; }

  /* features — общие переменные на мобиле */
  .features {
    --ft-divider-h: 12px;
    --ft-radius-lg: 20px;
    --ft-radius-md: 14px;
    --ft-radius-sm: 12px;
    --ft-radius-xs: 8px;

    --ft-card-pad:     20px;
    --ft-card-pad-md:  16px;
    --ft-card-pad-sm:  16px;
    --ft-card-pad-xs:  12px;
    --ft-card-gap:     16px;
    --ft-card-gap-sm:  12px;

    --ft-icon-lg:      36px;
    --ft-icon-md:      40px;
    --ft-icon-sm:      28px;

    --ft-tag-h:        36px;
    --ft-tag-pad-x:    16px;
    --ft-tag-pad-xm:   14px;

    --ft-info-gap:     6px;
    --ft-info-gap-sm:  5px;

    --ft-fs-title:       20px;
    --ft-fs-title-md:    18px;
    --ft-fs-text-lg:     16px;
    --ft-fs-text:        14px;
    --ft-fs-text-em:     14px;
    --ft-fs-stat:        36px;
    --ft-fs-nozzle:      20px;
  }

  /* --- handle --- */
  .handle { min-height: 100svh; display: flex; }
  .handle__media { flex: 1; aspect-ratio: auto; }
  .handle__card {
    display: flex;
    left: 4%; right: 4%; bottom: 4%;
    max-width: none;
  }
  .handle__text { letter-spacing: -0.5px; }

  /* --- water --- */
  .water { min-height: 100svh; display: flex; }
  .water__media { flex: 1; aspect-ratio: auto; }
  .water__images { left: 0; top: 0; width: 100%; height: 100%; }
  .water__image--bg      { width: 100%; height: 100%; object-fit: cover; }
  .water__image--overlay { width: 70%; height: auto; left: 15%; bottom: 0; top: auto; }
  .water__cards { left: 4%; right: 4%; bottom: 4%; top: auto; width: auto; gap: 12px; }
  .water__card { background: rgba(255, 255, 255, 0.92); }
  .water__stat-value { font-size: 36px; }

  /* --- wring --- */
  .wring { grid-template-columns: 1fr; gap: 12px; }
  .wring__section { min-height: 100svh; }
  .wring__image { height: 100%; position: absolute; inset: 0; object-fit: cover; }

  /* --- premium --- */
  .premium { min-height: 100svh; display: flex; }
  .premium__media { flex: 1; aspect-ratio: auto; }
  .premium__card {
    display: flex;
    left: 4%; right: 4%;
    top: auto; bottom: 4%;
    max-width: none;
  }
  .premium__tag {
    right: 4%;
    bottom: auto;
    top: 4%;
    left: auto;
  }

  /* --- flex-edge --- */
  .flex-edge { grid-template-columns: 1fr; gap: 12px; }
  .flex-edge__section { min-height: 100svh; }
  .flex-edge__image { position: absolute; inset: 0; object-fit: cover; }
  .flex-edge__badge { right: 4%; bottom: 4%; }
  .flex-edge__badge-inner { padding: 12px; gap: 8px; }
  .flex-edge__badge-icon { width: 64px; height: 64px; }
  .flex-edge__badge-vector { width: 36px; height: 46px; margin-top: -2px; }
  .flex-edge__badge-volume { font-size: 13px; letter-spacing: -0.04em; white-space: nowrap; }
  .flex-edge__badge-label { font-size: 14px; line-height: 1.15; }
  .flex-edge__tags { left: 4%; top: 4%; }

  /* --- microfiber --- */
  .microfiber { min-height: 100svh; display: flex; }
  .microfiber__media { flex: 1; aspect-ratio: auto; }
  .microfiber__shadow { display: none; }
  .microfiber__image { left: -4%; top: 18%; width: 110%; height: 80%; }
  .microfiber__heading { left: 5%; top: 4%; padding: 12px 16px; max-width: 90%; }
  .microfiber__heading-text { font-size: 16px; line-height: 1.15; }
  .microfiber__card--antibac {
    left: 4%; right: 4%; top: 22%;
    width: auto;
    padding: 12px;
  }
  .microfiber__icon { width: 28px; height: 28px; }
  .microfiber__tag { height: 28px; padding: 0 12px; border-radius: 31px; }
  .microfiber__tag-label { line-height: 1; font-size: 13px; }
  .microfiber__stat { gap: 12px; align-items: flex-start; }
  .microfiber__stat-value { font-size: 28px; flex-shrink: 0; }
  .microfiber__stat-text  { font-size: 12px; line-height: 1.25; }
  .microfiber__card--surfaces {
    left: 5%; right: auto; bottom: 5%; top: auto;
    width: auto;
    padding-left: 12px;
    display: inline-flex;
  }
  .microfiber__surface-info { padding: 12px 0; gap: 4px; }
  .microfiber__surface-count { font-size: 37px; }
  .microfiber__surface-text  { font-size: 12px; }
  .microfiber__surface-photo { width: 136px; height: 136px; }

  /* --- mechanisms --- */
  .mechanisms { min-height: 100svh; display: flex; }
  .mechanisms__media { flex: 1; aspect-ratio: auto; }
  .mechanisms__card {
    display: flex;
    left: 4%; right: 4%; bottom: 4%;
    max-width: none;
  }
  .mechanisms__text { letter-spacing: -0.5px; }

  /* --- duo-feature --- */
  .duo-feature { grid-template-columns: 1fr; gap: 12px; }
  .duo-feature__col { min-height: 100svh; aspect-ratio: auto; }
  .duo-feature__card--left,
  .duo-feature__card--right-top,
  .duo-feature__card--ergo {
    display: flex;
    left: 4%; right: 4%;
    top: 4%;
    bottom: inherit;
  }
  .duo-feature__text--left,
  .duo-feature__text--right,
  .duo-feature__text--ergo { letter-spacing: -0.5px; }

  /* --- Модификаторы высоты --- */
  .--mobile-h50  { min-height: 50svh !important; }
  .--mobile-h75  { min-height: 75svh !important; }
  .--mobile-h100 { min-height: 100svh !important; }

  /* --sm-* утилиты */
  .--sm-w25 { left: auto !important; right: auto !important; width: 25% !important; max-width: none !important; }
  .--sm-w30 { left: auto !important; right: auto !important; width: 30% !important; max-width: none !important; }
  .--sm-w35 { left: auto !important; right: auto !important; width: 35% !important; max-width: none !important; }
  .--sm-w40 { left: auto !important; right: auto !important; width: 40% !important; max-width: none !important; }
  .--sm-w45 { left: auto !important; right: auto !important; width: 45% !important; max-width: none !important; }
  .--sm-w50 { left: auto !important; right: auto !important; width: 50% !important; max-width: none !important; }
  .--sm-w55 { left: auto !important; right: auto !important; width: 55% !important; max-width: none !important; }
  .--sm-w60 { left: auto !important; right: auto !important; width: 60% !important; max-width: none !important; }
  .--sm-w65 { left: auto !important; right: auto !important; width: 65% !important; max-width: none !important; }
  .--sm-w70 { left: auto !important; right: auto !important; width: 70% !important; max-width: none !important; }
  .--sm-w75 { left: auto !important; right: auto !important; width: 75% !important; max-width: none !important; }
  .--sm-w80 { left: auto !important; right: auto !important; width: 80% !important; max-width: none !important; }
  .--sm-w85 { left: auto !important; right: auto !important; width: 85% !important; max-width: none !important; }
  .--sm-w90 { left: auto !important; right: auto !important; width: 90% !important; max-width: none !important; }

  .--sm-pos-left     { left: 4% !important;  right: auto !important; }
  .--sm-pos-center-x { left: 50% !important; right: auto !important; transform: translateX(-50%); }
  .--sm-pos-right    { left: auto !important; right: 4% !important; }

  .--sm-pos-top      { top: 4% !important;  bottom: auto !important; }
  .--sm-pos-center-y { top: 50% !important; bottom: auto !important; transform: translateY(-50%); }
  .--sm-pos-bottom   { top: auto !important; bottom: 4% !important; }

  .--sm-pos-center-x.--sm-pos-center-y { transform: translate(-50%, -50%); }

  /* Сброс split на мобилке */
  [class*="--split-"] { grid-template-columns: 1fr !important; }
}


/* ==========================================================================
   TABLET UTILITIES — @media (max-width: 1599px) (бывшие --md-*)
   ========================================================================== */
@media (max-width: 1599px) {
  .--md-w25 { left: auto !important; right: auto !important; width: 25% !important; max-width: none !important; }
  .--md-w30 { left: auto !important; right: auto !important; width: 30% !important; max-width: none !important; }
  .--md-w35 { left: auto !important; right: auto !important; width: 35% !important; max-width: none !important; }
  .--md-w40 { left: auto !important; right: auto !important; width: 40% !important; max-width: none !important; }
  .--md-w45 { left: auto !important; right: auto !important; width: 45% !important; max-width: none !important; }
  .--md-w50 { left: auto !important; right: auto !important; width: 50% !important; max-width: none !important; }
  .--md-w55 { left: auto !important; right: auto !important; width: 55% !important; max-width: none !important; }
  .--md-w60 { left: auto !important; right: auto !important; width: 60% !important; max-width: none !important; }
  .--md-w65 { left: auto !important; right: auto !important; width: 65% !important; max-width: none !important; }
  .--md-w70 { left: auto !important; right: auto !important; width: 70% !important; max-width: none !important; }
  .--md-w75 { left: auto !important; right: auto !important; width: 75% !important; max-width: none !important; }
  .--md-w80 { left: auto !important; right: auto !important; width: 80% !important; max-width: none !important; }
  .--md-w85 { left: auto !important; right: auto !important; width: 85% !important; max-width: none !important; }
  .--md-w90 { left: auto !important; right: auto !important; width: 90% !important; max-width: none !important; }

  .--md-pos-left     { left: 4% !important;  right: auto !important; }
  .--md-pos-center-x { left: 50% !important; right: auto !important; transform: translateX(-50%); }
  .--md-pos-right    { left: auto !important; right: 4% !important; }

  .--md-pos-top      { top: 4% !important;  bottom: auto !important; }
  .--md-pos-center-y { top: 50% !important; bottom: auto !important; transform: translateY(-50%); }
  .--md-pos-bottom   { top: auto !important; bottom: 4% !important; }

  .--md-pos-center-x.--md-pos-center-y { transform: translate(-50%, -50%); }
}


/* ==========================================================================
   PORTRAIT — планшет (min-width: 768px, aspect-ratio ≤ 3/4)
   ========================================================================== */
@media (max-aspect-ratio: 3/4) and (min-width: 768px) {

  .product-hero {
    --hero-side-pad:       3dvw;
    --hero-col-gap:        3dvw;
    --hero-col-bottom-pad: 5dvw;
    --hero-height:         auto;

    --hero-card-maxw:      75dvw;
    --hero-card-pad:       3dvw;
    --hero-card-radius:    3dvw;
    --hero-card-gap:       2.5dvw;

    --hero-fs-name:        4dvw;
    --hero-fs-label:       2.5dvw;
    --hero-fs-price:       3dvw;
    --hero-fs-buy:         2.5dvw;

    --hero-buy-w:          28dvw;
    --hero-buy-h:          7dvw;
    --hero-link-sz:        7dvw;
    --hero-dot:            4dvw;
  }

  .product-hero__columns { flex-direction: column; align-items: center; }

  .product-detail {
    --pd-side-pad:       3dvw;
    --pd-col-gap:        3dvw;
    --pd-sidebar-maxw:   100%;
    --pd-fs-section-ttl: 3.5dvw;
    --pd-fs-text:        2dvw;
    --pd-fs-specs-ttl:   2.8dvw;
    --pd-fs-spec:        1.8dvw;
  }

  .product-feature {
    --pf-fs-title: 3dvw;
    --pf-fs-text:  2dvw;
    --pf-badge-w:  45dvw;
  }

  .features {
    --ft-fs-title:     3dvw;
    --ft-fs-title-md:  2.5dvw;
    --ft-fs-text-lg:   2dvw;
    --ft-fs-text:      1.8dvw;
    --ft-fs-text-em:   2.2dvw;
    --ft-fs-stat:      5dvw;
    --ft-fs-nozzle:    3dvw;

    --ft-icon-lg:      5dvw;
    --ft-icon-md:      4.5dvw;

    --ft-card-pad:     2.5dvw;
    --ft-card-pad-md:  2dvw;
    --ft-card-gap:     2dvw;

    --ft-radius-lg:    3dvw;
    --ft-radius-md:    2dvw;
    --ft-radius-sm:    1.5dvw;
  }
}


/* ==========================================================================
   PORTRAIT — телефон (max-width: 767px, aspect-ratio ≤ 3/4)
   ========================================================================== */
@media (max-aspect-ratio: 3/4) and (max-width: 767px) {

  .product-hero {
    --hero-card-maxw:      75dvw;
    --hero-card-pad:       5dvw;
    --hero-card-radius:    4dvw;
    --hero-card-gap:       4dvw;
    --hero-fs-name:        5dvw;
    --hero-fs-label:       4dvw;
    --hero-fs-price:       4dvw;
    --hero-fs-buy:         4dvw;
  }

  .features {
    --ft-fs-title:     5dvw;
    --ft-fs-title-md:  4.5dvw;
    --ft-fs-text-lg:   4dvw;
    --ft-fs-text:      3.5dvw;
    --ft-fs-text-em:   4dvw;
    --ft-fs-stat:      9dvw;
    --ft-fs-nozzle:    5dvw;

    --ft-card-pad:     5dvw;
    --ft-card-gap:     4dvw;
    --ft-radius-lg:    5dvw;
  }
}


/* ==========================================================================
   product-scheme — TABLET (max-width: 1599px)
   Grid остаётся 2 колонки, шрифты/отступы чуть крупнее в dvw.
   ========================================================================== */
@media (max-width: 1599px) {
  .product-scheme {
    --ps-fs-title:     clamp(16px, 2.1dvw, 28px);
    --ps-num-size:     clamp(36px, 3.6dvw, 50px);
    --ps-illus-h:      clamp(120px, 14dvw, 200px);
    --ps-card-h:       clamp(240px, 28dvw, 400px);
    --ps-head-h:       clamp(120px, 13dvw, 180px);
    --ps-foot-h:       clamp(170px, 19dvw, 260px);
    --ps-card-pad:     clamp(16px, 2dvw, 28px);
    --ps-card-pad-top: clamp(24px, 3.2dvw, 48px);
  }
}

/* ==========================================================================
   product-scheme — MOBILE (max-width: 767px)
   Одноколоночный стек, крупнее типографика.
   ========================================================================== */
@media (max-width: 767px) {
  .product-scheme {
    --ps-radius-lg:    5dvw;
    --ps-radius-md:    3dvw;
    --ps-pad:          3dvw;
    --ps-card-pad:     4.5dvw;
    --ps-card-pad-top: 6dvw;
    --ps-gap:          2.5dvw;
    --ps-label-gap:    3dvw;
    --ps-label-gap-sm: 2.5dvw;
    --ps-num-size:     11dvw;
    --ps-num-pad:      2dvw;
    --ps-fs-title:     4.8dvw;
    --ps-illus-h:      36dvw;
    --ps-handle-h:     5dvw;
    --ps-card-h:       auto;
    --ps-head-h:       auto;
    --ps-foot-h:       auto;
  }

  .product-scheme__grid {
    grid-template-columns: 1fr;
  }

  .product-scheme__card {
    min-height: 0;
    gap: 5dvw;
  }

  .product-scheme__head {
    gap: 4dvw;
  }

  .product-scheme__head-line {
    display: none; /* слишком широкая, мешает на узком экране */
  }

  .product-scheme__label-text {
    font-size: var(--ps-fs-title);
    white-space: normal;
  }

  .product-scheme__foot {
    align-items: stretch;
    gap: 4dvw;
  }

  .product-scheme__foot-illus {
    height: auto;
    width: 60%;
    align-self: flex-end;
  }
}

/* ==========================================================================
   product-scheme — Portrait tablet (3/4 и уже, ≥768px)
   ========================================================================== */
@media (max-aspect-ratio: 3/4) and (min-width: 768px) {
  .product-scheme {
    --ps-fs-title:     clamp(18px, 2.4dvw, 28px);
    --ps-illus-h:      clamp(140px, 22dvw, 260px);
    --ps-card-h:       auto;
    --ps-head-h:       auto;
    --ps-foot-h:       auto;
  }
}

/* End */


/* Start:/local/templates/qfast/components/bitrix/news.list/slider_catalog/style.css?177585691313785*/
/* ==========================================================================
   slider-catalog — native horizontal scroll + табы фильтрации
   base: 1920x1080
   ========================================================================== */

.slider-catalog {
	position: relative;
	width: 100%;
	height: auto;

	/* ===== Настраиваемые параметры ===== */

	/* Отступы */
	--sc-base:               clamp(16px, 1.67dvw, 32px);
	--sc-side-pad:           clamp(20px, 8.17dvw, 80px);
	--sc-vert-pad-top:       calc(var(--section-gap) + var(--section-overlap));
	--sc-vert-pad-bot:       clamp(24px, 4.44dvh, 48px);
	--sc-header-mb:          clamp(20px, 3.7dvh, 40px);
	--sc-radius:             clamp(16px, 1.67dvw, 32px);

	/* Header */
	--sc-fs-title:           clamp(24px, 2.5dvw, 48px);

	/* Tabs */
	--sc-tab-h:              clamp(36px, 2.71dvw, 52px);
	--sc-tab-pad-x:          clamp(20px, 3.13dvw, 60px);
	--sc-fs-tab:             clamp(14px, 1.04dvw, 20px);

	/* Cards */
	--sc-cards-gap:          clamp(12px, 1.25dvw, 24px);
	--sc-card-w:             clamp(320px, 28.33dvw, 544px);
	--sc-card-pad:           var(--sc-base);
	--sc-card-radius:        var(--sc-base);
	--sc-card-gap:           var(--sc-base);
	--sc-card-top-gap:       clamp(12px, 1.25dvw, 24px);
	--sc-card-img-radius:    clamp(6px, 0.42dvw, 8px);

	/* Favorite / badge */
	--sc-fav-size:           clamp(32px, 2.71dvw, 52px);
	--sc-badge-pad-y:        clamp(4px, 0.42dvw, 8px);
	--sc-badge-pad-x:        clamp(10px, 1.04dvw, 20px);
	--sc-badge-radius:       clamp(6px, 0.42dvw, 8px);
	--sc-fs-badge:           clamp(12px, 0.83dvw, 16px);

	/* Info */
	--sc-info-gap:           clamp(8px, 0.63dvw, 12px);
	--sc-fs-name:            clamp(18px, 1.67dvw, 32px);
	--sc-fs-price:           clamp(14px, 1.04dvw, 20px);
	--sc-prices-gap:         clamp(8px, 0.68dvw, 13px);

	/* Buttons */
	--sc-buttons-gap:        clamp(6px, 0.52dvw, 10px);
	--sc-btn-w:              clamp(140px, 11.46dvw, 220px);
	--sc-btn-h:              clamp(36px, 2.71dvw, 52px);
	--sc-fs-btn:             clamp(14px, 1.04dvw, 20px);
}

.slider-catalog__sticky {
	position: relative;
	background: #EFEFEF;
	border-radius: var(--sc-radius);
	padding-bottom: var(--sc-vert-pad-bot);
}

.slider-catalog__inner {
	display: flex;
	flex-direction: column;
}

/* Header */
.slider-catalog__header {
	padding: var(--sc-vert-pad-top) var(--sc-side-pad) 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: var(--sc-base);
	margin-bottom: var(--sc-header-mb);
	flex-shrink: 0;
}

.slider-catalog__title {
	color: #094141;
	font-size: var(--sc-fs-title);
	font-family: Inter, sans-serif;
	font-weight: 900;
	text-transform: uppercase;
	line-height: 110%;
	white-space: nowrap;
	margin: 0;
}

/* Tabs */
.slider-catalog__tabs {
	display: flex;
	align-items: center;
	flex-shrink: 0;
}

.slider-catalog__tab {
	height: var(--sc-tab-h);
	padding: 0 var(--sc-tab-pad-x);
	background: white;
	border: none;
	cursor: pointer;
	color: #094141;
	font-size: var(--sc-fs-tab);
	font-family: Inter, sans-serif;
	font-weight: 700;
	line-height: 120%;
	letter-spacing: -0.02em;
	white-space: nowrap;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.2s, color 0.2s;
}

.slider-catalog__tab:first-child {
	border-radius: 1000px 0 0 1000px;
}

.slider-catalog__tab:last-child {
	border-radius: 0 1000px 1000px 0;
}

.slider-catalog__tab--active {
	background: #094141;
	color: white;
}

.slider-catalog__tab-divider {
	width: 1px;
	height: var(--sc-tab-h);
	background: #094141;
	flex-shrink: 0;
}

/* Track wrap — горизонтальная прокрутка, полоса скрыта (навигация только точками) */
.slider-catalog__track-wrap {
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	margin-bottom: var(--sc-header-mb);
	padding-bottom: 30px;
}
span.slider-catalog__card-badge{
	display: none;
}
.slider-catalog__track-wrap::-webkit-scrollbar { width: 0; height: 0; display: none; }

.slider-catalog__cards {
	display: flex;
	gap: var(--sc-cards-gap);
	padding: 0 var(--sc-side-pad);
	width: max-content;
}

/* Card */
.slider-catalog__card {
	min-width: var(--sc-card-w);
	max-width: var(--sc-card-w);
	padding: var(--sc-card-pad);
	background: white;
	box-shadow: 0 0.37dvh 0.74dvh rgba(9, 65, 65, 0.10);
	border-radius: var(--sc-card-radius);
	backdrop-filter: blur(7.5px);
	display: flex;
	flex-direction: column;
	gap: var(--sc-card-gap);
	flex-shrink: 0;
	scroll-snap-align: start;
}

.slider-catalog__card[hidden] {
	display: none !important;
}

.slider-catalog__card--sold-out {
	opacity: 0.85;
}

/* Card top */
.slider-catalog__card-top {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--sc-card-top-gap);
	flex: 1;
}

.slider-catalog__card-image {
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: var(--sc-card-img-radius);
	object-fit: cover;
}

.slider-catalog__card-image--placeholder {
	background: #D9D9D9;
}

/* Favorite */
.slider-catalog__card-favorite {
	position: absolute;
	top: 0;
	right: 0;
	width: var(--sc-fav-size);
	height: var(--sc-fav-size);
	background: none;
	border: none;
	cursor: pointer;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
}

.slider-catalog__card-favorite svg {
	width: 100%;
	height: 100%;
}

.slider-catalog__card-favorite svg path {
	transition: fill 0.2s;
}

.slider-catalog__card-favorite:hover svg path {
	fill: #E2F397;
}

.slider-catalog__card-favorite.is-favorite svg {
	display: none;
}

.slider-catalog__card-favorite.is-favorite::after {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background-image: url("data:image/svg+xml,%3Csvg width='52' height='52' viewBox='0 0 52 52' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M27.0158 35.3068C26.442 35.8393 25.5533 35.8393 24.9795 35.3068L24.597 34.9505C19.6208 30.3718 16.332 27.3418 16.332 23.6443C16.332 20.6143 18.672 18.248 21.6495 18.248C23.3333 18.248 24.9458 19.043 25.9995 20.288C27.0533 19.043 28.6658 18.248 30.3495 18.248C33.327 18.248 35.667 20.6105 35.667 23.6443C35.667 27.3418 32.382 30.3718 27.402 34.9543L27.0195 35.3105L27.0158 35.3068Z' fill='%23E2F397' stroke='%23E2F397' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
}

/* Badge */
.slider-catalog__card-badge {
	position: absolute;
	top: 0;
	left: 0;
	padding: var(--sc-badge-pad-y) var(--sc-badge-pad-x);
	background: #E2F397;
	border-radius: var(--sc-badge-radius);
	color: #094141;
	font-size: var(--sc-fs-badge);
	font-family: Inter, sans-serif;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: -0.05em;
	white-space: nowrap;
}

.slider-catalog__card-badge--sold-out {
	background: #5A8080;
	color: white;
}

/* Info */
.slider-catalog__card-info {
	display: flex;
	flex-direction: column;
	gap: var(--sc-info-gap);
}

.slider-catalog__card-name {
	color: #094141;
	font-size: var(--sc-fs-name);
	font-family: Inter, sans-serif;
	font-weight: 900;
	line-height: 110%;
	word-wrap: break-word;
}

.slider-catalog__card-color {
	color: #094141;
	font-size: var(--sc-fs-price);
	font-family: Inter, sans-serif;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: -0.05em;
}

/* Prices */
.slider-catalog__card-prices {
	display: flex;
	align-items: center;
	gap: var(--sc-prices-gap);
}

.slider-catalog__card-price,
.slider-catalog__card-old-price {
	color: #094141;
	font-size: var(--sc-fs-price);
	font-family: Inter, sans-serif;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: -0.05em;
	white-space: nowrap;
}

.slider-catalog__card-old-price {
	position: relative;
	opacity: 0.5;
}

.slider-catalog__card-old-price-line {
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	height: 1.5px;
	background: #094141;
}

/* Buttons */
.slider-catalog__card-buttons {
	display: flex;
	align-items: center;
	gap: var(--sc-buttons-gap);
}

.slider-catalog__btn-cart,
.slider-catalog__btn-detail {
	width: var(--sc-btn-w);
	height: var(--sc-btn-h);
	border-radius: 1000px;
	font-size: var(--sc-fs-btn);
	font-family: Inter, sans-serif;
	font-weight: 700;
	line-height: 120%;
	letter-spacing: -0.02em;
	white-space: nowrap;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	cursor: pointer;
	transition: background 0.2s, opacity 0.2s;
}

.slider-catalog__btn-cart {
	background: #094141;
	color: white;
	border: none;
}

.slider-catalog__btn-cart:hover {
	opacity: 0.85;
}

.slider-catalog__btn-cart--disabled {
	background: #5A8080;
	cursor: default;
	pointer-events: none;
}

.slider-catalog__btn-detail {
	background: white;
	/* iOS Safari < 16.4: outline не учитывает border-radius — даёт квадратную рамку. Используем inset box-shadow. */
	box-shadow: inset 0 0 0 2px #094141;
	color: #094141;
}

.slider-catalog__btn-detail:hover {
	background: #f5f5f0;
}

/* Pagination dots */
.slider-catalog__dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(4px, 0.31dvw, 6px);
	margin: 0 var(--sc-side-pad) var(--sc-vert-pad-bot);
	flex-shrink: 0;
}

.slider-catalog__dot {
	width: clamp(8px, 0.63dvw, 12px);
	height: clamp(8px, 0.63dvw, 12px);
	background: #5A8080;
	border-radius: 1000px;
	cursor: pointer;
	transition: width 0.3s, background 0.3s;
}

.slider-catalog__dot--active {
	width: clamp(40px, 3.33dvw, 64px);
	background: #094141;
}

/* ========== Tablet: max-width 1599px ========== */
@media (max-width: 1599px) {
	.slider-catalog {
		--sc-base:            1.67dvw;
		--sc-side-pad:        2.5dvw;
		--sc-radius:          1.5dvw;
		--sc-vert-pad-top:    calc(var(--section-gap) + var(--section-overlap));
		--sc-vert-pad-bot:    3dvh;

		--sc-fs-title:        2.8dvw;

		--sc-tab-h:           2.5dvw;
		--sc-tab-pad-x:       2.5dvw;
		--sc-fs-tab:          1dvw;

		--sc-cards-gap:       1.25dvw;
		--sc-card-w:          30dvw;
		--sc-card-img-radius: 0.5dvw;

		--sc-fav-size:        2.5dvw;
		--sc-badge-pad-y:     0.5dvw;
		--sc-badge-pad-x:     1dvw;
		--sc-fs-badge:        1dvw;

		--sc-info-gap:        0.6dvw;
		--sc-fs-name:         1.8dvw;
		--sc-fs-price:        1.2dvw;
		--sc-prices-gap:      0.7dvw;

		--sc-buttons-gap:     0.6dvw;
		--sc-btn-w:           12dvw;
		--sc-btn-h:           3.2dvw;
		--sc-fs-btn:          1.2dvw;
	}

	.slider-catalog__btn-detail {
		box-shadow: inset 0 0 0 1px #094141;
	}
}

/* ========== Narrow laptop: 1440-1599px (низкие экраны типа 1536×695) ========== */
@media (min-width: 1440px) and (max-width: 1599px) {
	.slider-catalog {
		--sc-card-w:          22dvw;        /* 4 карточки вместо 3 */
		--sc-cards-gap:       1dvw;

		--sc-fs-title:        2dvw;
		--sc-tab-h:           2dvw;
		--sc-tab-pad-x:       2dvw;
		--sc-fs-tab:          0.85dvw;

		--sc-fav-size:        2dvw;
		--sc-fs-badge:        0.85dvw;

		--sc-fs-name:         1.4dvw;
		--sc-fs-price:        1dvw;
		--sc-prices-gap:      0.5dvw;

		--sc-btn-w:           9dvw;
		--sc-btn-h:           2.6dvw;
		--sc-fs-btn:          1dvw;
	}
}

/* ========== Mobile: max-width 767px ========== */
@media (max-width: 767px) {
	.slider-catalog {
		--sc-base:            3.33dvw;
		--sc-side-pad:        4.17dvw;
		--sc-radius:          0;
		--sc-vert-pad-top:    calc(var(--section-gap) + var(--section-overlap));
		--sc-vert-pad-bot:    3dvh;
		--sc-header-mb:       2.5dvh;

		--sc-fs-title:        5dvw;

		--sc-tab-h:           7dvw;
		--sc-tab-pad-x:       5dvw;
		--sc-fs-tab:          3dvw;

		--sc-cards-gap:       3.33dvw;
		--sc-card-w:          70dvw;
		--sc-card-img-radius: 2.5dvw;

		--sc-fav-size:        7dvw;
		--sc-badge-pad-y:     1dvw;
		--sc-badge-pad-x:     2.5dvw;
		--sc-fs-badge:        2.5dvw;

		--sc-info-gap:        1.5dvw;
		--sc-fs-name:         4.5dvw;
		--sc-fs-price:        3dvw;
		--sc-prices-gap:      2dvw;

		--sc-buttons-gap:     2dvw;
		--sc-btn-w:           30dvw;
		--sc-btn-h:           8dvw;
		--sc-fs-btn:          3.2dvw;
	}

	.slider-catalog__header {
		flex-direction: column;
		gap: 4dvw;
	}

	.slider-catalog__title {
		white-space: normal;
	}

	.slider-catalog__btn-cart,
	.slider-catalog__btn-detail {
		padding: 0 4dvw;
	}

	.slider-catalog__btn-detail {
		box-shadow: inset 0 0 0 1px #094141;
	}
}

/* ========== Portrait — tablet ========== */
@media (max-aspect-ratio: 3/4) and (min-width: 768px) {
	.slider-catalog {
		--sc-base:            2.5dvw;
		--sc-side-pad:        3dvw;
		--sc-vert-pad-top:    calc(var(--section-gap) + var(--section-overlap));
		--sc-vert-pad-bot:    3dvh;

		--sc-fs-title:        4dvw;
		--sc-tab-h:           5dvw;
		--sc-tab-pad-x:       3dvw;
		--sc-fs-tab:          1.6dvw;

		--sc-cards-gap:       2.5dvw;
		--sc-card-w:          45dvw;
		--sc-card-img-radius: 1.5dvw;

		--sc-fav-size:        4dvw;
		--sc-fs-badge:        1.6dvw;

		--sc-fs-name:         2.5dvw;
		--sc-fs-price:        1.6dvw;

		--sc-btn-w:           18dvw;
		--sc-btn-h:           5dvw;
		--sc-fs-btn:          1.6dvw;
	}

	.slider-catalog__header {
		flex-direction: column;
		gap: 2dvw;
	}
}

/* ========== Portrait — phone ========== */
@media (max-aspect-ratio: 3/4) and (max-width: 767px) {
	.slider-catalog {
		--sc-card-w:          75dvw;
		--sc-fs-title:        7dvw;
	}
}

/* ========== Bitrix edit mode ========== */
body.bx-panel-mode .slider-catalog {
	height: auto !important;
}

body.bx-panel-mode .slider-catalog__sticky {
	position: static;
	height: auto;
	overflow: visible;
}

body.bx-panel-mode .slider-catalog__cards {
	flex-wrap: wrap;
	transform: none !important;
}

body.bx-panel-mode .slider-catalog__dots {
	display: none;
}

/* End */


/* Start:/local/templates/qfast/components/bitrix/news.list/rew_scroll/style.css?17770777986153*/
/* ========== REW — native horizontal scroll (отзывы) ========== */

.rew {
  position: relative;
  height: auto;

  --rew-base:         clamp(20px, 1.67dvw, 32px);
  --rew-card-w:       clamp(360px, 29.17dvw, 560px);   /* 560px @ 1920 */
  --rew-card-gap:     clamp(16px, 2.08dvw, 40px);      /* 40px  @ 1920 */
  --rew-card-pad:     var(--rew-base);
  --rew-card-radius:  clamp(16px, 1.25dvw, 24px);      /* 24px  @ 1920 */
  --rew-side-pad:     clamp(20px, 4.17dvw, 80px);      /* 80px  @ 1920 */

  --rew-fs-title:     clamp(24px, 2.5dvw, 48px);       /* 48px  @ 1920 */
  --rew-fs-subtitle:  clamp(14px, 1.04dvw, 20px);      /* 20px  @ 1920 */
  --rew-fs-author:    clamp(16px, 1.25dvw, 24px);      /* 24px  @ 1920 */
  --rew-fs-text:      clamp(14px, 1.04dvw, 20px);      /* 20px  @ 1920 */
  --rew-fs-letter:    clamp(14px, 1.04dvw, 20px);      /* 20px  @ 1920 */

  --rew-avatar-size:  clamp(28px, 1.82dvw, 35px);      /* 35px  @ 1920 */
}

.rew__sticky {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  background: #094141;
  padding-bottom: var(--rew-section-pad-y);
  height: 100dvh;
  max-height: 100dvh;
  box-sizing: border-box;

  --rew-section-pad-y: 5dvh;   /* единый вертикальный отступ сверху и снизу */

  border-top-left-radius: var(--rew-card-radius);
  border-top-right-radius: var(--rew-card-radius);
}

/* Header */
.rew__header {
  padding: var(--rew-section-pad-y) var(--rew-side-pad) 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-shrink: 0;
  margin-bottom: var(--rew-header-mb, clamp(20px, 3.7dvh, 40px));
}



.rew__title {
  color: #E2F397;
  font-size: var(--rew-fs-title);
  font-family: Inter, sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  line-height: 110%;
  letter-spacing: -0.05em;
  margin: 0;
}

.rew__subtitle {
  color: #E2F397;
  font-size: var(--rew-fs-subtitle);
  font-family: Inter, sans-serif;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.05em;
  opacity: 0.6;
  margin: 0;
}

/* Track — нативная горизонтальная прокрутка */
.rew__track-wrap {
  flex: 1 1 0;
  min-height: 0;
  margin-top: var(--rew-section-pad-y);
  margin-bottom: calc(var(--rew-base) * -1);
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.rew__track-wrap::-webkit-scrollbar { width: 0; height: 0; display: none; }

/* Custom pill scrollbar */
.rew__scrollbar {
  position: relative;
  margin: clamp(16px, 2.22dvh, 24px) var(--rew-side-pad) clamp(16px, 2.22dvh, 24px);
  height: clamp(6px, 0.74dvh, 8px);
  background: rgba(226, 243, 151, 0.2);
  border-radius: 999px;
  cursor: pointer;
  user-select: none;
}

.rew__scrollbar-thumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: #E2F397;
  border-radius: 999px;
  transition: background .15s ease;
}

.rew__scrollbar-thumb:hover,
.rew__scrollbar-thumb.active { background: #c8dd76; }

.rew__cards {
  height: 90%;
  display: flex;
  align-items: stretch;
  gap: var(--rew-card-gap);
  padding: 0 var(--rew-side-pad);
  width: max-content;
}

/* ========== CARDS ========== */
.rew__card {
  flex-shrink: 0;
  width: var(--rew-card-w);
  height: 100%;
  min-height: 0;
  background: inherit;
  border-radius: var(--rew-card-radius);
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}

.rew__card:nth-child(2n) { flex-direction: column-reverse; }

.rew__card picture {
  display: flex;
  flex: 1 1 0;
  min-height: 0;
  width: 100%;
  overflow: hidden;
}

.rew__review {
  background-color: #fff;
  border-radius: var(--rew-card-radius);
  padding: var(--rew-card-pad);
  display: flex;
  flex-direction: column;
  gap: 1.25dvw;
  box-sizing: border-box;
  flex-shrink: 0;
  position: absolute;
  left: 0;
  right: 0;
  max-width: 100%;
}

.rew__card:not(:nth-child(2n)) .rew__review { top: 0; }
.rew__card:nth-child(2n) .rew__review { bottom: 0; }

.rew__photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.rew__card-head {
  display: flex;
  align-items: center;
  gap: 0.63dvw;
}

.rew__avatar {
  width: var(--rew-avatar-size);
  height: var(--rew-avatar-size);
  border-radius: 1000px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: #ffffff;
  font-family: Inter, sans-serif;
  font-weight: 700;
  font-size: var(--rew-fs-letter);
  line-height: 1;
  letter-spacing: -0.02dvw;
}

.rew__avatar { background: #BDEEFF; color: #ffffff; }
.rew__card:nth-child(2n) .rew__avatar { background: #E2F397; }

.rew__author {
  color: #094141;
  font-family: Inter, sans-serif;
  font-weight: 900;
  font-size: var(--rew-fs-author);
  line-height: 110%;
}

.rew__text {
  color: #094141;
  font-family: Inter, sans-serif;
  font-weight: 400;
  font-size: var(--rew-fs-text);
  line-height: 120%;
  letter-spacing: -0.05dvw;
}
.rew__header-text {
  display: flex;
  width: 90%;
  justify-content: space-between;
}
.rew__subtitle{
  width: 16.15dvw
}
/* ========== Tablet ========== */
@media (max-width: 1599px) {
  .rew {
    --rew-card-w:       clamp(280px, 22vw, 340px);
    --rew-card-gap:     24px;
    --rew-card-pad:     20px;
    --rew-card-radius:  16px;
    --rew-side-pad:     20px;
    --rew-fs-title:     30px;
    --rew-fs-subtitle:  14px;
    --rew-fs-author:    18px;
    --rew-fs-text:      14px;
    --rew-fs-letter:    14px;
    --rew-avatar-size:  28px;
  }

}

/* ========== Mobile ========== */
@media (max-width: 767px) {
  .rew {
    --rew-card-w:       75dvw;
    --rew-card-gap:     4dvw;
    --rew-card-pad:     5dvw;
    --rew-card-radius:  4dvw;
    --rew-side-pad:     5dvw;
    --rew-fs-title:     7dvw;
    --rew-fs-subtitle:  3.5dvw;
    --rew-fs-author:    5dvw;
    --rew-fs-text:      3.75dvw;
    --rew-fs-letter:    3.75dvw;
    --rew-avatar-size:  7dvw;
  }

  .rew__sticky { border-radius: 0; }
  .rew__header {
    padding: 5dvh var(--rew-side-pad) 0;
    flex-direction: column;
    gap: 2.5dvw;
  }
  .rew__subtitle { width: 100%; }

}

/* End */
/* /local/templates/qfast/components/bitrix/news.detail/qfast_product/style.min.css?177586794079503 */
/* /local/templates/qfast/components/bitrix/news.list/slider_catalog/style.css?177585691313785 */
/* /local/templates/qfast/components/bitrix/news.list/rew_scroll/style.css?17770777986153 */
