/* ============================================================================
   VedicSpace · Imperial Twilight — shared site design system
   Gold (light) on deep imperial-purple (void). Cormorant + Inter + Space Mono.
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=Inter:wght@400;500;600&family=Space+Mono:wght@400;700&family=Tiro+Devanagari+Sanskrit&family=Noto+Serif+Devanagari:wght@400;500;600&display=swap');

:root{
  --void:#0D0618; --void2:#150D28; --panel:#1E1438;
  --gold:#D4A843; --gold-br:#F0C84A; --gold-dim:#8a7233; --gold-soft:#F3D78C; --gold-mist:rgba(212,168,67,0.10);
  --crimson:#A61E4D; --crimson-br:#C8506A; --danger:#D94A3D;
  --silver:#B8A898; --ink:#F0E6D3; --ink-soft:#B8A898; --ink-faint:rgba(240,230,211,.45);
  --line:rgba(212,168,67,.18); --line-soft:rgba(212,168,67,.10); --line-grid:rgba(212,168,67,.40);
  --green:#6FB58A; --amber:#D4A843; --red:#D94A3D; --violet:#9C67E5;
  --shubh:#6FB58A; --shubh-text:#9FD6BB; --ashubh:#C8694A; --ashubh-text:#E89A7E; --neutral:#B8A898;
  --g-surya:#E9A92C; --g-chandra:#E0DFEF; --g-mangala:#E5614A; --g-budha:#6FCF7A; --g-guru:#F0A23E; --g-shukra:#E899B5; --g-shani:#7E8E9A; --g-rahu:#9C67E5; --g-ketu:#927E8C; --g-gulika:#8A8175;
  --serif:'Cormorant Garamond',Georgia,serif; --body:'Inter',-apple-system,'Segoe UI',sans-serif; --mono:'Space Mono',ui-monospace,monospace;
  --r-sm:2px; --r-md:4px; --r-lg:8px;
  --ease:cubic-bezier(.22,1,.36,1);
  --maxw:1180px;
  --gutter:24px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{ background:var(--void); color:var(--ink); font-family:var(--body); font-weight:400; line-height:1.7; font-size:16px; position:relative; overflow-x:hidden; min-height:100vh; }

/* atmosphere */
.atmos{ position:fixed; inset:-20%; z-index:0; pointer-events:none;
  background:
    radial-gradient(40% 42% at 20% 18%, rgba(37,26,66,.7), transparent 70%),
    radial-gradient(44% 42% at 84% 24%, rgba(30,20,56,.6), transparent 70%),
    radial-gradient(54% 50% at 56% 96%, rgba(166,30,77,.10), transparent 72%),
    radial-gradient(64% 64% at 50% 50%, rgba(21,13,40,.6), var(--void) 84%);
  animation:atmos-drift 34s ease-in-out infinite alternate; }
@keyframes atmos-drift{ to{ transform:translate(-2%,2%) scale(1.05);} }
.starfield{ position:fixed; inset:0; z-index:0; pointer-events:none; }
.vignette{ position:fixed; inset:0; z-index:1; pointer-events:none; background:radial-gradient(82% 82% at 50% 36%, transparent 60%, rgba(3,2,9,.6)); }
@keyframes tw{ 0%,100%{opacity:.18;} 50%{opacity:.92;} }

/* layout */
.page{ position:relative; z-index:2; }
.container{ max-width:var(--maxw); margin:0 auto; padding:0 var(--gutter); }
.section{ padding:88px 0; position:relative; z-index:2; }
.section.tight{ padding:54px 0; }

/* typography */
h1,h2,h3,h4{ font-family:var(--serif); font-weight:700; line-height:1.06; letter-spacing:.01em; }
.dev{ font-family:var(--serif); color:var(--gold); font-weight:600; }
.hi, .dev.hi { font-family:'Noto Serif Devanagari', var(--serif); }
.eyebrow{ font-family:var(--body); font-weight:600; font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-soft); }
.lede{ color:var(--ink-soft); font-size:18px; line-height:1.6; }
.muted{ color:var(--ink-faint); }
a{ color:inherit; text-decoration:none; }

.rule{ width:120px; height:1px; background:linear-gradient(90deg,transparent,var(--gold),transparent); }
.rule.center{ margin:30px auto; }

/* navbar */
.nav{ position:sticky; top:0; z-index:40; backdrop-filter:blur(12px); background:rgba(13,6,24,.8); border-bottom:1px solid var(--line); }
.nav-in{ max-width:var(--maxw); margin:0 auto; padding:14px var(--gutter); display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:56px; }
.brand{ display:flex; align-items:center; gap:11px; }
.brand .seal{ width:36px; height:36px; border-radius:50%; display:grid; place-items:center; font-size:17px; color:var(--gold-br); background:radial-gradient(circle at 38% 32%, rgba(212,168,67,.46), transparent 70%); border:1px solid var(--line); box-shadow:0 0 26px -8px rgba(212,168,67,.6); }
.brand .bn{ font-family:var(--serif); font-weight:700; font-size:21px; letter-spacing:.01em; }
.brand .bn .dev{ font-size:15px; margin-left:3px; }
.nav-links{ display:flex; align-items:center; gap:5px; }
.nav-links a{ font-family:var(--body); font-size:12.5px; font-weight:500; letter-spacing:.04em; color:var(--ink-soft); padding:8px 13px; border-radius:var(--r-md); transition:color .2s, background .2s; white-space:nowrap; }
.nav-links a:hover{ color:var(--gold); }
.nav-links a.active{ color:var(--gold-br); background:var(--gold-mist); }
.nav-cta{ font-family:var(--body); font-size:11px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--ink); background:var(--crimson); padding:9px 18px; border-radius:var(--r-md); transition:background .2s; }
.nav-cta:hover{ background:var(--crimson-br); }
.nav-burger{ display:none; background:none; border:0; color:var(--ink); font-size:22px; cursor:pointer; }

/* buttons */
.btn{ display:inline-flex; align-items:center; gap:9px; font-family:var(--body); font-weight:600; font-size:12px; letter-spacing:.08em; text-transform:uppercase; padding:13px 26px; border-radius:var(--r-md); cursor:pointer; border:0; transition:all .22s; }
.btn.gold{ background:var(--gold); color:var(--void); } .btn.gold:hover{ background:var(--gold-br); transform:translateY(-1px); }
.btn.crimson{ background:var(--crimson); color:var(--ink); } .btn.crimson:hover{ background:var(--crimson-br); transform:translateY(-1px); }
.btn.ghost{ background:transparent; color:var(--gold); border:1px solid var(--gold); } .btn.ghost:hover{ background:var(--gold-mist); }

/* cards */
.card{ position:relative; overflow:hidden; border-radius:var(--r-lg); padding:22px; background:var(--void2); border:1px solid var(--line); }
.card .aura{ position:absolute; top:-30%; right:-20%; width:150px; height:150px; border-radius:50%; background:radial-gradient(circle,var(--ac,var(--gold)),transparent 70%); opacity:.12; filter:blur(28px); pointer-events:none; }
.grid{ display:grid; gap:16px; }
.grid.c2{ grid-template-columns:repeat(2,1fr); } .grid.c3{ grid-template-columns:repeat(3,1fr); } .grid.c4{ grid-template-columns:repeat(4,1fr); }
.grid.auto{ grid-template-columns:repeat(auto-fill,minmax(248px,1fr)); }

/* footer */
.footer{ position:relative; z-index:2; border-top:1px solid var(--line); background:rgba(13,6,24,.6); padding:54px 0 30px; margin-top:30px; }
.footer-grid{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:30px; }
.footer h5{ font-family:var(--body); font-weight:600; font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:var(--gold); margin-bottom:14px; }
.footer a{ display:block; color:var(--ink-soft); font-size:13.5px; padding:4px 0; transition:color .2s; }
.footer a:hover{ color:var(--gold); }
.footer .blurb{ color:var(--ink-faint); font-size:13px; margin-top:12px; max-width:280px; }
.footer-bottom{ border-top:1px solid var(--line-soft); margin-top:34px; padding-top:20px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-family:var(--mono); font-size:10px; letter-spacing:.06em; color:var(--ink-faint); }

/* reveal — always visible (animation removed for render-context robustness) */
.reveal{ opacity:1 !important; transform:none !important; }

/* Vedika-level hero + glass stats */
.hero-vedika{ padding-top:108px; text-align:center; position:relative; }
.hero-vedika::before{
  content:""; position:absolute; inset:0 0 auto 0; height:min(520px,72vh); z-index:-1; pointer-events:none;
  background:radial-gradient(62% 48% at 50% 0%, rgba(37,26,66,.85), transparent 72%),
             radial-gradient(40% 32% at 50% 100%, rgba(166,30,77,.08), transparent 70%);
}
.hero-vedika h1{ font-size:clamp(42px,6.5vw,72px); max-width:920px; margin-left:auto; margin-right:auto; line-height:1.04; }
.hero-vedika h1 em{ font-style:italic; color:var(--gold-soft); font-weight:500; }
.hero-vedika .lede{ max-width:580px; margin-left:auto; margin-right:auto; font-size:17px; }
.hero-vedika .cta-single{ margin-top:36px; }
.trust-glass{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; max-width:880px; margin:56px auto 0; }
.trust-glass .stat{
  background:linear-gradient(160deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  border:1px solid var(--line); border-radius:var(--r-lg); padding:22px 16px;
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
}
.trust-glass .stat .num{ font-family:var(--serif); font-size:34px; font-weight:700; color:var(--gold-br); line-height:1; }
.trust-glass .stat .lbl{ font-family:var(--mono); font-size:9px; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-faint); margin-top:8px; }
.chip-shubh{ display:inline-block; padding:3px 9px; border-radius:var(--r-sm); font-size:10px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; background:rgba(111,181,138,.16); color:var(--shubh-text); border:1px solid rgba(111,181,138,.35); }
.chip-ashubh{ display:inline-block; padding:3px 9px; border-radius:var(--r-sm); font-size:10px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; background:rgba(200,105,74,.16); color:var(--ashubh-text); border:1px solid rgba(200,105,74,.35); }

@media (prefers-reduced-motion: reduce){ .atmos{ animation:none; } }

/* responsive */
@media (max-width:900px){
  .footer-grid{ grid-template-columns:1fr 1fr; }
  .grid.c3,.grid.c4{ grid-template-columns:1fr 1fr; }
}
@media (max-width:680px){
  .nav-links{ position:fixed; inset:60px 0 auto 0; flex-direction:column; align-items:stretch; gap:0; background:rgba(13,6,24,.98); border-bottom:1px solid var(--line); padding:10px 0; transform:translateY(-130%); transition:transform .3s var(--ease); }
  .nav-links.open{ transform:none; }
  .nav-links a{ padding:13px 26px; border-radius:0; }
  .nav-burger{ display:block; }
  .grid.c2,.grid.c3,.grid.c4{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns:1fr; }
  h1{ font-size:42px !important; }
  .section{ padding:60px 0; }
}
