.legal-hero { padding: 170px 0 86px; color: var(--white); background: linear-gradient(120deg,var(--navy-950),var(--navy-800)); }
.legal-hero h1 { max-width: 900px; margin: 0; font-family: var(--serif); font-size: clamp(3.6rem,6vw,6.4rem); font-weight: 400; line-height: 1; }
.legal-hero > .container > p:last-child { margin: 24px 0 0; color: rgba(255,255,255,.72); }
.legal-content { background: var(--white); }
.legal-layout { display: grid; grid-template-columns: 240px minmax(0,820px); gap: clamp(48px,8vw,120px); align-items: start; }
.legal-layout aside { position: sticky; top: 120px; display: grid; gap: 10px; padding: 22px; border: 1px solid var(--line); background: var(--paper); }
.legal-layout aside p { margin: 0 0 8px; color: var(--teal-700); font-size: .7rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.legal-layout aside a { color: var(--muted); font-size: .88rem; }
.legal-layout aside a:hover { color: var(--teal-700); }
.legal-layout article section { scroll-margin-top: 115px; padding-bottom: 40px; }
.legal-layout article section + section { padding-top: 40px; border-top: 1px solid var(--line); }
.legal-layout h2 { margin: 0 0 18px; font-family: var(--serif); font-size: clamp(2rem,3vw,3rem); font-weight: 400; line-height: 1.08; }
.legal-layout p { margin: 0; color: var(--muted); line-height: 1.75; }
.legal-layout p + p { margin-top: 16px; }
.legal-layout article a { color: var(--teal-700); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 820px) { .legal-layout { grid-template-columns: 1fr; } .legal-layout aside { position: static; } .legal-hero { padding: 140px 0 70px; } }
