:root{
  --b29-bg:#0b1220;
  --b29-surface:#0f1a2e;
  --b29-ink:#e5e7eb;
  --b29-muted:#9ca3af;
  --b29-accent:#22d3ee;
}

body{background:radial-gradient(1200px 600px at 20% 10%, rgba(34,211,238,.16), transparent 60%), var(--b29-bg);color:var(--b29-ink)}

.b29-top{background:rgba(15,26,46,.72);backdrop-filter:saturate(120%) blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}
#logo a{text-decoration:none;color:var(--b29-ink);font-weight:700;letter-spacing:.2px}

.b29-card{background:rgba(15,26,46,.85);border:1px solid rgba(255,255,255,.08)}
.b29-nav .nav-link{color:var(--b29-ink)}
.b29-nav .nav-link.active{background:rgba(34,211,238,.18);border:1px solid rgba(34,211,238,.25)}

.b29-timeline{display:grid;gap:12px}
.b29-tl-item{display:grid;grid-template-columns: 14px 1fr;gap:10px;align-items:start}
.b29-dot{width:10px;height:10px;border-radius:999px;background:var(--b29-accent);margin-top:6px;box-shadow:0 0 0 4px rgba(34,211,238,.12)}
.b29-tl-body{border-left:1px dashed rgba(255,255,255,.14);padding-left:12px}

.b29-drawer .card{background:rgba(15,26,46,.95);border:1px solid rgba(255,255,255,.10)}

#footer{padding:28px 0;border-top:1px solid rgba(255,255,255,.10)}
#footer .social{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
#footer .social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:rgba(15,26,46,.85);border:1px solid rgba(255,255,255,.10);text-decoration:none;color:var(--b29-ink)}
#footer p{margin:0;color:var(--b29-muted)}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
