/* ============================================================
   KVPL — किसान वॉलीबॉल प्रीमियर लीग
   Palette: khadi paper / court clay / West indigo / East saffron / wheat gold
   Type: Anek Devanagari (display + body), system fallback
   ============================================================ */

:root{
  --kora:#FBF3E1;        /* khadi paper background */
  --kora-2:#F4E8CD;      /* deeper paper for alt sections */
  --syahi:#241C13;       /* earthy ink */
  --mitti:#9A4A1F;       /* court clay */
  --neel:#1C7A38;        /* West UP indigo */
  --kesari:#E2540F;      /* East UP saffron */
  --gehun:#C79228;       /* wheat gold */
  --hara:#1F5B30;        /* brand green — used only as a thin thread */
  --line:#D9C79E;
  --font:'Anek Devanagari','Noto Sans Devanagari','Mangal',system-ui,sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}
body{
  font-family:var(--font);
  background:var(--kora);
  color:var(--syahi);
  line-height:1.65;
  font-size:17px;
  -webkit-text-size-adjust:100%;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--mitti)}
:focus-visible{outline:3px solid var(--kesari);outline-offset:2px;border-radius:3px}

.wrap{max-width:980px;margin:0 auto;padding:0 20px}
.wrap-n{max-width:760px;margin:0 auto;padding:0 20px}
.en{display:block;font-size:.72em;font-weight:400;color:#6B5B43;letter-spacing:.02em}
.skip{position:absolute;left:-999px;top:0;background:var(--syahi);color:#fff;padding:10px 16px;z-index:99}
.skip:focus{left:8px;top:8px}

/* ---------- buttons ---------- */
.btn{display:inline-block;font-family:var(--font);font-weight:700;font-size:1rem;
  padding:13px 24px;border-radius:8px;text-decoration:none;border:2px solid var(--mitti);
  cursor:pointer;text-align:center;min-height:48px;line-height:1.3}
.btn-solid{background:var(--mitti);color:#fff}
.btn-solid:hover{background:#7E3B17}
.btn-line{background:transparent;color:var(--mitti)}
.btn-line:hover{background:rgba(154,74,31,.08)}
.btn-sm{padding:8px 16px;min-height:40px;font-size:.92rem}
.btn-big{width:100%;font-size:1.15rem;padding:16px}

/* ---------- header ---------- */
.site-head{position:sticky;top:0;z-index:50;background:rgba(251,243,225,.96);
  border-bottom:1px solid var(--line);backdrop-filter:blur(4px)}
.head-in{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 20px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--syahi)}
.brand-t strong{font-size:1.15rem;letter-spacing:.04em}
.brand-t small{display:block;font-size:.68rem;color:#6B5B43;line-height:1.2}
.nav{display:flex;align-items:center;gap:20px}
.nav a{text-decoration:none;color:var(--syahi);font-weight:600;font-size:.95rem}
.nav a:hover{color:var(--mitti)}
.nav-btn{display:none;font-size:1.5rem;background:none;border:2px solid var(--line);
  border-radius:8px;padding:4px 12px;cursor:pointer;color:var(--syahi)}

/* ---------- hero: the West/East diagonal is the signature ---------- */
.hero{position:relative;overflow:hidden;text-align:center;
  border-bottom:4px solid var(--gehun)}
.hero-split{position:absolute;inset:0;z-index:0;
  background:
    linear-gradient(115deg,
      rgba(28,122,56,.14) 0 38%,
      rgba(251,243,225,0) 38% 62%,
      rgba(226,84,15,.14) 62% 100%);}
.hero-in{position:relative;z-index:1;padding:56px 20px 44px}
.eyebrow{font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--hara)}
.hero h1{font-size:clamp(2.1rem,6.5vw,3.6rem);font-weight:800;line-height:1.12;margin:14px 0 10px}
.hero h1 em{font-style:normal;color:var(--mitti)}
.hero-sub{max-width:620px;margin:0 auto 22px;font-size:1.06rem}

.vs-line{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;
  font-weight:800;font-size:clamp(1rem,3.2vw,1.4rem);margin-bottom:24px}
.vs-west{color:var(--neel)}
.vs-east{color:var(--kesari)}
.vs-mark{background:var(--syahi);color:var(--kora);font-size:.75em;
  padding:4px 12px;border-radius:50%;letter-spacing:.05em}

/* scoreboard countdown */
.scoreboard{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 18px;
  background:var(--syahi);color:var(--kora);border-radius:12px;
  padding:14px 22px;margin-bottom:26px;border:3px solid var(--gehun)}
.sb-label{font-size:.85rem;font-weight:600;color:var(--gehun);letter-spacing:.06em}
.sb-cells{display:inline-flex;align-items:baseline;gap:6px}
.sb-cells b{font-size:1.7rem;font-weight:800;font-variant-numeric:tabular-nums;
  background:#3A3226;padding:2px 10px;border-radius:6px;min-width:2.2ch;text-align:center}
.sb-cells i{font-style:normal;font-size:.75rem;color:#CFC2A4;margin-right:6px}
.sb-date{font-size:.85rem;color:#CFC2A4}

.hero-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:30px}
.hero-logos{display:flex;align-items:center;justify-content:center;gap:26px;opacity:.95}

/* ---------- stats strip ---------- */
.stats{background:var(--syahi);color:var(--kora)}
.stats-in{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:26px 20px}
.stat{text-align:center;border-left:1px solid #4A4030}
.stat:first-child{border-left:none}
.stat b{display:block;font-size:1.6rem;font-weight:800;color:var(--gehun)}
.stat span{font-size:.92rem}
.stat small{display:block;font-size:.7rem;color:#B7A88A}

/* ---------- sections + court-line divider ---------- */
.sec{padding:64px 0;position:relative}
.sec-alt{background:var(--kora-2)}
.sec::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:min(200px,40%);border-top:2px solid var(--gehun);border-bottom:2px solid var(--gehun);
  height:6px}
.kicker{font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mitti)}
.kicker .en{display:inline;font-size:.85em;text-transform:none;letter-spacing:0}
h2{font-size:clamp(1.6rem,4.5vw,2.3rem);font-weight:800;line-height:1.2;margin:8px 0 14px}
.lede{max-width:720px;font-size:1.05rem;margin-bottom:26px}

.photo{margin:26px 0}
.photo img{border-radius:12px;border:1px solid var(--line)}
.photo figcaption{font-size:.85rem;color:#6B5B43;margin-top:8px}

/* pillars */
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-top:8px}
.pillar{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;
  border-top:5px solid var(--gehun)}
.pillar:nth-child(1){border-top-color:var(--hara)}
.pillar:nth-child(2){border-top-color:var(--gehun)}
.pillar:nth-child(3){border-top-color:var(--neel)}
.pillar:nth-child(4){border-top-color:var(--kesari)}
.p-ic{font-size:1.6rem}
.pillar h3{font-size:1.1rem;margin:6px 0 6px}
.pillar p{font-size:.92rem}

/* journey — sets */
.sets{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:10px 0 12px}
.set{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;position:relative}
.set-no{display:inline-block;background:var(--neel);color:#fff;font-size:.72rem;font-weight:800;
  letter-spacing:.1em;padding:3px 10px;border-radius:20px;text-transform:uppercase}
.set:nth-child(2) .set-no{background:var(--mitti)}
.set:nth-child(3) .set-no{background:var(--hara)}
.set-final .set-no{background:var(--kesari)}
.set b{display:block;font-size:1.35rem;font-weight:800;color:var(--mitti);margin:10px 0 2px}
.set h3{font-size:1.05rem;margin-bottom:6px}
.set p{font-size:.9rem}
.set-final{border:2px solid var(--gehun);background:#FFF9EA}

/* trials table */
.tbl-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fff}
.tbl{width:100%;border-collapse:collapse;min-width:560px;font-size:.95rem}
.tbl th,.tbl td{padding:13px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.tbl thead th{background:var(--mitti);color:#fff;font-weight:700;font-size:.9rem;letter-spacing:.03em}
.tbl tbody th{color:var(--neel);white-space:nowrap}
.tbl tbody tr:last-child td,.tbl tbody tr:last-child th{border-bottom:none}
.tbl tbody tr:nth-child(even){background:var(--kora)}
.note{font-size:.88rem;color:#6B5B43;margin-top:14px}

/* ---------- registration ---------- */
.sec-reg{background:linear-gradient(115deg,rgba(28,122,56,.08),rgba(251,243,225,0) 45%,rgba(226,84,15,.08));
  border-top:4px solid var(--gehun);border-bottom:4px solid var(--gehun)}
.kicker-l{color:var(--hara)}
.reg-form{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;margin-top:10px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;margin-bottom:18px}
.reg-form label{display:block;font-weight:700;font-size:.95rem}
.reg-form label .en{margin-bottom:4px}
.reg-form input,.reg-form select{width:100%;margin-top:4px;padding:12px 14px;font-family:var(--font);
  font-size:1rem;border:2px solid var(--line);border-radius:8px;background:var(--kora);color:var(--syahi);min-height:48px}
.reg-form input:focus,.reg-form select:focus{border-color:var(--mitti);outline:none}
.chk{display:flex;gap:10px;align-items:flex-start;font-weight:400!important;font-size:.9rem;margin-bottom:18px}
.chk input{width:22px;height:22px;min-height:0;margin-top:2px;flex:none;accent-color:var(--hara)}
.hp{position:absolute;left:-9999px;top:-9999px}
.flash{padding:14px 18px;border-radius:10px;font-weight:600;margin:14px 0}
.flash-ok{background:#E4F2E4;border:2px solid var(--hara);color:var(--hara)}
.flash-err{background:#FBE7DC;border:2px solid var(--kesari);color:#9B3A0A}

/* ---------- sponsorship ---------- */
.packs{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:10px 0 30px}
.pack{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}
.pack h3{font-size:1.05rem;letter-spacing:.04em;text-transform:uppercase;color:#6B5B43}
.pack b{display:block;font-size:2rem;font-weight:800;color:var(--syahi);margin:4px 0}
.pack-tag{font-size:.85rem;font-style:italic;color:var(--mitti);margin-bottom:12px}
.pack ul{list-style:none}
.pack li{font-size:.92rem;padding:7px 0 7px 26px;position:relative;border-top:1px dashed var(--line)}
.pack li::before{content:"✔";position:absolute;left:2px;color:var(--hara);font-weight:800}
.pack-title{border:3px solid var(--gehun);background:#FFF9EA;position:relative}
.pack-title::after{content:"सबसे लोकप्रिय";position:absolute;top:-13px;right:16px;
  background:var(--gehun);color:#fff;font-size:.72rem;font-weight:800;padding:3px 12px;border-radius:20px}
.jerseys{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:28px}
.jerseys img{border-radius:12px;border:1px solid var(--line)}
.jerseys figcaption{font-size:.85rem;color:#6B5B43;margin-top:6px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}

/* ---------- people ---------- */
.people{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;margin:10px 0 8px}
.people li{text-align:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 14px}
.people img{width:110px;height:110px;border-radius:50%;object-fit:cover;margin:0 auto 10px;
  border:3px solid var(--gehun)}
.people b{display:block;font-size:1rem}
.people span{font-size:.82rem;color:#6B5B43}

/* ---------- footer ---------- */
.foot{background:var(--syahi);color:var(--kora);margin-top:0}
.foot a{color:var(--gehun);text-decoration:none}
.foot a:hover{text-decoration:underline}
.foot-in{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px;padding:44px 20px 28px}
.foot-brand img{margin-bottom:12px}
.foot-brand p{font-size:.92rem}
.foot-col h3{font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:#B7A88A;margin-bottom:10px}
.foot-col p{font-size:.95rem;line-height:2}
.wa{font-weight:700}
.foot-base{text-align:center;font-size:.8rem;color:#8B7D61;border-top:1px solid #4A4030;padding:16px 20px}

/* ---------- responsive ---------- */
@media (max-width:760px){
  .nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--kora);
    flex-direction:column;align-items:stretch;padding:14px 20px 20px;gap:4px;
    border-bottom:2px solid var(--gehun)}
  .nav.open{display:flex}
  .nav a{padding:12px 4px;border-bottom:1px solid var(--line)}
  .nav .btn{margin-top:10px;border-bottom:none}
  .nav-btn{display:block}
  .stats-in{grid-template-columns:1fr 1fr;gap:22px 10px}
  .stat{border-left:none}
  .grid2{grid-template-columns:1fr}
  .jerseys{grid-template-columns:1fr}
  .foot-in{grid-template-columns:1fr}
  .sec{padding:48px 0}
}

/* ============================================================
   v2 additions — bilingual toggle, motion, trophy, volleyball,
   eligibility, richer form, QR card
   ============================================================ */

/* ---- Latin face in English mode (Devanagari still falls back) ---- */
html.lang-en body{font-family:'Anek Latin','Anek Devanagari',system-ui,sans-serif}

/* ---- language toggle + header actions ---- */
.head-actions{display:flex;align-items:center;gap:10px}
.lang-btn{font-family:var(--font);font-weight:800;font-size:.9rem;letter-spacing:.03em;
  min-width:46px;min-height:40px;padding:6px 12px;cursor:pointer;color:var(--syahi);
  background:#fff;border:2px solid var(--neel);border-radius:8px}
.lang-btn:hover{background:var(--neel);color:#fff}

/* small English sublabels hidden when the whole page is already English */
html.lang-en .en{display:none}

/* ---- recognition badge ---- */
.recognised{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.82rem;
  letter-spacing:.02em;color:#245A2E;background:#E8F3E5;border:1.5px solid #B7D8AC;
  padding:6px 14px;border-radius:30px;margin-bottom:14px}
.recognised .r-ic{font-size:1rem}

/* ---- hero tagline (always visible, both languages) ---- */
.tagline{font-weight:700;font-size:clamp(.95rem,2.4vw,1.12rem);color:var(--mitti);
  letter-spacing:.01em;margin:-8px 0 22px}

/* ---- hero athlete scene (parallax layers, slow-mo ball) ---- */
.hero-athlete{position:absolute;z-index:1;top:36px;right:1%;width:300px;pointer-events:none;will-change:transform}
.ath-glow{position:absolute;top:14px;right:8px;width:250px;height:250px;border-radius:50%;will-change:transform;
  background:radial-gradient(circle at 52% 44%, rgba(199,146,40,.30), rgba(28,122,56,.12) 46%, transparent 70%)}
.athlete-svg{position:relative;width:100%;height:auto;overflow:visible;will-change:transform}
.ath-figure{transform-box:fill-box;transform-origin:50% 92%}
.ball-main,.ball-ghost{transform-box:fill-box;transform-origin:center}
.g2{fill-opacity:.5}.g3{fill-opacity:.34}.g4{fill-opacity:.2}
html:not(.motion-full) .ball-ghost,html:not(.motion-full) .impact2{display:none}

html.motion-full .ath-figure{animation:ath-float 3.6s ease-in-out infinite}
@keyframes ath-float{0%,100%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-15px) rotate(1.5deg)}}
html.motion-full .ball-main,html.motion-full .ball-ghost{animation:spike-arc 4.6s cubic-bezier(.5,.03,.68,.5) infinite}
html.motion-full .g2{animation-delay:.09s}html.motion-full .g3{animation-delay:.18s}html.motion-full .g4{animation-delay:.27s}
@keyframes spike-arc{
  0%{transform:translate(0,0) scale(1);opacity:0}
  6%{opacity:1}
  40%{transform:translate(24px,-10px) scale(.98)}
  100%{transform:translate(98px,152px) scale(.7);opacity:0}
}
html.motion-full .impact2{transform-box:fill-box;transform-origin:center;animation:impact2 4.6s ease-out infinite}
@keyframes impact2{0%,11%,100%{opacity:0;transform:scale(.5)}4%{opacity:1;transform:scale(1.25)}}
@media (max-width:1000px){.hero-athlete{width:210px}}
@media (max-width:760px){.hero-athlete{width:150px;top:auto;bottom:0;right:-6px;z-index:0;opacity:.9}}

/* ---- prize / trophy band ---- */
.prize{background:linear-gradient(120deg,#241C13,#3A2E1B);color:var(--kora);
  border-top:4px solid var(--gehun);border-bottom:4px solid var(--gehun)}
.prize-in{display:flex;align-items:center;gap:22px;padding:26px 20px;flex-wrap:wrap;justify-content:center;text-align:center}
.trophy{flex:none;--glow:.35;filter:drop-shadow(0 0 calc(6px + var(--glow)*24px) rgba(246,208,102,calc(.3 + var(--glow)*.6)))}
html.motion-full .trophy{animation:trophy-float 3.4s ease-in-out infinite}
@keyframes trophy-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.trophy-svg{overflow:visible}
html.motion-full .trophy .halo{transform-box:fill-box;transform-origin:center;animation:halo-pulse 2.6s ease-in-out infinite}
@keyframes halo-pulse{0%,100%{opacity:.4;transform:scale(.9)}50%{opacity:.9;transform:scale(1.08)}}
html.motion-full .trophy .sweep{animation:sweep 3.4s ease-in-out infinite}
@keyframes sweep{0%{transform:translateX(0)}22%{transform:translateX(170px)}100%{transform:translateX(170px)}}
html.motion-full .trophy .tw{transform-box:fill-box;transform-origin:center;animation:twinkle 2.2s ease-in-out infinite}
html.motion-full .trophy .tw2{animation-delay:.55s}html.motion-full .trophy .tw3{animation-delay:1.1s}html.motion-full .trophy .tw4{animation-delay:1.65s}
@keyframes twinkle{0%,100%{transform:scale(.4)}50%{transform:scale(1)}}
html.motion-full .trophy .gem{transform-box:fill-box;transform-origin:center;animation:twinkle 2.4s ease-in-out infinite .8s}
.prize-txt{max-width:600px;text-align:left}
.prize-txt b{display:block;font-size:clamp(1.15rem,3.2vw,1.6rem);font-weight:800;color:var(--gehun);line-height:1.25}
.prize-txt span{display:block;font-size:.98rem;color:#E7DcC4;margin-top:6px}
@media (max-width:600px){.prize-txt{text-align:center}}

/* ---- eligibility ---- */
.elig{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:8px}
.elig-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;border-top:5px solid var(--neel)}
.elig-card:nth-child(2){border-top-color:var(--kesari)}
.elig-card:nth-child(3){border-top-color:var(--hara)}
.elig-card:nth-child(4){border-top-color:var(--gehun)}
.e-ic{font-size:1.7rem}
.elig-card h3{font-size:1.08rem;margin:6px 0}
.elig-card p{font-size:.92rem}

/* ---- richer registration form ---- */
.reg-form fieldset{border:1px solid var(--line);border-radius:12px;padding:18px 18px 6px;margin-bottom:18px;background:#fff}
.reg-form legend{font-weight:800;font-size:.95rem;color:var(--mitti);padding:0 8px;letter-spacing:.02em}
.reg-form label>span{display:block;font-weight:700;font-size:.95rem;margin-bottom:2px}
.reg-form label>span em{font-style:normal;font-weight:400;color:#6B5B43;font-size:.85em}
.reg-form .hint{display:block;font-weight:400;font-size:.8rem;color:#6B5B43;margin-top:4px}
.mini-chk{display:inline-flex!important;align-items:center;gap:6px;margin-top:6px;font-weight:400!important}
.mini-chk input{width:18px;height:18px;min-height:0;margin:0;flex:none;accent-color:var(--neel)}
.mini-chk span{display:inline!important;margin:0!important;font-weight:400!important}
.declare{background:#FCF6E7!important;border-color:var(--gehun)!important}
.declare .chk{margin:0 0 12px}
.declare .chk:last-child{margin-bottom:4px}

/* ---- QR card ---- */
.qr-card{display:flex;align-items:center;gap:16px;background:#fff;border:2px dashed var(--neel);
  border-radius:12px;padding:16px;margin:16px 0 6px}
.qr-card img{width:120px;height:120px;flex:none;border-radius:8px}
.qr-card b{display:block;font-size:1rem;margin-bottom:4px}
.qr-card span{display:block;font-size:.88rem;color:#6B5B43}
@media (max-width:520px){.qr-card{flex-direction:column;text-align:center}}

/* ---- three-logo lockup ---- */
.hero-logos .logo-x{color:var(--gehun);font-weight:800;font-size:1.4rem}
.foot-logos{display:flex;align-items:center;gap:14px;margin-bottom:12px;background:#fff;
  padding:8px 12px;border-radius:10px;width:max-content}

/* ---- scroll reveal — floaty spring entrance (only when JS active) ---- */
html.js .reveal{opacity:0;transform:translateY(48px) scale(.955);filter:blur(4px);
  transition:opacity .8s ease, transform .9s cubic-bezier(.34,1.56,.64,1), filter .8s ease}
html.js .reveal.in{opacity:1;transform:none;filter:none}
html.js .reveal:nth-child(2){transition-delay:.08s}
html.js .reveal:nth-child(3){transition-delay:.16s}
html.js .reveal:nth-child(4){transition-delay:.24s}

/* ---- reduced motion: motion-full is never set, so ambient loops stay off ---- */
@media (prefers-reduced-motion:reduce){
  .hero-athlete,.parallax{transform:none!important}
  html.js .reveal{opacity:1;transform:none;filter:none;transition:none}
}

/* ---- image slider / gallery ---- */
.slider{position:relative;overflow:hidden;border-radius:12px;border:1px solid var(--line);background:#000;margin:26px 0}
.slides{display:flex;transition:transform .5s ease;will-change:transform}
.slide{min-width:100%;position:relative;margin:0}
.slide img{width:100%;height:auto;display:block;aspect-ratio:1280/697;object-fit:cover}
.slide figcaption{position:absolute;left:0;right:0;bottom:0;
  background:linear-gradient(transparent,rgba(36,28,19,.85));color:#fff;font-size:.92rem;padding:34px 16px 14px}
.slide-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:44px;
  border:none;border-radius:50%;background:rgba(251,243,225,.92);color:var(--syahi);font-size:1.7rem;
  line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding-bottom:4px}
.slide-btn:hover{background:#fff}
.slide-btn.prev{left:10px}.slide-btn.next{right:10px}
.dots{position:absolute;left:0;right:0;bottom:12px;display:flex;gap:8px;justify-content:center;z-index:2}
.dots button{width:11px;height:11px;padding:0;border-radius:50%;border:2px solid #fff;background:transparent;cursor:pointer}
.dots button[aria-selected="true"]{background:var(--gehun);border-color:var(--gehun)}
@media (max-width:600px){.slide figcaption{font-size:.82rem}.slide-btn{width:38px;height:38px;font-size:1.4rem}}
@media (prefers-reduced-motion:reduce){.slides{transition:none!important}}

/* ============================================================
   PREMIUM LAYER — texture, progress, depth, tilt, Ken Burns
   (interactive bits activate only under html.motion-full)
   ============================================================ */

/* subtle khadi paper texture */
body{background-image:radial-gradient(rgba(154,74,31,.05) 1px, transparent 1.4px);background-size:26px 26px}

/* scroll progress bar */
.scroll-prog{position:fixed;top:0;left:0;height:3px;width:0;z-index:100;
  background:linear-gradient(90deg,var(--neel),var(--gehun),var(--kesari));box-shadow:0 0 8px rgba(199,146,40,.5)}
@media (max-width:760px){.scroll-prog{height:2px}}

/* button depth + lift */
.btn{transition:transform .14s ease, box-shadow .14s ease}
.btn-solid{box-shadow:0 6px 16px rgba(154,74,31,.26)}
.btn-line{box-shadow:0 4px 12px rgba(36,28,19,.08)}
html.motion-full .btn:hover{transform:translateY(-2px)}
html.motion-full .btn-solid:hover{box-shadow:0 12px 24px rgba(154,74,31,.34)}
.btn:active{transform:translateY(0)}

/* card tilt (JS-driven, desktop full-motion only) */
html.motion-full .tiltable{transition:transform .18s ease, box-shadow .2s ease;will-change:transform}

/* Ken Burns slow zoom on the active slide */
html.motion-full .slide img{transition:transform 6.5s ease-out}
html.motion-full .slide.is-active img{transform:scale(1.09)}

/* GPU hint for parallax layers */
.parallax{will-change:transform}

/* ============================================================
   V3 — MODERN PASS + WOW (preloader, intro, modal, flip, confetti)
   ============================================================ */

/* ---- modern: glass header, depth, radii ---- */
.site-head{background:rgba(251,243,225,.72)!important;backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);
  border-bottom:1px solid rgba(154,74,31,.12);transition:box-shadow .3s ease, background .3s ease}
.site-head.scrolled{box-shadow:0 10px 30px rgba(36,28,19,.10)}
.pillar,.elig-card,.pack,.qr-card,.set,.people li{border-radius:16px}
.pillar,.elig-card,.pack,.qr-card{box-shadow:0 12px 34px rgba(36,28,19,.05)}
.btn{border-radius:12px}
h2{letter-spacing:-.01em}

/* ---- preloader with countdown ---- */
.preloader{position:fixed;inset:0;z-index:9999;background:#FBF3E1;display:flex;align-items:center;justify-content:center;
  transition:opacity .6s ease, visibility .6s ease}
.preloader.hide{opacity:0;visibility:hidden}
.pre-in{text-align:center}
.pre-badge{width:78px;height:auto;animation:prePop .6s cubic-bezier(.34,1.56,.64,1) both}
.pre-title{font-family:'Anek Latin',system-ui,sans-serif;font-weight:800;font-size:42px;letter-spacing:.14em;color:#241C13;margin-top:6px}
.pre-ball{margin:6px auto 2px;width:40px;height:40px;animation:preBounce 1s ease-in-out infinite}
.pre-count{font-size:14px;font-weight:700;color:#7E5A2A;margin-top:8px}
.pre-count b{color:#9A4A1F;font-variant-numeric:tabular-nums;letter-spacing:.04em;margin-left:4px}
.pre-bar{margin:16px auto 0;width:210px;height:5px;border-radius:99px;background:rgba(154,74,31,.15);overflow:hidden}
.pre-bar i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,#1C7A38,#C79228,#E2540F)}
@keyframes prePop{0%{transform:scale(.6);opacity:0}100%{transform:scale(1);opacity:1}}
@keyframes preBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-13px)}}

/* ---- cinematic intro (full tier) ---- */
html.motion-full.intro .hero-in{animation:heroRise .9s cubic-bezier(.2,.8,.2,1) both}
@keyframes heroRise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}

/* ---- registration modal ---- */
.modal-wrap{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:20px}
.modal-wrap[hidden]{display:none}
.modal-back{position:absolute;inset:0;background:rgba(36,28,19,.5);backdrop-filter:blur(3px);animation:fadeIn .3s ease}
.modal-card{position:relative;background:#FBF3E1;border:1px solid rgba(154,74,31,.2);border-radius:22px;max-width:400px;width:100%;
  padding:32px 26px 22px;text-align:center;box-shadow:0 30px 80px rgba(36,28,19,.35);animation:modalIn .5s cubic-bezier(.34,1.56,.64,1)}
.modal-x{position:absolute;top:8px;right:12px;border:none;background:none;font-size:28px;line-height:1;color:#8A6011;cursor:pointer}
.rm-badge{width:60px;height:auto;margin:0 auto 8px;display:block}
.rm-live{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;letter-spacing:.06em;color:#1F5B30;
  background:#E8F3E5;border:1px solid #B7D8AC;padding:4px 12px;border-radius:20px}
.rm-dot{width:8px;height:8px;border-radius:50%;background:#1F5B30;animation:pulseDot 1.4s ease-in-out infinite}
.modal-card h3{font-size:26px;margin:12px 0 6px;color:#241C13}
.modal-card p{font-size:15px;color:#4A3B27;margin:0 0 18px;line-height:1.5}
.rm-later{display:block;margin:12px auto 0;border:none;background:none;color:#7E5A2A;font-size:13px;text-decoration:underline;cursor:pointer}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes modalIn{from{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:none}}
@keyframes pulseDot{0%,100%{opacity:1}50%{opacity:.3}}

/* ---- flip-scoreboard countdown ---- */
.sb-cells b{position:relative;display:inline-block;min-width:50px;padding:9px 6px 8px;margin:0 2px;border-radius:10px;
  background:linear-gradient(#33302c,#161310);color:#FBF3E1;font-weight:800;font-size:25px;line-height:1;
  font-variant-numeric:tabular-nums;text-align:center;box-shadow:inset 0 -2px 0 rgba(0,0,0,.4),0 5px 12px rgba(0,0,0,.32);transform-origin:center}
.sb-cells b::after{content:"";position:absolute;left:5px;right:5px;top:calc(50% + 1px);height:1px;background:rgba(0,0,0,.55)}
.sb-cells i{font-style:normal;font-size:11px;color:#8A6011;margin:0 6px 0 3px;vertical-align:middle}
html.motion-full .sb-cells b{animation:flipIn .55s cubic-bezier(.3,.8,.35,1)}
@keyframes flipIn{0%{transform:perspective(240px) rotateX(-82deg);opacity:.4}100%{transform:perspective(240px) rotateX(0);opacity:1}}

/* ---- scroll-following ball ---- */
.scroll-ball{position:absolute;top:92px;right:150px;z-index:3;pointer-events:none;will-change:transform,opacity;filter:drop-shadow(0 8px 12px rgba(11,58,30,.28))}
html:not(.motion-full) .scroll-ball{display:none}
.hb-inner{display:block}
html.motion-full .hb-inner{animation:hb-bob 2.2s ease-in-out infinite}
@keyframes hb-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media (max-width:1000px){.scroll-ball{right:110px}}
@media (max-width:760px){.scroll-ball{right:66px;top:70px}}

/* ---- grander emblem motion ---- */
.emblem-svg{overflow:visible}
.emblem-svg .rays{transform-box:fill-box;transform-origin:center}
html.motion-full .emblem-svg .rays{animation:spin 44s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
html.motion-full .emblem-svg .tw{transform-box:fill-box;transform-origin:center;animation:twinkle 2.2s ease-in-out infinite}
html.motion-full .emblem-svg .tw2{animation-delay:.55s}html.motion-full .emblem-svg .tw3{animation-delay:1.1s}html.motion-full .emblem-svg .tw4{animation-delay:1.65s}

@media (prefers-reduced-motion:reduce){
  .preloader{animation:none}
  .pre-ball,.rm-dot{animation:none!important}
}

/* ---- hero player (treated photo) + preloader figure ---- */
.ath-photo-wrap{position:relative;width:100%;will-change:transform}
.ath-photo{width:100%;height:auto;display:block;
  -webkit-mask-image:linear-gradient(105deg, transparent 0%, #000 34%);
  mask-image:linear-gradient(105deg, transparent 0%, #000 34%);
  filter:drop-shadow(0 14px 24px rgba(22,34,76,.22))}
html.motion-full .ath-photo{animation:ath-float 4.2s ease-in-out infinite}
.hero-athlete{width:340px;top:26px}
@media (max-width:1000px){.hero-athlete{width:250px}}
@media (max-width:760px){.hero-athlete{width:170px;top:auto;bottom:0;right:-4px;z-index:0;opacity:.55}}

.pre-figure{position:absolute;right:7%;bottom:0;height:82%;width:auto;opacity:.09;pointer-events:none;
  -webkit-mask-image:linear-gradient(180deg,#000 60%,transparent);mask-image:linear-gradient(180deg,#000 60%,transparent)}
@media (max-width:760px){.pre-figure{right:0;opacity:.07}}

/* ===== VISUALS PASS: bigger scroll-reactive trophy + ball-on-hit ===== */
.prize{overflow:visible;position:relative;z-index:2}
.trophy{position:relative;z-index:3;--spark:0}
.trophy .emblem-svg{width:252px;height:auto;display:block;margin:-48px 0}   /* negative margins => band is shorter than emblem => spills equally top & bottom */
@media (max-width:760px){.trophy .emblem-svg{width:184px}}
html.motion-full .emblem-svg .tw{opacity:calc(.14 + var(--spark,0)*.86)}   /* sparkles intensify on scroll */
/* (scroll-ball now lives inside the hero — see rules above) */

/* QR card: clearly separated from the form */
.qr-card{margin:0 0 28px}

/* ===== faded court background (hero + subpages) ===== */
.court-bg{position:absolute;inset:0;z-index:0;background:url('court-faded.webp') center/cover no-repeat;opacity:.10;pointer-events:none}
html.motion-full .court-bg{animation:court-drift 34s ease-in-out infinite alternate}
@keyframes court-drift{from{transform:scale(1.06) translateX(-1%)}to{transform:scale(1.13) translateX(1%)}}

/* ===== subpages: sponsorship / privacy / terms / register ===== */
.page-hero{position:relative;overflow:hidden;padding:66px 20px 42px;text-align:center;border-bottom:1px solid var(--line)}
.page-hero .court-bg{opacity:.14}
.page-hero-in{position:relative;z-index:1;max-width:900px;margin:0 auto}
.page-kicker{font-size:.8rem;font-weight:800;letter-spacing:.14em;color:var(--neel);text-transform:uppercase}
.page-hero h1{font-size:clamp(1.9rem,5vw,2.9rem);font-weight:800;margin:.25em 0 .3em;line-height:1.1}
.page-hero .lead{font-size:1.05rem;color:#4A3B27;max-width:640px;margin:0 auto}
.doc{max-width:820px;margin:0 auto;padding:44px 20px 72px}
.doc h2{font-size:1.35rem;margin:1.6em 0 .4em;color:var(--syahi)}
.doc h2:first-child{margin-top:0}
.doc p,.doc li{color:#3f3527;line-height:1.7}
.doc ul{padding-left:1.2em;margin:.3em 0 1.1em}
.doc li{margin:.3em 0}
.doc .updated{color:#6B5B43;font-size:.9rem;margin-bottom:1.5em}
.spon-wrap{max-width:1120px;margin:0 auto;padding:22px 20px 60px}
.spon-stats{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin:6px 0 10px}
.spon-stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 22px;text-align:center;box-shadow:0 8px 24px rgba(36,28,19,.05)}
.spon-stat b{display:block;font-size:1.7rem;color:var(--neel);font-weight:800;line-height:1}
.spon-stat span{font-size:.82rem;color:#6B5B43}
.spon-h{text-align:center;font-size:1.5rem;font-weight:800;margin:40px 0 6px;color:var(--syahi)}
.spon-sub{text-align:center;color:#6B5B43;margin:0 0 8px}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0}
@media(max-width:860px){.tiers{grid-template-columns:1fr}}
.tier{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 14px 34px rgba(36,28,19,.06);display:flex;flex-direction:column;position:relative;transition:transform .25s ease,box-shadow .25s ease}
html.motion-full .tier:hover{transform:translateY(-6px);box-shadow:0 22px 52px rgba(36,28,19,.13)}
.tier.title{border:2px solid var(--gehun);box-shadow:0 18px 44px rgba(199,146,40,.18)}
.tier .rank{font-size:1.5rem}
.tier h3{font-size:1.2rem;margin:.35em 0 .05em}
.tier .price{font-size:1.9rem;font-weight:800;color:var(--mitti);line-height:1}
.tier .tag{font-size:.9rem;color:#6B5B43;margin:4px 0 14px}
.tier ul{list-style:none;padding:0;margin:0 0 18px;flex:1}
.tier li{padding:7px 0 7px 24px;position:relative;font-size:.9rem;border-top:1px dashed var(--line)}
.tier li:first-child{border-top:none}
.tier li:before{content:"✓";position:absolute;left:0;color:var(--neel);font-weight:800}
.tier .btn{margin-top:auto;width:100%;text-align:center}
.ribbon{position:absolute;top:16px;right:-7px;background:var(--gehun);color:#3a2a08;font-size:.68rem;font-weight:800;padding:4px 12px;border-radius:4px 4px 4px 0}
.btable-wrap{overflow-x:auto}
.btable{width:100%;border-collapse:collapse;margin:18px 0;font-size:.88rem;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px rgba(36,28,19,.05);min-width:560px}
.btable th,.btable td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:center}
.btable th:first-child,.btable td:first-child{text-align:left;font-weight:600}
.btable thead th{background:var(--syahi);color:var(--kora);font-weight:700}
.btable tbody tr:nth-child(even){background:#FBF6EA}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0}
@media(max-width:860px){.why-grid{grid-template-columns:1fr}}
.why-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 8px 24px rgba(36,28,19,.05)}
.why-card b{display:block;color:var(--neel);margin-bottom:6px;font-size:1.02rem}
.why-card span{font-size:.92rem;color:#4A3B27;line-height:1.55}
.spon-cta{text-align:center;background:linear-gradient(120deg,var(--syahi),#3A2E1B);color:var(--kora);border-radius:18px;padding:38px 22px;margin:34px 0 10px;position:relative;overflow:hidden}
.spon-cta h2{color:var(--gehun);font-size:1.6rem;margin:0 0 8px}
.spon-cta p{color:#E7DcC4;margin:0 auto 6px;max-width:560px}
.spon-cta .btn{margin-top:16px}

/* ============================================================
   PREMIUM DUOTONE LAYER — Rozha One, toned green + gold, dark hero, arm-swing
   ============================================================ */
@font-face{font-family:'Rozha One';src:url('fonts/RozhaOne-Regular.ttf') format('truetype');font-weight:400;font-display:swap}

:root{
  --neel:#2A6E42;            /* toned-down green */
  --green-bright:#33B36A;    /* for dark backgrounds */
  --gold:#E8C15A; --gold2:#B8892E;
  --ink:#06120B; --ink2:#0C2417; --ink3:#123322;
}
h1,h2,h3,.brand-t strong,.prize-txt b{font-family:'Rozha One','Anek Devanagari','Noto Sans Devanagari',serif;font-weight:400;letter-spacing:.01em}
.gold-text{background:linear-gradient(100deg,#F6DE93,#E8C15A 42%,#B8892E);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- DARK CINEMATIC HERO ---------- */
.hero{background:radial-gradient(120% 92% at 66% 30%, #143f28 0%, #0b2416 44%, #05100a 100%)!important;color:#EAF3EC}
.hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:linear-gradient(rgba(235,198,94,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(235,198,94,.06) 1px,transparent 1px);
  background-size:46px 46px;-webkit-mask:radial-gradient(circle at 66% 38%,#000,transparent 72%);mask:radial-gradient(circle at 66% 38%,#000,transparent 72%)}
.hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(120% 100% at 62% 34%,transparent 42%,rgba(0,0,0,.5) 100%)}
.hero .court-bg{opacity:.10;mix-blend-mode:luminosity}
.hero-split{background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")!important;opacity:.05;z-index:1}
.hero-in{z-index:3}
.hero .recognised{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);color:#EAF3EC;backdrop-filter:blur(8px)}
.hero .eyebrow{color:var(--gold)}
.hero h1{color:#fff}
.hero h1 em{color:transparent;background:linear-gradient(100deg,#F6DE93,#E8C15A 42%,#B8892E);-webkit-background-clip:text;background-clip:text}
.hero .hero-sub{color:#c4d8cb}.hero .hero-sub strong{color:#fff}
.hero .tagline{color:var(--gold)}
.hero .vs-west{color:var(--green-bright)}
.hero .vs-mark{background:rgba(12,36,22,.6);border:1px solid rgba(235,198,94,.45);color:var(--gold)}
.hero .scoreboard{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px)}
.hero .sb-label{color:var(--gold)}.hero .sb-cells b{color:#fff;background:rgba(0,0,0,.35);border-color:rgba(255,255,255,.12)}
.hero .sb-cells i,.hero .sb-date{color:#a9c4b2}
.hero .btn-solid{background:linear-gradient(100deg,#F6DE93,#E8C15A 50%,#C89A34);color:#2a1e05;box-shadow:0 8px 26px rgba(235,198,94,.34),inset 0 1px 0 rgba(255,255,255,.5);border:none}
.hero .btn-line{background:rgba(255,255,255,.06);color:#EAF3EC;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(8px)}
.hero-logos{background:rgba(247,239,221,.92);border-radius:14px;padding:10px 16px;display:inline-flex;gap:22px;box-shadow:0 8px 24px rgba(0,0,0,.3)}

/* aadhaar callout chip in hero */
.aadhaar-note{display:inline-flex;align-items:center;gap:9px;margin:16px 0 4px;padding:9px 16px;border-radius:12px;
  background:rgba(235,198,94,.12);border:1px solid rgba(235,198,94,.4);color:#F3E4BA;font-size:.86rem;font-weight:600}
.aadhaar-note .ic{font-size:1.05rem}

/* ---------- ARM SWING ---------- */
.ath-photo-wrap{position:relative}
.ath-body,.ath-arm{position:absolute;inset:0;width:100%;height:auto;display:block}
.ath-body{position:relative}
.ath-arm{transform-origin:71% 19.7%}
html.motion-full .ath-arm{animation:spike 2.6s cubic-bezier(.5,0,.4,1) infinite}
@keyframes spike{0%{transform:rotate(-9deg)}30%{transform:rotate(-15deg)}52%{transform:rotate(38deg)}66%{transform:rotate(29deg)}100%{transform:rotate(-9deg)}}
.scroll-ball{filter:drop-shadow(0 6px 12px rgba(0,0,0,.45))}
html.motion-full .scroll-ball{animation:ballhit 2.6s cubic-bezier(.4,0,.5,1) infinite}
@keyframes ballhit{0%,44%{transform:translate(0,0) rotate(0);opacity:1}52%{transform:translate(-6px,10px) scale(1.06)}100%{transform:translate(-150px,300px) rotate(560deg);opacity:0}}
html.motion-full .hb-inner{animation:none}
.hit-flash{position:absolute;left:64%;top:12%;width:120px;height:120px;z-index:2;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(255,244,214,.9),rgba(235,198,94,.5) 40%,transparent 70%);transform:scale(.2);opacity:0}
html.motion-full .hit-flash{animation:hitflash 2.6s ease-out infinite}
@keyframes hitflash{0%,46%{opacity:0;transform:scale(.2)}53%{opacity:1;transform:scale(1)}62%{opacity:0;transform:scale(1.3)}100%{opacity:0}}

/* ---------- subpage dark headers (duotone split) ---------- */
.page-hero{background:radial-gradient(120% 130% at 60% 0%, #143f28 0%, #0b2416 46%, #05100a 100%)!important;color:#EAF3EC;border-bottom:none}
.page-hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(120% 120% at 60% 0%,transparent 45%,rgba(0,0,0,.5) 100%)}
.page-hero .court-bg{opacity:.10;mix-blend-mode:luminosity}
.page-hero .page-kicker{color:var(--gold)}
.page-hero h1{color:#fff}
.page-hero h1 em{color:transparent;background:linear-gradient(100deg,#F6DE93,#E8C15A 42%,#B8892E);-webkit-background-clip:text;background-clip:text;font-style:normal}
.page-hero .lead{color:#c4d8cb}
.tricol-band{height:5px;background:linear-gradient(90deg,var(--neel),var(--gold),var(--kesari))}

/* milestone / vision cards */
.mile-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1120px;margin:26px auto;padding:0 20px}
@media(max-width:860px){.mile-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.mile-grid{grid-template-columns:1fr}}
.mile{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 12px 30px rgba(36,28,19,.06);position:relative}
.mile .when{font-family:'Rozha One',serif;font-size:1.5rem;color:var(--neel)}
.mile .what{font-weight:800;margin:4px 0 6px;color:var(--syahi)}
.mile .where{font-size:.9rem;color:#5a4a33;line-height:1.5}
.mile .step{position:absolute;top:-12px;right:16px;width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#2a1e05;font-weight:800;display:grid;place-items:center;font-size:.9rem}

/* registration-only Aadhaar entry callout (light) */
.reg-note{display:flex;gap:10px;align-items:flex-start;background:#FBF1D6;border:1px solid var(--gold);border-left:4px solid var(--gold2);border-radius:12px;padding:14px 16px;margin:0 0 20px;color:#5a481e;font-weight:600;line-height:1.45}
.reg-note .ic{font-size:1.15rem;flex:none}

/* ============================================================
   FEATURES: dark header, sticky nav, mobile bar, WA invite,
   live counter, net dividers, UP map, multi-step form
   ============================================================ */
/* ---- dark glass header ---- */
.site-head{background:rgba(8,20,12,.72)!important;border-bottom:1px solid rgba(235,198,94,.16)}
.site-head.scrolled{background:rgba(6,15,10,.93)!important;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.site-head .brand,.site-head .brand-t strong{color:#fff}
.site-head .brand-t small{color:#9fbaa6}
.site-head .nav a{color:#dbe9df}
.site-head .nav a:hover{color:#fff}
.site-head .nav a.active{color:var(--gold)}
.site-head .lang-btn{background:transparent;border:2px solid rgba(235,198,94,.5);color:#EAF3EC}
.site-head .lang-btn:hover{background:var(--gold);color:#241C13;border-color:var(--gold)}
.site-head .nav-btn{color:#EAF3EC;border-color:rgba(255,255,255,.25)}
.site-head .nav .btn-solid{background:linear-gradient(100deg,#F6DE93,#E8C15A 50%,#C89A34)!important;color:#2a1e05!important;border:none}
@media (max-width:760px){.site-head .nav{background:rgba(6,15,10,.98)!important;border-top:1px solid rgba(235,198,94,.15);box-shadow:0 20px 40px rgba(0,0,0,.4)}.site-head .nav a{border-bottom:1px solid rgba(255,255,255,.08)}}

/* ---- mobile sticky register bar ---- */
.mreg{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;gap:12px;align-items:center;justify-content:space-between;padding:9px 14px;background:rgba(6,15,10,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(235,198,94,.22)}
.mreg .c{color:#EAF3EC;font-size:.8rem;line-height:1.15}
.mreg .c b{color:var(--gold);font-family:'Rozha One',serif}
.mreg .btn{padding:11px 18px;white-space:nowrap}
@media (max-width:760px){.mreg{display:flex}body{padding-bottom:62px}}

/* ---- WhatsApp invite button ---- */
.wa-fab{position:fixed;right:16px;bottom:16px;z-index:61;display:inline-flex;align-items:center;gap:8px;background:#1FA855;color:#fff;padding:12px 18px;border-radius:30px;text-decoration:none;font-weight:700;font-size:.9rem;box-shadow:0 10px 26px rgba(31,168,85,.42)}
.wa-fab svg{width:20px;height:20px;fill:#fff;flex:none}
@media (max-width:760px){.wa-fab{bottom:70px;right:12px;padding:13px;border-radius:50%}.wa-fab .t{display:none}}

/* ---- live registration counter ---- */
.live-count{display:inline-flex;align-items:center;gap:10px;background:#0c2416;color:#EAF3EC;border:1px solid rgba(235,198,94,.32);border-radius:30px;padding:9px 18px;font-size:.92rem;margin:2px auto 20px}
.live-count .dot{width:9px;height:9px;border-radius:50%;background:#33B36A;animation:lc-pulse 1.8s infinite}
@keyframes lc-pulse{0%{box-shadow:0 0 0 0 rgba(51,179,106,.6)}70%{box-shadow:0 0 0 10px rgba(51,179,106,0)}100%{box-shadow:0 0 0 0 rgba(51,179,106,0)}}
.live-count b{color:var(--gold);font-family:'Rozha One',serif;font-size:1.2rem;line-height:1}

/* ---- tricolor net dividers ---- */
.net-div{height:22px;border:0;margin:0;background:linear-gradient(90deg,var(--neel),var(--gold),var(--kesari));
  -webkit-mask:repeating-linear-gradient(90deg,#000 0 2px,transparent 2px 15px),repeating-linear-gradient(0deg,#000 0 2px,transparent 2px 15px);
  mask:repeating-linear-gradient(90deg,#000 0 2px,transparent 2px 15px),repeating-linear-gradient(0deg,#000 0 2px,transparent 2px 15px);opacity:.45}

/* ---- interactive UP map ---- */
.upmap-sec{padding:58px 20px}
.upmap-wrap{max-width:960px;margin:0 auto;text-align:center}
.upmap{position:relative;max-width:660px;margin:22px auto 0}
.upmap svg{width:100%;height:auto;display:block}
.zoneShape{transition:filter .2s ease}
.trial-dot{cursor:pointer}
.trial-dot circle.hit{fill:transparent}
.trial-dot .pin{transition:transform .2s ease;transform-origin:center;transform-box:fill-box}
.trial-dot:hover .pin,.trial-dot:focus .pin{transform:scale(1.35)}
.map-pop{position:absolute;transform:translate(-50%,-115%);background:#0c2416;color:#EAF3EC;border:1px solid rgba(235,198,94,.4);border-radius:12px;padding:10px 14px;font-size:.9rem;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s;box-shadow:0 12px 30px rgba(0,0,0,.4);z-index:5}
.map-pop.show{opacity:1}
.map-pop b{display:block;color:var(--gold);font-size:1rem;margin-bottom:2px}
.map-legend{display:flex;gap:20px;justify-content:center;margin-top:16px;font-size:.9rem;color:#5a4a33}
.map-legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:middle}

/* ---- multi-step form ---- */
.steps{display:flex;gap:8px;margin:0 0 20px}
.steps .s{flex:1;height:7px;border-radius:5px;background:#e6dabf;transition:background .3s}
.steps .s.done{background:var(--neel)}
.steps .s.cur{background:linear-gradient(90deg,var(--gold),var(--gold2))}
.step-label{font-size:.85rem;color:#6B5B43;font-weight:700;margin:-10px 0 14px}
.reg-form.stepped>fieldset{display:none}
.reg-form.stepped>fieldset.active{display:block;animation:stepIn .35s ease}
@keyframes stepIn{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
.step-nav{display:flex;justify-content:space-between;gap:10px;margin-top:6px}
.step-nav .spacer{flex:1}
.reg-form.stepped .form-actions{display:none}
.reg-form.stepped.laststep .form-actions{display:block}

/* ---- storyteller ball ---- */
.story-ball{position:fixed;left:0;top:0;width:34px;height:34px;z-index:40;pointer-events:none;opacity:0;transition:opacity .4s;will-change:transform}
html:not(.motion-full) .story-ball{display:none}

/* ============================================================
   TWEAKS: loader logo centering, bigger logo strips, de-green hero
   ============================================================ */
/* 1) preloader — keep the KVPL badge dead-centre (drop the side figure) */
.pre-figure{display:none!important}
.preloader{flex-direction:column}
.pre-in{text-align:center;margin:0 auto}

/* 2) hero logo strip — bigger */
.hero-logos{gap:30px!important;padding:14px 26px!important}
.hero-logos img{height:60px!important;width:auto!important}
@media (max-width:760px){.hero-logos{gap:20px!important;padding:11px 18px!important}.hero-logos img{height:46px!important}}

/* 3) footer logo strip — bigger */
.foot-logos{gap:22px!important;padding:12px 20px!important}
.foot-logos img{height:56px!important;width:auto!important}
@media (max-width:760px){.foot-logos img{height:46px!important}}

/* 4) warm the hero — thin warm-beige tint instead of the green wash; real match photo shows through */
.hero{background:radial-gradient(120% 105% at 62% 22%, #3c362b 0%, #241f18 46%, #100d09 100%)!important}
.hero .court-bg{opacity:.30!important;mix-blend-mode:normal!important;filter:saturate(.45) sepia(.20) brightness(1.03)}
.hero::before{opacity:.42}
.page-hero{background:radial-gradient(120% 135% at 60% 0%, #3c362b 0%, #241f18 46%, #100d09 100%)!important}
.page-hero .court-bg{opacity:.28!important;mix-blend-mode:normal!important;filter:saturate(.45) sepia(.20) brightness(1.03)}

/* ============================================================
   FIXES: loader dead-center, whole player (no cut arms)
   ============================================================ */
/* loader — force perfect centering regardless of earlier rules */
.preloader{display:grid!important;place-items:center!important}
.pre-in{margin:0 auto!important;display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important}
.pre-badge{margin:0 auto!important}

/* whole player silhouette — drop the segmented arm/body (looked severed) */
.ath-photo{position:relative;width:100%;height:auto;display:block}
.hit-flash{display:none!important}
html.motion-full .scroll-ball{animation:ballfloat 4.5s ease-in-out infinite!important}
@keyframes ballfloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-14px) rotate(7deg)}}

/* ============================================================
   About Us leadership, Kisan Mela images, Gallery + lightbox
   ============================================================ */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1000px;margin:26px auto 0;padding:0 20px}
@media(max-width:820px){.team-grid{grid-template-columns:1fr;max-width:420px}}
.team-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 14px 34px rgba(36,28,19,.08)}
.team-card img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top center;display:block}
.team-info{padding:16px 18px;text-align:center}
.team-info b{display:block;font-family:'Rozha One',serif;font-size:1.35rem;color:var(--syahi);line-height:1.1}
.team-info span{font-size:.92rem;color:var(--neel);font-weight:700}

.mela-imgs{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1100px;margin:26px auto;padding:0 20px}
@media(max-width:760px){.mela-imgs{grid-template-columns:1fr}}
.mela-imgs figure{margin:0}
.mela-imgs img{width:100%;border-radius:16px;box-shadow:0 14px 34px rgba(36,28,19,.1);display:block}
.mela-imgs figcaption{font-size:.85rem;color:#6B5B43;text-align:center;margin-top:8px}

.gallery{columns:3;column-gap:14px;max-width:1100px;margin:26px auto;padding:0 20px}
@media(max-width:820px){.gallery{columns:2}}
@media(max-width:520px){.gallery{columns:1}}
.gallery img{width:100%;border-radius:12px;margin:0 0 14px;cursor:zoom-in;display:block;box-shadow:0 10px 26px rgba(36,28,19,.08);transition:transform .2s ease}
html.motion-full .gallery img:hover{transform:scale(1.02)}
.lightbox{position:fixed;inset:0;z-index:9998;background:rgba(6,12,8,.93);display:none;align-items:center;justify-content:center;padding:20px}
.lightbox.open{display:flex}
.lightbox img{max-width:94vw;max-height:90vh;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.lb-close{position:absolute;top:16px;right:24px;font-size:38px;color:#fff;cursor:pointer;line-height:1;background:none;border:none}

/* ============================================================
   Site announcement — bar, timeline box, pop-up line
   ============================================================ */
.notice-bar{position:relative;z-index:30;display:flex;align-items:center;gap:10px;justify-content:center;text-align:center;background:linear-gradient(90deg,#8a1c1c,#b3421a);color:#fff;font-weight:600;font-size:.92rem;line-height:1.35;padding:11px 46px 11px 18px}
.notice-bar .nb-ic{flex:none}
.notice-bar .nb-x{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:#fff;font-size:1.6rem;line-height:1;cursor:pointer;opacity:.85}
.notice-bar .nb-x:hover{opacity:1}
.notice-box{display:flex;align-items:flex-start;gap:10px;max-width:1000px;margin:0 auto 22px;padding:14px 18px;border-radius:12px;background:#FBE7D6;border:1px solid #E1A878;border-left:5px solid #C2531A;color:#6b3410;font-weight:600;line-height:1.45}
.notice-box .nb-ic{flex:none}
.rm-notice{background:#8a1c1c;color:#fff;border-radius:10px;padding:11px 14px;margin:2px 0 14px;font-size:.92rem;font-weight:600;line-height:1.45}
