/* =========================================================
   Bajrang Vati — front-page splash loader
   Home stays fully hidden until the progress bar reaches 100%.
   ========================================================= */

body.bv-front-loading {
  overflow: hidden;
}

body.bv-front-loading .front-home {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.front-home {
  min-height: 100vh;
  opacity: 1;
  visibility: visible;
  transition: opacity 220ms ease;
}

.splash {
  --bv-loader-duration: 3200ms;
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 100svh;
  background: var(--ink);
  opacity: 1;
  visibility: visible;
  transition: opacity 450ms ease, visibility 450ms ease;
}

.splash.is-complete {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.splash-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
}

.splash-logo {
  position: relative;
}

.splash-glow {
  position: absolute;
  inset: 0;
  border-radius: var(--r-full);
  background: rgba(240, 118, 30, 0.3);
  filter: blur(32px);
}

.splash-mark {
  position: relative;
}

.splash-text {
  text-align: center;
}

.splash-tagline {
  margin-top: 12px;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: rgba(217, 164, 65, 0.8);
}

.splash-footer {
  position: absolute;
  right: 0;
  bottom: max(40px, env(safe-area-inset-bottom));
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.splash-bar {
  width: 128px;
  height: 4px;
  overflow: hidden;
  border-radius: var(--r-full);
  background: var(--line-strong);
}

.splash-bar-fill {
  display: block;
  width: 0;
  height: 100%;
  border-radius: var(--r-full);
  background: linear-gradient(90deg, var(--saffron), var(--gold));
  transform-origin: left center;
}

.splash.is-running .splash-bar-fill {
  animation: bv-loader-progress var(--bv-loader-duration) linear forwards;
}

@keyframes bv-loader-progress {
  from { width: 0; }
  to { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .splash.is-running .splash-bar-fill {
    animation-duration: var(--bv-loader-duration);
  }
}

.splash-wordmark{display:flex;flex-direction:column;align-items:center}.splash-wordmark strong{font-size:30px;font-weight:800;color:var(--cream)}.splash-wordmark span{margin-top:3px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
