/* TRIDEV CORE HQ — Premium spiritual dark + gold v22 */
:root{
  --bg:#09080c;
  --bg2:#121014;
  --bg3:#07060a;
  --text:#f0d080;
  --gold:#c9a84c;
  --gold-soft:rgba(201,168,76,.55);
  --gold-dim:rgba(201,168,76,.22);
  --gold-glow:rgba(201,168,76,.18);
  --muted:rgba(232,213,176,.78);
  --dim:rgba(232,213,176,.45);
  --border:rgba(201,168,76,.16);
  --card:#121014;
  --topbg:rgba(9,8,12,.96);
  --navbg:rgba(9,8,12,.97);
  --inputbg:rgba(18,16,22,.92);
  --max:720px;
  --ease:cubic-bezier(.25,.1,.25,1);
  --shadow:0 10px 32px rgba(0,0,0,.48),0 2px 10px rgba(201,168,76,.07);
  --shadow-hover:0 18px 44px rgba(0,0,0,.58),0 0 32px rgba(201,168,76,.16);
}
[data-theme=light]{
  --bg:#f7f0e4;
  --bg2:#fff;
  --bg3:#efe6d4;
  --text:#3a2a10;
  --gold:#8b6914;
  --gold-soft:rgba(139,105,20,.55);
  --gold-dim:rgba(139,105,20,.25);
  --gold-glow:rgba(139,105,20,.12);
  --muted:#5a4a30;
  --dim:#8a7a60;
  --border:rgba(139,105,20,.22);
  --card:#fff;
  --topbg:rgba(247,240,228,.97);
  --navbg:rgba(247,240,228,.98);
  --inputbg:#fff;
  --shadow:0 8px 24px rgba(60,40,10,.08);
  --shadow-hover:0 14px 36px rgba(60,40,10,.12),0 0 20px rgba(139,105,20,.1);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--bg);
  color:var(--text);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI','Noto Sans Devanagari',sans-serif;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--gold);text-decoration:none;transition:color .3s var(--ease),opacity .3s var(--ease)}
audio{width:100%;max-width:320px;height:36px;margin-top:10px;border-radius:8px}

/* —— Top bar —— */
.top{
  background:var(--topbg);
  padding:12px 16px;
  border-bottom:1px solid rgba(201,168,76,.32);
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
}
.top img{width:30px;height:30px;border-radius:50%;object-fit:cover;flex-shrink:0;box-shadow:0 0 14px rgba(201,168,76,.28)}
.top b{color:var(--gold);font-size:.86rem;letter-spacing:.8px;flex:1;white-space:nowrap;font-weight:700}
.langbar{display:flex;gap:5px}
.langbar button,.theme-btn{
  font-size:.58rem;padding:6px 9px;
  border:1px solid rgba(201,168,76,.28);
  border-radius:7px;background:transparent;color:var(--dim);
  cursor:pointer;font-family:inherit;line-height:1;
  transition:all .3s var(--ease);
}
.langbar button:hover,.theme-btn:hover{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,.08)}
.langbar button.on{background:rgba(201,168,76,.2);color:var(--gold);border-color:var(--gold);box-shadow:0 0 12px rgba(201,168,76,.15)}

/* —— Hero —— */
.hero{padding:40px 18px 36px;text-align:center;max-width:var(--max);margin:0 auto}
.hero .logo{
  width:118px;height:118px;border-radius:50%;margin:0 auto 18px;
  border:2px solid rgba(201,168,76,.5);object-fit:cover;
  box-shadow:0 0 42px rgba(100,50,255,.32),0 0 22px rgba(201,168,76,.22);
  transition:transform .4s var(--ease),box-shadow .4s var(--ease);
}
.hero .logo:hover{transform:scale(1.05);box-shadow:0 0 52px rgba(100,50,255,.42),0 0 30px rgba(201,168,76,.3)}
.hero h1{font-size:clamp(1.48rem,5vw,2.1rem);color:var(--text);margin:4px 0;font-weight:800;letter-spacing:.6px}
.hero .sub{color:var(--gold);font-size:.76rem;letter-spacing:2.6px;margin-bottom:14px;font-weight:600}
.hero .banner{width:100%;max-width:360px;margin:10px auto 16px;filter:drop-shadow(0 4px 18px rgba(201,168,76,.18))}
.hero .tag{color:var(--muted);font-size:.92rem;line-height:1.75;margin:0 0 20px}
.hero .btns{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.hero .btns a{
  padding:10px 17px;border:1px solid rgba(201,168,76,.4);color:var(--gold);
  font-size:.73rem;border-radius:9px;background:rgba(201,168,76,.06);
  letter-spacing:.3px;font-weight:600;
  transition:all .3s var(--ease);
}
.hero .btns a:hover{
  background:rgba(201,168,76,.16);
  border-color:var(--gold);
  transform:translateY(-2px);
  box-shadow:0 6px 18px rgba(201,168,76,.2);
}
.search{max-width:380px;margin:20px auto 0;position:relative}
.search input{
  width:100%;padding:13px 14px 13px 42px;
  border:1px solid rgba(201,168,76,.28);border-radius:12px;
  background:var(--inputbg);color:var(--text);font-size:.9rem;
  font-family:inherit;outline:none;
  transition:border-color .3s var(--ease),box-shadow .3s var(--ease);
}
.search input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.12)}
.search::before{content:"🔍";position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:.9rem;opacity:.5}

/* —— Sections —— */
.sec{
  padding:48px 18px 28px;
  border-top:1px solid var(--border);
  max-width:var(--max);margin:0 auto;
}
.sec h2{
  color:var(--gold);
  font-size:clamp(1.15rem,4.2vw,1.48rem);
  text-align:center;
  margin:0 auto 12px;
  font-weight:750;
  letter-spacing:1.4px;
  display:table;
  padding-bottom:14px;
  position:relative;
}
.sec h2::after{
  content:"";
  display:block;
  width:60px;height:1.6px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  margin:14px auto 0;
  border-radius:2px;
  box-shadow:0 0 10px rgba(201,168,76,.45);
}
.sec .s{
  text-align:center;color:var(--dim);font-size:.82rem;
  margin-bottom:26px;font-style:italic;letter-spacing:.25px;line-height:1.55;
}

/* —— Content cards —— */
#dharma .card,#vishvarupa .card,#awareness .card,#books .card{
  background:linear-gradient(155deg,rgba(201,168,76,.08),var(--card));
  border:1px solid rgba(201,168,76,.22);
  border-radius:16px;
  padding:22px 20px;
  margin-bottom:18px;
  border-left:3px solid var(--gold);
  box-shadow:var(--shadow);
  transition:transform .32s var(--ease),box-shadow .32s var(--ease),border-color .32s var(--ease);
}
#dharma .card:hover,#vishvarupa .card:hover,#awareness .card:hover,#books .card:hover{
  transform:translateY(-5px);
  box-shadow:var(--shadow-hover);
  border-color:rgba(201,168,76,.42);
}
#dharma .card .t,#vishvarupa .card .t,#awareness .card .t,#books .card .t{
  color:var(--gold);font-size:1rem;font-weight:700;
  margin-bottom:11px;letter-spacing:.45px;line-height:1.35;
}
#dharma .card .d,#vishvarupa .card .d,#awareness .card .d,#books .card .d{
  color:var(--muted);font-size:.9rem;line-height:1.78;
}
#vishvarupa .card{border-left-color:#8b6cff}
#awareness .card{border-left-color:#e8a020}
#books .card{border-left-color:var(--gold)}
#dharma .card:first-of-type{
  background:linear-gradient(155deg,rgba(201,168,76,.15),rgba(18,16,20,.96));
  box-shadow:0 10px 36px rgba(201,168,76,.12);
}

#books .verse{
  margin:14px 0;
  padding:12px 14px;
  background:rgba(201,168,76,.08);
  border-radius:11px;
  border:1px solid rgba(201,168,76,.14);
  color:#ff9f2e;
  font-size:.82rem;font-style:italic;line-height:1.55;
}
#books .meaning{
  margin-top:8px;
  font-size:.82rem;
  color:var(--muted);
  line-height:1.6;
}
#books .links{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}
#books .read{
  display:inline-block;padding:9px 15px;
  border:1px solid rgba(201,168,76,.4);border-radius:9px;
  color:var(--gold);font-size:.75rem;background:rgba(201,168,76,.08);
  font-weight:600;letter-spacing:.2px;
  transition:all .3s var(--ease);
}
#books .read:hover{
  background:rgba(201,168,76,.18);
  border-color:var(--gold);
  transform:translateY(-2px);
  box-shadow:0 5px 16px rgba(201,168,76,.22);
}

/* —— Trinity cards —— */
.tc{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:18px;
  padding:24px 16px 22px;
  margin-bottom:18px;text-align:center;
  box-shadow:var(--shadow);
  transition:transform .32s var(--ease),box-shadow .32s var(--ease);
  position:relative;overflow:hidden;
}
.tc::before{
  content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:var(--gold);opacity:.75;
  transition:opacity .3s var(--ease),box-shadow .3s var(--ease);
}
.tc.s::before{background:#4a90d9}
.tc.v::before{background:#27ae60}
.tc.b::before{background:#e74c3c}
.tc:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow-hover);
}
.tc:hover::before{opacity:1;box-shadow:0 0 14px currentColor}
.tc .photo{
  width:128px;height:128px;border-radius:50%;margin:0 auto 16px;
  object-fit:cover;border:2px solid rgba(201,168,76,.42);
  box-shadow:0 0 26px rgba(201,168,76,.18);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease);
}
.tc:hover .photo{
  transform:scale(1.07);
  box-shadow:0 0 34px rgba(201,168,76,.3);
}
.tc .n{font-size:1.12rem;font-weight:700;letter-spacing:.35px}
.tc.s .n{color:#5ba3e8}
.tc.v .n{color:#3ecf7a}
.tc.b .n{color:#f06050}
.tc .desc{
  margin-top:10px;
  font-size:.84rem;
  color:var(--muted);
  line-height:1.55;
  padding:0 6px;
}
.tc .m{
  margin-top:14px;padding:11px 13px;
  background:rgba(201,168,76,.08);border-radius:11px;
  border:1px solid rgba(201,168,76,.12);
  color:var(--gold);font-size:.84rem;font-style:italic;
}
.tc .m-mean{
  margin-top:6px;
  font-size:.75rem;
  color:var(--dim);
  font-style:normal;
}

/* —— Mantras —— */
.mb{
  background:rgba(201,168,76,.06);
  border-left:3px solid var(--gold);
  padding:16px 18px;margin-bottom:14px;
  border-radius:0 13px 13px 0;
  border:1px solid rgba(201,168,76,.14);
  border-left-width:3px;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.mb:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(0,0,0,.32)}
.mb .l{color:var(--gold);font-size:.62rem;letter-spacing:1.5px;margin-bottom:5px;text-transform:uppercase;font-weight:700}
.mb .k{color:#ff9f2e;font-size:.94rem;line-height:1.6}
.mb .mean{margin-top:8px;font-size:.82rem;color:var(--muted);line-height:1.55}

/* —— Contact —— */
#contact.sec{padding-top:52px}
#contact.sec h2::before{
  content:"";display:block;width:52px;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  margin:0 auto 18px;opacity:.75;
}
.contact a{
  display:block;padding:15px 16px;margin-bottom:13px;
  background:var(--card);border:1px solid var(--border);
  border-radius:13px;text-align:center;font-size:.9rem;font-weight:600;
  box-shadow:var(--shadow);
  transition:all .3s var(--ease);
}
.contact a:hover{
  background:rgba(201,168,76,.1);
  border-color:rgba(201,168,76,.42);
  transform:translateY(-3px);
  box-shadow:var(--shadow-hover);
}

/* —— Footer —— */
.ft{
  background:var(--bg3);
  padding:40px 18px 115px;text-align:center;
  border-top:1px solid var(--border);
}
.ft img{
  width:54px;height:54px;border-radius:50%;margin:0 auto 14px;
  border:2px solid rgba(201,168,76,.38);object-fit:cover;
  box-shadow:0 0 22px rgba(201,168,76,.22);
}
.ft .t{color:var(--gold);font-size:1.08rem;font-weight:700;letter-spacing:.7px}

/* —— Bottom nav —— */
.bn{
  position:fixed;bottom:0;left:0;right:0;
  background:var(--navbg);
  border-top:1px solid rgba(201,168,76,.32);
  display:flex;z-index:50;
  padding-bottom:env(safe-area-inset-bottom,0);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  box-shadow:0 -10px 32px rgba(0,0,0,.38);
}
.bn a{
  flex:1;text-align:center;padding:11px 2px 9px;
  color:var(--muted);font-size:.57rem;line-height:1.25;min-width:0;
  transition:color .3s var(--ease),transform .3s var(--ease);
  position:relative;
}
.bn .i{display:block;font-size:1.18rem;margin-bottom:3px;transition:transform .3s var(--ease)}
.bn a.active{color:var(--gold)}
.bn a.active .i{transform:scale(1.14)}
.bn a.active::after{
  content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:22px;height:2.5px;background:var(--gold);border-radius:0 0 3px 3px;
  box-shadow:0 0 10px rgba(201,168,76,.55);
}
.bn a:hover{color:var(--gold)}
.bn a:hover .i{transform:scale(1.1)}

/* —— Language blocks —— */
[data-l]{display:none}
html[lang=ne] [data-l=ne],html[lang=hi] [data-l=hi],html[lang=sa] [data-l=sa],html[lang=en] [data-l=en]{display:inline}
html[lang=ne] .block-ne,html[lang=hi] .block-hi,html[lang=sa] .block-sa,html[lang=en] .block-en{display:block}
.block-ne,.block-hi,.block-sa,.block-en{display:none}
.sec.hidden{display:none!important}

/* —— Responsive —— */
@media (min-width:640px){
  :root{--max:680px}
  .langbar button,.theme-btn{font-size:.62rem;padding:7px 11px}
  #dharma .card .d,#vishvarupa .card .d,#awareness .card .d,#books .card .d{font-size:.93rem}
}
@media (min-width:900px){
  :root{--max:900px}
  body{font-size:16px}
  .top{padding:14px 28px}
  .top b{font-size:.95rem}
  .hero{padding:52px 28px 44px}
  .hero .logo{width:140px;height:140px}
  .hero h1{font-size:2.2rem}
  .hero .banner{max-width:430px}
  .hero .tag{font-size:1.05rem}
  .hero .btns a{padding:11px 22px;font-size:.82rem}
  .search{max-width:450px}
  .sec{padding:56px 28px 32px}
  .sec h2{font-size:1.52rem;letter-spacing:1.6px}
  .sec h2::after{width:68px;margin-top:16px}
  #tridev{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}
  #tridev h2,#tridev .s{grid-column:1/-1}
  .tc{margin-bottom:0;height:100%}
  .tc .photo{width:140px;height:140px}
  .contact{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .contact a{margin:0}
  #dharma,#vishvarupa,#awareness,#books{max-width:760px}
  .bn{
    left:50%;right:auto;transform:translateX(-50%);
    max-width:560px;border-radius:16px 16px 0 0;
    border-left:1px solid rgba(201,168,76,.24);
    border-right:1px solid rgba(201,168,76,.24);
  }
  .bn a{font-size:.6rem;padding:12px 4px 10px}
  .bn .i{font-size:1.25rem}
  .ft{padding-bottom:125px}
}
@media (min-width:1200px){
  :root{--max:1000px}
  .hero{padding:60px 28px 48px}
  .sec{padding:60px 28px 36px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important}
}
