
.st-grid{--cols:4;--gap:24px;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--gap)}
.st-grid > *{flex:0 1 calc((100% - (var(--cols) - 1) * var(--gap)) / var(--cols));min-width:0}
@media (max-width:1100px){.st-grid > *{flex-basis:calc((100% - 2 * var(--gap)) / 3)}}
@media (max-width:760px){.st-grid > *{flex-basis:calc((100% - var(--gap)) / 2)}}
@media (max-width:460px){.st-grid > *{flex-basis:100%}}
/* even — ровные ряды: карточки одной высоты, неполный последний ряд
   центрируется базовым justify-content. Правило существует и потому, что
   класс без единого правила в CSS означает потерянный при порте стиль, и
   общий свод справедливо на это краснеет. */
.st-grid.even{align-items:stretch}
.st-grid.even > *{flex-grow:0}
.st-grid.rail{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scroll-snap-type:x mandatory}
.st-grid.rail > *{scroll-snap-align:start;flex:0 0 260px}
[hidden]{display:none!important}

.st-tscroll{overflow-x:auto;max-width:100%;min-width:0}
table.st-t{width:100%;border-collapse:collapse;min-width:560px}
table.st-t td.num{text-align:right;font-variant-numeric:tabular-nums}
@media (max-width:640px){
 table.st-t{min-width:0}
 table.st-t thead{position:absolute;left:-9999px}
 table.st-t tr{display:block;margin-bottom:12px}
 table.st-t td{display:flex;justify-content:space-between;gap:12px}
 table.st-t td::before{content:attr(data-label);font-weight:600}
}

.st-crumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.st-pager{display:flex;gap:8px;flex-wrap:wrap}
.st-filters{display:flex;gap:8px;flex-wrap:wrap}
.st-chip[aria-pressed="true"]{font-weight:600}
.st-field{display:flex;flex-direction:column;gap:6px}
.st-zoom{border:0;padding:0;max-width:96vw;max-height:96vh}
.st-zoom img{display:block;max-width:96vw;max-height:96vh;height:auto}
.st-gal{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}
.st-gal > *{flex:0 1 calc((100% - 32px) / 3);min-width:0}
@media (max-width:700px){.st-gal > *{flex-basis:100%}}
.st-shot-link{position:relative;display:block}
.st-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;min-width:0}
.st-card{display:flex;flex-direction:column;min-width:0}


:root{--bg:#F6F5F2;--panel:#ECEAE4;--panel2:#E1DED5;--blush:#E7D9C4;--card:#FFFFFF;--ink:#14181A;--mute:#565C61;--line:#D8D5CD;--dark:#10312F;--dark-text:#CBD8D4;--accent:#17494D;--accent2:#8C5B3F;--wrap:1200px;--sh:0 1px 2px rgba(16,49,47,.05),0 8px 24px rgba(16,49,47,.07);--sh-up:0 14px 38px rgba(16,49,47,.15)}
@font-face{font-family:"Schibsted";src:url(/assets/fonts/schibsted-grotesk-latin.4c8b93f4.woff2) format("woff2");font-weight:400 700;font-display:swap;font-style:normal}
@font-face{font-family:"Petrona";src:url(/assets/fonts/petrona-latin.16ffbbb1.woff2) format("woff2");font-weight:400 600;font-display:swap;font-style:normal}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Petrona",Georgia,"Times New Roman",serif;font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased}
img{max-width:100%}
h1,h2,h3,h4,.st-kick,.st-nav,.st-btn,.st-price,.st-pill,.st-spec,.st-tag,.st-count{font-family:"Schibsted","Helvetica Neue",Arial,sans-serif}
h1,h2,h3,h4{margin:0 0 14px;font-weight:600;letter-spacing:-.022em;line-height:1.06}
h1{font-size:clamp(31px,4.6vw,56px)}
h2{font-size:clamp(25px,3.1vw,40px)}
h3{font-size:19px;letter-spacing:-.012em}
h4{font-size:16px;letter-spacing:0;font-weight:600}
/* Вторая краска заголовка: сериф курсивом глиняного цвета. Контрастная пара
   к плотному гротеску — иерархия видна с одного взгляда (возврат 07.09). */
em.d{font-family:"Petrona",Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.005em;color:var(--accent2)}
.st-sec.dark em.d,.st-hero em.d{color:var(--blush)}
p{margin:0 0 14px}
a{color:var(--accent)}
.st-wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.st-skip{position:absolute;left:-9999px}
.st-skip:focus{left:12px;top:12px;background:var(--ink);color:#fff;padding:10px 14px;z-index:50}

/* ── шапка: промо-строка, затем знак и разделы (образец 28) ───────────── */
.st-promo{background:var(--accent);color:#fff;font-size:13px;text-align:center;padding:9px 0;font-family:"Schibsted",Arial,sans-serif}
.st-promo a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.st-head{background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}
.st-head .st-wrap{display:flex;align-items:center;justify-content:space-between;gap:26px;padding-top:16px;padding-bottom:16px}
.st-mark{display:inline-flex;flex-direction:column;line-height:1;text-decoration:none;color:var(--ink);font-family:"Schibsted",Arial,sans-serif;font-weight:700;letter-spacing:.14em;font-size:21px}
.st-mark small{font-weight:400;letter-spacing:.24em;font-size:9.5px;color:var(--mute);margin-top:5px}
.st-nav{display:flex;gap:24px;font-size:14px;flex-wrap:wrap;min-width:0}
.st-nav a{color:var(--ink);text-decoration:none;padding-bottom:3px;border-bottom:1px solid transparent}
.st-nav a:hover,.st-nav a[aria-current]{border-bottom-color:var(--ink)}

/* ── герой: полноширинная композиция кадров ──────────────────────────── */
/* Было: абзац плюс фигура в 320px сбоку — владелец назвал это плоским
   (возврат 07.09). Стало: тёмная полоса во всю ширину, слева крупная
   типографика на своей заливке, справа композиция из двух кадров и
   песочного блока с числом. Светлый текст лежит на СОБСТВЕННОМ фоне
   секции, а не на фотографии (правило 25.08). */
.st-hero{background:var(--dark);color:#fff;position:relative;overflow:hidden}
.st-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(105% 75% at 8% 0%,rgba(231,217,196,.11),rgba(16,49,47,0) 62%)}
.st-hero-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);align-items:center;position:relative;z-index:1}
.st-hero-text{min-width:0;align-self:center;padding:clamp(22px,2.6vw,40px) clamp(24px,3vw,52px) clamp(22px,2.6vw,40px) max(24px,calc((100vw - 1200px)/2 + 24px))}
.st-hero h1{font-size:clamp(33px,4.9vw,64px);line-height:.98;letter-spacing:-.036em;color:#fff;margin:0 0 16px;max-width:15ch}
.st-hero p{color:var(--dark-text);font-size:clamp(15.5px,1.1vw,17px);line-height:1.5;max-width:48ch}
.st-kick{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute);margin:0 0 14px;display:flex;align-items:center;gap:10px}
.st-kick::before{content:"";width:26px;height:1px;background:var(--accent2);flex:0 0 auto}
.st-hero .st-kick{color:var(--blush)}
.st-hero .st-kick::before{background:var(--blush)}
.st-hero-art{display:grid;grid-template-columns:1.32fr 1fr;grid-template-rows:2.2fr 1fr;gap:9px;aspect-ratio:160/100;padding:clamp(16px,1.8vw,26px) clamp(16px,1.8vw,26px) clamp(16px,1.8vw,26px) 0}
.st-hero-art figure{margin:0;position:relative;overflow:hidden;background:var(--panel2)}
.st-hero-art figure.tall{grid-row:span 2}
.st-hero-art img{width:100%;height:100%;object-fit:cover;object-position:center 16%;transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.st-hero-art figure:hover img{transform:scale(1.045)}
.st-hero-art .lo{display:flex;align-items:center;justify-content:center}
.st-hero-art .lo img{width:100%;height:100%;object-fit:contain}
.st-hero-note{background:var(--blush);color:var(--ink);display:flex;flex-direction:column;justify-content:center;padding:18px 20px;min-width:0}
.st-hero-note b{display:block;font-family:"Schibsted",Arial,sans-serif;font-size:clamp(24px,2.3vw,34px);font-weight:700;letter-spacing:-.03em;line-height:1;margin-bottom:6px}
.st-hero-note span{font-size:13.5px;line-height:1.4;color:#3E3A33}
.st-btn{display:inline-block;background:var(--ink);color:#fff;font-family:"Schibsted",Arial,sans-serif;font-size:13px;letter-spacing:.09em;text-transform:uppercase;padding:13px 26px;text-decoration:none;border:1px solid var(--ink);transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}
.st-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-2px)}
.st-btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.st-btn.ghost:hover{background:var(--ink);color:#fff}
.st-hero .st-btn{background:var(--blush);color:var(--ink);border-color:var(--blush)}
.st-hero .st-btn:hover{background:#fff;border-color:#fff}
.st-hero .st-btn.ghost{color:#fff;border-color:rgba(203,216,212,.5);background:transparent}
.st-hero .st-btn.ghost:hover{background:rgba(255,255,255,.1);border-color:#fff}
.st-hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}

/* ── секции: разный ритм, а не семь одинаковых полос ─────────────────── */
.st-sec{padding:clamp(44px,5.2vw,86px) 0;position:relative}
.st-sec.panel{background:var(--panel)}
.st-sec.blush{background:var(--blush)}
.st-sec.dark{background:var(--dark);color:#fff}
.st-sec.dark h2,.st-sec.dark h3,.st-sec.dark b{color:#fff}
.st-sec.dark p{color:var(--dark-text)}
.st-sec.dark .st-kick{color:var(--blush)}
.st-sec.dark .st-kick::before{background:var(--blush)}
.st-sec.dark .st-more{color:var(--blush)}
.st-sec.tight{padding-top:clamp(26px,3vw,44px)}
.st-sechead{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:clamp(24px,3vw,40px);flex-wrap:wrap}
.st-sechead>div{min-width:0;max-width:44ch}
.st-sechead h2{margin:0}
.st-sechead p{margin:12px 0 0;color:var(--mute);max-width:62ch;font-size:17px}
.st-sec.dark .st-sechead p{color:var(--dark-text)}
.st-more{font-family:"Schibsted",Arial,sans-serif;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px;white-space:nowrap;transition:color .18s ease,transform .18s ease}
.st-more:hover{color:var(--accent2);transform:translateX(3px)}

/* ── плитки коллекций: ряд со СДВИГОМ, а не ровная сетка ─────────────── */
.st-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.st-col{display:block;text-decoration:none;color:var(--ink);background:var(--card);border:1px solid var(--line);overflow:hidden;transition:box-shadow .24s ease,transform .24s ease,border-color .24s ease}
.st-col:hover{box-shadow:var(--sh-up);transform:translateY(-4px);border-color:var(--accent)}
/* Плитка отдела портретная, а не 4:3 как у образца: у образца в плитках лежат
   сцены спальни (ландшафт), у нас ростовые кадры людей. */
.st-col .f{display:block;aspect-ratio:3/4;overflow:hidden;background:var(--panel2)}
.st-col .f.lo{display:flex;align-items:center;justify-content:center}
.st-col .f.lo img{width:100%;height:100%;object-fit:contain}
/* «Кадр меняется при наведении» без единого лишнего байта: сдвигается точка
   кадрирования, и видно другую часть той же фотографии. */
.st-col img{width:100%;height:100%;object-fit:cover;object-position:center 18%;transition:object-position .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}
.st-col:hover img{object-position:center 46%;transform:scale(1.03)}
.st-col b{display:block;font-family:"Schibsted",Arial,sans-serif;font-weight:600;font-size:18px;letter-spacing:-.015em;padding:16px 18px 2px}
.st-col small{display:block;color:var(--mute);font-size:13.5px;padding:0 18px 18px}

/* ── карточка товара ──────────────────────────────────────────────────── */
/* Медиа-бокс ОДИН на все карточки: пропорция 4:5 у каждой, пакшот вписывается
   на своей подложке, а не растягивается. Низ карточки (цена и кнопка) прибит
   к общей линии через margin-top:auto — иначе ряд читается как две карточки
   плюс чужая (возврат владельца 07.09). */
.st-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.st-shelf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:stretch}
.st-shelf.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.st-card{background:var(--card);display:flex;flex-direction:column;min-width:0;height:100%;border:1px solid var(--line);border-radius:2px;overflow:hidden;transition:box-shadow .22s ease,transform .22s ease}
.st-card:hover{box-shadow:0 14px 34px rgba(16,49,47,.13);transform:translateY(-3px)}
.st-frame{display:block;position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--panel2)}
.st-frame img{width:100%;height:100%;object-fit:cover;object-position:center 15%;transition:transform .5s ease}
.st-card:hover .st-frame img{transform:scale(1.035)}
/* Кадр, которому не хватает пикселей на обычный бокс, показывается ЦЕЛИКОМ и
   в своём размере, на подложке. Бокс при этом остаётся тем же, поэтому ряд
   не расползается (§4.0 и возврат владельца об общей базовой линии). */
.st-frame.lo{display:flex;align-items:center;justify-content:center;background:var(--panel2)}
.st-frame.lo img{width:100%;height:100%;object-fit:contain;transform:none}
.st-card:hover .st-frame.lo img{transform:scale(1.02)}
.st-tag{position:absolute;top:0;right:0;background:var(--accent);color:#fff;font-family:"Schibsted",Arial,sans-serif;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;z-index:1}
.st-card-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:7px;flex:1;min-width:0}
.st-card h3{font-family:"Schibsted",Arial,sans-serif;font-size:16px;font-weight:600;margin:0;line-height:1.3}
.st-card h3 a{color:var(--ink);text-decoration:none}
.st-card h3 a:hover{color:var(--accent)}
.st-spec{font-size:13px;color:var(--mute);margin:0}
.st-stars{font-size:13px;color:var(--mute);margin:0}
.st-stars b{color:var(--accent);font-weight:600}
.st-price{font-family:"Schibsted",Arial,sans-serif;font-size:19px;font-weight:700;margin:0}
/* Кнопка занимает СВОЮ строку во всю ширину карточки. Пока она делила
   строку с ценой, надпись прижималась к 150px и рисовалась высотой в
   шесть пикселей — на экране без ретины это серая полоска, а не призыв
   (страж надписи кнопки, 2.85:1 при пороге 3:1). */
.st-card-foot{margin-top:auto;display:flex;flex-direction:column;align-items:stretch;gap:10px;padding-top:12px}
.st-buy{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border:1px solid var(--accent);padding:11px 14px;text-decoration:none;min-width:0;transition:background .18s ease,border-color .18s ease}
.st-buy:hover{background:var(--dark);border-color:var(--dark)}
.st-buy.ghost{background:transparent;color:var(--ink)}
.st-buy.sand{background:var(--blush);border-color:var(--blush);color:var(--ink)}
.st-buy.sand:hover{background:#fff;border-color:#fff}
.st-buy img.buy-label{display:block;width:100%;max-width:302px;height:auto;margin:0 auto}
.st-buy.wide{width:100%}
.st-sizes{display:flex;gap:6px;flex-wrap:wrap;font-family:"Schibsted",Arial,sans-serif;font-size:12px}
.st-sizes a,.st-sizes span{border:1px solid var(--line);padding:4px 8px;text-decoration:none;color:var(--mute);min-width:30px;text-align:center;transition:border-color .18s ease,color .18s ease}
.st-sizes a:hover{border-color:var(--accent);color:var(--accent)}
.st-sizes span[aria-current]{background:var(--accent);border-color:var(--accent);color:#fff}
.st-swatch{list-style:none;display:flex;gap:6px;margin:0;padding:0;flex-wrap:wrap}
.st-swatch li{width:34px;height:44px;overflow:hidden;background:var(--panel2)}
.st-swatch img{width:100%;height:100%;object-fit:cover}
.st-swatch a{display:block;width:100%;height:100%;border:1px solid transparent}
.st-swatch a[aria-current]{border-color:var(--accent)}
.st-swatch-more{display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--mute);border:1px solid var(--line)}
.st-shelf-note{font-size:13px;color:var(--mute);margin:18px 0 0;text-align:center}

/* ── фича-сплит: кадр на песочной подложке со сдвигом ────────────────── */
.st-split{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1fr);gap:clamp(30px,4.6vw,72px);align-items:center}
.st-split-fig{position:relative;width:100%;max-width:470px;aspect-ratio:4/5;overflow:hidden;background:var(--panel2);z-index:1;box-shadow:var(--sh-up)}
/* Подложка со смещением: из неё видно, что кадр — предмет на плоскости, а не
   картинка, впечатанная в фон (пункт «глубина», возврат 07.09). */
.st-split-wrap{position:relative;padding:0 0 22px 22px}
.st-split-wrap::before{content:"";position:absolute;left:0;bottom:0;width:calc(100% - 40px);height:calc(100% - 46px);background:var(--blush);z-index:0}
.st-sec.dark .st-split-wrap::before{background:var(--accent)}
.st-split-fig img{width:100%;height:100%;object-fit:cover;object-position:center 15%;transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.st-split-fig:hover img{transform:scale(1.04)}
.st-split-fig.lo{display:flex;align-items:center;justify-content:center}
.st-split-fig.lo img{width:100%;height:100%;object-fit:contain}
.st-split h2{margin-bottom:16px}
.st-figure{font-family:"Schibsted",Arial,sans-serif;font-size:clamp(48px,6.6vw,86px);font-weight:700;line-height:.9;letter-spacing:-.045em;color:var(--accent);margin:0 0 10px}
.st-sec.dark .st-figure{color:var(--blush)}

/* ── полоса «почему»: четыре тезиса с номерами ───────────────────────── */
.st-why{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,2.6vw,38px);counter-reset:w}
.st-why>div{counter-increment:w;border-top:2px solid var(--accent2);padding-top:16px}
.st-why>div::before{content:"0" counter(w);display:block;font-family:"Schibsted",Arial,sans-serif;font-size:12px;letter-spacing:.16em;color:var(--accent2);margin-bottom:10px}
.st-why b{display:block;font-family:"Schibsted",Arial,sans-serif;font-size:17px;font-weight:600;letter-spacing:-.015em;margin-bottom:8px}
.st-why p{font-size:15px;color:var(--mute);margin:0}
.st-sec.blush .st-why p{color:#4A453D}
/* На песочной полосе номера и линейки идут ПЕТРОЛЕМ: глина на песке даёт
   4.11 (contrast.js), а петроль 7.21. Цвет выбирается по замеру. */
.st-sec.blush .st-why>div{border-top-color:var(--accent)}
.st-sec.blush .st-why>div::before{color:var(--accent)}
.st-sec.blush .st-kick{color:var(--accent)}
.st-sec.blush .st-kick::before{background:var(--accent)}
.st-sec.blush em.d{color:var(--accent)}

/* ── цитаты покупателей ───────────────────────────────────────────────── */
.st-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.st-quote{background:var(--card);padding:26px 24px;border:1px solid var(--line);display:flex;flex-direction:column;height:100%;box-shadow:var(--sh)}
.st-quote p{font-size:16px;margin:0 0 14px}
.st-quote cite{margin-top:auto;font-family:"Schibsted",Arial,sans-serif;font-style:normal;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}

/* ── факт-полоса вместо сервисной полосы образца ──────────────────────── */
.st-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--line);background:var(--card);box-shadow:var(--sh)}
.st-fact{padding:26px 24px;border-right:1px solid var(--line)}
.st-fact:last-child{border-right:0}
.st-fact b{display:block;font-family:"Schibsted",Arial,sans-serif;font-size:15px;font-weight:600;margin-bottom:6px}
.st-fact p{font-size:14px;color:var(--mute);margin:0}

/* ── журнал: карточка-колонка, «Read» прибит к низу ──────────────────── */
/* Возврат владельца 07.09: «Read» скакал, потому что медиа-боксы и тексты
   были разной высоты. Пропорция кадра одна на все карточки, тело карточки —
   колонка, ссылка прижата margin-top:auto, высоты в ряду равные. */
.st-mags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.st-mag{display:flex;flex-direction:column;height:100%;min-width:0;text-decoration:none;color:var(--ink);background:var(--card);border:1px solid var(--line);overflow:hidden;transition:box-shadow .24s ease,transform .24s ease,border-color .24s ease}
.st-mag:hover{box-shadow:var(--sh-up);transform:translateY(-4px);border-color:var(--accent)}
/* Бокс журнальной карточки ПОРТРЕТНЫЙ 4:5, как у карточки товара: кадры
   каталога ростовые, ландшафтная обрезка оставляла торс без головы, а
   квадрат срезал у портрета 2:3 ровно треть. */
.st-mag .f{display:block;aspect-ratio:4/5;overflow:hidden;background:var(--panel2);flex:0 0 auto}
.st-mag .f.lo{display:flex;align-items:center;justify-content:center}
.st-mag .f.lo img{width:100%;height:100%;object-fit:contain}
.st-mag img{width:100%;height:100%;object-fit:cover;object-position:center 12%;transition:transform .7s cubic-bezier(.22,.61,.36,1)}
.st-mag:hover img{transform:scale(1.035)}
.st-mag-body{display:flex;flex-direction:column;flex:1;min-width:0;padding:18px 20px 20px}
.st-mag small{display:block;font-family:"Schibsted",Arial,sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent2);margin-bottom:8px}
.st-mag b{display:block;font-family:"Schibsted",Arial,sans-serif;font-size:19px;font-weight:600;letter-spacing:-.018em;line-height:1.2;margin-bottom:8px}
.st-mag p{font-size:14.5px;color:var(--mute);margin:0}
.st-mag i{margin-top:auto;padding-top:18px;align-self:flex-start;font-style:normal;font-family:"Schibsted",Arial,sans-serif;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid currentColor;padding-bottom:3px;transition:color .18s ease}
.st-mag:hover i{color:var(--accent2)}

/* ── листинг: фильтры ─────────────────────────────────────────────────── */
.st-listhead{padding:30px 0 6px}
.st-listhead h1{font-size:clamp(26px,3vw,38px)}
.st-lede{color:var(--mute);max-width:70ch}
.st-filters{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin:18px 0 22px}
.st-frow{display:flex;gap:12px;align-items:baseline;margin-bottom:10px;flex-wrap:wrap}
.st-frow:last-child{margin-bottom:0}
.st-flabel{font-family:"Schibsted",Arial,sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);flex:0 0 96px;min-width:0}
.st-pills{display:flex;gap:8px;flex-wrap:wrap;min-width:0}
.st-pill{font-family:"Schibsted",Arial,sans-serif;font-size:13px;background:var(--card);border:1px solid var(--line);padding:6px 12px;cursor:pointer;color:var(--ink)}
.st-pill[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.st-pill small{color:var(--mute);margin-left:6px;font-size:11px}
.st-pill[aria-pressed="true"] small{color:#B8BFC7}
.st-count{font-size:13px;color:var(--mute);margin:0 0 16px}
.st-clear{background:none;border:0;font-family:"Schibsted",Arial,sans-serif;font-size:12px;color:var(--accent);cursor:pointer;text-decoration:underline;padding:0}
.st-empty{padding:40px 0;color:var(--mute)}

/* ── карточка товара (страница) ───────────────────────────────────────── */
.st-pdp{display:grid;grid-template-columns:400px minmax(0,1fr);gap:44px;align-items:start;padding:26px 0 10px}
.st-pgal{min-width:0}.st-pdp-info{min-width:0}
.st-main{background:var(--panel2);overflow:hidden;max-width:400px}
.st-main.lo{display:flex;align-items:center;justify-content:center;background:var(--panel2)}
.st-main.lo img{width:auto;max-width:100%;height:auto}
.st-main img{width:100%;height:auto}
.st-thumbs{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.st-thumbs a{width:74px;display:block;background:var(--panel2)}
.st-thumbs img{width:100%;height:92px;object-fit:cover}
.st-pdp-info h1{font-size:clamp(23px,2.6vw,32px)}
.st-chips{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 18px}
.st-chips span{font-family:"Schibsted",Arial,sans-serif;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;background:var(--panel);padding:6px 10px;color:var(--mute)}
.st-buybox{background:var(--card);border:1px solid var(--line);padding:22px}
.st-buybox-top{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:14px;flex-wrap:wrap}
.st-buybox .st-price{font-size:27px}
.st-note{font-size:13px;color:var(--mute);margin:10px 0 0}
.st-blk{margin:26px 0}
.st-blk h2{font-size:19px}
.st-pdp-label{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}
.st-spectable{width:100%;border-collapse:collapse;font-size:14.5px}
.st-spectable th{text-align:left;font-weight:400;color:var(--mute);padding:8px 14px 8px 0;vertical-align:top;width:44%;font-family:"Schibsted",Arial,sans-serif;font-size:13px}
.st-spectable td{padding:8px 0;border-bottom:1px solid var(--line)}
.st-callout{background:var(--panel);padding:18px 20px;margin:18px 0}
.st-callout h3{font-size:16px;margin-bottom:6px}
.st-callout p{margin:0;font-size:15px}
.st-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 34px}
.st-faq h3{font-size:16px;margin-bottom:4px}
.st-faq p{font-size:15px;color:var(--mute);margin:0}
.st-stickybuy{display:none}

/* ── блоки, которые несут только структуру ───────────────────────────── */
.st-listbar{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:10px}
.st-about-text{columns:2;column-gap:38px}
.st-about-text p{break-inside:auto}
.st-art{display:block}
.st-artshelf{margin:30px 0}
.st-fourcol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.st-fourcol em{font-style:normal;font-family:"Schibsted",Arial,sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);display:block;margin-bottom:6px}
.st-fourcol b{display:block;font-family:"Schibsted",Arial,sans-serif;font-size:15px;font-weight:600;margin-bottom:6px}
.st-fourcol p{font-size:14px;color:var(--mute);margin:0}

/* ── статья ───────────────────────────────────────────────────────────── */
/* Ряду сетки нужен ЯВНЫЙ размер: без него ряд тянется по натуральной
   высоте кадра, кадр вылезает из полосы на 390px и геометрически ложится
   на кикер и карточки ниже. Визуально это прятал overflow:hidden, а
   браузерный аудит видел наложение — и был прав. */
.st-art-hero{margin-bottom:28px;background:var(--panel2);overflow:hidden;aspect-ratio:1200/470;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(0,1fr);gap:4px}
.st-art-hero>*{min-height:0;height:100%;overflow:hidden}
.st-art-hero img{width:100%;height:100%;object-fit:cover;object-position:center 14%}
.st-art-hero .lo{display:flex;align-items:center;justify-content:center;background:var(--panel2)}
.st-art-hero .lo img{width:100%;height:100%;object-fit:contain}
.st-art-head{padding:26px 0 0}
.st-art-head h1{font-size:clamp(27px,3.2vw,40px)}
.st-art-grid{display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:44px;align-items:start}
.st-art-body{min-width:0;font-size:17px}
.st-art-body h2{font-size:clamp(21px,2.3vw,27px);margin-top:34px}
.st-art-body h3{font-size:18px;margin-top:22px}
/* Врезка статьи держит СВОЮ ширину и не режется: колонка статьи шире
   исходников (816px против файла в 620px — растягивание в 1.3 раза), а
   object-fit:cover срезал у ростового кадра до половины. Кадр показан
   целиком, врезка прижата к левому краю колонки (§5 это разрешает). */
.st-art-body figure{margin:26px auto 26px 0;max-width:508px;background:var(--panel);padding:14px}
.st-art-body figure.lo{display:flex;flex-direction:column;align-items:center}
.st-art-body figure.lo img{width:auto;max-width:100%;height:auto}
.st-art-body figure img{width:100%;height:auto;object-fit:contain}
.st-art-body figcaption{font-size:13.5px;color:var(--mute);margin-top:8px}
.st-art-body blockquote{margin:22px 0;padding:16px 20px;background:var(--card);border-left:3px solid var(--accent)}
.st-art-body blockquote p{margin:0 0 8px}
.st-art-body cite{font-family:"Schibsted",Arial,sans-serif;font-style:normal;font-size:12.5px;color:var(--mute)}
.st-tscroll{overflow-x:auto;margin:22px 0}
.st-t{width:100%;border-collapse:collapse;font-size:14.5px;background:var(--card)}
.st-t th,.st-t td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.st-t th{font-family:"Schibsted",Arial,sans-serif;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.st-art-side{position:sticky;top:96px;font-size:14px}
.st-art-side h3{font-family:"Schibsted",Arial,sans-serif;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin:0 0 10px}
.st-onthis,.st-recent{list-style:none;margin:0 0 26px;padding:0}
.st-onthis li{margin-bottom:7px}
.st-onthis a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
.st-recent a{display:grid;grid-template-columns:66px minmax(0,1fr);gap:12px;text-decoration:none;color:var(--ink);margin-bottom:14px;align-items:start}
.st-recent .f{display:block;aspect-ratio:3/4;overflow:hidden;background:var(--panel2)}
.st-recent img{width:100%;height:100%;object-fit:cover}
.st-recent small{display:block;font-family:"Schibsted",Arial,sans-serif;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.st-recent b{font-weight:500;font-size:14px}

/* ── проза служебных страниц ──────────────────────────────────────────── */
.st-prose{columns:2;column-gap:44px;font-size:16.5px}
.st-prose.wide{columns:1}
.st-prose h2{column-span:all;margin-top:24px;font-size:clamp(20px,2.2vw,26px)}
.st-prose h2:first-child{margin-top:0}
.st-prose table,.st-prose div,.st-prose address,.st-prose li{break-inside:avoid}
.st-prose p,.st-prose ul,.st-prose ol{break-inside:auto}
.st-prose address{font-style:normal}
.st-plainshelf{margin:0 0 42px}
.st-map{width:100%;height:290px;border:0;display:block;margin-top:16px}
.st-crumbs{border-bottom:1px solid var(--line);font-size:13px;color:var(--mute);padding:11px 0}
.st-crumbs .st-wrap{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}
.st-crumbs a{color:var(--mute)}
.st-crumb-sep{color:var(--line)}

/* ── подвал: сервисная полоса, четыре колонки, нижняя планка ──────────── */
.st-foot{background:var(--panel);border-top:1px solid var(--line);padding:44px 0 0;font-size:14.5px}
.st-foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.4fr;gap:36px}
.st-foot h4{font-family:"Schibsted",Arial,sans-serif;font-size:15px;font-weight:600;margin-bottom:12px}
.st-foot ul{list-style:none;margin:0;padding:0}
.st-foot li{margin-bottom:7px}
.st-foot a{color:var(--ink);text-decoration:none}
.st-foot a:hover{text-decoration:underline}
.st-foot-brand p{color:var(--mute);font-size:14px}
.st-foot-note{color:var(--mute);font-size:13.5px}
.st-foot-line{border-top:1px solid var(--line);margin-top:36px;padding:18px 0;color:var(--mute);font-size:13px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}

@media(max-width:1200px){
.st-hero-text{padding-left:24px}
}
@media(max-width:1050px){
.st-quotes{grid-template-columns:repeat(2,minmax(0,1fr))}
.st-fourcol{grid-template-columns:repeat(2,minmax(0,1fr))}
.st-why,.st-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.st-fact:nth-child(2n){border-right:0}
.st-fact:nth-child(-n+2){border-bottom:1px solid var(--line)}
.st-foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.st-art-grid{grid-template-columns:minmax(0,1fr) 230px;gap:32px}
.st-hero-in{grid-template-columns:minmax(0,1fr) minmax(0,.92fr)}
}
@media(max-width:900px){
.st-hero-in{grid-template-columns:minmax(0,1fr)}
.st-hero-text{padding:clamp(34px,6vw,54px) 24px 8px}
.st-hero h1{max-width:none}
.st-hero-art{padding:24px;grid-template-rows:1.5fr 1fr;aspect-ratio:1/.86}
.st-split,.st-pdp,.st-pdp-label,.st-art-grid{grid-template-columns:minmax(0,1fr)}
.st-split-fig{max-width:430px}
.st-main{max-width:400px}
.st-art-side{position:static}
.st-art-hero{aspect-ratio:1/.62;grid-template-columns:repeat(2,minmax(0,1fr))}
.st-art-hero>*:nth-child(3){display:none}
.st-prose,.st-about-text{columns:1}
.st-faq{grid-template-columns:minmax(0,1fr)}
.st-grid,.st-shelf,.st-shelf.four{grid-template-columns:repeat(2,minmax(0,1fr))}
.st-cols,.st-mags{grid-template-columns:repeat(2,minmax(0,1fr))}
.st-nav{gap:16px;font-size:13px}
}
@media(max-width:640px){
.st-quotes,.st-why,.st-fourcol{grid-template-columns:minmax(0,1fr)}
.st-facts{grid-template-columns:minmax(0,1fr)}
.st-fact{border-right:0;border-bottom:1px solid var(--line)}
.st-fact:last-child{border-bottom:0}
.st-head .st-wrap{flex-wrap:wrap;gap:10px}
.st-nav{width:100%;gap:14px;font-size:12.5px}
.st-foot-grid{grid-template-columns:minmax(0,1fr)}
.st-buy img.buy-label{max-width:none}
.st-hero-art{grid-template-columns:1fr 1fr;aspect-ratio:1/.92;padding:18px}
.st-hero-cta{gap:10px}
.st-hero-cta .st-btn{flex:1 1 auto;text-align:center}
.st-hero-note{padding:14px 16px}
.st-stickybuy{display:flex;position:fixed;left:0;right:0;bottom:0;background:var(--bg);border-top:1px solid var(--line);padding:9px 14px;gap:12px;align-items:center;justify-content:space-between;z-index:20;box-shadow:0 -6px 20px rgba(16,49,47,.12)}
.st-stickybuy .st-price{margin:0;font-size:18px}
body.has-sticky{padding-bottom:66px}
.st-thumbs a{width:62px}.st-thumbs img{height:78px}
}
@media(max-width:430px){
.st-grid,.st-shelf,.st-shelf.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.st-cols,.st-mags{grid-template-columns:minmax(0,1fr)}
.st-card h3{font-size:14.5px}
.st-card-body{padding:12px 13px 14px}
}

/* ── моторика: мягкое появление секций и наведение ───────────────────── */
/* Класс на <html> ставит скрипт и ТОЛЬКО при отсутствии запрета движения.
   Без скрипта и при prefers-reduced-motion страница остаётся видимой —
   поэтому opacity:0 живёт под .st-anim, а не в базовых правилах. */
@keyframes st-rise{from{opacity:0}to{opacity:1}}
@keyframes st-slide{from{opacity:0}to{opacity:1}}
.st-anim .st-rv{opacity:0}
.st-anim .st-rv.in{animation:st-rise .7s ease both}
.st-anim .st-hero-text{animation:st-rise .8s ease both}
.st-anim .st-hero-art{animation:st-slide .9s ease both;animation-delay:.12s}
@media(prefers-reduced-motion:reduce){
.st-anim .st-rv,.st-anim .st-rv.in,.st-anim .st-hero-text,.st-anim .st-hero-art{opacity:1;animation:none;transform:none}
*{transition:none!important}
}
@media(prefers-reduced-motion:no-preference){a,.st-pill{transition:.15s ease}}
