:root { --navy:#08325d; --deep:#062748; --blue:#086eb1; --teal:#0793a0; --orange:#f67b1d; --pink:#ec3465; --yellow:#ffc107; --paper:#fffaf0; --muted:#53657a; --line:rgba(8,50,93,.12); }
*,*::before,*::after { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--navy); background:radial-gradient(circle at 8% 4%,rgba(255,193,7,.18),transparent 22rem),radial-gradient(circle at 96% 14%,rgba(7,147,160,.12),transparent 25rem),var(--paper); font-family:"Trebuchet MS","Avenir Next","Segoe UI",Arial,sans-serif; font-size:16px; line-height:1.72; -webkit-font-smoothing:antialiased; }
a { color:var(--blue); }
.legal-nav { position:sticky; top:0; z-index:10; border-bottom:1px solid var(--line); background:rgba(255,250,240,.91); backdrop-filter:blur(16px); }
.legal-nav-inner { width:min(1120px,calc(100% - 2rem)); min-height:72px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.legal-brand { color:var(--navy); font-size:1.55rem; font-weight:900; letter-spacing:-.055em; text-decoration:none; }
.legal-brand i { color:var(--pink); font-style:normal; }.legal-brand small { font-size:.56em; letter-spacing:-.03em; }
.back-link { padding:.65rem .95rem; border:1px solid var(--line); border-radius:999px; color:var(--navy); font-size:.72rem; font-weight:900; text-decoration:none; background:#fff; box-shadow:0 8px 20px rgba(8,50,93,.06); }
.legal-hero { width:min(900px,calc(100% - 2rem)); margin:0 auto; padding:5.5rem 0 2.75rem; text-align:center; }
.legal-kicker { display:inline-block; margin-bottom:1rem; padding:.42rem .75rem; color:var(--blue); border-radius:999px; background:rgba(8,110,177,.08); font-size:.66rem; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
h1,h2 { margin-top:0; line-height:1.12; letter-spacing:-.04em; }
h1 { margin-bottom:1rem; font-size:clamp(2.45rem,6vw,4.5rem); font-weight:900; -webkit-text-stroke:.25px currentColor; }
h2 { margin-bottom:.75rem; font-size:clamp(1.35rem,3vw,1.75rem); font-weight:900; }
.legal-intro { max-width:720px; margin:auto; color:var(--muted); font-size:1rem; }.legal-meta { margin-top:1.25rem; color:#77869a; font-size:.75rem; font-weight:800; }
.legal-content { width:min(900px,calc(100% - 2rem)); margin:0 auto 5rem; padding:2.5rem clamp(1.25rem,4vw,3.5rem); border:1px solid var(--line); border-radius:28px; background:rgba(255,255,255,.92); box-shadow:0 24px 65px rgba(8,50,93,.09); }
.legal-section { padding:1.6rem 0; border-bottom:1px solid var(--line); }.legal-section:first-child { padding-top:0; }.legal-section:last-child { padding-bottom:0; border-bottom:0; }
.legal-section p,.legal-section li { color:var(--muted); font-size:.91rem; }.legal-section p { margin:.55rem 0 0; }.legal-section ul { margin:.7rem 0 0; padding-left:1.3rem; }.legal-section li+li { margin-top:.45rem; }
.legal-callout { margin:1rem 0 0; padding:1.1rem 1.2rem; border-left:4px solid var(--orange); border-radius:10px; color:var(--navy)!important; background:#fff2e7; font-weight:700; }
.legal-warning { margin-top:1.3rem; padding:1.25rem; border:1px solid rgba(8,110,177,.17); border-radius:16px; background:#eff8ff; }
.legal-footer { padding:2rem 1rem; color:#aebed0; background:var(--deep); text-align:center; font-size:.72rem; }.legal-footer-links { margin-bottom:.75rem; display:flex; justify-content:center; flex-wrap:wrap; gap:1rem; }.legal-footer a { color:#fff; font-weight:800; text-decoration:none; }
@media (max-width:600px) { .legal-nav-inner { min-height:64px; }.legal-brand { font-size:1.3rem; }.legal-hero { padding:3.75rem 0 2rem; }.legal-content { margin-bottom:3rem; padding:1.35rem; border-radius:20px; }.legal-section { padding:1.3rem 0; }.legal-section p,.legal-section li { font-size:.85rem; } }
