:root { color-scheme: dark; --bg:#080808; --surface:#111114; --line:#28282f; --muted:#a1a1ad; --text:#f4f4f7; --accent:#90b7ff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:24px; }
body { margin:0; background:var(--bg); color:var(--text); font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif; line-height:1.6; }
a { color:inherit; text-decoration:none; }
a:hover { color:var(--accent); }
a:focus-visible { outline:2px solid var(--accent); outline-offset:5px; border-radius:3px; }
.site-header,main,footer { width:min(1120px,calc(100% - 48px)); margin-inline:auto; }
.site-header { min-height:90px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid var(--line); }
.brand { display:flex; gap:12px; align-items:center; font-weight:800; letter-spacing:2px; }
.site-header nav { display:flex; gap:24px; font-size:14px; color:var(--muted); }
.breadcrumbs { margin-top:30px; font-size:13px; color:var(--muted); }
.breadcrumbs span { margin-left:8px; }
.intro { padding:48px 0 32px; max-width:720px; }
.eyebrow { color:var(--accent); font-size:11px; font-weight:700; letter-spacing:2px; }
h1 { margin:15px 0 22px; font-size:clamp(38px,6vw,68px); line-height:1.08; letter-spacing:-2px; }
.intro>p:last-child { color:var(--muted); max-width:590px; font-size:16px; }
.section-nav { display:flex; flex-wrap:wrap; gap:10px; padding-bottom:44px; }
.section-nav a { padding:9px 14px; border:1px solid var(--line); border-radius:999px; font-size:12px; background:var(--surface); }
section { padding:28px 0 40px; border-top:1px solid var(--line); }
.section-heading { display:flex; justify-content:space-between; align-items:baseline; gap:16px; margin-bottom:20px; }
h2 { margin:0; font-size:24px; letter-spacing:-.6px; }
.section-heading span { color:var(--muted); font-size:12px; white-space:nowrap; }
.directory-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 24px; list-style:none; padding:0; margin:0; }
.directory-list a { display:block; min-height:48px; padding:12px 14px; border:1px solid var(--line); border-radius:8px; background:var(--surface); font-size:14px; overflow-wrap:anywhere; }
.directory-list a:hover { border-color:#4b638d; background:#141b27; }
footer { border-top:1px solid var(--line); padding:28px 0 40px; display:flex; justify-content:space-between; gap:24px; color:var(--muted); font-size:12px; }
.skip-link { position:absolute; top:8px; left:8px; padding:10px; background:var(--surface); transform:translateY(-150%); }
.skip-link:focus { transform:translateY(0); }
@media(max-width:600px) { .site-header,main,footer { width:calc(100% - 32px); } .site-header { flex-wrap:wrap; gap:12px; padding:18px 0; } .site-header nav { gap:18px; font-size:13px; } .intro { padding-top:30px; } .directory-list { grid-template-columns:1fr; } h2 { font-size:21px; } footer { flex-direction:column; gap:8px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
