:root { color-scheme: dark; font-family: Geist, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #edf3f1; background: #030810; }
* { box-sizing: border-box; }
html { min-width: 320px; min-height: 100%; background: #030810; }
body { min-height: 100vh; margin: 0; color: #c4d0cc; background: radial-gradient(circle at 16% 8%, rgb(76 119 126 / 18%), transparent 31rem), radial-gradient(circle at 86% 42%, rgb(41 77 87 / 16%), transparent 38rem), linear-gradient(145deg, #050b10, #0b171e 52%, #050b0f); background-attachment: fixed; }
a { color: #9bd9ea; text-underline-offset: 3px; }
a:hover { color: #d1f1f7; }
a:focus-visible { border-radius: 2px; outline: 2px solid #9ce8a6; outline-offset: 4px; }
.legal-shell { width: min(980px, calc(100% - 32px)); margin: 0 auto; padding: 18px 0 56px; }
.legal-nav { position: sticky; z-index: 10; top: 14px; display: flex; min-height: 58px; align-items: center; justify-content: space-between; gap: 20px; padding: 9px 12px; border: 1px solid rgb(221 235 239 / 18%); border-radius: 2px; background: rgb(18 36 44 / 86%); box-shadow: inset 0 1px 0 rgb(255 255 255 / 8%), 0 14px 36px rgb(0 0 0 / 24%); -webkit-backdrop-filter: blur(18px) saturate(120%); backdrop-filter: blur(18px) saturate(120%); }
.legal-brand { display: inline-flex; align-items: center; gap: 10px; color: #f3f7f8; font-size: 14px; font-weight: 720; letter-spacing: -.015em; text-decoration: none; }
.legal-nav__links { display: flex; align-items: center; gap: 4px; }
.legal-nav__links a { padding: 8px 10px; border-radius: 2px; color: #9fb2b7; font-size: 11px; font-weight: 650; text-decoration: none; }
.legal-nav__links a:hover { background: rgb(230 240 242 / 8%); color: #edf4f5; }
.legal-nav__links a[aria-current="page"] { background: rgb(230 240 242 / 9%); color: #edf4f5; box-shadow: none; }
.legal-hero { padding: clamp(40px, 6vw, 64px) clamp(4px, 3vw, 28px) 38px; text-align: center; }
.legal-eyebrow { display: none; }
.legal-hero h1 { max-width: 780px; margin: 0 auto; color: #f2f5f0; font-size: clamp(38px, 6.4vw, 64px); font-weight: 680; line-height: .98; letter-spacing: -.04em; text-wrap: balance; }
.legal-hero p { max-width: 68ch; margin: 20px auto 0; color: #b7c7c6; font-size: 15px; line-height: 1.65; }
.legal-meta { display: inline-flex; margin-top: 20px; color: #789097; font-family: "JetBrains Mono", "Cascadia Mono", Consolas, monospace; font-size: 10px; letter-spacing: .035em; text-transform: uppercase; }
.legal-notice { margin: 0 0 14px; padding: 15px 18px; border: 1px solid rgb(134 191 213 / 34%); border-radius: 2px; background: rgb(34 69 82 / 46%); color: #d2dedd; box-shadow: inset 0 1px 0 rgb(255 255 255 / 6%); font-size: 13px; line-height: 1.55; }
.legal-content { padding: 8px 24px; border: 1px solid rgb(221 235 239 / 16%); border-radius: 2px; background: rgb(12 27 34 / 76%); box-shadow: inset 0 1px 0 rgb(255 255 255 / 5%), 0 22px 60px rgb(0 0 0 / 20%); -webkit-backdrop-filter: blur(14px) saturate(112%); backdrop-filter: blur(14px) saturate(112%); }
.legal-section { padding: 28px 4px; border-bottom: 1px solid rgb(139 174 181 / 14%); }
.legal-section:last-child { border-bottom: 0; }
.legal-section h2 { margin: 0 0 12px; color: #edf3f1; font-size: 19px; font-weight: 660; line-height: 1.25; letter-spacing: -.02em; }
.legal-section h3 { margin: 22px 0 8px; color: #dce7e5; font-size: 14px; font-weight: 650; }
.legal-section p, .legal-section li { max-width: 74ch; color: #aebfbe; font-size: 13.5px; line-height: 1.7; }
.legal-section p { margin: 9px 0; }
.legal-section ul { margin: 12px 0 0; padding-left: 20px; }
.legal-section li + li { margin-top: 8px; }
.legal-section strong { color: #e5eeec; }
.legal-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 4px 0; color: #71878c; font-size: 11px; }
.legal-footer a { color: #9fb2b7; font-weight: 650; text-decoration: none; }
@media (max-width: 600px) { .legal-shell { width: min(100% - 20px, 980px); padding-top: 10px; } .legal-nav { position: static; min-height: 54px; align-items: flex-start; flex-direction: column; gap: 4px; padding: 9px 8px; } .legal-brand { gap: 7px; padding-inline: 7px; font-size: 13px; } .legal-nav__links { width: 100%; flex-wrap: wrap; } .legal-nav__links a { padding: 8px 7px; font-size: 10px; } .legal-hero { padding: 40px 6px 30px; } .legal-hero h1 { font-size: clamp(36px, 12vw, 50px); } .legal-hero p { font-size: 14px; } .legal-notice { padding: 13px 14px; } .legal-content { padding: 4px 14px; } .legal-section { padding: 24px 0; } .legal-footer { align-items: flex-start; flex-direction: column; gap: 8px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
