/* Reading and error-page layouts. Policy wording is unchanged. */
.legal-hero { padding-block:clamp(2.5rem,5vw,4.5rem); border-bottom:1px solid var(--border-mid); }
.legal-hero>.page-wrap { max-width:1440px; }
.legal-hero .eyebrow { color:var(--ink-mute); font-size:1rem; letter-spacing:normal; margin-bottom:1rem; }
.legal-title em { display:block; margin-top:.5rem; font-size:.7em; }
.legal-meta { display:flex; flex-wrap:wrap; gap:.5rem 2rem; margin-top:1.5rem; font-size:1rem; color:var(--ink-mute); }
.legal-doc { padding-block:clamp(2.5rem,5vw,4rem) clamp(3rem,7vw,6rem); }
.legal-grid { display:grid; grid-template-columns:minmax(10rem,15rem) minmax(0,1fr); gap:clamp(2rem,5vw,4rem); align-items:start; }
.toc { position:sticky; top:7.5rem; font-size:1rem; }
.toc-label { color:var(--ink-mute); margin-bottom:1rem; }
.toc ol { list-style:none; padding:0; margin:0; }
.toc a { display:block; padding:.5rem 0; min-height:44px; text-decoration:none; }
.toc a:hover { text-decoration:underline; }
.legal-body { max-width:50rem; }
.legal-body section { margin-bottom:2.5rem; scroll-margin-top:2rem; }
.legal-body h2 { display:flex; align-items:baseline; gap:.75rem; font-size:clamp(1.45rem,1.1rem + 1vw,1.8rem); margin-bottom:1rem; }
.legal-body h2>[data-en],.legal-body h2>[data-hi] { min-width:0; overflow-wrap:anywhere; }
.legal-body h2 .num { font-size:1rem; color:var(--ink-mute); flex-shrink:0; }
.legal-body h3 { font-size:1.25rem; margin:1.5rem 0 .75rem; }
.legal-body p,.legal-body li { font-size:1.125rem; line-height:1.8; }
.legal-body ul { padding-left:1.5rem; margin:0 0 1.25rem; }
.legal-body li { margin-bottom:.5rem; }
.legal-body a { overflow-wrap:anywhere; }
.legal-callout { background:var(--deep); border-left:3px solid var(--terra); padding:1.25rem; margin-bottom:1.5rem; }
.legal-back { display:inline-flex; align-items:center; min-height:44px; }
.four-oh-four { position:relative; display:grid; place-items:center; overflow:hidden; min-height:70svh; padding-block:clamp(2.5rem,5vw,5rem); }
.four-oh-four .empty-state { max-width:52rem; text-align:center; position:relative; z-index:1; background:transparent; border:0; }
.empty-illus { width:clamp(6rem,15vw,10rem); margin:1rem auto; }
.empty-illus svg { display:block; width:100%; }
.empty-deva-large { color:var(--terra); font:2rem var(--f-script); margin-bottom:1rem; }
.empty-title-large { min-width:0; overflow-wrap:anywhere!important; margin-bottom:1.5rem!important; }
.empty-body-large { max-width:38rem; margin-inline:auto!important; }
.four-eyebrow { font-size:1rem; color:var(--ink-mute); }
.cta-row { display:flex; flex-wrap:wrap; justify-content:center; gap:1rem; margin-top:2rem; }
.ring-bg { position:absolute; inset:0; display:grid; place-items:center; opacity:.18; pointer-events:none; }
.ring-bg svg { width:min(90%,45rem); }
@media(max-width:60rem) { .legal-grid { grid-template-columns:minmax(0,1fr); } .toc { display:none; } .legal-body { max-width:none; } }
