:root { color-scheme: dark; --ink: #080b14; --panel: #0d121d; --line: rgba(175,190,210,.14); --paper: #f4f7f9; --muted: #a3adbc; --muted-2: #6f7c90; --signal: #a7f3c1; font-family: Inter, ui-sans-serif, system-ui, sans-serif; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { min-block-size: 100vh; margin: 0; background: radial-gradient(circle at 85% 0, rgba(169,150,255,.08), transparent 28rem), var(--ink); color: var(--paper); }
a { color: inherit; }
.skip-link { position: fixed; inset: .75rem auto auto .75rem; z-index: 20; padding: .6rem .75rem; border-radius: .45rem; background: var(--signal); color: var(--ink); font-weight: 800; translate: 0 -200%; }.skip-link:focus { translate: 0; }
.legal-header { position: sticky; inset-block-start: 0; z-index: 10; display: flex; min-block-size: 4.5rem; align-items: center; justify-content: space-between; gap: 1rem; padding-inline: clamp(1rem, 4vw, 3rem); border-block-end: 1px solid var(--line); background: rgba(8,11,20,.86); backdrop-filter: blur(18px); }
.legal-brand { display: flex; align-items: center; gap: .6rem; text-decoration: none; font-size: 1rem; font-weight: 800; letter-spacing: -.04em; }.legal-brand svg { inline-size: 1.75rem; fill: none; stroke: var(--signal); stroke-width: 1.5; }.legal-brand span span { color: #9ba6b7; font-weight: 600; }
.legal-header nav { display: flex; align-items: center; gap: .35rem; }.legal-header nav a { padding: .55rem .7rem; border-radius: .45rem; color: var(--muted); font-size: .7rem; text-decoration: none; }.legal-header nav a[aria-current="page"] { background: rgba(167,243,193,.08); color: var(--signal); }.legal-header nav a:last-child { border: 1px solid var(--line); color: var(--paper); }
.legal-layout { display: grid; inline-size: min(70rem, calc(100% - 2rem)); grid-template-columns: 13rem minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); margin-inline: auto; padding-block: 4rem 6rem; }
.legal-toc { position: sticky; inset-block-start: 6.5rem; align-self: start; display: grid; gap: .3rem; }.legal-toc > span { margin-block-end: .6rem; color: var(--muted-2); font-family: ui-monospace, monospace; font-size: .58rem; letter-spacing: .1em; text-transform: uppercase; }.legal-toc a { padding: .42rem 0; color: var(--muted); font-size: .68rem; text-decoration: none; }.legal-toc a:hover { color: var(--signal); }
.legal-document { min-inline-size: 0; }.legal-document > header { padding-block-end: 2.5rem; border-block-end: 1px solid var(--line); }.legal-document .eyebrow { color: var(--signal); font-family: ui-monospace, monospace; font-size: .62rem; letter-spacing: .12em; text-transform: uppercase; }.legal-document h1 { margin: .75rem 0; font-size: clamp(3rem, 7vw, 5.5rem); letter-spacing: -.075em; line-height: .95; }.legal-document .lede { max-inline-size: 48rem; margin: 0; color: var(--muted); font-size: 1rem; line-height: 1.75; }.legal-meta { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; margin-block-start: 1.25rem; color: var(--muted-2); font-family: ui-monospace, monospace; font-size: .58rem; }
.legal-document section { padding-block: 2rem; border-block-end: 1px solid rgba(175,190,210,.09); scroll-margin-top: 6rem; }.legal-document h2 { margin: 0 0 .8rem; font-size: 1.15rem; letter-spacing: -.035em; }.legal-document p, .legal-document li { color: var(--muted); font-size: .82rem; line-height: 1.8; }.legal-document p { margin: .7rem 0; }.legal-document ul { display: grid; gap: .45rem; padding-inline-start: 1.15rem; }.legal-document strong { color: var(--paper); }.legal-note { margin-block-start: 2.25rem; padding: 1rem; border: 1px solid rgba(167,243,193,.18); border-radius: .7rem; background: rgba(167,243,193,.035); }.legal-note strong { display: block; margin-block-end: .3rem; color: var(--signal); font-size: .74rem; }.legal-note p { margin: 0; font-size: .72rem; }
.legal-footer { display: flex; justify-content: space-between; gap: 1rem; padding: 1.25rem clamp(1rem, 4vw, 3rem); border-block-start: 1px solid var(--line); color: var(--muted-2); font-size: .62rem; }.legal-footer a { color: var(--muted); }
@media (max-width: 46rem) { .legal-header nav a:not(:last-child) { display: none; }.legal-layout { grid-template-columns: 1fr; padding-block-start: 2.5rem; }.legal-toc { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: .75rem; border: 1px solid var(--line); border-radius: .65rem; }.legal-toc > span { grid-column: 1 / -1; }.legal-document h1 { font-size: 3rem; }.legal-footer { flex-direction: column; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
