.legal-page { background: #edf3f8; }
.legal-hero { padding: clamp(3.5rem, 8vw, 7rem) max(1.25rem, calc((100% - var(--max)) / 2)); background: var(--navy); color: #fff; }
.legal-hero .section-kicker { color: var(--cyan); }
.legal-hero h1 { max-width: 900px; margin: .7rem 0 1rem; color: #fff; font-size: clamp(3rem, 7vw, 6rem); }
.legal-hero p { max-width: 700px; margin: 0; color: #b7c7d8; }
.legal-shell { width: min(calc(100% - 4rem), 920px); margin: 0 auto; padding: clamp(3rem, 8vw, 7rem) 0; }
.legal-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; margin-bottom: 2rem; padding: 1rem 0; border-bottom: 1px solid var(--line); color: #6d8094; font-size: .78rem; font-weight: 700; }
.legal-section { margin-bottom: 2.8rem; }
.legal-section h2 { margin-bottom: .9rem; color: var(--navy); font-size: clamp(1.6rem, 3vw, 2.3rem); letter-spacing: -.035em; }
.legal-section h3 { margin: 1.5rem 0 .6rem; font-size: 1.12rem; letter-spacing: -.02em; }
.legal-section p, .legal-section li { color: #536b82; line-height: 1.8; }
.legal-section ul { padding-left: 1.25rem; }
.legal-section a { color: var(--blue); font-weight: 700; }
.legal-callout { padding: 1.5rem; border-left: 4px solid var(--blue); background: #fff; box-shadow: 0 12px 30px rgba(7,26,58,.06); }
.legal-nav { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 3rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
.legal-nav a { color: var(--blue); font-size: .82rem; font-weight: 800; }
.legal-page .nav-toggle { display:none; }
@media (max-width: 760px) { .legal-shell { width: min(calc(100% - 2.5rem), 920px); } }
