/* Legal pages: privacy, terms, accessibility */
.legal-hero{padding:clamp(40px,6vw,72px) 0 clamp(32px,4vw,48px)}
.legal-hero h1{color:#fff;font-size:clamp(2.25rem,1.6rem + 2.6vw,3.5rem);max-width:none}
.legal-hero .meta{color:var(--on-dark-soft);font-size:.9375rem;margin:0}
.crumbs{font-size:.875rem;margin-bottom:var(--s3);color:var(--on-dark-soft)}
.crumbs a{color:var(--cta)}
.legal{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(32px,5vw,64px);padding-top:var(--s7);padding-bottom:var(--s8);align-items:start}
.toc{position:sticky;top:110px;font-size:.9375rem}
.toc p{font-family:var(--font-label);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.75rem;color:var(--muted);margin-bottom:var(--s2)}
.toc ol{margin:0;padding-left:1.2em;display:grid;gap:8px}
.toc a{color:var(--ink);text-decoration:none}
.toc a:hover{color:var(--brand-mid);text-decoration:underline}
.prose{max-width:72ch}
.prose h2{font-size:var(--fs-h3);margin:var(--s6) 0 var(--s3);scroll-margin-top:110px}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:var(--fs-h4);margin:var(--s4) 0 var(--s2)}
.prose ul,.prose ol{padding-left:1.25em;margin:0 0 var(--s3)}
.prose li{margin-bottom:6px}
.prose table{width:100%;border-collapse:collapse;margin:0 0 var(--s4);font-size:.9375rem}
.prose th,.prose td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--border)}
.prose th{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;color:var(--muted)}
.callout{background:var(--surface);border-left:4px solid var(--cta);border-radius:0 var(--r-md) var(--r-md) 0;padding:var(--s3) var(--s4);margin:0 0 var(--s4)}
.callout p:last-child{margin:0}
.contact-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s4);margin:var(--s3) 0 var(--s4)}
.contact-card p{margin:0 0 4px}
.table-wrap{overflow-x:auto}
@media (max-width:1023px){.legal{grid-template-columns:minmax(0,1fr)}.toc{position:static;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s4)}}
@media print{.site-head,.ftr,.mbar,.review-toggle,.toc{display:none!important}.legal{display:block;padding:0}body{background:#fff}}
