/* ============================================================
   ПРИМЕЧАНИЕ ДЛЯ ВЁРСТАЛЬЩИКА
   Все тексты, цены, названия товаров, изображения и данные форм
   в этом прототипе — ПЛЕЙСХОЛДЕР-КОНТЕНТ (визуально помечен
   пунктирной рамкой в местах фото/сертификатов и подписан alt-
   текстом "Плейсхолдер: ..."). При переносе на Bitrix заменяется
   реальными данными из инфоблоков.
   Классы — по БЭМ. Иконки — инлайн-SVG через <symbol>/<use>,
   перекрашиваются через CSS (color / currentColor).
   ============================================================ */

/* -------------------- 1. ПЕРЕМЕННЫЕ -------------------- */
:root{
  --color-bg:#ffffff;
  --color-bg-muted:#f6f8fb;
  --color-bg-inset:#eef3fa;
  --color-primary:#0066d0;
  --color-primary-dark:#0052a6;
  --color-primary-light:#e6f1fc;
  --color-text:#1b2431;
  --color-text-muted:#6b7686;
  --color-text-faint:#98a2b3;
  --color-border:#e4e8ef;
  --color-success:#2e9e5b;
  --color-success-bg:#eaf7ef;
  --color-star:#f5a623;

  --font-heading:'Manrope', sans-serif;
  --font-body:'Inter', sans-serif;

  --radius-s:6px;
  --radius-m:10px;
  --radius-l:16px;

  --shadow-card:0 1px 2px rgba(20,30,50,.05), 0 2px 8px rgba(20,30,50,.04);
  --container:1240px;
}

/* -------------------- 2. RESET -------------------- */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{margin:0;font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);line-height:1.55;font-size:15px;}
h1,h2,h3,h4{font-family:var(--font-heading);margin:0;color:var(--color-text);font-weight:700;}
p{margin:0 0 12px;}
ul,ol{margin:0;padding:0;list-style:none;}
a{color:inherit;text-decoration:none;}
button{font:inherit;cursor:pointer;border:none;background:none;color:inherit;}
input,select,textarea{font:inherit;color:inherit;}
img{max-width:100%;display:block;}
svg{display:block;}
.container{max-width:var(--container);margin:0 auto;padding:0 24px;}
:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:4px;}
@media (prefers-reduced-motion: reduce){*{transition:none !important;animation:none !important;}}

/* -------------------- utility: placeholder blocks -------------------- */
.ph-media{
  background:
    repeating-linear-gradient(135deg, var(--color-bg-inset) 0 10px, #ffffff 10px 20px);
  border:1px dashed #c7d3e6;
  color:var(--color-text-faint);
  display:flex;align-items:center;justify-content:center;
  text-align:center;font-size:12px;line-height:1.4;padding:8px;
  border-radius:var(--radius-m);
}

/* -------------------- 3. SVG ICON SPRITE (visually hidden) -------------------- */
.icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
.icon--inline{width:14px;height:14px;display:inline;vertical-align:-2px;margin-right:3px;}
.certificates__image .icon{width:28px;height:28px;margin:0 auto 6px;}
.product-card__media .ph-media{width:100%;height:100%;}
.logo--footer{margin-bottom:10px;}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* -------------------- 4. ШАПКА -------------------- */
.top-bar{background:var(--color-bg-muted);border-bottom:1px solid var(--color-border);font-size:13px;color:var(--color-text-muted);}
.top-bar__row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:8px;padding-bottom:8px;flex-wrap:wrap;}
.top-bar__promo{display:flex;align-items:center;gap:6px;color:var(--color-primary-dark);font-weight:600;}
.top-bar__promo .icon{width:15px;height:15px;}
.top-bar__help{display:flex;align-items:center;gap:6px;}
.top-bar__help .icon{width:15px;height:15px;}

.header{padding:18px 0;border-bottom:1px solid var(--color-border);}
.header__row{display:flex;align-items:center;gap:28px;}
.logo{display:inline-flex;align-items:center;flex-shrink:0;}
.logo__image{height:34px;width:auto;display:block;}
.logo--footer .logo__image{height:38px;}
.header__search{flex:1;max-width:480px;}
.search-form{position:relative;display:flex;}
.search-form__input{width:100%;padding:10px 44px 10px 16px;border:1px solid var(--color-border);border-radius:var(--radius-m);background:var(--color-bg-muted);font-size:14px;}
.search-form__input:focus{background:#fff;border-color:var(--color-primary);}
.search-form__submit{position:absolute;right:4px;top:4px;bottom:4px;width:36px;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);border-radius:var(--radius-s);}
.search-form__submit:hover{color:var(--color-primary);}

.header__contact{display:flex;flex-direction:column;gap:2px;font-size:13px;white-space:nowrap;}
.header__phone{font-family:var(--font-heading);font-weight:700;font-size:16px;color:var(--color-text);}
.header__callback{color:var(--color-primary);font-weight:500;}
.header__callback:hover{text-decoration:underline;}

.header__actions{display:flex;align-items:center;gap:22px;margin-left:auto;}
.header__action{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:var(--color-text-muted);min-width:44px;}
.header__action:hover{color:var(--color-primary);}
.header__action-badge{position:absolute;top:-6px;right:6px;background:var(--color-primary);color:#fff;font-size:10px;font-weight:700;border-radius:50%;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0 3px;}
.header__call-mobile{display:none;}
.header__burger{display:none;}

.nav{background:#fff;border-bottom:1px solid var(--color-border);}
.nav__list{display:flex;gap:28px;padding:12px 0;flex-wrap:wrap;}
.nav__link{font-size:14px;font-weight:600;color:var(--color-text);padding:4px 0;border-bottom:2px solid transparent;}
.nav__link:hover,.nav__link--active{color:var(--color-primary);border-color:var(--color-primary);}

/* -------------------- 5. ХЛЕБНЫЕ КРОШКИ -------------------- */
.breadcrumbs{padding:16px 0 0;}
.breadcrumbs__list{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;color:var(--color-text-muted);}
.breadcrumbs__link:hover{color:var(--color-primary);}
.breadcrumbs__current{color:var(--color-text);}
.breadcrumbs .icon{width:13px;height:13px;color:var(--color-text-faint);}

/* -------------------- 6. ЗАГОЛОВОК ТОВАРА -------------------- */
.product-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 0 24px;flex-wrap:wrap;}
.product-heading__title{font-size:26px;line-height:1.25;max-width:640px;}
.btn-ask{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--color-border);border-radius:var(--radius-m);font-size:13px;font-weight:600;color:var(--color-primary-dark);white-space:nowrap;}
.btn-ask:hover{border-color:var(--color-primary);background:var(--color-primary-light);}
.btn-ask .icon{width:16px;height:16px;}

/* -------------------- 7. ОСНОВНОЙ БЛОК: ГАЛЕРЕЯ + ПОКУПКА -------------------- */
.product-main{display:grid;grid-template-columns:1fr 380px;gap:40px;padding-bottom:40px;align-items:start;}

/* --- галерея --- */
.gallery{position:relative;}
.gallery__figure{position:relative;margin:0 0 12px;}
.gallery__image{aspect-ratio:4/3;width:100%;font-size:14px;}
.gallery__gift{position:absolute;top:14px;right:14px;width:40px;height:40px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-card);color:var(--color-primary);}
.gallery__arrow{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;background:#fff;box-shadow:var(--shadow-card);display:flex;align-items:center;justify-content:center;color:var(--color-text);}
.gallery__arrow:hover{color:var(--color-primary);}
.gallery__arrow--prev{left:12px;}
.gallery__arrow--next{right:12px;}
.gallery__thumbs{display:flex;gap:10px;}
.gallery__thumb{width:76px;height:76px;border-radius:var(--radius-m);border:2px solid transparent;overflow:hidden;font-size:10px;padding:0;}
.gallery__thumb .ph-media{width:100%;height:100%;border-radius:calc(var(--radius-m) - 2px);}
.gallery__thumb--active{border-color:var(--color-primary);}

/* --- бейджи доверия --- */
.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px;}
.trust__item{display:flex;gap:12px;padding:16px;background:var(--color-bg-muted);border-radius:var(--radius-m);}
.trust__icon{width:38px;height:38px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.trust__title{font-size:13px;font-weight:700;margin-bottom:2px;}
.trust__text{font-size:12px;color:var(--color-text-muted);line-height:1.4;}

/* --- блок покупки --- */
.purchase{position:sticky;top:16px;border:1px solid var(--color-border);border-radius:var(--radius-l);padding:20px;}
.purchase__summary{list-style:none;margin:0 0 14px;padding:0;font-size:13.5px;color:var(--color-text-muted);}
.purchase__summary li{position:relative;padding-left:16px;margin-bottom:6px;}
.purchase__summary li::before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:var(--color-primary);}
.purchase__note{display:flex;gap:8px;align-items:flex-start;background:var(--color-primary-light);color:var(--color-primary-dark);font-size:12.5px;padding:10px 12px;border-radius:var(--radius-s);margin-bottom:16px;}
.purchase__note .icon{width:16px;height:16px;margin-top:1px;}

.field-group{margin-bottom:16px;}
.field-group__label{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;margin-bottom:8px;}
.field-group__hint{font-weight:500;color:var(--color-primary);font-size:12.5px;}
.size-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px;}
.size-grid__btn{padding:10px 4px;border:1px solid var(--color-border);border-radius:var(--radius-m);background:#fff;font-size:12.5px;font-weight:600;color:var(--color-text);text-align:center;}
.size-grid__btn:hover{border-color:var(--color-primary);}
.size-grid__btn--active{border-color:var(--color-primary);color:var(--color-primary-dark);background:var(--color-primary-light);}
.size-grid__custom{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--color-primary-dark);margin-bottom:20px;}
.size-grid__custom:hover{text-decoration:underline;}
.size-grid__custom .icon{width:15px;height:15px;}

.firmness{margin-bottom:18px;}
.firmness__label{font-size:13px;font-weight:600;margin-bottom:14px;}
.firmness__scale{position:relative;height:20px;margin:0 3px 8px;}
.firmness__track{position:absolute;top:4px;left:0;right:0;height:2px;background:var(--color-border);border-radius:2px;}
.firmness__fill{position:absolute;top:4px;left:50%;width:25%;height:3px;background:var(--color-primary);border-radius:2px;}
.firmness__points{position:relative;display:flex;justify-content:space-between;}
.firmness__point{display:flex;flex-direction:column;align-items:center;}
.firmness__point i{display:block;width:8px;height:8px;border-radius:50%;background:#fff;border:2px solid var(--color-border);}
.firmness__point--active i{width:10px;height:10px;background:var(--color-primary);border-color:var(--color-primary);}
.firmness__labels{display:flex;justify-content:space-between;gap:4px;}
.firmness__labels span{flex:1;font-size:10px;line-height:1.25;color:var(--color-text-faint);text-align:center;}
.firmness__labels span:first-child{text-align:left;}
.firmness__labels span:last-child{text-align:right;}
.firmness__labels span.firmness__label--active{color:var(--color-primary-dark);font-weight:600;}
.firmness__result{font-size:13px;font-weight:600;margin-top:10px;}
.firmness__result-accent{color:var(--color-primary);}

.price-block{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:4px;}
.price-block__old{font-size:14px;color:var(--color-text-faint);text-decoration:line-through;}
.price-block__badge{font-size:12px;font-weight:700;color:#fff;background:var(--color-primary);padding:2px 8px;border-radius:20px;}
.price-block__new{font-size:28px;font-weight:800;font-family:var(--font-heading);}
.price-block__installment{font-size:12.5px;color:var(--color-text-muted);margin-bottom:16px;}

.purchase__actions{display:flex;gap:10px;margin-bottom:14px;}
.qty{display:flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-m);}
.qty__btn{width:38px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);}
.qty__btn:hover{color:var(--color-primary);}
.qty__value{width:32px;text-align:center;border:none;font-weight:700;font-size:14px;background:transparent;}
.btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;border-radius:var(--radius-m);font-weight:700;font-size:14.5px;transition:background .15s,border-color .15s,color .15s;}
.btn--primary{background:var(--color-primary);color:#fff;}
.btn--primary:hover{background:var(--color-primary-dark);}
.btn--secondary{border:1px solid var(--color-border);color:var(--color-text);width:100%;}
.btn--secondary:hover{border-color:var(--color-primary);color:var(--color-primary);}
.btn .icon{width:18px;height:18px;}

.purchase__oneclick{margin-bottom:18px;}
.purchase__stock{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--color-success);font-weight:600;margin-bottom:4px;}
.purchase__stock .icon{width:16px;height:16px;}
.purchase__delivery{font-size:12.5px;color:var(--color-text-muted);margin-bottom:14px;padding-left:24px;}
.purchase__link-row{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--color-primary-dark);margin-bottom:16px;}
.purchase__link-row .icon{width:16px;height:16px;}
.purchase__link-row:hover{text-decoration:underline;}

.rating-card{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-bg-muted);border-radius:var(--radius-m);}
.rating-card__score{display:flex;align-items:center;gap:4px;font-weight:800;font-family:var(--font-heading);font-size:16px;color:var(--color-text);}
.rating-card__score .icon{width:16px;height:16px;color:var(--color-star);fill:var(--color-star);}
.rating-card__text{font-size:12.5px;color:var(--color-text-muted);}
.rating-card__link{margin-left:auto;font-size:12.5px;font-weight:600;color:var(--color-primary);white-space:nowrap;}

/* -------------------- 8. ТАБЫ -------------------- */
.tabs{border-top:1px solid var(--color-border);padding-top:8px;}
.tabs__list{display:flex;gap:8px;border-bottom:1px solid var(--color-border);overflow-x:auto;}
.tabs__btn{padding:14px 6px;margin-right:24px;font-size:15px;font-weight:600;color:var(--color-text-muted);border-bottom:2px solid transparent;white-space:nowrap;}
.tabs__btn:hover{color:var(--color-text);}
.tabs__btn[aria-selected="true"]{color:var(--color-primary);border-color:var(--color-primary);}
.tabs__panel{padding:28px 0;display:none;}
.tabs__panel--active{display:block;}

.description__text{max-width:760px;color:var(--color-text);}
.description__text p{color:var(--color-text-muted);}

.composition{margin-top:28px;}
.composition__title{font-size:19px;margin-bottom:16px;}
.composition__grid{display:grid;grid-template-columns:220px 1fr;gap:32px;align-items:start;}
.composition__figure{aspect-ratio:1/1;}
.composition__side{margin-bottom:20px;}
.composition__side-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-faint);margin-bottom:10px;}
.composition__layer{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px dashed var(--color-border);font-size:13.5px;}
.composition__layer:last-child{border-bottom:none;}
.composition__layer-num{width:22px;height:22px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary-dark);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;}

.benefits{margin-top:24px;display:grid;gap:12px;}
.benefits__item{display:flex;gap:10px;font-size:14px;color:var(--color-text-muted);}
.benefits__item .icon{width:16px;height:16px;color:var(--color-primary);flex-shrink:0;margin-top:3px;}

.spec-table{width:100%;border-collapse:collapse;max-width:640px;}
.spec-table tr{border-bottom:1px solid var(--color-border);}
.spec-table th,.spec-table td{text-align:left;padding:12px 0;font-size:14px;font-weight:400;}
.spec-table th{color:var(--color-text-muted);width:45%;font-weight:500;}

.reviews-summary{display:flex;align-items:center;gap:20px;padding:20px;background:var(--color-bg-muted);border-radius:var(--radius-m);margin-bottom:20px;}
.reviews-summary__score{font-family:var(--font-heading);font-size:34px;font-weight:800;}
.reviews-summary__stars{display:flex;gap:2px;color:var(--color-star);margin:4px 0;}
.reviews-summary__stars .icon{width:14px;height:14px;fill:var(--color-star);}
.reviews-summary__count{font-size:12.5px;color:var(--color-text-muted);}
.review-card{padding:16px 0;border-bottom:1px solid var(--color-border);}
.review-card__head{display:flex;align-items:center;gap:10px;margin-bottom:6px;}
.review-card__avatar{width:32px;height:32px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary-dark);display:flex;align-items:center;justify-content:center;}
.review-card__name{font-weight:600;font-size:13.5px;}
.review-card__date{font-size:12px;color:var(--color-text-faint);}
.review-card__text{font-size:13.5px;color:var(--color-text-muted);}

/* -------------------- 9. СЕРТИФИКАТЫ -------------------- */
.certificates{padding:8px 0 40px;border-top:1px solid var(--color-border);}
.section-title{font-size:20px;margin-bottom:20px;}
.certificates__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.certificates__item{border:1px solid var(--color-border);border-radius:var(--radius-m);padding:14px;}
.certificates__image{aspect-ratio:3/4;margin-bottom:10px;font-size:11px;}
.certificates__label{font-size:13px;font-weight:600;text-align:center;}

/* -------------------- 10. БЫСТРЫЙ ЗАКАЗ -------------------- */
.quick-order{background:var(--color-bg-muted);border-radius:var(--radius-l);padding:32px;margin-bottom:48px;}
.quick-order__title{font-size:19px;margin-bottom:20px;max-width:560px;}
.quick-order__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px;}
.quick-order__field{display:flex;flex-direction:column;gap:6px;}
.quick-order__field label{font-size:12.5px;font-weight:600;color:var(--color-text-muted);}
.quick-order__field input{padding:11px 14px;border:1px solid var(--color-border);border-radius:var(--radius-m);background:#fff;font-size:14px;}
.quick-order__foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.quick-order__consent{font-size:12px;color:var(--color-text-muted);max-width:420px;}
.quick-order__consent a{color:var(--color-primary);text-decoration:underline;}
.quick-order__submit{padding:12px 28px;white-space:nowrap;}

/* -------------------- 11. КАРТОЧКА ТОВАРА (переиспользуемый компонент) -------------------- */
.product-card{position:relative;border:1px solid var(--color-border);border-radius:var(--radius-m);padding:14px;display:flex;flex-direction:column;height:100%;}
.product-card__quick-actions{position:absolute;z-index:3;top:20px;right:20px;display:flex;gap:5px}
.product-card__quick-action{display:flex;width:28px;height:28px;align-items:center;justify-content:center;padding:0;border:1px solid rgba(218,225,234,.9);border-radius:50%;background:rgba(255,255,255,.94);color:#8594a8;box-shadow:0 2px 8px rgba(22,38,61,.08);cursor:pointer;transition:color .18s ease,background .18s ease,transform .18s ease}
.product-card__quick-action:hover,.product-card__quick-action.is-active{color:var(--color-primary);background:#fff;transform:translateY(-1px)}
.product-card__quick-action .icon{width:15px;height:15px;overflow:visible;fill:none;stroke:currentColor}
.product-card__quick-action--favorite:hover,.product-card__quick-action--favorite.is-active{color:#e14a5b}.product-card__quick-action--favorite.is-active .icon{fill:currentColor}
.product-card__quick-action.is-loading{opacity:.55;cursor:wait}.product-card__quick-action.is-error{color:#d73535}
.product-card__media{position:relative;aspect-ratio:1/1;margin-bottom:12px;}
.product-card__badge{position:absolute;top:8px;left:8px;background:var(--color-primary);color:#fff;font-size:11px;font-weight:700;padding:3px 8px;border-radius:20px;}
.product-card__title{font-size:14px;font-weight:600;margin-bottom:6px;}
.product-card__title a:hover{color:var(--color-primary);}
.product-card__stars{display:flex;align-items:center;gap:4px;color:var(--color-star);font-size:12px;margin-bottom:8px;color:var(--color-text-muted);}
.product-card__stars .icon{width:13px;height:13px;fill:var(--color-star);color:var(--color-star);}
.product-card__foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:8px;}
.product-card__price{display:flex;flex-direction:column;}
.product-card__price-new{font-weight:800;font-family:var(--font-heading);font-size:15px;}
.product-card__price-old{font-size:11.5px;color:var(--color-text-faint);text-decoration:line-through;}
.product-card__add{width:36px;height:36px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.product-card__add:hover{background:var(--color-primary);color:#fff;}
.product-card__add .icon{width:17px;height:17px;}

.related{padding:8px 0 48px;}
.related__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}

/* -------------------- 12. ФУТЕР -------------------- */
.footer{background:var(--color-bg-muted);border-top:1px solid var(--color-border);padding:40px 0 20px;}
.footer__grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:24px;margin-bottom:32px;}
.footer__about{font-size:13px;color:var(--color-text-muted);max-width:260px;}
.footer__col-title{font-size:13px;font-weight:700;margin-bottom:14px;}
.footer__list li{margin-bottom:10px;}
.footer__list a{font-size:13.5px;color:var(--color-text-muted);}
.footer__list a:hover{color:var(--color-primary);}
.footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:20px;border-top:1px solid var(--color-border);font-size:12.5px;color:var(--color-text-faint);}
.footer__payments{display:flex;gap:10px;}
.footer__payments span{display:flex;align-items:center;justify-content:center;width:40px;height:26px;border:1px solid var(--color-border);border-radius:4px;font-size:9px;font-weight:700;color:var(--color-text-muted);background:#fff;}
.footer__social{display:flex;gap:10px;}
.footer__social a{width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);}
.footer__social a:hover{color:var(--color-primary);border-color:var(--color-primary);}

/* -------------------- 13. АДАПТИВ -------------------- */
@media (max-width:1024px){
  .product-main{grid-template-columns:1fr;}
  .purchase{position:static;}
  .composition__grid{grid-template-columns:1fr;}
  .footer__grid{grid-template-columns:1fr 1fr;}
  .related__grid{grid-template-columns:repeat(3,1fr);}
  .quick-order__grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:760px){
  .container{padding:0 16px;}
  .header__row{gap:12px;}
  .logo__image{height:26px;}
  .header__search,.header__contact{display:none;}
  .header__actions{gap:14px;}
  .header__action{font-size:0;gap:0;min-width:auto;}
  .header__action .icon{width:22px;height:22px;}
  .header__burger{display:flex;align-items:center;justify-content:center;width:38px;height:38px;margin-right:-4px;}
  .nav__list{display:none;}
  .nav.is-open .nav__list{display:flex;flex-direction:column;gap:0;padding:8px 0;}
  .nav.is-open .nav__link{padding:10px 0;width:100%;border-bottom:1px solid var(--color-border);}
  .top-bar__row{font-size:11.5px;padding-top:6px;padding-bottom:6px;}
  .product-heading__title{font-size:21px;}
  .trust{grid-template-columns:1fr;}
  .related__grid{grid-template-columns:repeat(2,1fr);}
  .certificates__grid{grid-template-columns:1fr;}
  .quick-order{padding:20px;}
  .quick-order__grid{grid-template-columns:1fr;}
  .footer__grid{grid-template-columns:1fr;}
  .footer__bottom{flex-direction:column;align-items:flex-start;}
}

.header__action.header__cart{margin-left:24px;}
@media (max-width:760px){.header__action.header__cart{margin-left:0;}}


/* Mobile header order: burger → logo → compare → favorites → cart → call */
@media (max-width:760px){
  .header__row{display:flex;align-items:center;gap:0;min-width:0;}
  .header__burger{order:1;flex:0 0 36px;width:36px;height:36px;margin:0 6px 0 -5px;}
  .header .logo{order:2;flex:0 0 auto;margin:0 8px 0 0;}
  .header .logo__image{width:auto;height:34px;}
  .header__actions{order:3;display:flex;flex:1 1 auto;justify-content:flex-end;gap:10px;margin-left:auto;min-width:0;}
  .header__action{flex:0 0 28px;min-width:28px;width:28px;height:36px;justify-content:center;font-size:0;gap:0;}
  .header__action .icon{width:23px;height:23px;}
  .header__call-mobile{display:flex;color:var(--color-primary);}
  .header__call-mobile .icon{width:24px;height:24px;}
  .header__action-badge{top:-1px;right:-2px;}
}
@media (max-width:380px){
  .header .logo{margin-right:5px;}
  .header .logo__image{height:31px;}
  .header__actions{gap:6px;}
  .header__action{flex-basis:26px;width:26px;min-width:26px;}
  .header__action .icon{width:21px;height:21px;}
}

/* Mobile-only scroll-up control and visibly underlined personal-data consent links. */
.scroll-top-mobile{display:none!important;}
@media (max-width:760px){
  .scroll-top-mobile{display:flex!important;}
}
.site-modal__consent a,
.personal-data-consent a,
.quick-order__consent a,
.order-consent a,
.form-button-note a,
form a[href="/personal.php"]{
  text-decoration:underline!important;
  text-decoration-thickness:1px;
  text-underline-offset:2px;
}
.site-modal__consent a:hover,
.personal-data-consent a:hover,
.quick-order__consent a:hover,
.order-consent a:hover,
.form-button-note a:hover,
form a[href="/personal.php"]:hover{
  text-decoration-thickness:2px;
}


/* Restore mobile call action after the text-logo revision. */
@media (max-width:760px){
  .header__row{display:flex;align-items:center;gap:0;min-width:0}
  .header__burger{order:1;flex:0 0 36px;width:36px;height:36px;margin:0 6px 0 -5px}
  .header .logo{order:2;flex:0 0 auto;margin:0 8px 0 0}
  .header__actions{order:3;display:flex;flex:1 1 auto;justify-content:flex-end;gap:9px;margin-left:auto;min-width:0}
  .header__action{flex:0 0 28px;min-width:28px;width:28px;height:36px;justify-content:center;font-size:0;gap:0}
  .header__action .icon{width:23px;height:23px}
  .header__call-mobile{display:flex;color:var(--color-primary)}
  .header__call-mobile .icon{width:24px;height:24px}
  .header__action-badge{top:-1px;right:-2px}
}
@media (max-width:380px){
  .header .logo{margin-right:5px}
  .header__actions{gap:5px}
  .header__action{flex-basis:25px;width:25px;min-width:25px}
  .header__action .icon{width:21px;height:21px}
  .header__call-mobile .icon{width:22px;height:22px}
}

/* TZ 2026-09: mobile header/footer finishing */
.footer__list a[href^="tel:"]{color:var(--color-primary);font-weight:700}
@media(max-width:760px){.header__call-mobile .icon{width:22px!important;height:22px!important;fill:var(--color-primary);color:var(--color-primary)}.header__call-mobile{margin-left:7px!important}.header__cart{margin-right:5px!important}}


/* TZ mobile: floating scroll-to-top button + tighter footer top spacing. */
@media (max-width:760px){
  .scroll-top-mobile{
    position:fixed;
    right:16px;
    bottom:18px;
    z-index:150;
    display:flex!important;
    width:54px;
    height:54px;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:0;
    padding:0;
    border:1px solid #9ba6b4;
    border-radius:50%;
    background:rgba(255,255,255,.96);
    color:#7d8794;
    box-shadow:0 5px 18px rgba(27,49,77,.12);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(8px);
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
  }
  .scroll-top-mobile.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
  }
  .scroll-top-mobile__icon{
    position:relative;
    display:block;
    width:14px;
    height:13px;
    margin:1px 0 -1px;
  }
  .scroll-top-mobile__icon:before{
    position:absolute;
    left:3px;
    top:4px;
    width:8px;
    height:8px;
    border-top:2px solid currentColor;
    border-left:2px solid currentColor;
    content:"";
    transform:rotate(45deg);
  }
  .scroll-top-mobile__text{
    display:block;
    font-size:9px;
    font-weight:700;
    line-height:1;
  }

  /* Original footer has 40px top padding. On mobile the logo block starts twice closer to the top. */
  .footer{padding-top:20px;}
}


/* TZ 2026-10: scroll-to-top is available on desktop too. */
@media (min-width:761px){
  .scroll-top-mobile{
    position:fixed;
    right:24px;
    bottom:24px;
    z-index:150;
    display:flex!important;
    width:50px;
    height:50px;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:0;
    padding:0;
    border:1px solid #c8d0da;
    border-radius:50%;
    background:rgba(255,255,255,.97);
    color:#647181;
    box-shadow:0 6px 22px rgba(27,49,77,.14);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(8px);
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease,border-color .2s ease,color .2s ease;
  }
  .scroll-top-mobile:hover{color:var(--color-primary);border-color:var(--color-primary)}
  .scroll-top-mobile.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
  .scroll-top-mobile__icon{position:relative;display:block;width:14px;height:13px;margin:1px 0 -1px}
  .scroll-top-mobile__icon:before{position:absolute;left:3px;top:4px;width:8px;height:8px;border-top:2px solid currentColor;border-left:2px solid currentColor;content:"";transform:rotate(45deg)}
  .scroll-top-mobile__text{display:block;font-size:9px;font-weight:700;line-height:1}
}
