/* ═══════════════════════════════════════════════════════════
   Внутренние страницы · гравюрный слой
   ═══════════════════════════════════════════════════════════
   Подключается после home.css на страницах, переведённых на язык
   главной: посадочные (content/_landing_render.php), виды экспертиз
   (vid.php), хабы. От главной берутся гравюра и лупа, шапки глав с
   римской цифрой контуром, полоса фактов, вопросы, финал и всё
   движение (home.css, home.js); здесь — то, чего на главной нет.

   Классы — с приставкой pg- (em- — внутри эмблемы медальона).
   Новых цветов нет: только токены tokens.css.

   Начальные состояния анимаций — только внутри
   prefers-reduced-motion: no-preference и при классе .js на <html>:
   без скрипта или с отключённым движением всё видно сразу.

   Порядок: 1 основа · 2 эмблемы · 3 первый экран · 4 главы и
   текст · 5 блоки · 6 анатомия документа · 7 самопроверка ·
   8 указатель «читать дальше» · 9 движение.
   ═══════════════════════════════════════════════════════════ */

/* ───────────── 1. Основа ───────────── */

body.pg {
  --gl-h2: clamp(2rem, 1.35rem + 2.2vw, 3.5rem);           /* 32 → 56 */
  --gl-num: clamp(4rem, 2.4rem + 5vw, 8.25rem);            /* римская цифра главы */
  --gl-rule-dark: var(--k-f2efe8-a016);
  --pg-rail: 220px;
}

/* ───────────── 2. Эмблемы в медальоне (partials/emblems.php) ───────────── */

.em-o { fill: var(--pl-fill); stroke: var(--pl-ink); stroke-width: .9; stroke-linejoin: round; }
.em-o--thin { stroke-width: .6; }
.em-l { fill: none; stroke: var(--pl-line); stroke-width: .55; }
.em-mk { fill: none; stroke: var(--pl-ink); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.em-mk--thin { stroke-width: .8; }
.em-mk-fill { fill: var(--pl-ink); }
.em-fold { fill: var(--pl-hatch); stroke: var(--pl-ink); stroke-width: .7; }
.em-sill { fill: none; stroke: var(--pl-ink); stroke-width: 1.1; }
.em-knob { fill: var(--pl-ink); }
.em-tick { fill: none; stroke: var(--pl-ink); stroke-width: .9; }
.em-label { fill: var(--pl-fill); stroke: var(--pl-line); stroke-width: .6; }
.em-card { fill: var(--pl-fill); stroke: var(--pl-ink); stroke-width: .6; }
.em-deep { opacity: 1; }
.em-h { font-family: var(--font-serif); font-weight: 500; font-size: 12.5px; letter-spacing: .24em; fill: var(--pl-ink); }
.em-h--big { font-size: 26px; letter-spacing: .3em; }
.em-s { font-family: var(--font-mono); font-size: 6.5px; letter-spacing: .2em; fill: var(--pl-ink); }
.em-q { font-family: var(--font-serif); font-style: italic; font-size: 17px; fill: var(--pl-ink); }
.em-quote { font-family: var(--font-serif); font-size: 44px; fill: var(--pl-ink); }
.em-para { font-family: var(--font-serif); font-size: 112px; fill: var(--pl-ink); }
.em-mk--dash { stroke-width: 1.2; stroke-dasharray: 5 4; }
.em-sign { fill: none; stroke: var(--pl-ink); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.em-sign--thin { stroke-width: .7; }
.em-strand { fill: none; stroke: var(--pl-ink); stroke-width: 1.1; }
.em-l--rung { stroke-width: 1; }
.em-stamp__o { fill: var(--pl-fill); fill-opacity: .82; stroke: var(--pl-ink); stroke-width: 1.2; }
.em-stamp__i { fill: none; stroke: var(--pl-ink); stroke-width: .6; }
.em-stamp__t { font-family: var(--font-mono); font-size: 5.6px; letter-spacing: .08em; fill: var(--pl-ink); }
.em-stamp__m { fill: var(--pl-ink); }
.pl-dots--fine { stroke-width: 2.2; }
.pl-dots--ridge { stroke-width: 2; opacity: .62; }
.pl-micro--fine { font-size: 3.8px; }
.pl-micro--ridge { font-size: 3.4px; }
.pl-legend--long { font-size: 12.5px; letter-spacing: .1em; }

/* ───────────── 3. Первый экран внутренней страницы ───────────── */

.pg-hero {
  position: relative; overflow: hidden; border-bottom: 1px solid var(--line);
  background:
    radial-gradient(ellipse 40% 62% at 80% 44%, var(--paper-1) 0%, var(--k-f6f4ef-a0) 72%),
    var(--paper-0);
}
.pg-hero .crumbs .sep { margin: 0 4px; }
.pg-hero__in { display: grid; gap: clamp(28px, 5vw, 56px); padding-top: clamp(20px, 3vw, 36px); padding-bottom: clamp(36px, 5vw, 64px); align-items: center; }
@media (min-width: 1000px) {
  .pg-hero__in { grid-template-columns: minmax(0, 1.18fr) minmax(0, .82fr); gap: clamp(24px, 3vw, 56px); min-height: min(calc(100vh - 80px - 230px), 640px); }
}
.pg-hero__cap { display: block; }
.v2 .pg-hero__title {
  margin-top: var(--s-5);
  font-size: clamp(2.5rem, 1.25rem + 3.9vw, 4.875rem);    /* 40 → 78 */
  line-height: .98; letter-spacing: -.02em; font-weight: 500; max-width: 11.5em; overflow-wrap: break-word;
}
.v2 .pg-hero__title--long { font-size: clamp(2.125rem, 1.15rem + 3vw, 4rem); max-width: 13em; }   /* 34 → 64 */
.pg-hero__title em { font-style: italic; font-weight: 400; color: var(--bronze-ink); }
@media (max-width: 480px) { .v2 .pg-hero__title, .v2 .pg-hero__lead { hyphens: auto; } }
.v2 .pg-hero__lead { margin-top: var(--s-6); max-width: 33em; }
.v2 .pg-hero__sub { margin-top: var(--s-4); max-width: 46em; font-family: var(--font-ui); font-size: var(--t-caption); line-height: 1.5; color: var(--ink-2); }
.pg-hero__cta { margin-top: var(--s-8); display: flex; flex-wrap: wrap; gap: var(--s-3); }
.v2 .pg-hero__note { margin-top: var(--s-6); max-width: 36em; padding-left: var(--s-4); border-left: 2px solid var(--bronze); font-size: 1.0625rem; line-height: 1.45; color: var(--ink-1); }
.pg-hero__note .cap { display: block; margin-bottom: var(--s-1); }
.pg-hero__plate { width: 100%; max-width: 300px; justify-self: center; }
@media (min-width: 1000px) { .pg-hero__plate { max-width: 500px; justify-self: end; margin-right: calc(-1 * clamp(0px, 2.5vw, 40px)); } }
@media (max-width: 999px) {
  .pg-hero__plate { margin-top: var(--s-6); }
  .pg-hero__plate .gl-plate__cap { display: none; }
  .pg-hero__plate .gl-loupe { --r: 56px; }
}
/* Полоса фактов страницы — столько колонок, сколько фактов */
@media (min-width: 1000px) { .pg-facts { grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); } }
.pg-facts .gl-fact__t { max-width: 19em; }

/* ───────────── 4. Главы и текст ───────────── */

.pg-ch .gl-head { margin-bottom: clamp(32px, 5vw, 64px); }
@media (min-width: 1000px) {
  .pg-ch .gl-head { grid-template-columns: var(--pg-rail) minmax(0, 1fr); }
  /* Содержимое главы — под текстом шапки, поле с цифрой остаётся свободным */
  .pg-body { margin-left: calc(var(--pg-rail) + var(--s-12)); }
  .pg-body--wide { margin-left: 0; }
  /* В широкой главе во всю ширину идёт только сам блок: абзацы до и
     после него стоят под текстом шапки, как в обычной главе */
  .pg-body--wide > .doc { margin-left: calc(var(--pg-rail) + var(--s-12)); }
}
.v2 .pg-ch .gl-head__txt h2 { max-width: 17em; }
.pg-body > * + * { margin-top: var(--s-10); }
.pg-body > .doc + .doc { margin-top: var(--s-6); }
/* Номер шага на белой главе — белый кружок, на подложке — цвета подложки */
.gl-ch:not(.gl-ch--tint) .gl-step:not(.is-done) .gl-step__n { background: var(--paper-0); }

.pg-body .doc { max-width: 40em; }
.v2 .pg-body .doc p { font-size: 1.1875rem; line-height: 1.62; }
.v2 .pg-body .doc li { font-size: 1.1875rem; }
.v2 main .pg-body .doc a:not(.btn) { text-decoration-color: var(--bronze); text-underline-offset: .18em; }
/* Врезка — как на главной: бронзовая кромка и тёплая подложка */
.pg-body .callout { max-width: 44em; border-left: 3px solid var(--bronze); background: var(--bronze-tint); padding: var(--s-6) clamp(20px, 3vw, 36px); }
.pg-body .callout .cap { color: var(--bronze-ink); }
.v2 .pg-body .callout p { font-size: 1.125rem; line-height: 1.55; color: var(--ink-0); }

/* ───────────── 5. Блоки посадочных ───────────── */

/* Карточки — сетка признаков, как глава VI главной. Ширину ячейки
   на широком экране задаёт --sp из шести колонок: ряд всегда полный. */
.pg-cards { list-style: none; display: grid; gap: 1px; background: var(--line); border: 1px solid var(--line); }
@media (min-width: 700px) { .pg-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pg-cards > .is-wide { grid-column: 1 / -1; } }
@media (min-width: 1000px) { .pg-cards { grid-template-columns: repeat(6, minmax(0, 1fr)); } .pg-cards > li, .pg-cards > .is-wide { grid-column: span var(--sp, 2); } }
.pg-card { position: relative; display: block; height: 100%; background: var(--paper-0); padding: clamp(22px, 2.6vw, 34px); color: var(--ink-0); transition: background-color .35s var(--ease); }
.pg-card::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 2px; background: var(--bronze); transform: scaleX(0); transform-origin: left; transition: transform .5s var(--ease); }
.pg-card:hover::before { transform: scaleX(1); }
.pg-card__n { display: block; font-family: var(--font-serif); font-size: clamp(2.75rem, 2.2rem + 1.6vw, 3.75rem); line-height: .8; color: transparent; -webkit-text-stroke: 1px var(--bronze); font-feature-settings: "lnum"; transition: color .35s var(--ease); }
.pg-card:hover .pg-card__n { color: var(--bronze); }
.v2 .pg-card h3 { margin-top: var(--s-5); font-size: 1.375rem; line-height: 1.2; }
.v2 .pg-card p { margin-top: var(--s-3); font-size: 1.0625rem; line-height: 1.5; color: var(--ink-2); }
.v2 main a.pg-card { text-decoration: none; color: var(--ink-0); }
.pg-card__go { display: inline-flex; gap: var(--s-2); margin-top: var(--s-5); font-family: var(--font-ui); font-size: var(--t-small); font-weight: 500; color: var(--ink-0); }
.pg-card__go i { font-style: normal; color: var(--bronze); transition: transform .3s var(--ease); }
a.pg-card:hover .pg-card__go i { transform: translateX(5px); }
a.pg-card:hover h3 { color: var(--bronze-ink); }

/* Метка пункта стека над заголовком; выделенный пункт — тёмная карточка */
.pg-card__cap { display: block; margin-top: var(--s-5); }
.v2 .pg-card__cap + h3 { margin-top: var(--s-2); }
.pg-card--ink { background: var(--ink-panel); color: var(--on-dark); }
.pg-card--ink .pg-card__n { -webkit-text-stroke-color: var(--bronze-light); }
.pg-card--ink:hover .pg-card__n { color: var(--bronze-light); }
.pg-card--ink .cap { color: var(--bronze-light); }
.v2 .pg-card--ink h3 { color: var(--on-dark); }
.v2 .pg-card--ink p { color: var(--on-dark-2); }
.v2 main .pg-card--ink a:not(.btn) { color: var(--on-dark); text-decoration-color: var(--bronze-light); }

/* Нумерованный перечень с маркером моноширинным («ст. 87», «п. 3») */
.clauses--mono .n { font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .08em; line-height: 1.9; }
.pg-sheet .clauses { border-top: 0; }
.pg-sheet .clauses li:last-child { border-bottom: 0; }

/* Перечень на листе — «типовые пороки», «что приложить» */
.pg-sheet { position: relative; max-width: 46em; background: var(--paper-0); box-shadow: var(--shadow-sheet); padding: clamp(28px, 3.6vw, 48px) clamp(22px, 3.6vw, 52px) clamp(24px, 3.2vw, 44px); }
.pg-sheet::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--bronze); }
.pg-sheet .doc { max-width: none; }
.v2 .pg-sheet .doc li { padding: var(--s-3) 0 var(--s-3) var(--s-8); border-bottom: 1px solid var(--line); }
.v2 .pg-sheet .doc li + li { margin-top: 0; }
.v2 .pg-sheet .doc li:last-child { border-bottom: 0; }
.pg-sheet .doc ul li::before { top: var(--s-3); }

/* Контрольный лист: флажки вместо тире, отмечаются по очереди */
.pg-sheet--checks .doc ul li::before { content: ""; left: 0; top: calc(var(--s-3) + 6px); width: 17px; height: 17px; border: 1px solid var(--line-strong); background: var(--paper-0); }
.pg-sheet--checks .doc ul li::after { content: ""; position: absolute; left: 6px; top: calc(var(--s-3) + 7px); width: 5px; height: 11px; border: solid var(--bronze-ink); border-width: 0 2px 2px 0; transform: rotate(45deg); }

/* Две плиты: «даёт / не даёт» */
.pg-cols2 { display: grid; gap: var(--s-8); }
@media (min-width: 800px) { .pg-cols2 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0; } }
.pg-plate { padding: var(--s-6) var(--s-6) var(--s-6) 0; border-top: 2px solid var(--ink-0); }
.pg-plate--soft { border-top-color: var(--line-strong); }
@media (min-width: 800px) { .pg-plate + .pg-plate { padding-left: var(--s-8); border-left: 1px solid var(--line); } }
.pg-plate > .cap { display: block; margin-bottom: var(--s-4); }
.pg-plate--soft > .cap { color: var(--ink-2); }
.v2 .pg-plate p { font-size: 1.0625rem; line-height: 1.55; color: var(--ink-1); }
.v2 .pg-plate p + p, .v2 .pg-plate p + ul { margin-top: var(--s-3); }
.pg-plate ul { list-style: none; }
.v2 .pg-plate li { position: relative; padding-left: var(--s-6); font-size: 1.0625rem; line-height: 1.5; color: var(--ink-1); }
.v2 .pg-plate li + li { margin-top: var(--s-3); }
.pg-plate li::before { content: "—"; position: absolute; left: 0; color: var(--bronze); }

/* Пары «было → стало» */
.pg-pairs { list-style: none; display: grid; gap: var(--s-6); }
.pg-pair { display: grid; gap: var(--s-3); }
@media (min-width: 800px) { .pg-pair { grid-template-columns: minmax(0, 1fr) 48px minmax(0, 1fr); gap: 0; align-items: stretch; } }
.pg-pair__a, .pg-pair__b { padding: var(--s-5) var(--s-6); }
.pg-pair__a { background: var(--paper-1); color: var(--ink-2); }
.gl-ch--tint .pg-pair__a { background: var(--paper-2); }
.pg-pair__b { background: var(--paper-0); border: 1px solid var(--line); border-left: 3px solid var(--bronze); color: var(--ink-0); }
.pg-pair .cap { display: block; margin-bottom: var(--s-2); }
.v2 .pg-pair p { font-size: 1.0625rem; line-height: 1.5; }
.pg-pair__arr { display: grid; place-items: center; color: var(--bronze); font-size: 1.375rem; }
@media (max-width: 799px) { .pg-pair__arr { transform: rotate(90deg); justify-self: start; padding-left: var(--s-6); } }

/* Прейскурант с отточиями (таблица «параметр — значение») */
.pg-tariff { max-width: 54em; }
.pg-tariff__hd { display: flex; justify-content: space-between; gap: var(--s-4); padding-bottom: var(--s-3); border-bottom: 1px solid var(--line-ink); }
.pg-tariff ul { list-style: none; }
.pg-tariff__row { display: flex; align-items: baseline; gap: var(--s-3); padding: var(--s-4) 0; border-bottom: 1px solid var(--line); transition: background-color .3s var(--ease), padding .3s var(--ease); }
.pg-tariff__row:hover { background: var(--paper-1); padding-left: var(--s-3); padding-right: var(--s-3); }
.gl-ch--tint .pg-tariff__row:hover { background: var(--paper-0); }
.pg-tariff__name { flex: 0 1 auto; font-size: 1.1875rem; line-height: 1.3; }
.pg-tariff__dots { flex: 1 1 32px; min-width: 24px; border-bottom: 1px dotted var(--line-strong); transform: translateY(-.28em); }
.pg-tariff__sum { flex: none; max-width: 48%; font-size: 1.3125rem; line-height: 1.25; text-align: right; font-feature-settings: "lnum", "tnum"; }
.v2 .pg-tariff__note { margin-top: var(--s-4); max-width: 46em; font-family: var(--font-ui); font-size: var(--t-caption); line-height: 1.5; color: var(--ink-2); }
@media (max-width: 480px) { .pg-tariff__name { font-size: 1.0625rem; } .pg-tariff__sum { font-size: 1.125rem; } }

/* Шаги — шкала главной (gl-steps), число колонок по числу шагов */
@media (min-width: 1000px) { .pg-steps { grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); } }
.v2 .pg-steps .gl-step h3 { font-size: 1.25rem; }
.v2 .pg-steps .gl-step p { font-size: 1rem; }
.pg-steps .gl-step__cap { display: block; margin-top: var(--s-4); font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--ink-2); }
@media (max-width: 999px) { .pg-steps .gl-step__cap { margin-top: 10px; } }

/* Перечёркнутые обещания */
.pg-crossed { list-style: none; border-top: 1px solid var(--line-ink); }
.pg-crossed li { display: grid; gap: var(--s-3); padding: var(--s-6) 0; border-bottom: 1px solid var(--line); }
@media (min-width: 900px) { .pg-crossed li { grid-template-columns: 48px minmax(0, 5fr) minmax(0, 6fr); column-gap: var(--s-8); align-items: baseline; } }
.pg-crossed__n { font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .1em; color: var(--bronze-ink); }
.v2 .pg-crossed__p { font-family: var(--font-serif); font-size: clamp(1.5rem, 1.15rem + 1.1vw, 2.25rem); line-height: 1.12; letter-spacing: -.01em; color: var(--ink-1); }
.pg-crossed__p s { text-decoration: none; background: linear-gradient(var(--bronze), var(--bronze)) 0 57% / 100% 2px no-repeat; }
.v2 .pg-crossed__t { font-size: 1.0625rem; line-height: 1.55; color: var(--ink-1); max-width: 34em; }

/* Перечень в две колонки с римскими номерами: поводы, объекты, методы */
.pg-list2 { list-style: none; display: grid; column-gap: var(--s-10); border-top: 1px solid var(--line-ink); counter-reset: pg-l2; }
@media (min-width: 800px) { .pg-list2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.v2 .pg-list2 li { counter-increment: pg-l2; display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: var(--s-3); align-items: baseline; padding: var(--s-5) 0; border-bottom: 1px solid var(--line); font-size: 1.125rem; line-height: 1.5; color: var(--ink-0); }
.pg-list2 li::before { content: counter(pg-l2, upper-roman); font-family: var(--font-serif); font-size: 1.25rem; color: var(--bronze-ink); font-feature-settings: "lnum"; }
.pg-list2--num li::before { content: counter(pg-l2, decimal-leading-zero); font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .1em; }

/* Вопросы эксперту: номер, формулировка, «скопировать» */
.pg-qs { list-style: none; border-top: 1px solid var(--line-ink); max-width: 60em; }
.pg-q { position: relative; display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; gap: var(--s-4); align-items: baseline; padding: var(--s-5) 0; border-bottom: 1px solid var(--line); transition: background-color .3s var(--ease), padding .3s var(--ease); }
.pg-q:hover { background: var(--paper-1); padding-left: var(--s-3); padding-right: var(--s-3); }
.gl-ch--tint .pg-q:hover { background: var(--paper-0); }
.pg-q__n { font-family: var(--font-serif); font-size: 1.5rem; line-height: 1; color: var(--bronze-ink); font-feature-settings: "lnum"; }
.v2 .pg-q__t { font-family: var(--font-serif); font-size: clamp(1.1875rem, 1.1rem + .3vw, 1.375rem); line-height: 1.35; color: var(--ink-0); }
.pg-q__copy { align-self: center; padding: 6px 10px; border: 1px solid var(--line-strong); background: var(--paper-0); font-family: var(--font-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-2); cursor: pointer; opacity: .55; transition: opacity var(--dur), border-color var(--dur), color var(--dur), background-color var(--dur); }
.pg-q:hover .pg-q__copy, .pg-q__copy:focus-visible { opacity: 1; }
.pg-q__copy:hover { border-color: var(--ink-0); color: var(--ink-0); }
.pg-q__copy.is-done, .pg-qs__bar .btn.is-done { background: var(--ink-0); border-color: var(--ink-0); color: var(--bronze-light); opacity: 1; }
@media (hover: none) { .pg-q__copy { opacity: 1; } }
@media (max-width: 560px) { .pg-q { grid-template-columns: 36px minmax(0, 1fr); } .pg-q__copy { grid-column: 2; justify-self: start; } }
.pg-qs__bar { display: flex; flex-wrap: wrap; gap: var(--s-4) var(--s-8); align-items: center; }

/* Стандарт: корешок на полке и строка реестра рядом */
.pg-std { display: grid; gap: var(--s-8); align-items: end; max-width: 60em; }
@media (min-width: 640px) { .pg-std { grid-template-columns: 96px minmax(0, 1fr); gap: var(--s-10); } }
.v2 main a.pg-std__book {
  position: relative; display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: var(--s-2);
  width: 96px; height: 300px; padding: 18px 8px 14px; border-radius: 3px 3px 0 0;
  background: linear-gradient(90deg, var(--k-0b0b0a) 0%, var(--k-262522) 16%, var(--k-191918) 46%, var(--k-10100f) 84%, var(--k-070707) 100%);
  color: var(--bronze-light); text-decoration: none; box-shadow: inset 0 0 0 1px var(--k-c9a45c-a016), 0 22px 30px -18px var(--k-151515-a055);
  border-bottom: 10px solid var(--ink-0); transition: transform .45s var(--ease);
}
.pg-std__book::before, .pg-std__book::after { content: ""; position: absolute; left: 8px; right: 8px; height: 5px; border-top: 1px solid var(--k-c9a45c-a075); border-bottom: 1px solid var(--k-c9a45c-a075); }
.pg-std__book::before { top: 44px; }
.pg-std__book::after { bottom: 38px; }
.v2 main a.pg-std__book:hover { transform: translateY(-12px); }
.pg-std__code { font-family: var(--font-mono); font-size: 10px; letter-spacing: .04em; white-space: nowrap; }
.pg-std__title { flex: 1; min-height: 0; overflow: hidden; display: flex; align-items: center; writing-mode: vertical-rl; transform: rotate(180deg); padding: 34px 0; font-family: var(--font-serif); font-size: 15px; line-height: 1.15; text-align: center; color: var(--on-dark); }
.pg-std__st { font-family: var(--font-mono); font-size: 9px; letter-spacing: .16em; text-transform: uppercase; opacity: .85; }
.v2 main a.pg-std__book.is-draft { background: linear-gradient(90deg, var(--k-d9d5ca) 0%, var(--k-f3f0e8) 18%, var(--k-ece8df) 50%, var(--k-e2ded3) 84%, var(--k-cfcabd) 100%); color: var(--ink-2); }
.pg-std__book.is-draft .pg-std__title { color: var(--ink-1); }
.pg-std__reg { margin-top: 0; }
.v2 .pg-std__cap { margin-top: var(--s-4); max-width: 40em; font-family: var(--font-ui); font-size: var(--t-caption); line-height: 1.5; color: var(--ink-2); }
.pg-std .more { margin-top: var(--s-4); }
@media (max-width: 639px) { .v2 main a.pg-std__book { width: 72px; height: 220px; } }

/* Нормативная основа — строки со знаком параграфа */
.pg-norms { list-style: none; max-width: 52em; border-top: 1px solid var(--line-ink); }
.v2 .pg-norms li { position: relative; padding: var(--s-4) 0 var(--s-4) var(--s-10); border-bottom: 1px solid var(--line); font-size: 1.125rem; line-height: 1.5; }
.pg-norms li::before { content: "§"; position: absolute; left: 4px; top: var(--s-4); font-family: var(--font-serif); font-size: 1.375rem; line-height: 1.1; color: var(--bronze); }

/* Малая эмблема — центр медальона в двойном ободе */
.pg-icon { display: block; width: 100%; height: auto; }
/* В малом размере линии гравюры тоньше волоса — держим их толщину в пикселях экрана */
.pg-icon .em-o, .pg-icon .em-mk, .pg-icon .em-l, .pg-icon .em-sill, .pg-icon .em-tick, .pg-icon .em-label, .pg-icon .em-card,
.pg-icon .em-strand, .pg-icon .em-sign, .pg-icon .pl-col, .pg-icon .pl-base, .pg-icon .pl-flute, .pg-icon .em-stamp__o, .pg-icon .em-stamp__i { vector-effect: non-scaling-stroke; }
.pg-icon .em-o, .pg-icon .pl-col { stroke-width: 1; }
.pg-icon .em-mk, .pg-icon .em-sign, .pg-icon .pl-base { stroke-width: 1.2; }
.pg-icon .em-l, .pg-icon .em-label, .pg-icon .em-tick, .pg-icon .pl-flute { stroke-width: .7; }
.pg-icon .pl-dots { stroke-width: 6; opacity: .35; }
.pg-icon__rim { fill: var(--paper-0); stroke: var(--bronze); stroke-width: 2.2; }
.pg-icon__rim--in { fill: none; stroke-width: 1; }

/* ─── Картотека направлений (/ekspertizy) ─── */
/* На широком экране ящики-классы стоят на левом поле главы и держатся
   на месте, пока листается каталог; на узком — строкой над ним. */
.pg-cat { display: grid; gap: var(--s-6); }
.pg-cat > * { min-width: 0; }
@media (min-width: 1000px) {
  .pg-cat { grid-template-columns: var(--pg-rail) minmax(0, 1fr); gap: var(--s-12); align-items: start; }
  .pg-cat__side { position: sticky; top: 104px; }
}
html:not(.js) .pg-cat__side, html:not(.js) .pg-cat__search { display: none; }
.pg-cat__side-cap { display: none; }
@media (min-width: 1000px) { .pg-cat__side-cap { display: block; margin-bottom: var(--s-3); } }
.pg-cat__drawers { display: flex; gap: var(--s-2); overflow-x: auto; scrollbar-width: thin; padding-bottom: 4px; }
@media (min-width: 1000px) { .pg-cat__drawers { flex-direction: column; gap: 0; overflow: visible; padding: 0; border-top: 1px solid var(--line-ink); } }
.pg-cat__search { margin-bottom: var(--s-8); border-bottom-color: var(--line-strong); }
/* Ящик картотеки: ярлык и число карточек в нём */
.pg-drawer {
  flex: none; display: inline-flex; align-items: center; justify-content: space-between; gap: var(--s-3); min-height: 36px; padding: 0 var(--s-3);
  border: 1px solid var(--line-strong); border-radius: 2px; background: var(--paper-0); cursor: pointer; text-align: left;
  font-family: var(--font-ui); font-size: 13px; line-height: 1.25; color: var(--ink-1); white-space: nowrap;
  transition: border-color var(--dur), background-color var(--dur), color var(--dur), padding var(--dur);
}
@media (min-width: 1000px) {
  .pg-drawer { width: 100%; min-height: 34px; padding: 6px 0; border: 0; border-bottom: 1px solid var(--line); white-space: normal; background: transparent; }
  .pg-drawer:hover { padding-left: var(--s-2); }
  .pg-drawer.is-on { padding-left: var(--s-3); padding-right: var(--s-2); }
}
.pg-drawer:hover { border-color: var(--ink-0); color: var(--ink-0); }
.pg-drawer__n { font-family: var(--font-mono); font-size: 11px; letter-spacing: .06em; color: var(--bronze-ink); }
.pg-drawer.is-on { background: var(--ink-0); border-color: var(--ink-0); color: var(--on-dark); }
.pg-drawer.is-on .pg-drawer__n { color: var(--bronze-light); }
.pg-drawer[hidden] { display: none; }

.pg-cls + .pg-cls { margin-top: clamp(40px, 5vw, 64px); }
.pg-cls[hidden] { display: none; }
.pg-cls__head { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: var(--s-5); align-items: center; padding-bottom: var(--s-4); border-bottom: 1px solid var(--line-ink); }
@media (min-width: 700px) { .pg-cls__head { grid-template-columns: 84px minmax(0, 1fr) auto; } }
.pg-cls__em { --pl-line: var(--bronze); --pl-ink: var(--bronze-ink); --pl-fill: var(--paper-0); --pl-hatch: url(#pl-hatch); display: block; transition: transform .6s var(--ease); }
.pg-cls:hover .pg-cls__em { transform: rotate(-6deg); }
.pg-cls__t .cap { display: block; }
.v2 .pg-cls__t h3 { margin-top: var(--s-1); font-size: clamp(1.5rem, 1.2rem + 1vw, 2.125rem); line-height: 1.1; }
.pg-cls__n { font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--ink-2); white-space: nowrap; }
@media (max-width: 560px) { .pg-cls__n { display: none; } }

.pg-dirs { list-style: none; }
.pg-dir[hidden] { display: none; }
.v2 main .pg-dir a {
  position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 24px; column-gap: var(--s-4); row-gap: var(--s-2);
  padding: var(--s-5) 0; border-bottom: 1px solid var(--line); text-decoration: none; color: var(--ink-0);
  transition: background-color .3s var(--ease), padding .3s var(--ease);
}
@media (min-width: 900px) { .v2 main .pg-dir a { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr) auto 24px; align-items: baseline; column-gap: var(--s-8); } }
.v2 main .pg-dir a:hover { background: var(--paper-1); padding-left: var(--s-3); padding-right: var(--s-3); }
.pg-dir a::before { content: ""; position: absolute; left: 0; top: 0; bottom: -1px; width: 2px; background: var(--bronze); transform: scaleY(0); transform-origin: top; transition: transform .4s var(--ease); }
.pg-dir a:hover::before { transform: scaleY(1); }
.pg-dir__name { font-family: var(--font-serif); font-size: 1.3125rem; line-height: 1.25; transition: color var(--dur); }
.pg-dir a:hover .pg-dir__name { color: var(--bronze-ink); }
.pg-dir__short { grid-column: 1; font-size: 1rem; line-height: 1.45; color: var(--ink-2); }
@media (min-width: 900px) { .pg-dir__short { grid-column: auto; } }
.pg-dir__meta { grid-column: 1; display: flex; flex-wrap: wrap; gap: var(--s-2) var(--s-4); align-items: baseline; font-family: var(--font-ui); font-size: var(--t-caption); color: var(--ink-2); white-space: nowrap; }
@media (min-width: 900px) { .pg-dir__meta { grid-column: auto; flex-direction: column; align-items: flex-end; gap: var(--s-1); } }
.pg-dir__std { font-family: var(--font-mono); font-size: 11px; letter-spacing: .08em; color: var(--bronze-ink); border: 1px solid var(--k-9c7a3c-a035); padding: 1px 6px; }
.pg-dir__arr { grid-column: 2; grid-row: 1; justify-self: end; font-style: normal; color: var(--bronze); transition: transform .3s var(--ease); }
@media (min-width: 900px) { .pg-dir__arr { grid-column: auto; grid-row: auto; } }
.pg-dir a:hover .pg-dir__arr { transform: translateX(5px); }
.pg-cat.is-search .pg-dir.is-hit .pg-dir__name { background: linear-gradient(transparent 62%, var(--bronze-tint) 62%); }
.v2 .pg-cat__empty { padding: var(--s-6) 0; font-size: 1.125rem; color: var(--ink-1); border-top: 1px solid var(--line); }
.v2 main .pg-cat__ask { color: var(--ink-0); text-decoration-color: var(--bronze); }
.v2 .pg-cat__foot { margin-top: var(--s-10); padding-top: var(--s-5); border-top: 1px solid var(--line-ink); font-family: var(--font-ui); font-size: var(--t-small); line-height: 1.5; color: var(--ink-2); }

/* ─── О Коллегии (/o-vkse) ─── */
/* Формула — надпись на фризе между двумя линейками, как слово на фронтоне главной */
.pg-frieze { padding: clamp(56px, 8vw, 112px) 0; background: var(--paper-0); border-top: 1px solid var(--line); }
.pg-frieze__in { margin: 0; text-align: center; padding: clamp(28px, 4vw, 48px) 0; border-top: 3px solid var(--ink-0); border-bottom: 1px solid var(--ink-0); position: relative;
  background: repeating-linear-gradient(90deg, transparent 0 46px, var(--k-9c7a3c-a035) 46px 47px); }
.pg-frieze__in::after { content: ""; position: absolute; left: 0; right: 0; bottom: 4px; height: 1px; background: var(--bronze); }
.pg-frieze__in .cap { display: inline-block; padding: 0 var(--s-4); background: var(--paper-0); }
.pg-frieze__q { margin: var(--s-5) auto 0; max-width: min(100%, 1000px); width: fit-content; padding: var(--s-2) var(--s-8); background: var(--paper-0); }
.v2 .pg-frieze__q p { font-family: var(--font-serif); font-style: italic; font-weight: 400; font-size: clamp(1.75rem, 1.1rem + 2.6vw, 3.5rem); line-height: 1.12; letter-spacing: -.01em; color: var(--ink-0); text-wrap: balance; }

/* Портик из пяти колонн */
@media (min-width: 900px) { .pg-temple .gl-temple__row { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
.v2 .pg-temple .gl-pillar h3 { font-size: 1.375rem; }
.v2 .pg-temple .gl-pillar p { font-size: 1rem; }

/* «Это не / это»: перечёркнутые ярлыки слева, весомая плита справа */
.pg-isnot { display: grid; gap: var(--s-10); }
@media (min-width: 900px) { .pg-isnot { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--s-12); align-items: start; } }
.pg-isnot .cap { display: block; margin-bottom: var(--s-3); }
.pg-crossed--plain li { grid-template-columns: 40px minmax(0, 1fr) !important; padding: var(--s-5) 0; }
.v2 .pg-crossed--plain .pg-crossed__p { font-size: clamp(1.375rem, 1.1rem + .9vw, 1.875rem); }
.pg-isnot__yes { padding: var(--s-6) var(--s-6) var(--s-8); background: var(--paper-0); border: 1px solid var(--line); border-top: 3px solid var(--bronze); box-shadow: var(--shadow-sheet); }
.pg-isnot__yes ul { list-style: none; }
.v2 .pg-isnot__yes li { position: relative; padding-left: var(--s-6); font-size: 1.1875rem; line-height: 1.45; color: var(--ink-0); }
.v2 .pg-isnot__yes li + li { margin-top: var(--s-4); }
.pg-isnot__yes li::before { content: ""; position: absolute; left: 0; top: .55em; width: 8px; height: 8px; transform: rotate(45deg); background: var(--bronze); }

/* Схема органов: Высшая коллегия и четыре органа под ней */
.pg-org { max-width: 1040px; }
.pg-org__top { max-width: 460px; margin: 0 auto; padding: var(--s-6) var(--s-8); background: var(--ink-panel); color: var(--on-dark); text-align: center; }
.v2 .pg-org__top h3 { color: var(--on-dark); font-size: 1.625rem; }
.v2 .pg-org__top p { margin-top: var(--s-2); color: var(--on-dark-2); font-size: 1rem; line-height: 1.45; }
.pg-org__top .pg-org__n { color: var(--bronze-light); }
.pg-org__n { display: block; font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .1em; color: var(--bronze-ink); }
.pg-org__lines { display: none; width: 100%; height: 48px; }
.pg-org__lines path { fill: none; stroke: var(--bronze); stroke-width: 1; vector-effect: non-scaling-stroke; }
.pg-org__row { list-style: none; display: grid; gap: var(--s-4); margin-top: var(--s-6); }
@media (min-width: 900px) {
  .pg-org__lines { display: block; }
  .pg-org__row { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 0; }
}
.pg-org__body { position: relative; padding: var(--s-5) var(--s-5) var(--s-6); background: var(--paper-0); border: 1px solid var(--line); border-top: 2px solid var(--ink-0); transition: border-color .35s var(--ease), transform .35s var(--ease), box-shadow .35s var(--ease); }
.pg-org__body:hover { border-top-color: var(--bronze); transform: translateY(-4px); box-shadow: 0 18px 32px -22px var(--k-151515-a035); }
.v2 .pg-org__body h3 { margin-top: var(--s-2); font-size: 1.25rem; line-height: 1.2; }
.v2 .pg-org__body p { margin-top: var(--s-2); font-size: 1rem; line-height: 1.45; color: var(--ink-2); }

.pg-arch { margin-top: clamp(40px, 5vw, 64px); max-width: 1040px; }
.pg-arch > .cap { display: block; margin-bottom: var(--s-3); }
.pg-arch__pair { display: grid; gap: 0; border: 1px solid var(--line); }
@media (min-width: 700px) { .pg-arch__pair { grid-template-columns: 1fr 1fr; } }
.pg-arch__p { padding: var(--s-6); background: var(--paper-0); }
.pg-arch__p--ink { background: var(--ink-panel); }
.pg-arch__p--ink .cap { color: var(--bronze-light); }
.v2 .pg-arch__p p { margin-top: var(--s-2); font-family: var(--font-serif); font-size: 1.25rem; line-height: 1.35; color: var(--ink-0); }
.v2 .pg-arch__p--ink p { color: var(--on-dark); }

/* Реестр документов со штампом состояния */
.pg-docs__hd { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; gap: var(--s-4); max-width: 60em; padding-bottom: var(--s-3); }
.pg-docs__hd span:nth-child(2) { padding-left: calc(30px + var(--s-4)); }
@media (max-width: 560px) { .pg-docs__hd { display: none; } }
.pg-docs { list-style: none; border-top: 1px solid var(--line-ink); max-width: 60em; }
.pg-doc { display: grid; grid-template-columns: 36px 30px minmax(0, 1fr) auto; gap: var(--s-4); align-items: center; padding: var(--s-5) 0; border-bottom: 1px solid var(--line); }
.pg-doc__n { font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .1em; color: var(--ink-2); }
.pg-doc__ico svg { display: block; width: 26px; height: 32px; }
.pg-doc__ico path { fill: var(--paper-0); stroke: var(--bronze-ink); stroke-width: 1.1; }
.pg-doc__ico path + path { fill: none; stroke: var(--bronze); }
.pg-doc__t b { display: block; font-family: var(--font-serif); font-weight: 400; font-size: 1.25rem; line-height: 1.25; color: var(--ink-0); }
.pg-doc__t span { display: block; margin-top: var(--s-1); font-family: var(--font-ui); font-size: var(--t-caption); line-height: 1.5; color: var(--ink-2); }
.pg-doc__st { justify-self: end; padding: 4px 10px 3px; border: 1.5px solid var(--bronze-ink); border-radius: 3px; transform: rotate(-4deg); font-family: var(--font-mono); font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--bronze-ink); opacity: .85; }
@media (max-width: 560px) { .pg-doc { grid-template-columns: 30px minmax(0, 1fr); } .pg-doc__ico { display: none; } .pg-doc__st { grid-column: 2; justify-self: start; margin-top: var(--s-2); } }

/* ─── Свод стандартов (/standarty) ─── */
.pg-shelf { margin-top: 0; }
.pg-shelf .gl-shelf__books { height: clamp(320px, 28vw, 400px); }
.pg-reg { margin-top: var(--s-8); }
.pg-reg__sum { display: block; margin-top: var(--s-1); max-width: 44em; font-size: 1rem; line-height: 1.45; color: var(--ink-1); }
.pg-reg__meta { display: block; margin-top: var(--s-1); font-family: var(--font-ui); font-size: var(--t-caption); line-height: 1.45; color: var(--ink-2); }
.pg-reg td { padding-top: var(--s-4); padding-bottom: var(--s-4); }

/* ─── Что делать, если… (/chto-delat) ─── */
/* Папка ситуаций: у пункта — суть разбора и его счёт */
@media (min-width: 1000px) { .pg-sit { grid-template-columns: minmax(0, 6fr) minmax(0, 7fr); } }
.pg-sit__body { display: grid; gap: 6px; min-width: 0; }
.v2 .pg-sit__short { font-family: var(--font-ui); font-size: var(--t-small); line-height: 1.45; color: var(--ink-2); }
.pg-sit__meta { margin-top: 2px; font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .08em; color: var(--ink-2); transition: color var(--dur); }
.gl-sit__tab.is-on .pg-sit__meta { color: var(--bronze-ink); }
/* Сроки на листе ситуации */
.pg-case__dl { margin-top: var(--s-6); }
.pg-case__dl ul { list-style: none; margin-top: var(--s-3); border-top: 1px solid var(--line); }
.pg-case__dl li { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 5fr); gap: var(--s-4); align-items: baseline; padding: var(--s-3) 0; border-bottom: 1px solid var(--line); }
.pg-case__when { font-family: var(--font-serif); font-size: 1.125rem; line-height: 1.25; color: var(--ink-0); font-feature-settings: "lnum"; }
.pg-case__what { font-size: 1rem; line-height: 1.45; color: var(--ink-1); }
.pg-case__norm { display: block; margin-top: 2px; font-family: var(--font-mono); font-size: 11.5px; line-height: 1.5; letter-spacing: .04em; color: var(--ink-2); }
@media (max-width: 480px) { .pg-case__dl li { grid-template-columns: minmax(0, 1fr); gap: 2px; } }

/* Ошибки: действие зачёркнуто, объяснение читается */
.pg-mist { list-style: none; display: grid; gap: 1px; background: var(--line); border: 1px solid var(--line); }
@media (min-width: 800px) { .pg-mist { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pg-mist > .is-wide { grid-column: 1 / -1; } }
.pg-mist li { background: var(--paper-0); padding: clamp(22px, 2.6vw, 34px); }
.v2 main a.pg-mist__sit { font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--bronze-ink); text-decoration: none; }
.v2 main a.pg-mist__sit:hover { color: var(--ink-0); }
.v2 .pg-mist__t { margin-top: var(--s-3); font-family: var(--font-serif); font-size: clamp(1.25rem, 1.12rem + .45vw, 1.5rem); line-height: 1.3; color: var(--ink-1); }
.pg-mist__t s { text-decoration: none; color: var(--ink-0); background: linear-gradient(var(--bronze), var(--bronze)) 0 60% / 100% 1.5px no-repeat; }

/* Шкала сроков: логарифм от суток до лет; отметки — сроки из разборов,
   подписи шкалы — под осью. Только на широком экране: на узком
   соседние сроки слипаются, а всё содержание и так в реестре. */
.pg-ruler { display: none; }
@media (min-width: 900px) { .pg-ruler { display: block; position: relative; height: 150px; margin: 0 8px var(--s-8); } }
.pg-ruler__axis { position: absolute; left: 0; right: 0; top: 106px; height: 1px; background: var(--ink-0); }
.pg-ruler__minor { position: absolute; left: var(--x); top: 106px; width: 1px; height: 5px; background: var(--ink-2); }
.pg-ruler__minor--mid { height: 11px; background: var(--ink-0); }
.pg-ruler__scale { position: absolute; left: var(--x); top: 122px; transform: translateX(-50%); font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--ink-2); white-space: nowrap; }
.pg-ruler__mark { position: absolute; left: var(--x); top: calc(70px - var(--row, 0) * 24px); bottom: 44px; width: 1px; background: var(--bronze); transform-origin: 50% 100%; }
.pg-ruler__mark::before { content: ""; position: absolute; left: -9px; right: -9px; top: -22px; bottom: 0; }
.pg-ruler__mark::after { content: ""; position: absolute; left: -3.5px; bottom: -4px; width: 8px; height: 8px; border-radius: 50%; background: var(--bronze); box-shadow: 0 0 0 3px var(--paper-1); transition: background-color var(--dur), transform var(--dur); }
.pg-ruler__mark b { position: absolute; left: 0; bottom: 100%; padding-bottom: 3px; transform: translateX(-50%); font-family: var(--font-serif); font-weight: 500; font-size: 1rem; line-height: 1.2; white-space: nowrap; color: var(--ink-0); font-feature-settings: "lnum"; transition: color var(--dur); }
.pg-ruler__scale.is-start, .pg-ruler__mark.is-start b { transform: none; }
.pg-ruler__scale.is-end, .pg-ruler__mark.is-end b { transform: translateX(-100%); }
.pg-ruler__mark.is-on { background: var(--ink-0); box-shadow: 1px 0 0 var(--ink-0); }
.pg-ruler__mark.is-on b { color: var(--bronze-ink); }
.pg-ruler__mark.is-on::after { background: var(--ink-0); transform: scale(1.35); }

/* Реестр сроков */
.pg-dl { width: 100%; border-collapse: collapse; }
.pg-dl thead th { padding: 0 var(--s-4) var(--s-3) 0; border-bottom: 1px solid var(--line-ink); text-align: left; font-family: var(--font-mono); font-size: var(--t-mono); font-weight: 400; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-2); }
.pg-dl td { padding: var(--s-3) var(--s-4) var(--s-3) 0; border-bottom: 1px solid var(--line); vertical-align: baseline; transition: background-color .3s var(--ease); }
.pg-dl td:last-child { padding-right: 0; }
.pg-dl__when { width: 26%; font-family: var(--font-serif); font-size: 1.1875rem; line-height: 1.3; color: var(--ink-0); font-feature-settings: "lnum"; }
.pg-dl__what { font-size: 1.0625rem; line-height: 1.45; color: var(--ink-1); }
.pg-dl__norm { display: block; margin-top: 2px; font-family: var(--font-mono); font-size: 11.5px; line-height: 1.5; letter-spacing: .04em; color: var(--ink-2); }
.pg-dl__sit { width: 24%; }
.v2 main .pg-dl__sit a { display: block; font-family: var(--font-ui); font-size: var(--t-small); line-height: 1.4; color: var(--ink-1); }
.pg-dl__sit a + a { margin-top: 6px; }
.pg-dl tr.is-on td { background: var(--paper-0); }
.pg-dl__grp th { padding: var(--s-10) 0 var(--s-3); border-bottom: 1px solid var(--line-ink); text-align: left; font-weight: 400; }
@media (min-width: 900px) { .pg-dl tr.is-on td:first-child { box-shadow: inset 2px 0 0 var(--bronze); } .pg-dl tr.is-on .pg-dl__when { padding-left: var(--s-3); } }
@media (max-width: 699px) {
  .pg-dl thead { display: none; }
  .pg-dl, .pg-dl tbody, .pg-dl tr, .pg-dl td, .pg-dl th { display: block; width: auto; }
  .pg-dl tbody tr { padding: var(--s-4) 0; border-bottom: 1px solid var(--line); }
  .pg-dl td { padding: 0; border: 0; }
  .pg-dl td + td { margin-top: var(--s-2); }
  .pg-dl__grp tr:first-child { padding: 0; }
  .pg-dl__grp th { padding-top: var(--s-8); }
}

/* Таблица «ситуация — экспертиза»: названия направлений стоят
   вертикально, как графы конторской книги */
.pg-mx { width: 100%; border-collapse: collapse; }
.pg-mx__corner, .pg-mx__vh { vertical-align: bottom; padding: 0 0 var(--s-3); border-bottom: 1px solid var(--line-ink); text-align: left; }
.pg-mx td.pg-mx__corner { border-left: 0; border-bottom-color: var(--line-ink); text-align: left; vertical-align: bottom; }
.pg-mx__vh { width: 9%; text-align: center; transition: background-color .25s var(--ease); }
.v2 main .pg-mx__vh a { display: inline-block; writing-mode: vertical-rl; transform: rotate(180deg); padding: var(--s-2) 0; font-family: var(--font-serif); font-weight: 400; font-size: 1.0625rem; line-height: 1.1; white-space: nowrap; color: var(--ink-0); text-decoration: none; }
.v2 main .pg-mx__vh a:hover { color: var(--bronze-ink); }
.pg-mx tbody th { padding: var(--s-3) var(--s-4) var(--s-3) 0; border-bottom: 1px solid var(--line); text-align: left; font-weight: 400; transition: background-color .25s var(--ease); }
.v2 main .pg-mx tbody th a { font-family: var(--font-serif); font-size: 1.1875rem; line-height: 1.25; color: var(--ink-0); text-decoration: none; }
.v2 main .pg-mx tbody th a:hover { color: var(--bronze-ink); }
.pg-mx td { text-align: center; vertical-align: middle; border-bottom: 1px solid var(--line); border-left: 1px solid var(--line); transition: background-color .25s var(--ease); }
.pg-mx__cell { display: grid; place-items: center; min-height: 48px; }
.pg-mx__dot { width: 12px; height: 12px; border-radius: 50%; background: var(--bronze); transition: background-color var(--dur), box-shadow var(--dur); }
.pg-mx__cell:hover .pg-mx__dot, .pg-mx__cell:focus-visible .pg-mx__dot { background: var(--ink-0); box-shadow: 0 0 0 5px var(--bronze-tint); }
.pg-mx tfoot th, .pg-mx tfoot td { padding-top: var(--s-3); border: 0; font-family: var(--font-mono); font-size: var(--t-mono); font-weight: 400; letter-spacing: .1em; color: var(--ink-2); }
.pg-mx tfoot th { text-align: left; }
.pg-mx tbody tr:hover > *, .pg-mx .is-col { background: var(--paper-1); }
@media (min-width: 700px) { .pg-mx__lbl { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } }
@media (max-width: 699px) {
  .pg-mx thead, .pg-mx tfoot { display: none; }
  .pg-mx, .pg-mx tbody, .pg-mx tr { display: block; }
  .pg-mx tbody tr { padding: var(--s-4) 0; border-bottom: 1px solid var(--line); }
  .pg-mx tbody tr:hover > * { background: none; }
  .pg-mx tbody th { display: block; padding: 0; border: 0; }
  .pg-mx td { display: none; border: 0; }
  .pg-mx td.is-yes { display: inline-block; margin: var(--s-2) var(--s-2) 0 0; }
  .v2 main .pg-mx__cell { display: inline-flex; align-items: center; min-height: 34px; padding: 0 var(--s-3); border: 1px solid var(--line-strong); border-radius: 999px; font-family: var(--font-ui); font-size: var(--t-small); color: var(--ink-1); text-decoration: none; }
  .pg-mx__dot { display: none; }
}

/* ─── Экспертиза в суде (/ekspertiza-v-sude) ─── */
/* Маршрут дела под первым экраном: четыре станции на одной линии */
.pg-route { padding: var(--s-6) 0 var(--s-8); border-top: 1px solid var(--line-ink); }
.pg-route ol { list-style: none; position: relative; display: grid; gap: var(--s-2); }
@media (min-width: 900px) {
  .pg-route ol { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--s-6); }
  .pg-route ol::before { content: ""; position: absolute; left: 22px; right: calc((100% - 3 * var(--s-6)) / 4 - 22px); top: 22px; height: 1px; background: var(--bronze); transform-origin: left; }
}
.v2 main .pg-route a { position: relative; display: grid; grid-template-columns: 44px minmax(0, 1fr); column-gap: var(--s-4); row-gap: 4px; padding: var(--s-2) 0; color: var(--ink-0); text-decoration: none; }
@media (min-width: 900px) { .v2 main .pg-route a { grid-template-columns: minmax(0, 1fr); row-gap: var(--s-2); padding: 0; } }
.pg-route__n {
  grid-row: span 3; position: relative; z-index: 1; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%;
  border: 1px solid var(--bronze); background: var(--paper-0); font-family: var(--font-serif); font-size: 1.125rem; color: var(--bronze-ink); font-feature-settings: "lnum";
  transition: background-color var(--dur), color var(--dur), border-color var(--dur);
}
@media (min-width: 900px) { .pg-route__n { grid-row: auto; margin-bottom: var(--s-2); } }
.pg-route__cap { color: var(--ink-2); }
.pg-route__t { font-family: var(--font-serif); font-size: 1.25rem; line-height: 1.22; transition: color var(--dur); }
.pg-route__m { font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .08em; color: var(--ink-2); }
.pg-route a:hover .pg-route__n, .pg-route a:focus-visible .pg-route__n { background: var(--ink-0); border-color: var(--ink-0); color: var(--bronze-light); }
.pg-route a:hover .pg-route__t { color: var(--bronze-ink); }
@media (max-width: 899px) { .pg-route ol::before { content: ""; position: absolute; left: 22px; top: 30px; bottom: 30px; width: 1px; background: var(--bronze); } }

/* Документы этапа: образцы из каталога и инструменты */
.pg-forms > .cap { display: block; margin-bottom: var(--s-3); }
.pg-forms ul { list-style: none; display: grid; column-gap: var(--s-10); border-top: 1px solid var(--line-ink); }
@media (min-width: 800px) { .pg-forms ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.v2 main .pg-forms a { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; gap: var(--s-4); align-items: center; height: 100%; padding: var(--s-4) 0; border-bottom: 1px solid var(--line); color: var(--ink-0); text-decoration: none; }
.pg-forms__ico svg { display: block; width: 24px; height: 30px; }
.pg-forms__ico path { fill: var(--paper-0); stroke: var(--bronze-ink); stroke-width: 1.1; transition: fill var(--dur); }
.pg-forms__ico path + path { fill: none; stroke: var(--bronze); }
.pg-forms__t { font-family: var(--font-serif); font-size: 1.1875rem; line-height: 1.25; transition: color var(--dur); }
.pg-forms__k { font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--ink-2); }
.pg-forms a:hover .pg-forms__t { color: var(--bronze-ink); }
.pg-forms a:hover .pg-forms__ico path:first-child { fill: var(--bronze-tint); }
.gl-ch--tint .pg-forms__ico path:first-child { fill: var(--paper-1); }

/* ─── Статьи (/znaniya/stati) ─── */
/* Рубрики — ссылки: фильтр работает и без скрипта, поэтому видны всегда */
html:not(.js) .pg-cat--links .pg-cat__side { display: block; }
.v2 main a.pg-drawer { text-decoration: none; color: var(--ink-1); }
.v2 main a.pg-drawer:hover { color: var(--ink-0); }
.v2 main a.pg-drawer.is-on { color: var(--on-dark); }

/* Газетная полоса: главная статья с буквицей, рядом три следующие */
.pg-front { display: grid; gap: var(--s-8); padding-top: var(--s-6); border-top: 3px double var(--ink-0); }
@media (min-width: 1000px) {
  .pg-front { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 0; }
  .pg-front__main { padding-right: clamp(32px, 4vw, 64px); border-right: 1px solid var(--line); }
  .pg-front__side { padding-left: clamp(32px, 4vw, 64px); }
}
.pg-front__meta { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: var(--s-1) var(--s-4); font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .08em; color: var(--ink-2); }
.v2 .pg-front__h { margin-top: var(--s-5); font-size: clamp(2rem, 1.35rem + 2.1vw, 3.25rem); line-height: 1.06; letter-spacing: -.015em; }
.v2 .pg-front__h2 { margin-top: var(--s-2); font-size: clamp(1.3125rem, 1.2rem + .4vw, 1.5rem); line-height: 1.2; }
.v2 main .pg-front__h a, .v2 main .pg-front__h2 a {
  color: var(--ink-0); text-decoration: none;
  background: linear-gradient(var(--bronze), var(--bronze)) 0 96% / 0 1px no-repeat; transition: background-size .5s var(--ease), color var(--dur);
}
.v2 main .pg-front__h a:hover, .v2 main .pg-front__h2 a:hover { background-size: 100% 1px; }
.v2 .pg-front__p { margin-top: var(--s-6); max-width: 34em; font-size: 1.1875rem; line-height: 1.6; color: var(--ink-1); }
.pg-front__p::first-letter { float: left; margin: .08em .1em 0 -.02em; font-family: var(--font-serif); font-size: 3.55em; line-height: .8; color: var(--bronze-ink); }
.pg-front__main .more { margin-top: var(--s-6); }
.pg-front__side { list-style: none; }
.pg-front__side li + li { margin-top: var(--s-6); padding-top: var(--s-6); border-top: 1px solid var(--line); }
.v2 .pg-front__p2 { margin-top: var(--s-2); font-size: 1rem; line-height: 1.5; color: var(--ink-2); }
@media (max-width: 999px) { .pg-front__side { padding-top: var(--s-6); border-top: 1px solid var(--line-ink); } }

/* Подшивка по месяцам */
.pg-mon + .pg-mon { margin-top: clamp(40px, 5vw, 64px); }
.pg-mon[hidden] { display: none; }
.v2 .pg-mon__h { display: flex; justify-content: space-between; align-items: baseline; gap: var(--s-4); padding-bottom: var(--s-3); border-bottom: 1px solid var(--line-ink); font-size: clamp(1.5rem, 1.25rem + .9vw, 2.125rem); line-height: 1.1; }
.pg-mon__m i { font-style: normal; color: var(--bronze-ink); font-feature-settings: "lnum"; }
.pg-mon__n { font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--ink-2); white-space: nowrap; }
.pg-arts { list-style: none; }
.pg-art[hidden] { display: none; }
.v2 main .pg-art a {
  position: relative; display: grid; grid-template-columns: 44px minmax(0, 1fr); column-gap: var(--s-4); row-gap: var(--s-2);
  padding: var(--s-5) 0; border-bottom: 1px solid var(--line); color: var(--ink-0); text-decoration: none;
  transition: background-color .3s var(--ease), padding .3s var(--ease);
}
@media (min-width: 900px) { .v2 main .pg-art a { grid-template-columns: 56px minmax(0, 1fr) 12em; column-gap: var(--s-6); align-items: baseline; } }
.v2 main .pg-art a:hover { background: var(--paper-1); padding-left: var(--s-3); padding-right: var(--s-3); }
.v2 main .gl-ch--tint .pg-art a:hover { background: var(--paper-0); }
.pg-art a::before { content: ""; position: absolute; left: 0; top: 0; bottom: -1px; width: 2px; background: var(--bronze); transform: scaleY(0); transform-origin: top; transition: transform .4s var(--ease); }
.pg-art a:hover::before { transform: scaleY(1); }
.pg-art__d { display: grid; justify-items: start; align-self: start; }
.pg-art__d b { font-family: var(--font-serif); font-weight: 400; font-size: 1.75rem; line-height: 1; color: var(--ink-0); font-feature-settings: "lnum"; }
.pg-art__d i { margin-top: 5px; font-style: normal; font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--ink-2); }
.pg-art__b { display: grid; gap: var(--s-1); min-width: 0; }
.pg-art__t { font-family: var(--font-serif); font-size: 1.3125rem; line-height: 1.25; transition: color var(--dur); }
.pg-art a:hover .pg-art__t { color: var(--bronze-ink); }
.pg-art__l { font-size: 1rem; line-height: 1.45; color: var(--ink-2); }
.pg-art__m { grid-column: 2; display: flex; flex-wrap: wrap; gap: var(--s-1) var(--s-4); font-family: var(--font-ui); font-size: var(--t-caption); line-height: 1.4; color: var(--ink-2); }
@media (min-width: 900px) { .pg-art__m { grid-column: auto; flex-direction: column; align-items: flex-end; text-align: right; } }
.pg-art__m span + span { font-family: var(--font-mono); font-size: 11px; letter-spacing: .06em; color: var(--bronze-ink); }
.pg-cat.is-search .pg-art.is-hit .pg-art__t { background: linear-gradient(transparent 62%, var(--bronze-tint) 62%); }

/* ───────────── 6. Анатомия документа ───────────── */

.pg-anat { display: grid; gap: var(--s-10); align-items: start; }
@media (min-width: 1000px) {
  .pg-anat { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(32px, 4vw, 64px); }
  .pg-anat__doc { position: sticky; top: 104px; order: 2; }
}
.pg-anat__list { list-style: none; border-top: 1px solid var(--line-ink); counter-reset: pg-anat; }
.pg-anat__item { position: relative; border-bottom: 1px solid var(--line); }
.pg-anat__item::before { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: var(--bronze); transform: scaleX(0); transform-origin: left; transition: transform .5s var(--ease); }
.pg-anat__item.is-on::before { transform: scaleX(1); }
.pg-anat__btn {
  display: grid; grid-template-columns: 40px minmax(0, 1fr) 20px; gap: var(--s-3); align-items: baseline; width: 100%;
  padding: var(--s-5) 0 var(--s-2); background: none; border: 0; text-align: left; cursor: pointer; color: var(--ink-1);
  font-family: var(--font-serif); font-size: clamp(1.25rem, 1.1rem + .45vw, 1.5rem); line-height: 1.22; transition: color var(--dur);
}
html:not(.js) .pg-anat__btn { cursor: default; }
.pg-anat__btn:hover, .pg-anat__item.is-on .pg-anat__btn { color: var(--ink-0); }
.pg-anat__n { font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .1em; color: var(--ink-2); transition: color var(--dur); }
.pg-anat__item.is-on .pg-anat__n { color: var(--bronze-ink); }
.pg-anat__mark { justify-self: end; width: 9px; height: 9px; transform: rotate(45deg); border: 1px solid var(--line-strong); transition: background-color var(--dur), border-color var(--dur); }
.pg-anat__item.is-on .pg-anat__mark { background: var(--bronze); border-color: var(--bronze); }
.v2 .pg-anat__d { padding: 0 0 var(--s-5) 52px; font-size: 1.0625rem; line-height: 1.5; color: var(--ink-2); max-width: 34em; }

.pg-anat__doc { margin: 0; justify-self: center; width: 100%; max-width: 520px; }
.pg-anat__sheet { position: relative; background: var(--paper-0); box-shadow: var(--shadow-sheet); padding: clamp(22px, 3vw, 36px) clamp(20px, 3vw, 40px) clamp(18px, 2.6vw, 30px); }
.pg-anat__sheet::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--bronze); }
.pg-anat__head { text-align: center; padding-bottom: var(--s-3); margin-bottom: var(--s-3); border-bottom: 1px solid var(--line-ink); }
.pg-anat__head .cap { display: block; color: var(--ink-2); }
.pg-anat__head b { display: block; margin-top: var(--s-1); font-family: var(--font-serif); font-weight: 500; font-size: 1.0625rem; letter-spacing: .22em; text-transform: uppercase; color: var(--ink-0); }
.pg-anat__part { position: relative; padding: 7px 10px 8px; margin: 0 -10px; border-left: 2px solid transparent; transition: background-color .4s var(--ease), border-color .4s var(--ease); }
.pg-anat__lbl { display: block; font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--ink-2); transition: color .4s var(--ease); }
.pg-anat__part i { display: block; height: 5px; margin-top: 6px; border-radius: 3px; background: var(--paper-2); transition: background-color .4s var(--ease); }
.pg-anat__part i:nth-of-type(3n) { width: 82%; }
.pg-anat__part i:nth-of-type(4n) { width: 64%; }
.pg-anat__note {
  position: absolute; right: -12px; top: 50%; transform: translate(0, -50%) rotate(-2deg);
  padding: 5px 9px 4px; background: var(--ink-0); color: var(--bronze-light);
  font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap;
  box-shadow: 0 8px 18px -8px var(--k-151515-a035); opacity: 0; pointer-events: none; transition: opacity .35s var(--ease), transform .35s var(--ease);
}
.pg-anat__part.is-hit { background: var(--bronze-tint); border-left-color: var(--bronze); }
.pg-anat__part.is-hit .pg-anat__lbl { color: var(--bronze-ink); }
.pg-anat__part.is-hit i { background: var(--k-9c7a3c-a035); }
.pg-anat__part.is-note .pg-anat__note { opacity: 1; transform: translate(0, -50%) rotate(-2deg); }
.pg-anat__foot { margin-top: var(--s-3); padding-top: var(--s-3); border-top: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-2); }
.pg-anat__foot svg { width: 64px; height: 26px; }
.pg-anat__sign { fill: none; stroke: var(--ink-1); stroke-width: 1.2; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width: 999px) { .pg-anat__doc { max-width: 440px; } .pg-anat__note { right: -6px; } }
@media (max-width: 420px) { .pg-anat__note { font-size: 9.5px; padding: 4px 7px 3px; } }

/* ───────────── 7. Самопроверка ───────────── */

.pg-check { position: relative; max-width: 56em; background: var(--paper-0); box-shadow: var(--shadow-sheet); }
.pg-check::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--bronze); }
.pg-check__list { list-style: none; padding: clamp(14px, 2vw, 24px) clamp(18px, 3vw, 40px) 0; counter-reset: pg-check; }
.pg-check__list li { border-bottom: 1px solid var(--line); }
.pg-check__i { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: var(--s-4); align-items: start; padding: var(--s-4) 0; cursor: pointer; }
.pg-check__i input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pg-check__box { position: relative; width: 24px; height: 24px; margin-top: 3px; border: 1px solid var(--line-strong); background: var(--paper-0); transition: border-color var(--dur), background-color var(--dur); }
.pg-check__box::after { content: ""; position: absolute; left: 7px; top: 2px; width: 7px; height: 13px; border: solid var(--bronze-light); border-width: 0 2px 2px 0; transform: rotate(45deg) scale(0); transition: transform .25s var(--ease); }
.pg-check__i:hover .pg-check__box { border-color: var(--ink-0); }
.pg-check__i input:checked + .pg-check__box { background: var(--ink-0); border-color: var(--ink-0); }
.pg-check__i input:checked + .pg-check__box::after { transform: rotate(45deg) scale(1); }
.pg-check__i input:focus-visible + .pg-check__box { outline: 2px solid var(--focus); outline-offset: 3px; }
.pg-check__t b { display: block; font-family: var(--font-serif); font-weight: 400; font-size: 1.25rem; line-height: 1.25; color: var(--ink-0); }
.pg-check__t span { display: block; margin-top: var(--s-1); font-size: 1rem; line-height: 1.45; color: var(--ink-2); }
.pg-check__i input:checked ~ .pg-check__t b { color: var(--bronze-ink); }
.pg-check__bar { display: grid; gap: var(--s-4); align-items: center; padding: var(--s-6) clamp(18px, 3vw, 40px); background: var(--paper-1); border-top: 1px solid var(--line-ink); }
@media (min-width: 760px) { .pg-check__bar { grid-template-columns: minmax(0, 1fr) auto; gap: var(--s-8); } }
.v2 .pg-check__res { font-size: 1.0625rem; line-height: 1.45; color: var(--ink-1); }
.pg-check__count { display: inline-block; min-width: 4.2em; margin-right: var(--s-2); font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--bronze-ink); }
.gl-ch--tint .pg-check__bar { background: var(--bronze-tint); }

/* ───────────── 8. Указатель «читать дальше» ───────────── */

.pg-next { list-style: none; display: grid; gap: 1px; background: var(--line); border: 1px solid var(--line); }
@media (min-width: 700px) { .pg-next { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pg-next > .is-wide { grid-column: 1 / -1; } }
@media (min-width: 1000px) { .pg-next { grid-template-columns: repeat(6, minmax(0, 1fr)); } .pg-next > li, .pg-next > .is-wide { grid-column: span var(--sp, 2); } }
.v2 main a.pg-next__a {
  position: relative; display: grid; grid-template-rows: auto auto 1fr auto; gap: var(--s-3); height: 100%; min-height: 168px;
  padding: clamp(20px, 2.4vw, 30px); background: var(--paper-0); color: var(--ink-0); text-decoration: none;
}
.pg-next__a::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 2px; background: var(--bronze); transform: scaleX(0); transform-origin: left; transition: transform .5s var(--ease); }
.pg-next__a:hover::before { transform: scaleX(1); }
.pg-next__n { font-family: var(--font-mono); font-size: var(--t-mono); letter-spacing: .1em; color: var(--bronze-ink); }
.pg-next__t { font-family: var(--font-serif); font-size: 1.375rem; line-height: 1.2; transition: color var(--dur); }
.pg-next__d { font-family: var(--font-ui); font-size: var(--t-caption); line-height: 1.5; color: var(--ink-2); }
.pg-next__arr { justify-self: end; color: var(--bronze); transition: transform .3s var(--ease); }
.pg-next__a:hover .pg-next__t { color: var(--bronze-ink); }
.pg-next__a:hover .pg-next__arr { transform: translateX(6px); }
/* Главная плитка набора — тёмная, как выделенный пункт стека */
.v2 main .pg-next > .is-mark a.pg-next__a { background: var(--ink-panel); color: var(--on-dark); }
.pg-next > .is-mark .pg-next__n { color: var(--bronze-light); }
.pg-next > .is-mark .pg-next__d { color: var(--on-dark-2); }
.pg-next > .is-mark .pg-next__arr { color: var(--bronze-light); }
.pg-next > .is-mark .pg-next__a:hover .pg-next__t { color: var(--bronze-light); }

/* ───────────── 9. Движение ───────────── */

@media (prefers-reduced-motion: no-preference) {
  /* Карточки и плитки — по очереди */
  .js .pg-cards[data-rv] > li, .js .pg-next[data-rv] > li { opacity: 0; transform: translateY(18px); transition: opacity .7s var(--ease), transform .8s var(--ease); transition-delay: calc(var(--i, 0) * 70ms); }
  .js .pg-cards[data-rv].is-in > li, .js .pg-next[data-rv].is-in > li { opacity: 1; transform: none; }
  /* Перечёркивание прочерчивается, когда строка на экране */
  .js .pg-crossed__p s { background-size: 0 2px; transition: background-size 1s cubic-bezier(.6,0,.3,1) .35s; }
  .js .pg-crossed li.is-in .pg-crossed__p s { background-size: 100% 2px; }
  /* Флажки контрольного листа отмечаются по очереди */
  .js .pg-sheet--checks .doc ul li::after { transform: rotate(45deg) scale(0); transition: transform .35s cubic-bezier(.3,1.6,.5,1); transition-delay: calc(.5s + var(--i, 0) * 150ms); }
  .js .pg-sheet--checks.is-in .doc ul li::after { transform: rotate(45deg) scale(1); }
  /* Органы встают под Высшей коллегией по очереди */
  .js .pg-org .pg-org__body { opacity: 0; transform: translateY(18px); transition: opacity .7s var(--ease), transform .8s var(--ease), border-color .35s var(--ease), box-shadow .35s var(--ease); transition-delay: calc(.3s + var(--i) * 110ms), calc(.3s + var(--i) * 110ms), 0s, 0s; }
  .js .pg-org.is-in .pg-org__body { opacity: 1; transform: none; }
  .js .pg-org .pg-org__lines { opacity: 0; transition: opacity .8s var(--ease) .15s; }
  .js .pg-org.is-in .pg-org__lines { opacity: 1; }
  /* Штамп состояния документа ставится */
  .js .pg-docs .pg-doc__st { opacity: 0; transform: rotate(-4deg) scale(1.6); transition: opacity .4s var(--ease), transform .5s cubic-bezier(.3,1.4,.5,1); transition-delay: calc(.4s + var(--i, 0) * 120ms); }
  .js .pg-docs.is-in .pg-doc__st { opacity: .85; transform: rotate(-4deg); }
  /* Отметки шкалы сроков вырастают из оси, подписи проявляются следом */
  .js .pg-ruler[data-rv] .pg-ruler__mark { transform: scaleY(0); transition: transform .7s var(--ease); transition-delay: calc(.2s + var(--i, 0) * 70ms); }
  .js .pg-ruler[data-rv].is-in .pg-ruler__mark { transform: none; }
  .js .pg-ruler[data-rv] .pg-ruler__mark b { opacity: 0; transition: opacity .5s var(--ease), color var(--dur); transition-delay: calc(.55s + var(--i, 0) * 70ms), 0s; }
  .js .pg-ruler[data-rv].is-in .pg-ruler__mark b { opacity: 1; }
  /* Ошибки перечёркиваются, когда плитка на экране */
  .js .pg-mist .pg-mist__t s { background-size: 0 1.5px; transition: background-size 1s cubic-bezier(.6,0,.3,1); transition-delay: calc(.3s + var(--i, 0) * 60ms); }
  .js .pg-mist li.is-in .pg-mist__t s { background-size: 100% 1.5px; }
  /* Точки таблицы ставятся строка за строкой */
  .js .pg-mx[data-rv] .pg-mx__dot { transform: scale(0); transition: transform .4s cubic-bezier(.3,1.6,.5,1), background-color var(--dur), box-shadow var(--dur); transition-delay: calc(.25s + var(--i, 0) * 80ms), 0s, 0s; }
  .js .pg-mx[data-rv].is-in .pg-mx__dot { transform: none; }
  /* Маршрут дела: линия прочерчивается, станции встают по очереди */
  .js .pg-route[data-rv] ol::before { transform: scaleX(0); transition: transform 1.2s var(--ease) .2s; }
  .js .pg-route[data-rv].is-in ol::before { transform: none; }
  .js .pg-route[data-rv] li { opacity: 0; transform: translateY(12px); transition: opacity .6s var(--ease), transform .7s var(--ease); transition-delay: calc(.25s + var(--i, 0) * 120ms); }
  .js .pg-route[data-rv].is-in li { opacity: 1; transform: none; }
  /* Лист анатомии ложится на стол */
  .js .pg-anat__sheet { transform: translateY(26px) rotate(-1.2deg); opacity: 0; transition: transform 1.2s var(--ease), opacity .9s var(--ease); }
  .js .pg-anat.is-in .pg-anat__sheet { transform: rotate(-.6deg); opacity: 1; }
}
