/* public/css/hanuman-trust-section.css
   Scoped to .hanuman-trust — safe to drop alongside your existing home.css.
   Reuses brand accents seen in your hero (#6c4dff / #25b8f5) + adds a gold/saffron
   "divine" accent for this section only. Adjust the variables below to match your
   real root tokens if you already define --brand-purple / --brand-cyan elsewhere. */

.hanuman-trust{
  --ht-purple:#6c4dff;
  --ht-cyan:#25b8f5;
  --ht-gold:#E8B830;
  --ht-gold-soft:#F4D68A;
  --ht-bg:#04050b;
  --ht-panel:transparent;
  --ht-line:rgba(232,184,48,0.22);
  --ht-text-dim:#93a0c2;

  position:relative;
  background:var(--ht-bg);
  overflow:hidden;
  isolation:isolate;
}
.hanuman-trust__medallion img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:50%;
  display:block;
}
/* ---------- ambient backdrop ---------- */
.hanuman-trust__backdrop{ position:absolute; inset:0; z-index:0; pointer-events:none; }

.hanuman-trust__grid{
  position:absolute; inset:0;
  background-image:
    linear-gradient(var(--ht-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--ht-line) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:radial-gradient(ellipse 70% 60% at 50% 30%, black 0%, transparent 75%);
  opacity:0.5;
}
.ht-medallion-img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:50%;
}
.hanuman-trust__dot{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background:var(--ht-gold);
  box-shadow:0 0 14px 3px rgba(232,184,48,0.6);
  animation:ht-drift 9s ease-in-out infinite;
}
.hanuman-trust__dot--1{ top:12%; left:8%;  background:var(--ht-purple); box-shadow:0 0 14px 3px rgba(108,77,255,0.55); animation-delay:0s; }
.hanuman-trust__dot--2{ top:70%; left:14%; background:var(--ht-cyan);   box-shadow:0 0 14px 3px rgba(37,184,245,0.55); animation-delay:2s; }
.hanuman-trust__dot--3{ top:20%; left:92%; animation-delay:4s; }
.hanuman-trust__dot--4{ top:80%; left:88%; background:var(--ht-cyan);   box-shadow:0 0 14px 3px rgba(37,184,245,0.55); animation-delay:6s; }

@keyframes ht-drift{
  0%,100%{ transform:translateY(0); opacity:0.6; }
  50%{ transform:translateY(-16px); opacity:1; }
}

/* ---------- layout ---------- */
.hanuman-trust__layout{
  position:relative; z-index:1;
  display:grid;
  grid-template-columns:0.85fr 1.15fr;
  gap:56px;
  align-items:stretch;
  margin-top:48px;
}

@media (max-width:991px){
  .hanuman-trust__layout{ grid-template-columns:1fr; }
}

/* ---------- emblem ---------- */
.hanuman-trust__emblem-col{
  position:relative;
  display:flex; flex-direction:column; align-items:center; text-align:center; gap:16px;
  min-height:520px;
  padding:36px 12px 44px;
  justify-content:center;
  overflow:visible;
}

.hanuman-trust__field{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
}

.hanuman-trust__halo{
  position:absolute;
  left:50%;
  top:46%;
  width:340px;
  height:340px;
  margin:-170px 0 0 -170px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(232,184,48,0.22) 0%, rgba(108,77,255,0.16) 38%, transparent 70%);
  animation:ht-breathe 5s ease-in-out infinite;
}
.hanuman-trust__halo--2{
  width:420px;
  height:420px;
  margin:-210px 0 0 -210px;
  background:radial-gradient(circle, rgba(37,184,245,0.08) 0%, rgba(232,184,48,0.1) 32%, transparent 68%);
  animation-duration:7s;
  animation-delay:-1.5s;
}

.hanuman-trust__embers{
  list-style:none; margin:0; padding:0;
  position:absolute; inset:0;
}
.hanuman-trust__embers li{
  position:absolute;
  bottom:6%;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--ht-gold);
  box-shadow:0 0 12px 4px rgba(232,184,48,0.55);
  opacity:0;
  animation:ht-ember 8s linear infinite;
}
.hanuman-trust__embers li:nth-child(1){ left:10%; animation-delay:0s; animation-duration:7s; }
.hanuman-trust__embers li:nth-child(2){ left:18%; animation-delay:-1.1s; animation-duration:9s; background:var(--ht-cyan); box-shadow:0 0 12px 4px rgba(37,184,245,0.5); }
.hanuman-trust__embers li:nth-child(3){ left:28%; animation-delay:-2.2s; animation-duration:8s; }
.hanuman-trust__embers li:nth-child(4){ left:38%; animation-delay:-0.6s; animation-duration:10s; background:var(--ht-purple); box-shadow:0 0 12px 4px rgba(108,77,255,0.5); }
.hanuman-trust__embers li:nth-child(5){ left:48%; animation-delay:-3s; animation-duration:7.4s; }
.hanuman-trust__embers li:nth-child(6){ left:56%; animation-delay:-1.8s; animation-duration:8.6s; background:var(--ht-cyan); }
.hanuman-trust__embers li:nth-child(7){ left:66%; animation-delay:-4.1s; animation-duration:9.2s; }
.hanuman-trust__embers li:nth-child(8){ left:74%; animation-delay:-2.5s; animation-duration:7.8s; background:var(--ht-purple); }
.hanuman-trust__embers li:nth-child(9){ left:82%; animation-delay:-3.7s; animation-duration:8.4s; }
.hanuman-trust__embers li:nth-child(10){ left:90%; animation-delay:-0.9s; animation-duration:9.6s; background:var(--ht-cyan); }
.hanuman-trust__embers li:nth-child(11){ left:22%; animation-delay:-5.2s; animation-duration:11s; }
.hanuman-trust__embers li:nth-child(12){ left:70%; animation-delay:-6s; animation-duration:10.4s; background:var(--ht-gold-soft); }

@keyframes ht-ember{
  0%{ transform:translate3d(0, 18px, 0) scale(0.5); opacity:0; }
  14%{ opacity:0.95; }
  100%{ transform:translate3d(12px, -360px, 0) scale(0.2); opacity:0; }
}

.hanuman-trust__emblem-wrap{
  position:relative;
  z-index:1;
  width:260px;
  height:260px;
  margin-bottom:44px;
}

.hanuman-trust__rays{
  position:absolute;
  inset:-64px;
  border-radius:50%;
  background:repeating-conic-gradient(
    from 0deg,
    transparent 0 12deg,
    rgba(232,184,48,0.16) 12deg 15deg
  );
  mask-image:radial-gradient(circle, transparent 30%, #000 44%, transparent 74%);
  -webkit-mask-image:radial-gradient(circle, transparent 30%, #000 44%, transparent 74%);
  animation:ht-spin 36s linear infinite;
  pointer-events:none;
}

.hanuman-trust__aura{
  position:absolute; inset:-48px; border-radius:50%;
  background:
    radial-gradient(circle, rgba(232,184,48,0.5) 0%, rgba(108,77,255,0.32) 42%, transparent 72%);
  filter:blur(8px);
  animation:ht-breathe 4.5s ease-in-out infinite;
}
@keyframes ht-breathe{
  0%,100%{ transform:scale(0.93); opacity:0.7; }
  50%{ transform:scale(1.1); opacity:1; }
}

.hanuman-trust__ring{ position:absolute; border-radius:50%; border:1px solid rgba(232,184,48,0.45); pointer-events:none; }
.hanuman-trust__ring--1{ inset:0; animation:ht-spin 40s linear infinite; }
.hanuman-trust__ring--2{ inset:16px; border-style:dashed; border-color:rgba(108,77,255,0.5); animation:ht-spin 55s linear infinite reverse; }
.hanuman-trust__ring--3{
  inset:-22px;
  border-style:dotted;
  border-width:2px;
  border-color:rgba(232,184,48,0.38);
  animation:ht-spin 24s linear infinite;
}
@keyframes ht-spin{ from{ transform:rotate(0deg); } to{ transform:rotate(360deg); } }

.hanuman-trust__sparks{
  list-style:none; margin:0; padding:0;
  position:absolute; inset:0; pointer-events:none;
  z-index:3;
}
.hanuman-trust__sparks li{
  position:absolute;
  left:50%;
  top:50%;
  width:8px;
  height:8px;
  margin:-4px 0 0 -4px;
  border-radius:50%;
  background:var(--ht-gold);
  box-shadow:0 0 12px 4px rgba(232,184,48,0.85);
  animation:ht-orbit 11s linear infinite;
}
.hanuman-trust__sparks li:nth-child(1){ animation-duration:10s; --ht-orbit:128px; }
.hanuman-trust__sparks li:nth-child(2){ animation-duration:13s; animation-delay:-2s; --ht-orbit:142px; background:var(--ht-cyan); box-shadow:0 0 12px 4px rgba(37,184,245,0.8); }
.hanuman-trust__sparks li:nth-child(3){ animation-duration:16s; animation-delay:-4s; --ht-orbit:118px; background:var(--ht-purple); box-shadow:0 0 12px 4px rgba(108,77,255,0.8); }
.hanuman-trust__sparks li:nth-child(4){ animation-duration:12s; animation-delay:-6s; --ht-orbit:150px; }
.hanuman-trust__sparks li:nth-child(5){ animation-duration:18s; animation-delay:-1s; --ht-orbit:134px; background:var(--ht-cyan); }
.hanuman-trust__sparks li:nth-child(6){ animation-duration:14s; animation-delay:-8s; --ht-orbit:122px; }
.hanuman-trust__sparks li:nth-child(7){ animation-duration:20s; animation-delay:-3s; --ht-orbit:156px; background:var(--ht-purple); }
.hanuman-trust__sparks li:nth-child(8){ animation-duration:9s; animation-delay:-5s; --ht-orbit:110px; }

@keyframes ht-orbit{
  from{ transform:rotate(0deg) translateX(var(--ht-orbit, 130px)); }
  to{ transform:rotate(360deg) translateX(var(--ht-orbit, 130px)); }
}

.hanuman-trust__orbit{
  list-style:none; margin:0; padding:0;
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:3;
}
.hanuman-trust__orbit li{
  position:absolute;
  left:50%;
  top:50%;
  width:0;
  height:0;
  animation:ht-spin 32s linear infinite;
}
.hanuman-trust__orbit li:nth-child(1){ animation-delay:0s; }
.hanuman-trust__orbit li:nth-child(2){ animation-delay:-8s; }
.hanuman-trust__orbit li:nth-child(3){ animation-delay:-16s; }
.hanuman-trust__orbit li:nth-child(4){ animation-delay:-24s; }
.hanuman-trust__orbit span{
  position:absolute;
  left:0;
  top:-152px;
  font-size:11px;
  letter-spacing:0.04em;
  color:var(--ht-gold-soft);
  text-shadow:0 0 12px rgba(232,184,48,0.75);
  white-space:nowrap;
  animation:ht-orbit-unspin 32s linear infinite;
}
.hanuman-trust__orbit li:nth-child(1) span{ animation-delay:0s; }
.hanuman-trust__orbit li:nth-child(2) span{ animation-delay:-8s; }
.hanuman-trust__orbit li:nth-child(3) span{ animation-delay:-16s; }
.hanuman-trust__orbit li:nth-child(4) span{ animation-delay:-24s; }
.hanuman-trust__orbit li.is-wide span{
  top:-172px;
  font-size:10.5px;
  letter-spacing:0.03em;
  white-space:normal;
  text-align:center;
  line-height:1.35;
  width:max-content;
}

@keyframes ht-orbit-unspin{
  from{ transform:translate(-50%, -50%) rotate(0deg); }
  to{ transform:translate(-50%, -50%) rotate(-360deg); }
}

.hanuman-trust__medallion{
  position:absolute; inset:38px; border-radius:50%;
  background:radial-gradient(circle at 50% 35%, #1b1230 0%, #0c0e18 65%);
  border:2px solid var(--ht-gold);
  box-shadow:0 0 0 6px var(--ht-bg), 0 0 42px rgba(108,77,255,0.5), inset 0 0 24px rgba(0,0,0,0.6);
  display:flex; align-items:center; justify-content:center;
  z-index:2;
}
.hanuman-trust__medallion svg{ width:70%; height:70%; }

.ht-glyph-stroke{
  fill:none; stroke:var(--ht-gold-soft); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round;
  stroke-dasharray:340; stroke-dashoffset:340;
  animation:ht-draw 2.2s ease-out 0.3s forwards;
  filter:drop-shadow(0 0 6px rgba(232,184,48,0.6));
}
.ht-glyph-fill{ fill:var(--ht-gold-soft); opacity:0; animation:ht-fade 0.8s ease-out 2.2s forwards; }
@keyframes ht-draw{ to{ stroke-dashoffset:0; } }
@keyframes ht-fade{ to{ opacity:1; } }

.hanuman-trust__caption{
  position:relative;
  z-index:4;
  font-size:15px; color:var(--ht-gold-soft); letter-spacing:0.02em;
}

.hanuman-trust__pillars{
  list-style:none; padding:0; margin:0;
  display:flex; flex-direction:column; gap:10px;
  font-size:14px; color:var(--ht-text-dim);
}
.hanuman-trust__pillars li{ display:flex; align-items:center; gap:8px; }
.hanuman-trust__pillars i{ color:var(--ht-cyan); }
.hanuman-trust__japa{
  position:relative;
  z-index:4;
  display:flex; gap:10px; justify-content:center;
  font-size:14px; font-weight:600; color:var(--ht-gold);
  letter-spacing:0.04em;
}
.hanuman-trust__japa span{
  animation:ht-japa-pulse 1.8s ease-in-out infinite;
  opacity:0.35;
}
.hanuman-trust__japa span:nth-child(1){ animation-delay:0s; }
.hanuman-trust__japa span:nth-child(2){ animation-delay:0.3s; }
.hanuman-trust__japa span:nth-child(3){ animation-delay:0.6s; }
.hanuman-trust__japa span:nth-child(4){ animation-delay:0.9s; }

@keyframes ht-japa-pulse{
  0%,100%{ opacity:0.3; transform:scale(0.92); text-shadow:none; }
  50%{ opacity:1; transform:scale(1.08); text-shadow:0 0 10px rgba(232,184,48,0.8); }
}

@media (max-width:991px){
  .hanuman-trust__emblem-col{ min-height:480px; }
  .hanuman-trust__terminal{
    transform:none;
    border-radius:16px;
  }
  .chalisa-doha, .chalisa-stanza{ transform:none; }
}

@media (prefers-reduced-motion: reduce){
  .hanuman-trust__japa span{ animation:none; opacity:1; }
}
/* ---------- terminal ---------- */
.hanuman-trust__terminal-col{
  min-width:0;
  perspective:1200px;
  transform-style:preserve-3d;
}

.hanuman-trust__terminal{
  background:linear-gradient(165deg, rgba(232,184,48,0.10), rgba(108,77,255,0.07) 42%, rgba(4,5,11,0.16));
  border:1px solid rgba(232,184,48,0.36);
  border-radius:18px;
  overflow:hidden;
  transform:rotateY(-10deg) rotateX(7deg) translateZ(18px);
  transform-style:preserve-3d;
  box-shadow:
    -16px 0 34px rgba(37,184,245,0.18),
    16px 0 34px rgba(232,184,48,0.24),
    inset 0 0 40px rgba(232,184,48,0.04);
}

.hanuman-trust__terminal-bar{
  display:flex; align-items:center; gap:10px;
  padding:12px 16px;
  background:linear-gradient(180deg, rgba(232,184,48,0.10), transparent);
  border-bottom:1px solid rgba(232,184,48,0.2);
}
.ht-dot{ width:10px; height:10px; border-radius:50%; }
.ht-dot--r{ background:var(--ht-purple); box-shadow:0 0 8px rgba(108,77,255,0.7); }
.ht-dot--y{ background:var(--ht-gold); box-shadow:0 0 8px rgba(232,184,48,0.7); }
.ht-dot--g{ background:var(--ht-cyan); box-shadow:0 0 8px rgba(37,184,245,0.7); }
.hanuman-trust__terminal-filename{
  margin-left:6px; font-size:13px; color:var(--ht-gold-soft); font-family:monospace;
}
.hanuman-trust__terminal-status{
  margin-left:auto; font-size:12px; letter-spacing:0.08em; color:var(--ht-gold);
  border:1px solid rgba(232,184,48,0.4); border-radius:999px; padding:3px 12px;
  font-family:"Noto Sans Devanagari", Sora, sans-serif;
}

.hanuman-trust__terminal-body{
  position:relative;
  max-height:460px;
  overflow:hidden;
  padding:22px 28px 36px;
  font-family:'Noto Sans Devanagari', 'Hind', sans-serif;
  background:rgba(4,5,11,0.42);
}
.hanuman-trust__terminal-body::before,
.hanuman-trust__terminal-body::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  height:40px;
  z-index:2;
  pointer-events:none;
}
.hanuman-trust__terminal-body::before{
  top:0;
  background:linear-gradient(to bottom, rgba(4,5,11,0.88), transparent);
}
.hanuman-trust__terminal-body::after{
  bottom:0;
  background:linear-gradient(to top, rgba(4,5,11,0.9), transparent);
}
.chalisa-track{
  transform:none;
}
.chalisa-track.is-scrolling{
  animation:chalisaSmoothUp var(--chalisa-duration, 70s) linear infinite;
}
@keyframes chalisaSmoothUp{
  from{ transform:translate3d(0,0,0); }
  to{ transform:translate3d(0,-50%,0); }
}
.chalisa-doha, .chalisa-stanza{
  opacity:1;
  transform:none;
  font-weight:600;
  letter-spacing:0.01em;
  text-shadow:0 1px 2px rgba(0,0,0,0.85);
}

.chalisa-doha{
  font-size:1.05rem; line-height:2.05; color:#fff4d6;
  margin:0 0 16px; font-style:normal; text-align:center;
}
.chalisa-stanza{
  font-size:1.05rem; line-height:2.05; color:#fff8e6; margin:0 0 12px;
  padding-left:16px; border-left:2px solid rgba(232,184,48,0.7);
}
.chalisa-cursor{
  position:absolute;
  left:26px;
  bottom:10px;
  z-index:3;
  margin:0;
  color:var(--ht-cyan); font-family:monospace;
  animation:ht-blink 1s step-end infinite;
}
@keyframes ht-blink{ 50%{ opacity:0; } }

@media (prefers-reduced-motion: reduce){
  .hanuman-trust *{ animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; }
  .chalisa-doha, .chalisa-stanza{ opacity:1; transform:none; }
}