:root { --navy:#0d1321; --ink:#172235; --muted:#66758a; --gold:#b8863b; --paper:#f5f2eb; --surface:#fffdf8; --line:rgba(13,19,33,.12); }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,sans-serif; }
a { color:inherit; }
.legal-header { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:30px; padding:14px clamp(20px,5vw,72px); background:var(--navy); color:white; }
.legal-brand { display:flex; align-items:center; gap:12px; text-decoration:none; font-weight:700; }
.legal-brand img { width:44px; height:44px; }
.legal-header nav { display:flex; gap:22px; flex-wrap:wrap; }
.legal-header nav a { color:#c8cfda; text-decoration:none; font-size:12px; font-weight:700; }
.legal-header nav a.is-active, .legal-header nav a:hover { color:#d7b579; }
.legal-main { width:min(900px,calc(100% - 40px)); margin:0 auto; padding:72px 0 96px; }
.legal-kicker { margin:0 0 14px; color:var(--gold); font:600 11px/1.2 "IBM Plex Mono",monospace; letter-spacing:.16em; text-transform:uppercase; }
h1 { margin:0 0 22px; color:var(--navy); font-size:clamp(40px,6vw,68px); line-height:1; letter-spacing:0; }
.legal-lede { max-width:760px; margin-bottom:44px; color:var(--muted); font-size:18px; line-height:1.65; }
.legal-callout { margin:0 0 28px; padding:22px; border-left:4px solid var(--gold); background:var(--surface); font-weight:700; line-height:1.55; }
.legal-section { margin-top:18px; padding:28px; border:1px solid var(--line); background:var(--surface); }
.legal-section h2 { margin:0 0 12px; color:var(--navy); font-size:24px; }
.legal-section p, .legal-section li { color:var(--muted); font-size:14px; line-height:1.75; }
.legal-section p:last-child, .legal-section ul:last-child { margin-bottom:0; }
.legal-section a { color:var(--navy); font-weight:700; }
.legal-footer { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:28px clamp(20px,5vw,72px); background:var(--navy); color:#c8cfda; }
.legal-footer p { margin:0; font-size:12px; }
.legal-footer a { font-size:12px; font-weight:700; }
@media (max-width:760px) { .legal-header { align-items:flex-start; flex-direction:column; } .legal-header nav { gap:14px; } .legal-main { width:min(100% - 28px,900px); padding-top:48px; } .legal-section { padding:20px 16px; } .legal-footer { align-items:flex-start; flex-direction:column; } }
