.legal-hero {padding:5.5rem 0 4.25rem;border-bottom:1px solid var(--color-border);background:radial-gradient(circle at 80% 10%,rgba(35,87,198,.12),transparent 28rem),linear-gradient(180deg,#fff 0%,#f8faff 100%)}
.legal-hero-inner{max-width:850px}.legal-hero h1{margin-bottom:1.25rem;font-size:clamp(2.25rem,4.8vw,3.75rem)}
.legal-hero-summary{max-width:780px;margin-bottom:1.5rem;font-size:clamp(1.05rem,2vw,1.2rem)}
.legal-dates{display:flex;flex-wrap:wrap;gap:.65rem 1.5rem;color:var(--color-muted);font-size:.92rem}
.legal-layout{display:grid;grid-template-columns:250px minmax(0,820px);align-items:start;justify-content:center;gap:clamp(2.5rem,6vw,5rem)}
.legal-toc{position:sticky;top:105px;padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}
.legal-toc-title{margin-bottom:.8rem;color:var(--color-heading);font-size:.82rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.legal-toc nav{display:grid;gap:.5rem}.legal-toc a{color:var(--color-text);font-size:.88rem;line-height:1.35;text-decoration:none}
.legal-toc a:hover,.legal-toc a:focus-visible{color:var(--color-primary);text-decoration:underline;text-underline-offset:.2rem}
.legal-content{min-width:0}.legal-summary{margin-bottom:2.5rem;padding:1.5rem;border-left:4px solid var(--color-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--color-primary-soft)}
.legal-summary h2{margin-bottom:.65rem;font-size:1.35rem}.legal-summary p{margin-bottom:0}.legal-section{scroll-margin-top:110px;margin-bottom:3rem}.legal-section:last-child{margin-bottom:0}
.legal-section h2{margin-bottom:1rem;padding-bottom:.7rem;border-bottom:1px solid var(--color-border);font-size:clamp(1.5rem,3vw,2rem);letter-spacing:-.025em}
.legal-section h3{margin-top:1.75rem;font-size:1.12rem}.legal-section p,.legal-section li{max-width:78ch}.legal-section ul{display:grid;gap:.55rem;margin:1rem 0 1.4rem;padding-left:1.35rem}
.legal-section a{color:var(--color-primary);font-weight:700;text-underline-offset:.2rem}.legal-contact{padding:1.5rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}
.legal-contact h2{padding-bottom:0;border-bottom:0}.legal-contact address{color:var(--color-text);font-style:normal}
@media (max-width:900px){.legal-layout{grid-template-columns:1fr}.legal-toc{position:static}.legal-toc nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.legal-hero{padding:4.25rem 0 3.5rem}.legal-toc nav{grid-template-columns:1fr}.legal-summary,.legal-contact{padding:1.2rem}}