/* v52-wave2.css · внутренние 5.2, волны 2–4 (craftsman-07d626, 29.09.2026, T-S49 шаг 7).
   Грузится блокирующим сразу после v52-inner.css. Файлы волны 1 (v52-inner.css / .js) этим шагом не правятся — здесь только
   компоненты, которых в волне 1 не было. Язык тот же: модуль-кирпич, 12 колонок, один акцент на экран, остывший — «сделано»,
   срез угла, теней ноль; изломы — только из vkus спеки §1.5: перевязка (чётный элемент списка — на модуль) и вынос (кадр за
   линию контейнера на модуль). Правила, которые спорят с асинхронным v51-sections.css, держат специфичность html[data-v51] …
   W0 вход без кадра · W1 строка-заявление (R-55) · W2 реестр строками (R-52, R-83) · W3 слои рядом (I-03) · W4 одна лоджия —
   четыре жизни (Х-4, I-11, R-46) · W5 строки-главы · W6 в новостройке · W7 шторка «вид из комнаты» (М10, I-09) · W8 о мастере
   (R-23, R-89, I-18) · W9 документ · W10 кейс (I-14, R-82) · W11 вопросы вкладками (R-65) · W12 390. */

/* ── W0 · ВХОД БЕЗ КАДРА (Ф3-клон, Ф5-клоны): воздух, текст на 9 колонок, высота — по содержимому ── */
.v52-entry--bare .v52-entry__in { min-height: 0; padding-block: var(--m) calc(2 * var(--m)); grid-template-rows: auto auto; }
.v52-entry--bare .v52-entry__top, .v52-entry--bare .v52-entry__text { grid-column: 1 / span 9; }
.v52-entry--bare .v52-entry__text { align-self: start; }
.v52-entry__sub--wide { max-width: 38em; }

/* ── W1 · СТРОКА-ЗАЯВЛЕНИЕ «ВСЁ НАЧИНАЕТСЯ С ОКНА» (R-55, одна на маршрут; пик маршрута /okna/) ── */
.v52-say__in { row-gap: 26px; }
.v52-say__t { grid-column: 1 / span 11; margin: 0; font-family: var(--font-display); font-weight: 700; font-size: var(--t-7); line-height: 1;
              letter-spacing: -.03em; text-transform: uppercase; text-wrap: balance; color: var(--fg); }
.v52-say__p { grid-column: 1 / span 6; margin: 0; font-size: var(--t-2); line-height: 1.5; color: var(--fg2); }

/* ── W2 · РЕЕСТР СТРОКАМИ (R-52 enerblock s-05: «01 /» · фотоплита · ярлык + имя + абзац · действие; R-83 lumon — сторона кадра
   чередуется). Строки во всю ширину контейнера, волосяные линии; строка без кадра ПРАВДЫ — пустая ячейка кадра, не слот. ── */
.v52-reg__hd { row-gap: 26px; }
.v52-reg__hd .v51-h2 { grid-column: 1 / span 8; }
.v52-reg { margin: var(--m) 0 0; padding: 0; list-style: none; border-top: 2px solid var(--fg); }
.v52-reg__r { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--col-gap); align-items: start;
              padding: 26px 0; border-bottom: 1px solid var(--line2); }
.v52-reg__i { grid-column: 1 / span 2; grid-row: 1; margin: 0; font-family: var(--font-mono); font-weight: var(--w-mono); font-size: var(--t-3);
              line-height: 1; letter-spacing: .04em; color: var(--fg); font-variant-numeric: tabular-nums; }
/* фотоплита — 4 колонки 4:5 (круг 1 самопроверки 29.09: 3 колонки 3:4 читались марками, а не плитой R-52) */
.v52-reg__f { grid-column: 3 / span 4; grid-row: 1; position: relative; margin: 0; aspect-ratio: 4 / 5; overflow: clip; background: var(--bg2); }
.v52-reg__f img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: var(--pos, 50% 50%); filter: var(--grade-real); }
.v52-reg__f .v51-plate { position: absolute; z-index: 2; left: 0; bottom: 0; }
.v52-reg__t { grid-column: 8 / span 5; grid-row: 1; display: grid; gap: 14px; align-content: start; }
.v52-reg__t > .btn { justify-self: start; }
.v52-reg__r:nth-child(even) .v52-reg__f { grid-column: 9 / span 4; }
.v52-reg__r:nth-child(even) .v52-reg__t { grid-column: 3 / span 5; }
.v52-reg__r--nof .v52-reg__t, .v52-reg__r--nof:nth-child(even) .v52-reg__t { grid-column: 3 / span 7; }
.v52-reg__k { margin: 0; color: var(--fg3); }
.v52-reg__h { margin: 0; font-family: var(--font-display); font-weight: 700; font-size: var(--t-4); line-height: 1.1; letter-spacing: -.02em;
              text-transform: uppercase; text-wrap: balance; color: var(--fg); }
.v52-reg__p { margin: 0; font-size: var(--t-3); line-height: 1.3; color: var(--fg); text-wrap: pretty; }
.v52-reg__w { margin: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 12px; align-items: baseline;
              font-size: var(--t-2); line-height: 1.5; color: var(--fg2); }
.v52-reg__w .v51-lab { color: var(--fg3); white-space: nowrap; }
.v52-reg__a { margin-top: 6px; justify-self: start; }
.v52-reg__s { justify-self: start; display: inline-flex; align-items: center; min-height: var(--act-h); padding: 0 9px; border: 1px solid var(--line2);
              color: var(--fg2); clip-path: polygon(0 0, 100% 0, 100% calc(100% - 6px), calc(100% - 6px) 100%, 0 100%); }
.v52-reg__s--dict { border-color: var(--acc-cold); }

/* ── W3 · СЛОИ РЯДОМ (I-03 sminex inner-silence vd-04): четыре кадра одной сборки SEQ-A, ЧЕРТЁЖ — тёмное окно на светлой
   земле, волосяная рамка; чётные — перевязкой на модуль вниз. На 390 — лента со снапом, край следующей ≈ 70 px (R-29). ── */
.v52-layers__in { row-gap: var(--m); align-items: start; }
.v52-layers__h { grid-column: 1 / span 8; }
.v52-layers__list { grid-column: 1 / -1; margin: 0; padding: 0 0 var(--m); list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
                    column-gap: var(--col-gap); align-items: start; }
.v52-layer { display: grid; gap: 12px; align-content: start; min-width: 0; }
.v52-layer:nth-child(even) { margin-top: var(--m); margin-bottom: calc(-1 * var(--m)); }
.v52-layer__f { position: relative; margin: 0; aspect-ratio: 1; overflow: clip; background: #0E0F11; outline: 1px solid var(--line2); outline-offset: -1px; }
.v52-layer__f img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; }
.v52-layer__f .v51-plate { position: absolute; z-index: 2; right: 0; bottom: 0; }
.v52-layer__f .v51-plate[data-class="scheme"] { border-left-color: var(--n-300); }
.v52-layer__hd { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 12px; align-items: baseline; padding-top: 12px; border-top: 1px solid var(--fg); }
.v52-layer__hd .v52-rail__n { color: var(--fg); }
.v52-layer__hd .v52-rail__h { color: var(--fg); }
.v52-layer__p { margin: 0; font-size: var(--t-2); line-height: 1.5; color: var(--fg2); }
.v52-layers__cap { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 26px; margin: 0; color: var(--fg3); }

/* ── W4 · ОДНА ЛОДЖИЯ — ЧЕТЫРЕ ЖИЗНИ (Х-4; I-11 sminex inner-podbor — выбор режимом; R-46 polestar4 — тот же кадр в двух
   состояниях кнопкой). Сцена 16:10 с выносом влево на модуль (зеркально входу), справа — строки-кнопки как узлы тура: нажатая —
   маркер акцентом, строки 2 и 4 — перевязкой. Смена — opacity, окно с aspect-ratio: CLS 0. ── */
.v52-lives__in { row-gap: var(--m); align-items: start; }
.v52-lives__h { grid-column: 1 / span 8; }
.v52-lives__stage { grid-column: 1 / span 8; grid-row: 2; position: relative; margin: 0 0 0 calc(-1 * var(--m)); aspect-ratio: 16 / 10; overflow: clip; background: var(--bg2); }
.v52-lives__f { position: absolute; inset: 0; margin: 0; opacity: 0; visibility: hidden; transition: opacity .3s ease, visibility 0s linear .3s; }
.v52-lives__f.is-on { opacity: 1; visibility: visible; transition: opacity .3s ease, visibility 0s; }
.v52-lives__f img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: var(--pos, 50% 50%); filter: var(--grade-vis); }
.v52-lives__f .v51-plate { position: absolute; z-index: 2; left: 0; bottom: 0; }
.v52-lives__side { grid-column: 9 / span 4; grid-row: 2; display: grid; gap: 16px; align-content: start; }
.v52-lives__list { margin: 0; padding: 0; list-style: none; display: grid; border-top: 1px solid var(--line); }
.v52-life { padding: 4px 0 12px; border-bottom: 1px solid var(--line); }
.v52-life:nth-child(even) { margin-left: var(--m); }
.v52-life__b { appearance: none; width: 100%; display: grid; grid-template-columns: 12px minmax(0, 1fr); column-gap: 14px; align-items: center;
               min-height: 44px; margin: 0; padding: 0; border: 0; background: none; cursor: pointer; text-align: left; color: var(--fg3);
               font-family: var(--font-mono); font-weight: var(--w-mono); font-size: var(--t-3); line-height: 1.05; letter-spacing: .04em; text-transform: uppercase;
               transition: color .2s ease; }
.v52-life__b::before { content: ""; width: 10px; height: 10px; border: 1px solid var(--line2); }
.v52-life__b:hover { color: var(--fg); }
.v52-life__b[aria-pressed="true"] { color: var(--fg); }
.v52-life__b[aria-pressed="true"]::before { background: var(--acc); border-color: var(--acc); }
.v52-life__b:focus-visible { outline: 2px solid var(--acc); outline-offset: 2px; }
.v52-life__p { margin: 2px 0 0 26px; font-size: var(--t-2); line-height: 1.45; color: var(--fg2); }
.v52-life__a { margin-left: 26px; }
.v52-life__here { margin: 6px 0 0 26px; color: var(--fg3); }
.v52-lives__note { margin: 0; color: var(--fg3); }

/* ── W5 · СТРОКИ-ГЛАВЫ «из чего собирается» (R-48 — ссылки на главы Ф1; реестр R-52 без кадра): номер этапа Г4 · имя · строка ·
   ссылка на главу. Чётные — перевязкой. ── */
.v52-parts__in { row-gap: var(--m); align-items: start; }
.v52-parts__h { grid-column: 1 / span 8; }
.v52-parts { grid-column: 1 / span 8; margin: 0; padding: 0; list-style: none; display: grid; border-top: 2px solid var(--fg); }
.v52-part { display: grid; grid-template-columns: 2.4em minmax(0, 1fr) auto; column-gap: 16px; row-gap: 2px; align-items: baseline; padding: 12px 0;
            border-bottom: 1px solid var(--line2); }
.v52-part:nth-child(even) { margin-left: var(--m); }
.v52-part .v52-rail__n { color: var(--fg2); }
.v52-part .v52-rail__h { color: var(--fg); }
.v52-part__p { grid-column: 2; margin: 0; font-size: var(--t-2); line-height: 1.45; color: var(--fg2); }
.v52-part__a { grid-column: 3; grid-row: 1 / span 2; align-self: center; }
.v52-parts__side { grid-column: 9 / span 4; display: grid; gap: 16px; align-content: start; }
.v52-parts__side .v52-gift { margin: 0; }
.v52-no { margin: 0; display: grid; gap: 4px; padding-top: 16px; border-top: 1px solid var(--line2); font-size: var(--t-2); line-height: 1.45; color: var(--fg2); }
.v52-no .v51-lab { color: var(--fg3); }

/* ── W6 · В НОВОСТРОЙКЕ (/uteplenie/ #novostroyka): текст 1–6, кадр ВИЗ 7–12 + вынос на модуль ── */
.v52-novo__in { row-gap: var(--m); align-items: start; }
.v52-novo__t { grid-column: 1 / span 6; display: grid; gap: 16px; align-content: start; }
.v52-novo__t p { margin: 0; font-size: var(--t-3); line-height: 1.3; color: var(--fg); text-wrap: pretty; }
.v52-novo__f { grid-column: 7 / span 6; position: relative; margin: 0 calc(-1 * var(--m)) 0 0; aspect-ratio: 4 / 3; overflow: clip; background: var(--bg2); }
.v52-novo__f img { display: block; width: 100%; height: 100%; object-fit: cover; filter: var(--grade-vis); }
.v52-novo__f .v51-plate { position: absolute; z-index: 3; left: 0; bottom: 0; }

/* ── W7 · ШТОРКА «ВИД ИЗ КОМНАТЫ» (М10, I-09; механика шторки Г5 5.1 .v51-cmp): пара одной камеры, «визуализация» на обеих
   половинах, старт 38 %, без автоплея. Шторка — колонки 1–8 с выносом влево, подпись и строки — 9–12. ── */
.v52-sh__in { row-gap: var(--m); align-items: start; }
.v52-sh__h { grid-column: 1 / span 8; }
html[data-v51] .v52-sh .v51-cmp { grid-column: 1 / span 8; grid-row: 2; margin: 0 0 0 calc(-1 * var(--m)); max-width: none; }
.v52-sh__side { grid-column: 9 / span 4; grid-row: 2; display: grid; gap: 16px; align-content: start; }
.v52-sh__side p { margin: 0; font-size: var(--t-2); line-height: 1.5; color: var(--fg2); }
.v52-sh .v51-cmp__p img { filter: var(--grade-vis); }

/* ── W8 · О МАСТЕРЕ: записка основателя (R-23) · паспорт «подпись — значение» (R-89, компонент /kontakty/) · честный слот
   замерного листа (ИН-5) · реплика — плейсхолдер до правки Михаила (Р4) · работы по годам (I-18, вкладки годов). ── */
.v52-note__in { row-gap: var(--m); align-items: start; }
.v52-note__t { grid-column: 1 / span 7; display: grid; gap: 26px; align-content: start; }
.v52-note__lead { margin: 0; font-size: var(--t-3); line-height: 1.3; color: var(--fg); text-wrap: pretty; }
.v52-note__t .v52-pass { grid-column: auto; }
.v52-note__side { grid-column: 9 / span 4; display: grid; gap: var(--m); align-content: start; }
.v52-note__side .v52-slot { aspect-ratio: 3 / 4; }
.v52-quote { margin: 0; padding-top: 16px; border-top: 2px solid var(--fg); display: grid; gap: 10px; }
.v52-quote p { margin: 0; font-size: var(--t-3); line-height: 1.3; color: var(--fg); }
.v52-quote cite { font-style: normal; color: var(--fg3); }
.v52-years__in { row-gap: 26px; align-items: start; }
.v52-years__h { grid-column: 1 / span 8; }
.v52-years .v52-tabs { grid-column: 1 / -1; margin-top: 0; }
.v52-years__panels { grid-column: 1 / -1; }
.v52-year { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--col-gap); row-gap: 16px; align-items: end; }
.v52-year[hidden] { display: none; }
.v52-year__f { grid-column: 1 / span 8; position: relative; margin: 0 0 0 calc(-1 * var(--m)); aspect-ratio: 4 / 3; overflow: clip; background: var(--bg2); }
.v52-year__f img { display: block; width: 100%; height: 100%; object-fit: cover; filter: var(--grade-real); }
.v52-year__f .v51-plate { position: absolute; z-index: 2; left: 0; bottom: 0; }
.v52-year__t { grid-column: 9 / span 4; display: grid; gap: 12px; align-content: end; }
.v52-year__n { margin: 0; font-family: var(--font-mono); font-weight: var(--w-mono); font-size: var(--t-3); line-height: 1.1; letter-spacing: .04em;
               text-transform: uppercase; color: var(--fg); }
.v52-year__t p { margin: 0; font-size: var(--t-2); line-height: 1.5; color: var(--fg2); }

/* ── W9 · ДОКУМЕНТ (/politika/, /rassrochka/): паспорт «подпись — значение» на 9 колонок, значение — текстом ступенью --t-2 ── */
.v52-doc__in { row-gap: var(--m); align-items: start; }
html[data-v51] .v52-doc .v52-pass { grid-column: 1 / span 9; }
.v52-doc .v52-pass dd { font-size: var(--t-2); line-height: 1.55; }
.v52-doc .v52-pass__r:nth-child(even) { margin-left: 0; }
.v52-doc__side { grid-column: 1 / span 9; display: grid; gap: 16px; }

/* ── W10 · КЕЙС ОБЪЕКТА (I-14 Vipp inner-shelter vd-01 / vm-01; R-82 — поле без факта отсутствует): пары «крупное / мелкое» со
   сдвигом мелкого на модуль, одна фраза на пару, у чётной пары стороны меняются; на 390 пара сохраняется. Хроника по датам EXIF;
   знак места «район и год» (Vipp vd-05); паспорт <details>. ── */
.v52-pairs { margin: 0; padding: 0; list-style: none; display: grid; row-gap: calc(2 * var(--m)); }
.v52-pair { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--col-gap); row-gap: 16px; align-items: start; }
.v52-pair__big { grid-column: 1 / span 7; grid-row: 1; }
.v52-pair__sm { grid-column: 9 / span 4; grid-row: 1; margin-top: var(--m); }
.v52-pair:nth-child(even) .v52-pair__big { grid-column: 6 / span 7; }
.v52-pair:nth-child(even) .v52-pair__sm { grid-column: 1 / span 4; }
.v52-pair .v52-cell__open { display: block; }
.v52-pair__p { grid-column: 1 / span 7; grid-row: 2; margin: 0; font-size: var(--t-3); line-height: 1.3; color: var(--fg); }
.v52-pair:nth-child(even) .v52-pair__p { grid-column: 6 / span 7; }
.v52-pair__big .v52-cell__f, .v52-pair__sm .v52-cell__f { aspect-ratio: var(--ar, 3 / 4); }
.v52-case-sign { margin: 0; display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 16px; color: var(--fg2); }
.v52-case-sign b { font-family: var(--font-mono); font-weight: var(--w-mono); font-size: var(--t-3); letter-spacing: .04em; text-transform: uppercase; color: var(--fg); }
.v52-chron { margin: 0; padding: 0; list-style: none; border-top: 2px solid var(--fg); }
.v52-chron li { display: grid; grid-template-columns: calc(3 * var(--m)) minmax(0, 1fr) auto; column-gap: var(--col-gap); align-items: baseline; padding: 14px 0;
                border-bottom: 1px solid var(--line2); font-size: var(--t-2); line-height: 1.45; color: var(--fg2); }
.v52-chron b { font-weight: inherit; color: var(--fg); }
.v52-case2__in { row-gap: var(--m); align-items: start; }
.v52-case2__main { grid-column: 1 / span 12; }
.v52-case2__h { grid-column: 1 / span 8; }
.v52-case2__meta { grid-column: 1 / span 7; display: grid; gap: var(--m); }
.v52-case2__meta .v52-pass { grid-column: auto; }

/* ── W11 · ВОПРОСЫ ВКЛАДКАМИ (R-65 terminal-industries; голос R-66 gov-uk — одна фактическая строка на ответ): вкладки — компонент
   /obekty/ (.v52-tabs, ←/→, Home/End — v52-inner.js), панели — список «вопрос / ответ». Без JS видны все панели. ── */
.v52-qtabs__in { row-gap: 26px; align-items: start; }
.v52-qtabs__h { grid-column: 1 / span 8; margin: 0; }
.v52-qtabs .v52-tabs { grid-column: 1 / -1; margin-top: 0; }
.v52-qtabs__panels { grid-column: 1 / span 8; }
.v52-qpanel[hidden] { display: none; }
.v52-qpanel dl { margin: 0; display: grid; }
.v52-qpanel .v52-q { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: var(--col-gap); padding: 14px 0; border-bottom: 1px solid var(--line2); }
.v52-qpanel dt { font-size: var(--t-2); line-height: 1.45; color: var(--fg); }
.v52-qpanel dd { margin: 0; font-size: var(--t-2); line-height: 1.45; color: var(--fg2); }
html:not(.v52-js) .v52-qtabs .v52-tabs { display: none; }

/* ── W12 · ДО 64rem И 390 ── */
@media (max-width: 63.99rem) {
  .v52-lives__side, .v52-sh__side, .v52-parts__side, .v52-note__side { grid-column: 1 / -1; grid-row: auto; }
  .v52-lives__stage, html[data-v51] .v52-sh .v51-cmp { grid-column: 1 / -1; margin-left: 0; }
  .v52-parts, .v52-note__t, .v52-novo__t { grid-column: 1 / -1; }
  .v52-novo__f { grid-column: 1 / -1; margin-right: 0; }
  .v52-year__f { grid-column: 1 / -1; margin-left: 0; }
  .v52-year__t { grid-column: 1 / -1; }
}
@media (max-width: 47.99rem) {
  .v52-entry--bare .v52-entry__top, .v52-entry--bare .v52-entry__text { grid-column: 1; }
  .v52-entry--bare .v52-entry__in { padding-block: 8px var(--m); }
  .v52-say__t, .v52-say__p, .v52-reg__hd .v51-h2, .v52-layers__h, .v52-lives__h, .v52-parts__h, .v52-sh__h, .v52-years__h, .v52-case2__h, .v52-qtabs__h,
  .v52-qtabs__panels, .v52-case2__meta { grid-column: 1; }
  html[data-v51] .v52-doc .v52-pass, .v52-doc__side { grid-column: 1; }

  .v52-reg__r, .v52-reg__r:nth-child(even) { grid-template-columns: minmax(0, 1fr); row-gap: 14px; padding: 20px 0; }
  .v52-reg__i, .v52-reg__f, .v52-reg__t, .v52-reg__r:nth-child(even) .v52-reg__f, .v52-reg__r:nth-child(even) .v52-reg__t,
  .v52-reg__r--nof .v52-reg__t, .v52-reg__r--nof:nth-child(even) .v52-reg__t { grid-column: 1; grid-row: auto; }
  .v52-reg__r:nth-child(even) { padding-left: var(--m); }
  .v52-reg__f { margin-right: calc(-1 * var(--gutter)); aspect-ratio: 4 / 5; }
  .v52-reg__h { font-size: var(--t-4); }
  .v52-reg__p { font-size: var(--t-2); line-height: 1.45; }
  .v52-reg__w { grid-template-columns: minmax(0, 1fr); row-gap: 2px; }

  .v52-layers__list { display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain;
                      margin-right: calc(-1 * var(--gutter)); padding: 0 var(--gutter) var(--m) 0; }
  .v52-layers__list::-webkit-scrollbar { display: none; }
  .v52-layer { flex: none; width: 72%; scroll-snap-align: start; }
  .v52-layers__cap { grid-column: 1; }

  .v52-lives__stage { grid-column: 1; margin: 0 calc(-1 * var(--gutter)) 0 0; aspect-ratio: 4 / 5; }
  .v52-lives__side { grid-column: 1; }
  .v52-life__b { font-size: var(--t-2); letter-spacing: .03em; }

  .v52-parts { grid-column: 1; }
  .v52-part { grid-template-columns: 2.4em minmax(0, 1fr); }
  .v52-part__a { grid-column: 2; grid-row: auto; }

  .v52-novo__t, .v52-novo__f { grid-column: 1; }
  .v52-novo__f { margin-right: calc(-1 * var(--gutter)); }
  .v52-novo__t p { font-size: var(--t-2); line-height: 1.5; }

  html[data-v51] .v52-sh .v51-cmp { grid-column: 1; margin: 0 calc(-1 * var(--gutter)) 0 0; }
  .v52-sh__side { grid-column: 1; }

  .v52-note__t, .v52-note__side { grid-column: 1; }
  .v52-note__lead, .v52-quote p { font-size: var(--t-2); line-height: 1.5; }
  .v52-year__f { grid-column: 1; margin-right: calc(-1 * var(--gutter)); }
  .v52-year__t { grid-column: 1; }

  .v52-pair { grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 10px; }
  .v52-pair__big, .v52-pair:nth-child(even) .v52-pair__big { grid-column: 1 / span 7; }
  .v52-pair__sm, .v52-pair:nth-child(even) .v52-pair__sm { grid-column: 8 / span 5; margin-top: var(--m); }
  .v52-pair:nth-child(even) .v52-pair__big { grid-column: 6 / span 7; }
  .v52-pair:nth-child(even) .v52-pair__sm { grid-column: 1 / span 5; }
  .v52-pair__p, .v52-pair:nth-child(even) .v52-pair__p { grid-column: 1 / -1; font-size: var(--t-2); line-height: 1.45; }
  .v52-chron li { grid-template-columns: minmax(0, 1fr) auto; row-gap: 2px; }
  .v52-chron li > :first-child { grid-column: 1 / -1; }

  .v52-qpanel .v52-q { grid-template-columns: minmax(0, 1fr); row-gap: 4px; }
}
@media (prefers-reduced-motion: reduce) {
  .v52-lives__f, .v52-lives__f.is-on, .v52-life__b { transition: none; }
}

/* круг 1 самопроверки 29.09: крошка из одного короткого слова («Окна», 30 × 44) — цель нажатия ≥ 44 по ширине (mobile-audit) */
.v52-crumbs a { min-width: 44px; }   /* display остаётся inline-flex волны 1 — иначе крошка съезжает с базовой линии */
/* круг 1: на 390 подписи половин шторки «визуализация · сейчас» и «визуализация · с перегородкой» наезжали внизу — «сейчас» уходит наверх */
@media (max-width: 47.99rem) {
  .v52-sh .v51-cmp__p--do .v51-cmp__lb { bottom: auto; top: 12px; left: 12px; }
  .v52-sh .v51-cmp__p--po .v51-cmp__lb { right: 12px; bottom: 12px; }
}
/* круг 1: год в панели «работы по годам» — доминанта (засечка I-18 крупно, ступень --t-7), счёт объектов — моно под ним */
.v52-year__t .v52-year__y { margin: 0; font-family: var(--font-display); font-weight: 700; font-size: var(--t-7); line-height: .9; letter-spacing: -.03em; color: var(--fg); }
/* круг 1: на 390 панель года оставалась сеткой 12 колонок — кадр сжимался в первую колонку (40 × 30 px, клип подписи) */
@media (max-width: 47.99rem) {
  .v52-year { grid-template-columns: minmax(0, 1fr); }
  .v52-year__t .v52-year__y { font-size: var(--t-6); }
}
/* круг 1: заголовок документа — класс вместо inline «span 8» (на 390 inline-span рождал неявные колонки) */
.v52-doc__h { grid-column: 1 / span 8; }
@media (max-width: 47.99rem) { .v52-doc__h { grid-column: 1; } }
/* круг 1: подпись документа «Автоматические решения» шире колонки 2 модуля (клип 111 > 88) — у документа колонка подписи 3 модуля */
@media (min-width: 48rem) { .v52-doc .v52-pass__r { grid-template-columns: calc(3 * var(--m) - var(--col-gap)) minmax(0, 1fr); } }
/* круг 1: «span 12» пар кейса на 390 рождал неявные колонки — хроника и паспорт сжимались в первую */
.v52-case2__main { grid-column: 1 / -1; }
@media (max-width: 47.99rem) { .v52-case2__main { grid-column: 1; } }

/* ══ F4-FIX 29.09 · F6/F5(320): самое длинное слово по ширине колонки ══
   /okna/ на 320: «начинается» (8,6 em) при 38 px шире колонки 268 → страница 354 px. */
.v52-say__t { font-size: min(var(--t-7), calc((100vw - 2 * var(--gutter)) / 8.9)); }

/* ══ SEQ-F · «одна лоджия — четыре жизни» кадрами одной камеры (3D-агент craftsman-4afe45, 29.09) ══
   Класс ЧЕРТЁЖ вместо ВИЗУАЛИЗАЦИИ 4.0: волосяная рамка и земля кадра #0E0F11 (как сцена сборки), без цветокора визуализаций,
   штамп «Схема | размеры по замеру». Холст плеера (v52-wave2.js seqF) — поверх кадров, под штампом. */
.v52-lives__stage[data-class="scheme"] { background: #0E0F11; outline: 1px solid var(--line2); outline-offset: -1px; }
.v52-lives__stage[data-class="scheme"] .v52-lives__f img { filter: none; }
.v52-lives__f .v51-plate[data-class="scheme"] { border-left-color: var(--n-300); }
