/* Reading pages use the same forest palette and motion shell as the landing. */
.legal-page .site-header {background:var(--bg);border-bottom:1px solid var(--line)}
.legal-page {--border:var(--line);--text-sec:var(--muted);--amber:var(--accent);--green:#7ca668}
.legal-hero {padding:160px 52px 72px;border-bottom:1px solid var(--line);background:var(--surface)}
.legal-hero-inner {max-width:1336px;margin:auto}
.legal-title {font-size:clamp(38px,4.4vw,64px);line-height:1.4;max-width:30ch;text-wrap:balance}
.legal-lede {max-width:66ch;margin-top:24px;color:var(--muted);font-size:17px;line-height:2}
.legal-meta {display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;margin-top:32px;font-size:13px}
.legal-stamp {display:flex;gap:10px;align-items:center;color:var(--muted)}
.legal-stamp i {width:6px;height:6px;border-radius:50%;background:#7ca668}
.legal-stamp b {color:var(--text);font-weight:600}
.legal-swap {color:var(--accent);border-bottom:1px solid var(--line);transition:border-color .25s}
.legal-swap:hover {border-color:var(--accent)}
.legal-shell {max-width:1440px;margin:auto;padding:64px 52px 100px;display:grid;grid-template-columns:240px minmax(0,1fr);gap:72px;align-items:start}
.legal-toc {position:sticky;top:114px;min-width:0;max-height:calc(100svh - 150px);overflow:auto;scrollbar-width:thin}
.legal-toc-title {font-size:12px;color:var(--accent);margin-bottom:20px;font-weight:600}
.legal-toc ol {padding:0;list-style:none;counter-reset:toc}
.legal-toc li {counter-increment:toc;border-bottom:1px solid var(--line)}
.legal-toc a {display:flex;align-items:baseline;gap:14px;padding:13px 0;font-size:13px;color:var(--muted);transition:color .3s}
.legal-toc a::before {content:counter(toc,decimal-leading-zero);color:var(--muted);font-size:11px;min-width:18px}
html[lang="fa"] .legal-toc a::before {content:counter(toc,persian)}
.legal-toc a.active,.legal-toc a:hover {color:var(--accent)}
.legal-main {min-width:0;counter-reset:section}
.legal-summary {padding:0 0 48px;border-bottom:1px solid var(--line)}
.legal-summary .ledger {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.ledger-title {font-size:18px;font-weight:700;margin-bottom:18px}
.ledger-list {list-style:none;padding:0;color:var(--muted);font-size:14px;line-height:2}
.ledger-list li {padding-block:8px;border-bottom:1px solid var(--line)}
.legal-sec {padding-top:48px;scroll-margin-top:112px;counter-increment:section}
.legal-sec + .legal-sec {border-top:1px solid var(--line);margin-top:40px}
.legal-sec h2 {display:flex;gap:14px;align-items:baseline;font-size:25px;line-height:1.6;margin-bottom:24px}
.legal-sec h2::before {content:counter(section,decimal-leading-zero);font-size:12px;color:var(--accent)}
html[lang="fa"] .legal-sec h2::before {content:counter(section,persian)}
.legal-anchor {margin-inline-start:auto;font-size:16px;color:var(--muted)}
.legal-anchor::before {content:'#'}
.legal-sec p {font-size:16px;line-height:2.05;color:var(--muted);max-width:70ch;overflow-wrap:anywhere}
.legal-sec p + p {margin-top:18px}
.legal-sec h3 {font-size:19px;margin:28px 0 14px}
.legal-sec b,.legal-sec strong {font-weight:700;color:var(--text)}
.legal-list {padding-inline-start:20px;line-height:2.05;color:var(--muted);font-size:16px}
.legal-list li {padding:7px 0}
.legal-sec a {color:var(--accent);text-underline-offset:5px}
.legal-sec a:hover {text-decoration:underline}
.legal-note {margin-top:26px;padding:22px 26px;border-inline-start:2px solid var(--accent);background:var(--surface)}
.legal-note > b {display:block;margin-bottom:10px}
.legal-rows {margin-top:26px;border-top:1px solid var(--line)}
.legal-row {display:grid;grid-template-columns:170px minmax(0,1fr);gap:22px;padding:20px 0;border-bottom:1px solid var(--line)}
.legal-row p {font-size:15px}
.legal-cross {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:64px;border-top:1px solid var(--line);padding-top:32px}
.legal-cross a {display:flex;flex-direction:column;gap:12px;padding:20px 0;transition:transform .3s}
.legal-cross a:hover {transform:translateY(-3px)}
.legal-cross-kicker {color:var(--accent);font-size:12px}
.legal-cross-title {font-size:22px;font-weight:700}
.legal-cross-sub {font-size:14px;color:var(--muted)}
.legal-page .footer {padding-block:30px;align-items:center}
.legal-page .footer-links {display:flex;flex-wrap:wrap;gap:18px}
.legal-page .footer p {color:var(--muted);font-size:12px}
.wordmark {font-weight:800;font-size:24px;letter-spacing:1px}
.sr-only {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.legal-action .btn {display:inline-flex;background:var(--accent);color:var(--bg);padding:12px 22px;border-radius:8px;font-weight:700}
@media(max-width:1023px) {
  .legal-shell {grid-template-columns:1fr;gap:40px;padding:40px 32px 72px}
  .legal-toc {position:relative;top:auto;max-height:none}
  .legal-toc ol {display:flex;gap:18px;overflow:auto;margin:0;padding-bottom:12px}
  .legal-toc li {flex:0 0 auto}.legal-toc a {padding:8px 0}
  .legal-toc-title {margin-bottom:8px}
  .legal-hero {padding:132px 32px 50px}
}
@media(max-width:767px) {
  .legal-shell {padding:28px 22px 56px}.legal-hero {padding:118px 22px 42px}
  .legal-title {font-size:36px}.legal-lede {font-size:16px}
  .legal-summary .ledger {grid-template-columns:1fr;gap:28px}
  .legal-sec h2 {font-size:22px}.legal-sec p,.legal-list {font-size:15px}
  .legal-row {grid-template-columns:1fr;gap:9px}
  .legal-cross {grid-template-columns:1fr;gap:12px}
  .legal-page .footer {flex-direction:column;align-items:start;gap:24px}
}
