.legal-page{padding:calc(var(--nav-h) + 48px) 0 110px;background:var(--bg)}
.legal-crumbs{display:flex;gap:10px;font-size:13px;color:var(--text-3);margin-bottom:36px}
.legal-crumbs a:hover{color:var(--red-accent)}

.legal-head{max-width:820px;margin-bottom:56px}
.legal-kicker{display:inline-block;font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:500;color:var(--red-accent);margin-bottom:16px}
.legal-head h1{font-size:clamp(32px,4vw,54px);font-weight:200;letter-spacing:-.028em;line-height:1.08}
.legal-meta{margin:16px 0 0;font-size:13px;color:var(--text-3)}

.legal-grid{display:grid;grid-template-columns:260px minmax(0,780px);gap:80px;align-items:start}

/* оглавление */
.legal-toc{position:sticky;top:calc(var(--nav-h) + 24px);max-height:calc(100vh - var(--nav-h) - 48px);overflow-y:auto;padding-right:8px}
.legal-toc-title{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--text);margin-bottom:14px}
.legal-toc ol,.legal-others{list-style:none;padding:0;margin:0 0 32px}
.legal-toc ol{counter-reset:toc}
.legal-toc ol li{counter-increment:toc}
.legal-toc ol a{display:flex;gap:10px;padding:6px 0;font-size:13px;line-height:1.4;color:var(--text-2);transition:color .15s}
.legal-toc ol a::before{content:counter(toc) ".";min-width:20px;color:var(--text-3)}
.legal-toc a:hover{color:var(--red-accent)}
.legal-others a{display:block;padding:6px 0;font-size:13px;font-weight:500;color:var(--text)}
.legal-print{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;padding-bottom:4px;border-bottom:1px solid var(--line-2);color:var(--text-2);transition:color .2s,border-color .2s}
.legal-print:hover{color:var(--red-accent);border-color:var(--red-accent)}

/* текст */
.legal-body{font-size:15px;line-height:1.8;color:var(--text-2)}
.legal-body section{scroll-margin-top:calc(var(--nav-h) + 24px)}
.legal-body section + section{margin-top:48px;padding-top:40px;border-top:1px solid var(--line)}
.legal-body h2{font-size:22px;font-weight:500;letter-spacing:-.01em;line-height:1.3;color:var(--text);margin-bottom:20px}
.legal-body p{margin:0 0 14px}
.legal-body p > b:first-child{color:var(--text);font-weight:600;margin-right:4px}
.legal-body ul{margin:0 0 18px;padding-left:22px}
.legal-body ul ul{margin:8px 0 4px}
.legal-body li{margin-bottom:8px}
.legal-body li::marker{color:var(--red-accent)}
.legal-body a{color:var(--text);border-bottom:1px solid var(--line-2);transition:color .15s,border-color .15s}
.legal-body a:hover{color:var(--red-accent);border-color:var(--red-accent)}
.legal-lead{font-size:16px;color:var(--text)}
.legal-lead:last-of-type{margin-bottom:40px}

@media (max-width:1180px){
  .legal-grid{grid-template-columns:220px minmax(0,1fr);gap:48px}
}
@media (max-width:900px){
  .legal-grid{grid-template-columns:1fr;gap:32px}
  .legal-toc{position:static;max-height:none;padding:20px;background:var(--paper);border:1px solid var(--line);border-radius:6px}
  .legal-toc ol{margin-bottom:24px}
  .legal-print{display:none}
}
@media (max-width:640px){
  .legal-page{padding-top:calc(var(--nav-h) + 28px)}
  .legal-head{margin-bottom:32px}
  .legal-body{font-size:14px}
  .legal-body h2{font-size:19px}
}

@media print{
  header.nav,.mobile-drawer,footer,.legal-aside,.legal-crumbs,.cb-modal{display:none!important}
  .legal-page{padding:0}
  .legal-grid{display:block}
  .legal-body{color:#000;font-size:11pt}
  .legal-body section + section{border-top:0;margin-top:18pt;padding-top:0}
}
