:root{--bg:#0b0b0f;--bg2:#0e0e17;--ink:#e9e9ff;--muted:rgba(233,233,255,.72);--a:#7a4cff;--g:#ffcf6a;--r:18px;--max:1120px}
*{box-sizing:border-box} html,body{height:100%}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);
background:radial-gradient(1200px 700px at 60% 10%, rgba(122,76,255,.14), transparent 55%),
radial-gradient(900px 600px at 20% 30%, rgba(255,207,106,.06), transparent 55%),
linear-gradient(180deg,var(--bg),var(--bg2));overflow-x:hidden}
a{color:inherit;text-decoration:none}
.container{width:min(var(--max), calc(100% - 48px));margin:0 auto}
.bg{position:fixed;inset:0;z-index:-2;pointer-events:none}
.stars{position:absolute;inset:-40%;opacity:.35;animation:drift 28s linear infinite;
background:
radial-gradient(1px 1px at 10% 20%, rgba(255,255,255,.35) 50%, transparent 55%),
radial-gradient(1px 1px at 40% 70%, rgba(255,255,255,.25) 50%, transparent 55%),
radial-gradient(1px 1px at 80% 30%, rgba(255,255,255,.28) 50%, transparent 55%),
radial-gradient(1px 1px at 60% 90%, rgba(255,255,255,.20) 50%, transparent 55%)}
@keyframes drift{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(4%,-3%,0)}}
.glow{position:absolute;inset:-20%;opacity:.9;filter:blur(14px);
background:radial-gradient(600px 420px at 60% 20%, rgba(122,76,255,.18), transparent 60%),
radial-gradient(520px 380px at 30% 70%, rgba(255,207,106,.08), transparent 60%)}
.nav{position:sticky;top:0;z-index:10;background:linear-gradient(180deg, rgba(11,11,15,.72), rgba(11,11,15,.20));
backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.06)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand{display:flex;gap:10px;align-items:center}
.brand-mark{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);
background:linear-gradient(135deg, rgba(122,76,255,.18), rgba(255,207,106,.07))}
.brand-name{letter-spacing:.22em;font-weight:700;font-size:.95rem}
.nav-links{display:flex;gap:18px}
.nav-links a{padding:8px 10px;border-radius:10px;color:rgba(233,233,255,.86)}
.nav-links a:hover{background:rgba(255,255,255,.06)}
.hero{padding:64px 0 36px}
.hero-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center}
.kicker{display:inline-flex;padding:10px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);color:rgba(233,233,255,.80)}
h1{margin:14px 0 10px;font-size:clamp(2.2rem,4.4vw,3.6rem);line-height:1.05;letter-spacing:.06em}
h1 .sub{display:block;margin-top:10px;font-size:clamp(1.05rem,1.6vw,1.35rem);letter-spacing:.08em;color:rgba(233,233,255,.82);font-weight:600}
.lead{margin:0;color:rgba(233,233,255,.78);max-width:54ch}
.cta-row{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.14);
background:linear-gradient(135deg, rgba(122,76,255,.34), rgba(122,76,255,.10));font-weight:600}
.btn.ghost{background:rgba(255,255,255,.04)}
.motto{margin-top:16px;color:rgba(255,207,106,.85);letter-spacing:.12em;text-transform:uppercase;font-size:.82rem}
.section{padding:44px 0}
.section-head h2{margin:0;font-size:1.6rem;letter-spacing:.06em}
.muted{color:var(--muted)}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
.tile{border-radius:var(--r);border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);padding:18px}
.tile h3{margin:0 0 8px}
.tile p{margin:0;color:rgba(233,233,255,.75)}
.tile-link{display:inline-block;margin-top:14px;color:rgba(255,207,106,.88);font-weight:600}
.tag{display:inline-block;margin-top:14px;padding:8px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(0,0,0,.14);color:rgba(233,233,255,.76)}
.philo{margin-top:16px;border-radius:var(--r);border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);padding:18px}
.bullets{margin:14px 0 0;padding-left:18px;color:rgba(233,233,255,.72)}
.bullets li{margin:8px 0}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}
.linkcard{border-radius:var(--r);border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);padding:18px;display:flex;flex-direction:column;gap:6px}
.linkcard:hover{background:rgba(255,255,255,.06)}
.lc-title{font-weight:700;letter-spacing:.06em}
.lc-sub{color:rgba(233,233,255,.68)}
.lc-go{margin-top:8px;color:rgba(255,207,106,.88);font-weight:600}
.hint{margin-top:14px;color:rgba(233,233,255,.60)}
@media(max-width:900px){.hero-inner{grid-template-columns:1fr}.grid3{grid-template-columns:1fr}.grid2{grid-template-columns:1fr}.nav-links{display:none}}

/* --- Banner + Status --- */
.top-banner{
  position: sticky; top: 0; z-index: 9999;
  text-align:center;
  padding:10px 12px;
  font-weight:700;
  letter-spacing:.06em;
  background: rgba(0,0,0,.65);
  border-bottom: 1px solid rgba(255,255,255,.10);
  backdrop-filter: blur(8px);
}
.top-banner a{ text-decoration: underline; }

.status-row{
  margin-top: 14px;
  display:flex;
  gap:10px;
  flex-wrap: wrap;
  align-items:center;
  color: rgba(233,233,255,.78);
}
.pill{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
  font-weight:700;
}
.pill.on{ border-color: rgba(255,207,106,.55); }
.pill.off{ border-color: rgba(255,255,255,.14); opacity:.85; }
.ports{ opacity:.7; font-size:.92rem; }
