:root { --background:#08111f; --surface:#101c2d; --primary:#73d7ff; --secondary:#8b7cff; --accent:#4de1b2; --text:#edf6ff; --muted:#9dacbf; --border:rgba(181,211,239,.16); --warning:#f4c66b; }
* { box-sizing:border-box; }
.sr-only { clip:rect(0,0,0,0); clip-path:inset(50%); height:1px; overflow:hidden; position:absolute; white-space:nowrap; width:1px; }
html { scroll-behavior:smooth; scroll-padding-top:100px; }
body { background:radial-gradient(circle at 16% 0%,#182d4b 0,transparent 30%),radial-gradient(circle at 85% 18%,#162a43 0,transparent 28%),var(--background); color:var(--text); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; margin:0; overflow-x:hidden; }
body::before { background-image:linear-gradient(rgba(157,190,225,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(157,190,225,.035) 1px,transparent 1px); background-size:54px 54px; content:""; height:760px; left:0; mask-image:linear-gradient(to bottom,black,transparent); pointer-events:none; position:absolute; right:0; top:0; z-index:-1; }
.skip-link { background:var(--primary); border-radius:8px; color:#07111d; left:16px; padding:10px 14px; position:fixed; top:12px; transform:translateY(-160%); transition:transform .2s ease; z-index:50; }
.skip-link:focus { transform:translateY(0); }
.site-nav { align-items:center; backdrop-filter:blur(18px); background:rgba(8,17,31,.7); border:1px solid var(--border); border-radius:16px; display:flex; justify-content:space-between; left:50%; max-width:1180px; padding:11px 16px; position:fixed; top:16px; transform:translateX(-50%); width:calc(100% - 32px); z-index:20; }
.brand { align-items:center; color:var(--text); display:inline-flex; font-size:17px; font-weight:750; gap:9px; letter-spacing:-.03em; text-decoration:none; }
.brand-mark { align-items:center; background:linear-gradient(135deg,var(--primary),var(--secondary)); border-radius:8px; color:#08111f; display:inline-flex; font-size:14px; font-weight:900; height:27px; justify-content:center; width:27px; }
.nav-links { display:flex; gap:24px; }
.nav-links a { color:var(--muted); font-size:14px; text-decoration:none; }
.nav-links a:hover,.nav-links a[aria-current="page"] { color:var(--text); }
.nav-toggle { display:none; }
.legal-main { margin:0 auto; max-width:920px; padding:165px 28px 90px; }
.legal-hero { margin-bottom:42px; max-width:720px; }
.eyebrow { color:var(--primary); font-size:12px; font-weight:800; letter-spacing:.14em; margin:0 0 15px; text-transform:uppercase; }
h1 { font-size:clamp(42px,6vw,68px); letter-spacing:-.065em; line-height:.98; margin:0; }
.legal-intro { color:var(--muted); font-size:18px; line-height:1.65; margin:23px 0 0; }
.legal-card { background:linear-gradient(145deg,rgba(24,42,65,.86),rgba(10,20,34,.94)); border:1px solid var(--border); border-radius:18px; box-shadow:0 24px 60px rgba(0,0,0,.22); padding:clamp(24px,4vw,42px); }
.legal-card section + section { border-top:1px solid var(--border); margin-top:30px; padding-top:30px; }
h2 { color:var(--text); font-size:clamp(24px,3vw,32px); letter-spacing:-.04em; line-height:1.1; margin:0 0 12px; }
h3 { color:var(--text); font-size:18px; margin:24px 0 8px; }
p,li { color:var(--muted); line-height:1.7; }
p { margin:0 0 14px; }
ul { margin:12px 0; padding-left:21px; }
a { color:var(--primary); }
.info-grid { display:grid; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:20px; }
.info-grid > div,.contact-placeholder { background:rgba(255,255,255,.045); border:1px solid var(--border); border-radius:12px; padding:18px; }
.info-grid strong { color:var(--text); display:block; margin-bottom:5px; }
.contact-placeholder { color:var(--muted); margin:18px 0; }
.notice { background:rgba(244,198,107,.11); border:1px solid rgba(244,198,107,.32); border-radius:12px; color:var(--text); padding:17px; }
footer { background:#050b14; border-top:1px solid var(--border); color:var(--text); padding:55px max(28px,calc((100vw - 1124px)/2)); }
.footer-grid { display:grid; gap:40px; grid-template-columns:2fr 1fr 1fr; }
.footer-grid p { max-width:370px; }
.footer-grid h2 { font-size:14px; letter-spacing:0; margin:4px 0 14px; }
.footer-grid a { color:var(--muted); display:block; font-size:14px; margin:0 0 10px; text-decoration:none; }
.footer-grid a:hover { color:var(--text); }
.footer-grid .brand { color:var(--text); margin-bottom:14px; }
.footer-bottom { border-top:1px solid var(--border); color:var(--muted); font-size:13px; margin:35px 0 0; padding-top:18px; }
button:focus-visible,a:focus-visible { outline:3px solid var(--warning); outline-offset:3px; }
@media (max-width:700px) { .site-nav { top:10px; width:calc(100% - 20px); }.nav-toggle { background:transparent; border:0; color:var(--text); cursor:pointer; display:flex; flex-direction:column; gap:4px; padding:8px; }.nav-toggle span:not(.sr-only) { background:var(--text); border-radius:2px; height:2px; width:19px; }.nav-links { background:rgba(8,17,31,.97); border:1px solid var(--border); border-radius:13px; display:none; flex-direction:column; left:0; padding:16px; position:absolute; right:0; top:calc(100% + 8px); }.nav-links.open { display:flex; }.legal-main { padding:132px 18px 60px; }.legal-intro { font-size:16px; }.info-grid,.footer-grid { grid-template-columns:1fr; }.footer-grid { gap:28px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; scroll-behavior:auto!important; transition-duration:.01ms!important; } }
