/* Скрижаль · юридические страницы (оферта, политика). Та же сетка и типографика, что на главной:
   Geist 15 — текст, Times — заголовки; разделы — номер, заголовок слева, текст в 5 колонок. */
:root { --rule: #e4e4e4; --green: #25ac46; --soft: cubic-bezier(0.22, 1, 0.36, 1); }
html { scroll-behavior: smooth; }
body { background: #fff; }

/* «метка» — как на главной: точка + отступ */
.ln { position: relative; display: inline-block; padding-left: 0; text-decoration: none !important; cursor: pointer; transition: padding-left 0.9s var(--soft); }
.ln::before {
  content: ""; position: absolute; left: 0; top: 0.6em; width: 0.34em; height: 0.34em; margin-top: -0.17em;
  border-radius: 50%; background: currentColor; opacity: 0; transform: scale(0.2);
  transition: opacity 0.7s var(--soft), transform 0.9s var(--soft);
}
.ln:hover, .ln:focus-visible { padding-left: 0.85em; }
.ln:hover::before, .ln:focus-visible::before { opacity: 1; transform: none; }
/* ссылки внутри текста — с зелёной линией */
.ln.u { display: inline; text-decoration: underline 1.5px var(--green) !important; text-underline-offset: 0.22em; }
.ln.u:hover { padding-left: 0; }
.ln.u::before { display: none; }

.doc-top { position: sticky; top: 0; z-index: 5; background: #fff; padding-top: var(--m); padding-bottom: 12px; align-items: start; }
.doc-logo { grid-column: 1; width: 18px; }

.doc-hero { margin-top: clamp(96px, 18vh, 200px); margin-bottom: clamp(72px, 12vh, 140px); row-gap: 14px; }
.doc-hero h1 { font-size: clamp(40px, 5.6vw, 84px); line-height: 0.98; letter-spacing: -0.02em; }

.doc-sec { padding-top: 14px; padding-bottom: clamp(56px, 9vh, 96px); border-top: 1px solid var(--ink); margin: 0 var(--m); padding-left: 0; padding-right: 0; align-items: start; }
.doc-sec .n { grid-column: 1; }
.doc-h { grid-column: 2 / span 3; font-size: 28px; line-height: 1.05; letter-spacing: -0.01em; }
.doc-body { grid-column: 5 / span 5; }
.doc-body p { line-height: 1.32; }
.doc-body p + p, .doc-body .tbl + p, .doc-body p + .tbl { margin-top: 12px; }
.doc-body p:has(> .cl) { position: relative; padding-left: 2.8em; }
.doc-body .cl { position: absolute; left: 0; font-variant-numeric: tabular-nums; }
.doc-body .li { padding-left: 1.1em; position: relative; margin-top: 6px !important; }
.doc-body .li::before { content: ""; position: absolute; left: 0.1em; top: 0.58em; width: 0.3em; height: 0.3em; border-radius: 50%; background: currentColor; }

/* таблица «подпись — значение»: строки на тонких линейках, как вопросы на главной */
.tbl { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); column-gap: var(--m); border-bottom: 1px solid var(--rule); }
.tbl dt, .tbl dd { padding: 9px 0 10px; border-top: 1px solid var(--rule); line-height: 1.32; }
.tbl dt { color: var(--muted); }

.doc-foot { padding-top: 14px; padding-bottom: var(--m); border-top: 1px solid var(--ink); margin: 6vh var(--m) 0; padding-left: 0; padding-right: 0; }

@media (max-width: 760px) {
  .doc-top { grid-template-columns: 1fr auto; column-gap: 12px; }
  .doc-top > p:first-of-type, .doc-top > p:nth-of-type(3) { display: none; }
  .doc-top > * { grid-column: auto !important; }
  .doc-hero { margin-top: 12vh; margin-bottom: 9vh; }
  .doc-hero > * { grid-column: 1 / -1 !important; }
  .doc-sec { grid-template-columns: 1.4em 1fr; column-gap: 10px; row-gap: 18px; padding-bottom: 7vh; }
  .doc-h { grid-column: 2; font-size: 24px; }
  .doc-body { grid-column: 1 / -1; }
  .tbl { grid-template-columns: 1fr; }
  .tbl dt { padding-bottom: 0; }
  .tbl dd { border-top: 0; padding-top: 2px; }
  .doc-foot { grid-template-columns: 1fr; row-gap: 4px; }
  .doc-foot > * { grid-column: 1 !important; text-align: left; }
}
