:root{--void:#070b12;--hull:#111a28;--steel:#1f2d42;--gold:#e5a93d;--ice:#74d6e4;--tx:#d8e0ea;--mut:#8fa0b5}
@media(prefers-color-scheme:light){:root{--void:#eef2f7;--hull:#fff;--steel:#cfd9e6;--gold:#a8680a;--ice:#0b7a8a;--tx:#14202f;--mut:#51637a}}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--void);color:var(--tx);font:17px/1.65 'Source Sans 3',system-ui,sans-serif}
h1,h2,h3,.logo{font-family:Oxanium,sans-serif;line-height:1.15}
a{color:var(--ice)}a:focus-visible,.btn:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.top{display:flex;flex-wrap:wrap;gap:12px 32px;align-items:center;justify-content:space-between;padding:16px clamp(16px,4vw,56px);border-bottom:1px solid var(--steel);position:sticky;top:0;background:var(--void);z-index:5}
.logo{font-size:1.5rem;font-weight:800;text-decoration:none;color:var(--tx)}.logo b{color:var(--gold);margin-left:6px}
nav{display:flex;flex-wrap:wrap;gap:6px 22px}nav a{color:var(--mut);text-decoration:none;font-weight:600}nav a:hover{color:var(--gold)}
.hero{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center;min-height:70vh;padding:60px clamp(16px,4vw,56px);background:radial-gradient(1px 1px at 20% 30%,#fff8,transparent),radial-gradient(1px 1px at 70% 60%,#fff6,transparent),radial-gradient(1.5px 1.5px at 40% 80%,#fff7,transparent)}
.hero h1{font-size:clamp(2.2rem,5.5vw,4.4rem);margin:0 0 20px;font-weight:800}.hero p{max-width:52ch;color:var(--mut);font-size:1.15rem}
.orb{aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffd98a,var(--gold) 25%,#6b3c0a 60%,#120a04 80%);box-shadow:0 0 120px #e5a93d44;animation:spin 40s linear infinite;max-width:380px;width:100%;justify-self:center}
@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.orb{animation:none}}
.btn{display:inline-block;margin:6px 6px 6px 0;padding:11px 22px;background:var(--gold);color:#120a04;font-weight:700;text-decoration:none;border-radius:3px}
.btn.ghost{background:transparent;border:1px solid var(--gold);color:var(--gold)}
.page{max-width:1100px;margin:0 auto;padding:40px clamp(16px,4vw,32px) 80px}
.page h1{font-size:clamp(2rem,4vw,3rem);margin:.2em 0}.page h2{margin:2em 0 .6em;font-size:1.5rem;border-left:3px solid var(--gold);padding-left:12px}
.lead{font-size:1.2rem;max-width:62ch;color:var(--mut)}.crumbs{color:var(--mut);font-size:.9rem}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.card{display:block;padding:20px;background:var(--hull);border:1px solid var(--steel);border-radius:4px;text-decoration:none;color:var(--tx);transition:border-color .2s}
.card:hover{border-color:var(--gold)}.card h3{margin:0 0 8px;color:var(--gold)}.card p{margin:0;color:var(--mut);font-size:.96rem}
dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 24px;margin:24px 0}dt{color:var(--mut)}dd{margin:0;font-weight:600}
footer{border-top:1px solid var(--steel);padding:28px clamp(16px,4vw,56px);color:var(--mut);font-size:.9rem}
@media(max-width:760px){.hero{grid-template-columns:1fr;min-height:auto}.orb{max-width:220px;order:-1}}
.video{position:relative;aspect-ratio:16/9;margin:24px 0;background:#000;border:1px solid var(--steel);border-radius:4px;overflow:hidden}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
