:root{
  --maroon-dark:#1c0910;
  --maroon:#2f0f1c;
  --maroon-light:#4a1626;
  --ink:#150a0d;
  --gold:#c9962c;
  --gold-light:#f7dfa5;
  --saffron:#e8843a;
  --cream:#f8ecd4;
  --text-soft:#e9dcc2;
  --text-mute:#c9b79a;
  --max-w:1120px;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:radial-gradient(ellipse at 20% -10%, var(--maroon-light) 0%, var(--maroon-dark) 45%, var(--ink) 100%);
  color:var(--text-soft);
  font-family:'Poppins',sans-serif;
  font-weight:300;
  line-height:1.7;
  overflow-x:hidden;
  position:relative;
}

.container{max-width:var(--max-w);margin:0 auto;padding:0 24px;}

h1,h2,h3{font-family:'Cinzel',serif;color:var(--gold-light);font-weight:700;letter-spacing:.02em;margin:0 0 .5em;}
h2{font-size:clamp(1.8rem,3vw,2.6rem);}
h3{font-size:1.25rem;color:var(--gold-light);}
p{margin:0 0 1.1em;color:var(--text-soft);}
em{color:var(--gold-light);font-style:italic;}
strong{color:#fff;font-weight:600;}

a{color:var(--gold-light);}

/* background texture */
.bg-mandala{
  position:fixed;inset:0;z-index:-2;pointer-events:none;
  background-image:
    radial-gradient(circle at 15% 20%, rgba(201,150,44,.10), transparent 40%),
    radial-gradient(circle at 85% 75%, rgba(232,132,58,.10), transparent 45%);
}
.grain{
  position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* header / nav */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(28,9,16,.65);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(201,150,44,.25);
}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px;}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:'Cinzel',serif;color:var(--gold-light);font-size:1.2rem;letter-spacing:.05em;}
.nav-links{list-style:none;display:flex;gap:2.2rem;margin:0;padding:0;}
.nav-links a{text-decoration:none;color:var(--text-soft);font-size:.92rem;letter-spacing:.03em;transition:color .2s;position:relative;}
.nav-links a:hover{color:var(--gold-light);}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;}
.nav-toggle span{width:24px;height:2px;background:var(--gold-light);display:block;}

.lang-toggle{display:flex;gap:.35rem;list-style:none;}
.lang-btn{
  font-family:'Poppins',sans-serif;
  padding:.35rem .8rem;border:1px solid rgba(201,150,44,.45);
  border-radius:999px;font-size:.72rem;letter-spacing:.06em;
  background:transparent;color:var(--text-mute);cursor:pointer;
  transition:background .2s,color .2s,border-color .2s;
}
.lang-btn:hover{border-color:rgba(201,150,44,.8);color:var(--gold-light);}
.lang-btn.active{
  background:linear-gradient(135deg,var(--gold-light),var(--gold));
  color:var(--ink);border-color:transparent;font-weight:600;
}

/* hero */
.hero{
  position:relative;min-height:92vh;display:flex;align-items:center;justify-content:center;
  text-align:center;overflow:hidden;padding:100px 20px 60px;
}
.hero-glow{
  position:absolute;top:-20%;left:50%;transform:translateX(-50%);
  width:900px;height:900px;border-radius:50%;
  background:radial-gradient(circle, rgba(232,132,58,.18) 0%, transparent 65%);
  z-index:0;
}
.hero-mandala{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:min(720px,110vw);height:auto;z-index:0;animation:spin 120s linear infinite;
}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg);}}
.hero-content{position:relative;z-index:1;}
.eyebrow{color:var(--text-mute);font-family:'Noto Sans Devanagari',serif;letter-spacing:.1em;margin-bottom:1.2rem;}
.devanagari-title{
  font-family:'Noto Sans Devanagari',serif;
  font-size:clamp(2.4rem,7vw,4.6rem);
  background:linear-gradient(180deg,var(--gold-light),var(--gold));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  margin-bottom:.1em;
}
.hero-title{
  font-size:clamp(2.6rem,8vw,5.2rem);
  letter-spacing:.06em;
  background:linear-gradient(180deg,#fff,var(--gold-light) 60%,var(--gold));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  margin-bottom:.4em;
}
.hero-sub{max-width:560px;margin:0 auto 2.4rem;color:var(--text-mute);font-size:1.05rem;}
.scroll-cue{display:inline-block;width:26px;height:42px;border:2px solid var(--gold);border-radius:14px;position:relative;}
.scroll-cue span{position:absolute;top:6px;left:50%;transform:translateX(-50%);width:5px;height:9px;border-radius:3px;background:var(--gold-light);animation:cue 1.6s infinite;}
@keyframes cue{0%{opacity:1;top:6px;}70%{opacity:0;top:20px;}100%{opacity:0;top:6px;}}

/* sections */
.section{padding:100px 0;position:relative;}
.section.alt-bg{background:linear-gradient(180deg,rgba(0,0,0,0) 0%, rgba(0,0,0,.18) 100%);}
.kicker{
  text-transform:uppercase;letter-spacing:.2em;font-size:.78rem;color:var(--saffron);
  margin-bottom:.8rem;font-weight:500;
}
.kicker.center,h2.center,.section-intro.center{text-align:center;}
.section-intro{max-width:640px;margin:0 auto 3rem;color:var(--text-mute);}

.two-col{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center;}
.two-col.reverse{grid-template-columns:.85fr 1.15fr;}
.two-col.reverse .col-art{order:1;}
.two-col.reverse .col-text{order:2;}

.col-art{display:flex;justify-content:center;}
.art-lotus{width:min(320px,80%);filter:drop-shadow(0 0 30px rgba(201,150,44,.25));animation:float 7s ease-in-out infinite;}
.art-flame{width:min(240px,70%);filter:drop-shadow(0 0 30px rgba(232,132,58,.35));animation:float 5s ease-in-out infinite;}
@keyframes float{0%,100%{transform:translateY(0);}50%{transform:translateY(-14px);}}

.fact-row{display:flex;gap:2.2rem;margin-top:2rem;flex-wrap:wrap;}
.fact{text-align:center;}
.fact-num{display:block;font-family:'Cinzel',serif;font-size:2rem;color:var(--gold-light);}
.fact-label{display:block;font-size:.78rem;color:var(--text-mute);letter-spacing:.04em;margin-top:.3rem;max-width:110px;}

.related-names{
  margin-top:2rem;padding:1.6rem 1.8rem;border:1px solid rgba(201,150,44,.3);
  border-radius:14px;background:rgba(201,150,44,.06);width:100%;
}
.related-title{color:var(--gold-light);font-size:.85rem;letter-spacing:.05em;text-transform:uppercase;margin-bottom:.8rem;}
.related-names ul{margin:0;padding-left:1.1rem;}
.related-names li{margin-bottom:.4rem;color:var(--text-mute);font-size:.94rem;}

.layer-list{padding-left:1.2rem;color:var(--text-mute);}
.layer-list li{margin-bottom:.5rem;}

.divider{max-width:400px;margin:0 auto;opacity:.6;}
.divider.flip svg{transform:scaleY(-1);}

/* practice illustrations */
.practice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:2.5rem;}
.practice-card{
  text-align:center;padding:2rem 1.5rem;border-radius:18px;
  background:linear-gradient(160deg, rgba(74,22,38,.45), rgba(28,9,16,.25));
  border:1px solid rgba(201,150,44,.25);
  transition:transform .3s ease, border-color .3s ease;
}
.practice-card:hover{transform:translateY(-6px);border-color:rgba(201,150,44,.5);}
.practice-icon{width:min(220px,70%);margin:0 auto 1rem;display:block;animation:float 7s ease-in-out infinite;}
.practice-caption{color:var(--text-mute);font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.05rem;margin-bottom:0;}

/* veda grid */
.veda-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.8rem;margin-top:2rem;}
.veda-card{
  background:linear-gradient(160deg, rgba(74,22,38,.55), rgba(28,9,16,.35));
  border:1px solid rgba(201,150,44,.25);
  border-radius:18px;padding:2rem;position:relative;overflow:hidden;
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.veda-card::before{
  content:"";position:absolute;inset:0;border-radius:18px;padding:1px;
  background:linear-gradient(135deg, rgba(247,223,165,.4), transparent 40%);
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;
}
.veda-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px rgba(0,0,0,.35);border-color:rgba(201,150,44,.55);}
.veda-icon{color:var(--gold);width:44px;height:44px;margin-bottom:1rem;}
.veda-icon svg{width:100%;height:100%;}
.veda-dev{font-family:'Noto Sans Devanagari',serif;color:var(--text-mute);margin-bottom:0;font-size:1rem;}
.veda-meaning-line{color:var(--saffron);font-style:italic;font-size:.95rem;margin-bottom:1rem;}
.veda-card blockquote{
  margin:1.4rem 0 0;padding:1rem 1.2rem;border-left:2px solid var(--gold);
  background:rgba(0,0,0,.18);border-radius:0 10px 10px 0;
}
.sanskrit{font-family:'Noto Sans Devanagari',serif;color:var(--gold-light);font-size:1.05rem;margin-bottom:.5rem;}
.translation{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--text-mute);font-size:1.05rem;margin-bottom:0;}
.translation span{display:block;margin-top:.4rem;font-size:.8rem;color:var(--gold);font-style:normal;letter-spacing:.04em;}

/* legacy */
.legacy{text-align:center;}
.center-col{display:flex;flex-direction:column;align-items:center;max-width:680px;margin:0 auto;}
.om-large{width:90px;margin-bottom:1.5rem;animation:float 6s ease-in-out infinite;}
.legacy-text{color:var(--text-mute);font-size:1.1rem;font-family:'Cormorant Garamond',serif;font-style:italic;}

/* region map art */
.art-map{width:min(260px,75%);filter:drop-shadow(0 0 30px rgba(201,150,44,.25));animation:float 8s ease-in-out infinite;}

/* gotras */
.gotra-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem;margin-top:2.5rem;}
.gotra-card{
  padding:2rem;border-radius:16px;
  background:linear-gradient(160deg, rgba(74,22,38,.5), rgba(28,9,16,.3));
  border:1px solid rgba(201,150,44,.25);
}
.gotra-region{color:var(--gold-light);font-family:'Cinzel',serif;font-size:1rem;letter-spacing:.02em;margin-bottom:.6rem;}
.gotra-region span{display:block;color:var(--text-mute);font-family:'Poppins',sans-serif;font-size:.78rem;font-weight:300;letter-spacing:.02em;margin-top:.2rem;}
.gotra-count{margin-bottom:.8rem;}
.gotra-count .fact-num{font-size:1.6rem;margin-right:.4rem;}
.gotra-card p:last-child{margin-bottom:0;color:var(--text-mute);font-size:.94rem;}
.gotra-note{
  max-width:760px;margin:2.5rem auto 0;text-align:center;font-family:'Cormorant Garamond',serif;
  font-style:italic;color:var(--text-mute);font-size:1.05rem;
}

/* footer */
.site-footer{padding:3rem 0;text-align:center;border-top:1px solid rgba(201,150,44,.2);color:var(--text-mute);}
.footer-inner p{margin:0;}
.footer-sub{font-size:.8rem;color:var(--gold);letter-spacing:.08em;margin-top:.4rem;}
.footer-credit{font-size:.75rem;color:var(--text-mute);margin-top:1.2rem;}
.footer-credit a{color:var(--gold-light);text-decoration:underline;}
.footer-credit a:hover{color:var(--gold);}

/* reveal animation */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease, transform .8s ease;}
.reveal.in-view{opacity:1;transform:translateY(0);}

/* responsive */
@media (max-width:860px){
  .two-col,.two-col.reverse{grid-template-columns:1fr;}
  .two-col.reverse .col-art{order:0;}
  .veda-grid{grid-template-columns:1fr;}
  .gotra-grid{grid-template-columns:1fr;}
  .practice-grid{grid-template-columns:1fr;}
  .nav-links{
    position:fixed;top:72px;left:0;right:0;
    background:rgba(28,9,16,.97);
    flex-direction:column;padding:1.5rem;gap:1.2rem;
    transform:translateY(-130%);transition:transform .3s ease;
    border-bottom:1px solid rgba(201,150,44,.25);
  }
  .nav-links.open{transform:translateY(0);}
  .nav-toggle{display:flex;}
}
