/* Shared compact-screen primitives for the three editorial V7 routes only.
   Desktop continues to use the reviewed V7 foundation. Manrope @font-face
   lives once in the shared shell (A-032). */
:root{--accent:var(--v7-action-fill);--accent-text:var(--v7-gold);--surface-medallion:linear-gradient(155deg,rgba(207,138,82,.10),#1b1613 70%);--t-ambient:9s;--t-reveal:.28s}
@media(width < 1024px){
 :root{color-scheme:dark;--v7-bg:#0a0a0a;--v7-surface:#151310;--v7-surface2:#1b1613;--v7-text:#f0ede8;--v7-muted:#b0aba2;--v7-line:#2b2722;--v7-gold:#e4a971;--v7-action-fill:#cf8a52;--v7-content:1440px;--v7-gutter:clamp(20px,3vw,56px);--v7-radius:22px;--v7-section:24px;--bg:var(--v7-bg);--panel:var(--v7-surface);--panel2:var(--v7-surface2);--text:var(--v7-text);--muted:var(--v7-muted);--line:var(--v7-line);--accent:var(--v7-action-fill);--accent-text:var(--v7-gold);--gold:var(--v7-action-fill);--gold-dim:#8d5e38;--r:var(--v7-radius);--fs-meta:12.5px;--fs-eyebrow:11.5px;--rhythm-module-footer:48px;
   /* Плотный шаг M09 (--rhythm-section-dense, --rhythm-component,
      --rhythm-component-lg и псевдонимы --card-pad/--card-pad-lg) объявлен
      один раз в styles/v7/shell.css: он был дословной копией мобильной шкалы
      mobile-core.css, и две копии расходились при правке одной из них. */}
 *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
 html{scroll-behavior:smooth;scroll-padding-top:80px;-webkit-text-size-adjust:100%}
 body{min-height:100dvh;margin:0;display:flex;flex-direction:column;background:var(--v7-bg);color:var(--v7-text);font:400 16px/1.55 Manrope,'Manrope Fallback',sans-serif;-webkit-font-smoothing:antialiased}
 main{flex:1 0 auto;min-width:0;overflow-x:clip}
 h1,h2,h3,p,blockquote,figure{margin:0}h1,h2,h3{font-weight:500;text-wrap:balance}
 h1{font-size:clamp(29px,4.5vw,38px);line-height:1.16}h2{font-size:clamp(24px,3vw,30px);line-height:1.22}h3{font-size:clamp(19px,2vw,22px);line-height:1.3}
 a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img,svg{display:block;max-width:100%}
 a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--v7-gold);outline-offset:3px}
 .wrap{width:100%;max-width:calc(var(--v7-content) + 2*var(--v7-gutter));margin-inline:auto;padding-inline:var(--v7-gutter)}
 .crumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:20px;color:var(--v7-muted);font-size:12.5px}.crumbs a{display:inline-flex;align-items:center;min-height:24px;color:inherit}.bc-sep{color:#847f76}
 main>section+section,main>section+div,main>div+section{margin-top:var(--v7-section)}
 .lead{max-width:720px;margin-top:16px;color:var(--v7-muted);font-size:clamp(15px,1.6vw,17px);line-height:1.5}
 .crumb,.eyebrow{margin-bottom:14px;color:var(--v7-gold);font-size:12.5px;font-weight:600;letter-spacing:.25em;text-transform:uppercase}
 .eyebrow{font-size:11.5px;letter-spacing:.32em}
 .subbrand-mark{margin-bottom:12px}.subbrand-mark .sm-name{display:block;color:var(--v7-gold);font-size:19px;font-weight:500;letter-spacing:.2em;text-transform:uppercase}
 .subbrand-mark .sm-desc{display:block;margin-top:3px;color:var(--v7-muted);font-size:12.5px;letter-spacing:normal;text-transform:none}
 .p-body{color:var(--v7-muted);font-size:14.5px}
 /* Переходный блок .related — разделитель, а не секция (регламент §5 п.8,
    решение владельца 8.5 п.5): читает базовую ступень 24 на всех ширинах.
    На планшете это снимает 48px, приходившие из секционной роли. Пара
    «.related → следующая секция» несёт тот же шаг: её носитель — margin-top
    следующей секции, и он не должен следовать за планшетным ростом 48. */
 .related{margin-top:var(--rhythm-transition)}.related+section{margin-top:var(--rhythm-transition)}.related-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:var(--related-head-gap)}
 .rel-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:2px}
 .rel-grid::-webkit-scrollbar{display:none}.rel-grid>*{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%}
 .rel-card{display:block;padding:var(--card-pad);border:1px solid var(--v7-line);border-radius:var(--v7-surface-radius);background:var(--v7-surface)}
 .rel-cat{display:block;margin-bottom:10px;color:var(--v7-gold);font-size:10px;letter-spacing:.16em;text-transform:uppercase}
 .rel-card h3,.rel-card h2{font-size:15.5px;font-weight:400;line-height:1.4}.rel-card--clone{display:none}
 .hs-nav{display:flex;gap:8px;flex:none}.hs-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border:1px solid var(--v7-line);border-radius:50%;background:var(--v7-surface);font-size:18px}
 .hs-arrow::before{content:'‹'}.hs-arrow.next::before{content:'›'}.hs-arrow:disabled{opacity:.35}
 .eco-trust{overflow:hidden;border:1px solid var(--v7-line);border-radius:var(--v7-radius)}
 .eco-facts{display:flex}.ef-i{flex:1;min-width:0;padding:12px 8px;text-align:center}.ef-i+.ef-i{border-left:1px solid var(--v7-line)}
 .ef-i b{display:block;color:var(--v7-gold);font-size:21px;font-weight:500;line-height:1.2;white-space:nowrap}.ef-i span{display:block;margin-top:4px;color:var(--v7-muted);font-size:11.5px;line-height:1.3}
 .eco-trust .tw{border-top:1px solid var(--v7-line)}
 .tw{padding:18px;border:1px solid var(--v7-line);border-radius:var(--v7-radius);background:var(--v7-surface)}
 .eco-trust .tw{padding:0;border-inline:0;border-bottom:0;border-radius:0;background:none}
 .tw-top{display:grid;grid-template-columns:1fr 1fr;min-height:88px}.tw-score,.tw-meta{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 10px;text-align:center}
 .tw-meta{border-left:1px solid var(--v7-line)}.tw-score b{font-size:36px;font-weight:500;line-height:1}.tw-stars{color:var(--v7-gold);font-size:12px;letter-spacing:.16em}.tw-meta b{font-size:22px;font-weight:500;line-height:1.2}.tw-meta span{max-width:120px;color:var(--v7-muted);font-size:12.5px;line-height:1.3}
 .tw-badge{display:flex;align-items:center;justify-content:center;gap:13px;min-height:76px;padding:14px 20px;border-top:1px solid var(--v7-line)}.tw-badge-t b{display:block;font-size:13.5px;font-weight:500}.tw-badge-t span{display:block;color:var(--v7-muted);font-size:11.5px}
 .tw-action{padding:12px 16px 16px;border-top:1px solid var(--v7-line)}.tw-action .btn{width:100%;margin:0;border:1px solid #8d5e38}
}
@media(768px <= width < 1024px){:root{--v7-section:48px}.rel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.hs-nav{display:none}}
@media(width < 360px){:root{--v7-gutter:16px}}
@media(width <= 760px){.crumbs{display:none}}
