/* ============================================================
   Dark theme for public static pages (About / Contact /
   Privacy / Terms). Loaded after the page's own stylesheet so
   these overrides win. Matches the dark landing.
   ============================================================ */
body{ background:#0a0b14; color:#e8eaf3; }
body::before{
  content:''; position:fixed; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(60% 40% at 50% -5%, rgba(99,102,241,.20), transparent 70%),
    radial-gradient(40% 30% at 92% 12%, rgba(236,72,153,.14), transparent 70%),
    radial-gradient(40% 30% at 6% 30%, rgba(34,211,238,.10), transparent 70%);
}

/* ---- nav (match landing dark glass) ---- */
header.nav{ background:transparent !important; }
header.nav .nav-inner{
  background:rgba(15,16,32,.55) !important; backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.10) !important; box-shadow:0 10px 40px -16px rgba(0,0,0,.7) !important;
}
header.nav .brand,header.nav .brand span{ color:#fff !important; }
header.nav .brand img{ height:54px !important; width:auto !important; max-width:240px !important; object-fit:contain; }
header.nav .nav-links .link{ color:#9aa1bd !important; }
header.nav .nav-links .link:hover{ color:#fff !important; }
header.nav .btn.btn-primary{ background:linear-gradient(135deg,#6366f1,#ec4899) !important; color:#fff !important; border:0 !important; box-shadow:0 8px 24px -8px rgba(124,58,237,.7) !important; }
.site-foot .foot-brand .wordmark img{ height:64px !important; width:auto !important; max-width:280px !important; object-fit:contain; }

/* ---- article ---- */
.sp-shell{ position:relative; z-index:2; }
.sp-header .sp-eyebrow{ color:#a5b4fc !important; background:rgba(99,102,241,.12); border:1px solid rgba(99,102,241,.25); padding:5px 13px; border-radius:999px; }
.sp-title{ color:#fff !important; }
.sp-excerpt{ color:#9aa1bd !important; }
.sp-body{ color:#c7cbe4 !important; }
.sp-body h1,.sp-body h2,.sp-body h3,.sp-body h4{ color:#fff !important; }
.sp-body p,.sp-body li,.sp-body td{ color:#c7cbe4 !important; }
.sp-body strong{ color:#fff !important; }
.sp-body a{ color:#a5b4fc !important; }
.sp-body a[href^="mailto"],.sp-body a[href^="tel"]{ color:#c4b5fd !important; font-weight:600; }
.sp-body hr{ border-color:rgba(255,255,255,.1) !important; }
.sp-body blockquote{ border-left-color:rgba(139,92,246,.5) !important; color:#b9bedb !important; }
.sp-body code,.sp-body pre{ background:rgba(255,255,255,.06) !important; color:#e8eaf3 !important; border:1px solid rgba(255,255,255,.08); }
.sp-updated{ color:#6b7194 !important; }

/* ---- agni orbs ---- */
.dp-orb{ position:fixed; border-radius:50%; filter:blur(40px); pointer-events:none; z-index:1;
  background:radial-gradient(circle,rgba(255,150,50,.45),rgba(255,40,0,0) 70%); animation:dpEmber 10s ease-in-out infinite; }
.dp-orb.a{ width:150px; height:150px; top:18%; left:7%; }
.dp-orb.b{ width:120px; height:120px; bottom:14%; right:9%; animation-delay:-4s; }
@keyframes dpEmber{ 0%,100%{ transform:translateY(0) scale(1); opacity:.5; } 50%{ transform:translateY(-22px) scale(1.12); opacity:.85; } }
@media(prefers-reduced-motion:reduce){ .dp-orb{ animation:none; } }
