/* ══════════════════════════════════════════════════════════════
   Страницы правовых документов
   ══════════════════════════════════════════════════════════════ */

.doc-page{ background:var(--paper) }

/* ── Шапка ─────────────────────────────────────────────────── */
.doc-header{
  position:sticky; top:0; z-index:50;
  background:rgba(251,248,243,.92);
  -webkit-backdrop-filter:saturate(180%) blur(14px); backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--line);
}
.doc-header__inner{ display:flex; align-items:center; justify-content:space-between; gap:20px; height:68px }
.doc-back{
  font-size:.9rem; font-weight:500; color:var(--muted); white-space:nowrap;
  padding:9px 15px; border-radius:9px; border:1px solid var(--line);
  transition:color .2s var(--ease), border-color .2s var(--ease), background .2s var(--ease);
}
.doc-back:hover{ color:var(--ink); border-color:rgba(15,27,45,.28); background:rgba(15,27,45,.04) }

/* ── Тело документа ────────────────────────────────────────── */
.doc{ max-width:820px; padding-block:clamp(36px,5vw,64px) clamp(56px,7vw,96px) }
.doc-title{
  font-family:var(--font-display); font-size:clamp(1.8rem,4vw,2.7rem);
  line-height:1.14; letter-spacing:-.015em; text-wrap:balance; margin:0;
}
.doc-sub{ margin-top:14px; font-size:1.06rem; color:var(--muted); max-width:52ch }
.doc-meta{
  margin-top:18px; padding-top:16px; border-top:1px solid var(--line);
  font-size:.87rem; color:var(--muted);
}

/* Врезка-предупреждение в начале оферты */
.doc-callout{
  margin-top:30px; padding:22px 26px; border-radius:12px;
  background:rgba(200,151,63,.1); border:1px solid rgba(156,107,20,.26);
  border-left:3px solid var(--gold);
}
.doc-callout p{ font-size:.96rem; color:var(--text) }
.doc-callout p+p{ margin-top:10px }
.doc-callout p:first-child{ font-weight:600 }

/* Содержание */
.doc-toc{
  margin-top:30px; padding:24px 28px; border-radius:12px;
  background:var(--white); border:1px solid var(--line); box-shadow:var(--shadow-sm);
}
.doc-toc>b{
  display:block; font-size:.74rem; font-weight:600; letter-spacing:.15em;
  text-transform:uppercase; color:var(--gold-deep); margin-bottom:16px;
}
.doc-toc ol{ counter-reset:toc; display:grid; gap:9px }
.doc-toc li{ counter-increment:toc; position:relative; padding-left:30px; font-size:.94rem }
.doc-toc li::before{
  content:counter(toc); position:absolute; left:0; top:.05em;
  font-family:var(--font-display); font-size:.82rem; color:var(--gold-deep); font-weight:600;
}
.doc-toc a{ color:var(--muted); transition:color .2s var(--ease) }
.doc-toc a:hover{ color:var(--ink); text-decoration:underline; text-underline-offset:3px }

/* Текст */
.doc-body{ margin-top:clamp(34px,4vw,52px) }
.doc-body p{ font-size:1rem; line-height:1.72; color:var(--text); margin-bottom:14px }
.doc-body h2{
  font-size:clamp(1.2rem,2vw,1.5rem); margin-top:clamp(38px,4.5vw,58px); margin-bottom:18px;
  padding-top:22px; border-top:1px solid var(--line); scroll-margin-top:88px;
}
.doc-body h3{
  font-size:1.06rem; margin-top:30px; margin-bottom:12px; color:var(--ink);
}
.doc-body a{ color:var(--gold-deep); text-decoration:underline; text-underline-offset:2px; overflow-wrap:anywhere }
.doc-body a:hover{ color:var(--ink) }
.doc-rule{ border:0; border-top:1px solid var(--line); margin:26px 0 }

/* Таблицы */
.doc-tablewrap{ overflow-x:auto; margin:22px 0 26px; border:1px solid var(--line); border-radius:12px; background:var(--white) }
.doc-table{ width:100%; border-collapse:collapse; font-size:.9rem; min-width:560px }
.doc-table th,.doc-table td{ padding:13px 16px; text-align:left; vertical-align:top; border-bottom:1px solid var(--line) }
.doc-table th{ font-weight:600; background:var(--paper-2); color:var(--ink); font-size:.82rem; letter-spacing:.02em }
.doc-table tr:last-child td{ border-bottom:0 }
.doc-table td{ color:var(--muted); line-height:1.55 }
.doc-table th p,.doc-table td p{ margin:0 }
.doc-table th p+p,.doc-table td p+p{ margin-top:7px }

/* Скачать оригинал */
.doc-download{
  margin-top:clamp(40px,5vw,60px); padding-top:26px; border-top:1px solid var(--line);
  font-size:.92rem;
}
.doc-download a{
  display:inline-flex; align-items:center; gap:9px; color:var(--gold-deep); font-weight:500;
  text-decoration:underline; text-underline-offset:3px;
}
.doc-download a::before{
  content:''; width:17px; height:17px; flex:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M10 3v10m0 0l-4-4m4 4l4-4M4 16h12' stroke='%239C6B14' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
.doc-download a:hover{ color:var(--ink) }

/* ── Подвал ────────────────────────────────────────────────── */
.doc-footer{
  background:var(--ink-2); color:var(--muted-light);
  padding-block:34px; font-size:.85rem; line-height:1.8;
}
.doc-footer a{ color:var(--muted-light); transition:color .2s var(--ease) }
.doc-footer a:hover{ color:var(--gold) }
.doc-footer__back{ margin-top:12px }
.doc-footer__back a{ color:var(--gold) }

@media (max-width:620px){
  .doc-header__inner{ height:60px }
  .doc-back{ padding:8px 12px; font-size:.85rem }
  .brand__text i{ display:none }
  .doc-toc,.doc-callout{ padding:20px }
}

@media print{
  .doc-header,.doc-back,.doc-download,.doc-footer{ display:none !important }
  .doc{ max-width:none; padding:0 }
  .doc-toc{ box-shadow:none }
  .doc-body h2{ break-after:avoid }
}
