:root { color-scheme: dark; --bg:#06070c; --panel:#10131d; --text:#f5f7fb; --muted:#a7adbd; --line:#252a39; --accent:#64cefb; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background:radial-gradient(circle at 10% 0,#112340 0,transparent 28rem),var(--bg); color:var(--text); font-family:Inter,system-ui,sans-serif; line-height:1.7; }
a { color:#8edcff; }
a:hover { color:#fff; }
button,a { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.legal-shell { width:min(100% - 2rem,74rem); margin:auto; }
.legal-nav { position:sticky; top:0; z-index:20; border-bottom:1px solid var(--line); background:rgba(6,7,12,.92); backdrop-filter:blur(14px); }
.legal-nav-inner { min-height:4.5rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.brand { color:#fff; text-decoration:none; font-weight:750; letter-spacing:-.03em; }
.brand span { color:var(--accent); }
.legal-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.55rem; }
.legal-button { border:1px solid var(--line); border-radius:999px; background:#111522; color:var(--text); padding:.55rem .85rem; font:inherit; cursor:pointer; text-decoration:none; font-size:.875rem; }
.legal-button:hover { border-color:#4c5a78; background:#171c2c; color:#fff; }
.legal-hero { padding:5rem 0 3rem; }
.eyebrow { color:var(--accent); text-transform:uppercase; letter-spacing:.16em; font-size:.74rem; font-weight:700; }
h1 { margin:.75rem 0 1rem; max-width:58rem; font-size:clamp(2.4rem,7vw,5rem); line-height:1.03; letter-spacing:-.055em; font-weight:400; }
.lede { max-width:48rem; color:var(--muted); font-size:1.08rem; }
.legal-meta { display:flex; flex-wrap:wrap; gap:.65rem 1.5rem; color:var(--muted); font-size:.9rem; margin-top:1.4rem; }
.legal-layout { display:grid; grid-template-columns:16rem minmax(0,1fr); align-items:start; gap:3rem; padding-bottom:6rem; }
.toc { position:sticky; top:6rem; border:1px solid var(--line); border-radius:1rem; padding:1.15rem; background:rgba(16,19,29,.75); }
.toc strong { display:block; margin-bottom:.65rem; }
.toc a { display:block; padding:.26rem 0; color:var(--muted); text-decoration:none; font-size:.9rem; }
.toc a:hover { color:#fff; }
.legal-doc { min-width:0; }
.legal-doc > section { scroll-margin-top:6rem; border-top:1px solid var(--line); padding:2rem 0; }
.legal-doc > section:first-child { border-top:0; padding-top:0; }
.legal-doc h2 { margin:0 0 .8rem; font-size:clamp(1.4rem,3vw,2rem); letter-spacing:-.025em; line-height:1.2; }
.legal-doc h3 { margin:1.4rem 0 .3rem; font-size:1.05rem; }
.legal-doc p { color:#c7ccda; margin:.7rem 0; }
.legal-doc ul,.legal-doc ol { color:#c7ccda; padding-left:1.35rem; }
.notice { border:1px solid #2e5f77; border-radius:.9rem; background:rgba(30,103,139,.13); padding:1rem 1.15rem; }
.legal-table-wrap { overflow-x:auto; border:1px solid var(--line); border-radius:.85rem; margin:1rem 0; }
table { border-collapse:collapse; width:100%; min-width:45rem; font-size:.9rem; }
th,td { text-align:left; vertical-align:top; padding:.8rem; border-bottom:1px solid var(--line); }
th { background:#111522; color:#fff; }
td { color:#c7ccda; }
tr:last-child td { border-bottom:0; }
.status { display:inline-block; border:1px solid #41506f; border-radius:999px; padding:.15rem .5rem; color:#cbd5e1; font-size:.75rem; white-space:nowrap; }
.legal-footer { border-top:1px solid var(--line); padding:2.5rem 0; }
.legal-links { display:flex; flex-wrap:wrap; gap:.65rem 1.2rem; }
.legal-links a { color:var(--muted); font-size:.88rem; }
.legal-fineprint { color:#747c91; font-size:.8rem; margin-top:1rem; }
[data-doc][hidden] { display:none !important; }
@media (max-width:800px) { .legal-layout { grid-template-columns:1fr; gap:1.5rem; }.toc { position:static; }.legal-nav-inner { align-items:flex-start; padding:.85rem 0; flex-direction:column; }.legal-actions { width:100%; }.legal-hero { padding-top:3.5rem; } }
@media print { body { background:#fff; color:#000; font-size:11pt; }.legal-nav,.toc,.legal-footer { display:none; }.legal-shell { width:100%; }.legal-hero { padding:0 0 1rem; }.legal-layout { display:block; padding:0; }.legal-doc p,.legal-doc ul,.legal-doc ol,.lede,.legal-meta { color:#222; }.legal-doc > section { break-inside:avoid; border-color:#bbb; }a { color:#000; text-decoration:underline; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
