.legal-page { background: var(--ice); }
.legal-hero { padding: 176px 0 86px; color: var(--white); background: radial-gradient(circle at 85% 0%, rgba(39,86,255,.55), transparent 42%), var(--navy-950); }
.legal-hero h1 { max-width: 900px; margin: 0; font-size: clamp(3.6rem, 7vw, 7rem); font-weight: 360; line-height: .94; letter-spacing: -.065em; }
.legal-hero > .container > p:not(.eyebrow) { max-width: 750px; margin: 28px 0 20px; color: rgba(255,255,255,.72); font-size: 1.08rem; }
.legal-hero small { color: rgba(255,255,255,.54); }
.legal-layout { display: grid; grid-template-columns: 290px minmax(0, 780px); gap: 80px; align-items: start; padding-top: 86px; padding-bottom: 110px; }
.legal-note { position: sticky; top: 120px; padding: 24px; color: var(--navy-950); background: var(--yellow); border-radius: 18px; }
.legal-note strong { font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; }
.legal-note p { margin: 10px 0 0; font-size: .83rem; line-height: 1.55; }
.legal-content { padding: 18px 42px 42px; background: var(--white); border: 1px solid rgba(7,18,47,.08); border-radius: 24px; box-shadow: 0 24px 70px rgba(7,20,63,.08); }
.legal-section { padding: 34px 0; border-bottom: 1px solid var(--line); }
.legal-section:last-child { border-bottom: 0; }
.legal-section h2 { margin: 0 0 17px; font-size: clamp(1.45rem, 2.4vw, 2rem); line-height: 1.12; letter-spacing: -.035em; }
.legal-section p { margin: 0; color: var(--muted); }
.legal-section p + p { margin-top: 15px; }
.legal-section a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 860px) { .legal-layout { grid-template-columns: 1fr; gap: 28px; } .legal-note { position: static; } }
@media (max-width: 640px) { .legal-hero { padding: 142px 0 68px; } .legal-layout { padding-top: 54px; padding-bottom: 74px; } .legal-content { padding: 4px 24px 26px; } }
