/* Additions on top of Akhil's style.css (which is kept byte-identical): registration CTA, status section, pop-up. */
.kn{font-family:'Anek Kannada',sans-serif}
.reg-block{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:stretch;margin-top:2.5rem}
.reg-block .glass-form{margin-top:0;display:flex;flex-direction:column;padding:2.5rem}
.reg-h{color:var(--golden-sand);font-size:1.5rem;margin-bottom:.9rem;padding-bottom:.6rem;border-bottom:1px solid rgba(212,163,115,.25)}
.reg-h .kn{font-weight:600;font-size:1.2rem}
.reg-cta{text-align:center}
.reg-cta .reg-h{text-align:left}
.reg-cta p{text-align:left}
.reg-cta .btn-register{margin:auto auto 0}
.reg-cta p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:1.8rem}
.btn-register{display:inline-flex;flex-direction:column;align-items:center;gap:4px;background:linear-gradient(135deg,var(--terracotta),#6d3618);color:#fff;border:1px solid rgba(212,163,115,.5);border-radius:8px;padding:1.1rem 2.6rem;font:inherit;font-weight:700;font-size:1.25rem;cursor:pointer;box-shadow:0 10px 30px rgba(142,74,35,.45);transition:transform .3s ease,box-shadow .3s ease}
.btn-register small{font-family:'Anek Kannada',sans-serif;font-weight:600;font-size:1rem;color:var(--golden-sand)}
.btn-register:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(142,74,35,.6)}
.reg-meta{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.6rem;font-size:.92rem;color:var(--text-secondary);text-align:left;line-height:1.6}
.reg-meta b{color:var(--golden-sand)}
.reg-meta a{color:var(--text-primary);text-decoration:none;border-bottom:1px solid rgba(212,163,115,.5)}
.status-hint{color:var(--text-secondary);font-size:.95rem;margin-bottom:1.2rem}
.status-grid{grid-template-columns:1fr}
#status{position:relative;top:-140px}
.status-form label .kn{color:var(--golden-sand);font-weight:600}
.status-result{margin-top:1.5rem;text-align:left;background:rgba(0,0,0,.4);border:1px solid rgba(212,163,115,.3);border-radius:8px;padding:1.2rem 1.5rem;color:var(--text-primary);font-weight:400;line-height:1.7}
.status-result .pill{display:inline-block;padding:2px 12px;border-radius:999px;font-weight:700;font-size:.9rem}
.pill.Pending{background:#4a3a12;color:#ffd166}.pill.Accepted{background:#1c4a2a;color:#4ade80}.pill.Rejected{background:#4a1c1c;color:#f87171}.pill.Correction{background:#4a2f12;color:#fbbf24}
.reg-modal{display:none;position:fixed;inset:0;z-index:2000;background:rgba(10,6,4,.85);backdrop-filter:blur(6px);align-items:center;justify-content:center;padding:2vh 2vw}
.reg-modal.active{display:flex}
.reg-modal-box{position:relative;width:min(1100px,100%);height:96vh;background:#f7f1e3;border-radius:14px;overflow:hidden;border:1px solid rgba(212,163,115,.4);box-shadow:0 30px 80px rgba(0,0,0,.7);display:flex;flex-direction:column}
.reg-modal-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1rem;background:#0a2f6b;color:#fff;border-bottom:3px solid var(--golden-sand);font-family:'Anek Kannada',sans-serif;font-weight:700}
.reg-modal-head span small{font-family:var(--font-body);font-weight:500;opacity:.85;margin-left:8px}
.reg-modal-close{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:6px;padding:.35rem .8rem;font:inherit;cursor:pointer}
.reg-modal-close:hover{background:rgba(255,255,255,.15)}
.reg-modal iframe{flex:1;width:100%;border:0;background:#f7f1e3}
body.modal-open{overflow:hidden}
@media(max-width:768px){.reg-modal{padding:0}.reg-modal-box{height:100vh;border-radius:0}}

/* ── Footer redesign (overrides Akhil's footer rules from style.css, which stays untouched) ── */
footer.site-foot{position:relative;overflow:hidden;text-align:left;padding:0;background:linear-gradient(180deg,var(--bg-panel) 0%,#160e0b 100%);border-top:1px solid rgba(212,163,115,.25)}
.foot-glow{position:absolute;inset:auto 0 0 0;height:60%;background:radial-gradient(60% 80% at 80% 100%,rgba(142,74,35,.35),transparent 70%);pointer-events:none}
.foot-inner{position:relative;max-width:1200px;margin:0 auto;padding:4rem 5% 2.5rem;display:grid;grid-template-columns:1.5fr 1fr 1.1fr .8fr auto;gap:2.2rem;align-items:start}
.foot-logos{display:flex;gap:12px;margin-bottom:1rem}
.foot-logos img{height:58px;width:58px;border-radius:50%;background:#fff;object-fit:cover;padding:2px;box-shadow:0 0 0 2px var(--golden-sand),0 6px 18px rgba(0,0,0,.5)}
.foot-brand h3{font-size:1.7rem;color:var(--golden-sand);margin-bottom:.2rem}
.foot-tag{font-family:'Playfair Display',serif;font-style:italic;color:var(--text-primary);font-size:1.05rem;margin-bottom:.6rem}
.foot-kn{font-family:'Anek Kannada',sans-serif;color:var(--golden-sand);font-weight:600;margin-bottom:.6rem}
.foot-text{color:var(--text-secondary);font-size:.92rem;line-height:1.6;max-width:36ch}
.foot-col h5{font-family:var(--font-heading);font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--golden-sand);margin-bottom:.9rem;padding-bottom:.5rem;border-bottom:1px solid rgba(212,163,115,.25)}
.foot-col h5 .kn{letter-spacing:0;text-transform:none;font-size:.95rem}
.foot-col p{color:var(--text-primary);font-size:.95rem;line-height:1.55;margin-bottom:.7rem}
.foot-col p.kn{color:var(--text-secondary)}
.foot-col small{display:block;color:var(--text-secondary);font-size:.75rem;letter-spacing:.03em;margin-bottom:2px}
.foot-col a{color:var(--text-primary);text-decoration:none;font-weight:600;border-bottom:1px solid rgba(212,163,115,.45);transition:color .25s}
.foot-col a:hover{color:var(--golden-sand)}
.foot-col b{color:var(--golden-sand)}
.foot-link{font-size:.9rem}
.foot-col ul{list-style:none}
.foot-col li{margin-bottom:.5rem}
.foot-col li a{font-weight:500;border-bottom:0}
.foot-col li a::before{content:"›";color:var(--terracotta);margin-right:8px;font-weight:700}
.foot-mascots{align-self:end;display:flex;align-items:flex-end;gap:6px;margin-bottom:-2.5rem}
.foot-mascots .fm{height:170px;filter:drop-shadow(0 12px 22px rgba(0,0,0,.6));animation:mascotFloat 6s ease-in-out infinite}
.foot-mascots .fm-ammu{animation-delay:-3s}
@keyframes mascotFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.foot-bot{position:relative;border-top:1px solid rgba(212,163,115,.18);background:rgba(0,0,0,.35)}
.foot-bot{max-width:none;padding:1rem 5%;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
footer.site-foot .copyright{margin:0;color:#8f8272;font-size:.85rem}
footer.site-foot .pitchfact-credits{margin:0}
@media(max-width:1000px){.foot-inner{grid-template-columns:1fr 1fr;padding-bottom:0}.foot-brand{grid-column:1/-1}.foot-mascots{grid-column:1/-1;justify-content:center;margin-bottom:0;margin-top:.5rem}.foot-mascots .fm{height:140px}}
@media(max-width:560px){.foot-inner{grid-template-columns:1fr}}
@media(max-width:600px){.status-section .section-title,.registration-section .section-title{font-size:clamp(1.9rem,9vw,3rem)}}

/* ── Responsive fixes on top of Akhil's style.css (short laptop screens + phones) ── */
/* Hero: never cut content — grow with content, clear the fixed navbar, scale logo/title with viewport height */
.hero{height:auto;min-height:100vh;padding-top:130px;padding-bottom:48px;align-items:center}
.hero-content{padding-top:0}
.hero-big-logo{max-width:min(500px,40vh,80vw);margin-bottom:1.2rem}
.hero-title-main{font-size:clamp(1.9rem,min(5.5vw,7.5vh),4.2rem)}
.hero-subtitle-accent{font-size:clamp(1.5rem,min(5vw,6.5vh),4rem)!important;margin-bottom:0}
@media(max-height:700px){.hero{padding-top:115px}.hero-big-logo{max-width:min(420px,34vh)}}
/* Background word must fit inside the section (was 16vw → clipped both ends) */
.bg-text{font-size:clamp(2.6rem,11.2vw,15rem)}
/* Navbar on phones: Akhil's navbar goes to a column; keep the links on one wrapping row without overflow */
@media(max-width:768px){
  .navbar{padding:.9rem 4%;gap:.6rem}
  .navbar nav{flex-wrap:wrap;justify-content:center;width:100%;row-gap:.35rem}
  .navbar nav a{margin:0 .7rem;font-size:.95rem}
  .lang-toggle{margin-left:.7rem;padding:.3rem .6rem;font-size:.85rem}
  .hero{padding-top:190px}
  .anim-content{left:4%;right:4%;max-width:none;padding:1.6rem;bottom:8%}
  .anim-content .section-title{font-size:2rem}
  .section-title{font-size:2.2rem}
}
@media(max-width:400px){.navbar nav a{margin:0 .45rem;font-size:.9rem}.hero{padding-top:200px}}

@media(max-width:900px){.reg-block{grid-template-columns:1fr}.reg-meta{grid-template-columns:1fr}}

/* ── Welcome / Mysuru Dasara introduction (authority request) ── */
.welcome{background:radial-gradient(120% 90% at 85% 10%,rgba(142,74,35,.28),transparent 55%),linear-gradient(180deg,#120c0a 0%,#1a110d 100%);border-top:1px solid rgba(212,163,115,.15);padding-top:5rem;padding-bottom:5rem}
.welcome-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:3.5rem;align-items:center}
.welcome-badge{display:inline-flex;align-items:center;gap:12px;background:rgba(212,163,115,.08);border:1px solid rgba(212,163,115,.35);border-radius:999px;padding:6px 18px 6px 6px;margin-bottom:1.4rem}
.welcome-badge img{height:46px;width:46px;border-radius:50%;background:#fff;object-fit:cover;padding:2px}
.welcome-badge span{display:flex;flex-direction:column;line-height:1.2}
.welcome-badge b{color:var(--golden-sand);font-family:var(--font-heading);font-size:1rem}
.welcome-badge small{color:var(--text-secondary);font-size:.8rem}
.welcome .section-title{font-size:clamp(2rem,3.4vw,2.8rem);margin-bottom:1.2rem}
.welcome-text p{color:var(--text-secondary);font-size:1.05rem;line-height:1.7;margin-bottom:1.1rem}
.welcome-text > p:first-of-type::first-letter{color:var(--golden-sand);font-family:var(--font-heading);font-weight:800;font-size:1.6em;line-height:1}
.welcome-mascots{display:flex;align-items:center;gap:14px;margin-top:1.6rem;padding:12px 16px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}
.welcome-mascots .mascot{height:92px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.6))}
.welcome-mascots .mascot+.mascot{margin-left:-10px}
.welcome-mascots p{margin:0 0 0 6px;color:var(--text-primary);font-weight:600;font-size:.98rem}
.palace-card{position:relative;margin:0;background:linear-gradient(180deg,#2a1710 0%,#0d0807 100%);border:1px solid rgba(212,163,115,.35);border-radius:16px;padding:.6rem .6rem 1.2rem;box-shadow:0 30px 60px rgba(0,0,0,.6);overflow:visible}
.palace-img{position:relative;width:100%;aspect-ratio:16/10;object-fit:cover;display:block;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.6)}
.savari-img{position:absolute;right:-22px;bottom:5.4rem;height:34%;width:auto;filter:drop-shadow(0 12px 20px rgba(0,0,0,.7));animation:savariSway 7s ease-in-out infinite}
@keyframes savariSway{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.palace-card figcaption{position:relative;margin:1rem .6rem 0;padding-top:.9rem;border-top:1px solid rgba(212,163,115,.25);display:flex;flex-direction:column;gap:4px;padding-right:110px}
@media(max-width:560px){.palace-card figcaption{padding-right:0}}
.palace-card figcaption b{color:var(--golden-sand);font-family:var(--font-heading);font-size:1.1rem}
.palace-card figcaption span{color:var(--text-secondary);font-size:.92rem;line-height:1.55}
@media(max-width:900px){.welcome-grid{grid-template-columns:1fr;gap:2.5rem}.savari-img{right:-6px;height:34%}.welcome{padding-top:3.5rem;padding-bottom:3.5rem}}
@media(max-width:560px){.welcome-mascots{flex-wrap:wrap}.welcome-mascots .mascot{height:74px}.savari-img{display:none}}

/* WebP backgrounds (overrides the two url() in Akhil's untouched style.css) */
.hero-bg{background-image:url('/hero-kambala.webp')}
.event-details{background-image:url('/event-bg.webp')}

/* ── Blinking mascots (reusable): <span class="mascot mascot-gajju"><img><i class="lid l"></i><i class="lid r"></i></span> ── */
.mascot{position:relative;display:inline-block;line-height:0;height:160px}
.mascot img{display:block;height:100%;width:auto}
.mascot .lid{position:absolute;display:block;transform:scaleY(0);transform-origin:50% 0;border-radius:0 0 50% 50% / 0 0 70% 70%;animation:blink 5.2s ease-in-out infinite;pointer-events:none}
.mascot-gajju .lid{background:#5a5654;width:11%;height:6.8%;top:26.6%;border-bottom:2px solid #2e2b29}
.mascot-gajju .lid.l{left:27.5%}.mascot-gajju .lid.r{left:53.5%}
.mascot-ammu .lid{background:#fdb46c;width:21%;height:7.4%;top:30.2%;border-bottom:2px solid #4a2a14}
.mascot-ammu .lid.l{left:21.5%}.mascot-ammu .lid.r{left:57.5%}
.mascot-ammu .lid{animation-delay:1.7s}
.mascot.blink-debug .lid{transform:scaleY(1);animation:none}
@keyframes blink{0%,91%{transform:scaleY(0)}94%{transform:scaleY(1)}97%,100%{transform:scaleY(0)}}
/* hero placement */
.hero-mascots{position:absolute;right:5%;bottom:34px;z-index:2;display:flex;align-items:flex-end;gap:0}
.hero-mascots .mascot{height:min(30vh,240px);filter:drop-shadow(0 16px 26px rgba(0,0,0,.7));animation:mascotFloat 6s ease-in-out infinite}
.hero-mascots .mascot-ammu{animation-delay:-3s;margin-left:-14px}
.hero-bubble{align-self:flex-start;margin:0 8px 0 0;background:rgba(255,255,255,.92);color:#2b1d12;border-radius:14px 14px 14px 2px;padding:10px 14px;max-width:210px;line-height:1.25;box-shadow:0 8px 24px rgba(0,0,0,.4);position:relative;top:-10px}
.hero-bubble b{display:block;font-size:1.25rem;color:#8e4a23}
.hero-bubble span{font-size:.85rem;font-weight:600}
@media(max-width:1000px){.hero-bubble{display:none}.hero-mascots .mascot{height:min(22vh,170px)}}
@media(max-width:768px){.hero-mascots{right:3%;bottom:14px}.hero-mascots .mascot{height:110px}}
/* bigger menu logos (overflow the bar; navbar height unchanged) */
.navbar .logo img.nav-logo-img{height:92px!important;width:92px!important;margin:-16px 0 -34px!important;padding:3px;box-shadow:0 0 0 3px var(--golden-sand),0 10px 24px rgba(0,0,0,.55);position:relative;z-index:2;transition:transform .3s}
.navbar .logo img.nav-logo-img:hover{transform:scale(1.05)}
.navbar{overflow:visible}
@media(max-width:768px){.navbar .logo img.nav-logo-img{height:64px!important;width:64px!important;margin:-4px 0 0!important}.navbar{gap:.6rem}.hero-mascots .mascot{height:100px}}


/* ═══════════════════════════════════════════════════════════════════════
   PREMIUM PASS — liquid glass surfaces, type scale, radius system, motion
   (layered on Akhil's untouched style.css; identity & structure unchanged)
   ═══════════════════════════════════════════════════════════════════════ */
:root{
  --r-sm:12px;--r-md:18px;--r-lg:24px;--r-pill:999px;
  --glass-bg:linear-gradient(145deg,rgba(255,255,255,.085) 0%,rgba(255,255,255,.035) 45%,rgba(255,255,255,.015) 100%);
  --glass-border:rgba(255,255,255,.14);
  --glass-shadow:0 24px 60px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.22),inset 0 -1px 0 rgba(0,0,0,.35);
  --gold-glow:0 0 0 1px rgba(212,163,115,.35),0 18px 50px rgba(212,163,115,.14);
  --ease:cubic-bezier(.2,.8,.2,1);
}
/* liquid glass surface */
.glass-card,.glass-form,.bull-clock,.anim-content,.palace-card,.welcome-mascots,.welcome-badge,.hero-bubble,.reg-modal-box,.status-result{
  background:var(--glass-bg)!important;border:1px solid var(--glass-border)!important;box-shadow:var(--glass-shadow);
  -webkit-backdrop-filter:blur(22px) saturate(150%);backdrop-filter:blur(22px) saturate(150%);position:relative;
}
.glass-card,.glass-form,.palace-card,.reg-modal-box{border-radius:var(--r-lg)!important}
.welcome-mascots,.status-result{border-radius:var(--r-md)!important}
.glass-card::before,.glass-form::before,.palace-card::before,.welcome-mascots::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(120% 60% at 15% 0%,rgba(255,255,255,.14),transparent 55%),linear-gradient(180deg,rgba(255,255,255,.06),transparent 30%);
  -webkit-mask:linear-gradient(#000,transparent 70%);mask:linear-gradient(#000,transparent 70%);
}
.glass-card>*,.glass-form>*,.palace-card>*{position:relative}
.glass-card{transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .5s}
.glass-card:hover{transform:translateY(-8px);border-color:rgba(212,163,115,.45)!important;box-shadow:var(--glass-shadow),var(--gold-glow);background:var(--glass-bg)!important}
.bull-clock{border-style:dashed!important;border-color:rgba(212,163,115,.6)!important;box-shadow:var(--glass-shadow),0 0 60px rgba(212,163,115,.12)}
.anim-content{background:linear-gradient(145deg,rgba(255,255,255,.55),rgba(255,255,255,.3))!important;border-radius:var(--r-lg)!important}
.about-image img{border-radius:var(--r-lg);box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 0 1px rgba(212,163,115,.25)}

/* type scale */
.section-title{font-size:clamp(2.1rem,3.4vw,3rem);letter-spacing:-.015em;line-height:1.08}
.hero-title-main{letter-spacing:.005em;text-shadow:0 6px 30px rgba(0,0,0,.45)}
.about-text p,.welcome-text p,.timeline-content p,.reg-cta p,.status-hint,.anim-content p{font-size:1.05rem;line-height:1.75}
.about-text p,.welcome-text p{max-width:62ch}
.timeline-content h4,.reg-h,.foot-brand h3{font-family:var(--font-heading)}
.timeline-content h4{font-size:1.2rem;letter-spacing:-.01em}
.glass-card h3{font-size:1.55rem;letter-spacing:-.01em}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-heading);font-size:.74rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--golden-sand);margin-bottom:.9rem}
.eyebrow::before{content:"";width:28px;height:1px;background:linear-gradient(90deg,var(--golden-sand),transparent)}
.eyebrow .kn{font-family:'Anek Kannada',sans-serif;letter-spacing:0;text-transform:none;font-size:.9rem;font-weight:600}
.text-center .eyebrow{justify-content:center}
.text-center .eyebrow::before{display:none}
.schedule-section .eyebrow{display:flex;justify-content:center}

/* buttons — one system */
.btn-primary,.btn-register,.lang-toggle,.reg-modal-close,.rtab{font-family:var(--font-body)}
.btn-primary,.btn-register{border-radius:var(--r-sm)!important;background:linear-gradient(135deg,#a3572a 0%,var(--terracotta) 45%,#5e2d14 100%)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -2px 0 rgba(0,0,0,.25),0 12px 30px rgba(142,74,35,.4)!important;transition:transform .35s var(--ease),box-shadow .35s var(--ease),filter .35s;position:relative;overflow:hidden}
.btn-primary::after,.btn-register::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.25) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s var(--ease);pointer-events:none}
.btn-primary:hover::after,.btn-register:hover::after{transform:translateX(120%)}
.btn-primary:hover,.btn-register:hover{transform:translateY(-2px);filter:saturate(1.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 18px 40px rgba(142,74,35,.55)!important}
.btn-primary:active,.btn-register:active{transform:translateY(0) scale(.99)}
.lang-toggle{border-radius:var(--r-pill);padding:.5rem 1rem;font-size:.85rem;background:rgba(255,255,255,.06);border:1px solid rgba(212,163,115,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--golden-sand);outline-offset:3px;border-radius:6px}

/* navbar — glass that tightens on scroll */
.navbar{transition:padding .4s var(--ease),background .4s,box-shadow .4s;background:linear-gradient(180deg,rgba(18,12,10,.78),rgba(18,12,10,.55));-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);border-bottom:1px solid rgba(212,163,115,.18)}
.navbar.scrolled{padding-top:.75rem;padding-bottom:.75rem;background:linear-gradient(180deg,rgba(18,12,10,.92),rgba(18,12,10,.8));box-shadow:0 10px 40px rgba(0,0,0,.45)}
.navbar.scrolled .logo img.nav-logo-img{height:70px!important;width:70px!important;margin:-10px 0 -22px!important}
nav a{position:relative;padding:.3rem 0;font-weight:500;letter-spacing:.01em}
nav a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;border-radius:2px;background:var(--golden-sand);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
nav a:hover::after,nav a.active::after{transform:scaleX(1)}

/* forms on landing */
.form-group input,.form-group select,.form-group textarea{border-radius:var(--r-sm);background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.12);padding:.9rem 1rem;transition:border-color .3s,box-shadow .3s,background .3s}
.form-group input:focus{border-color:rgba(212,163,115,.7);box-shadow:0 0 0 4px rgba(212,163,115,.14);background:rgba(0,0,0,.5)}
.reg-h{padding-bottom:.7rem}
.timeline-time{background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.03));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 6px 18px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.2)}
.timeline::before{background:linear-gradient(180deg,transparent,rgba(212,163,115,.45) 10%,rgba(212,163,115,.45) 90%,transparent)}

/* modal — dark glass */
.reg-modal{background:rgba(10,6,4,.7);-webkit-backdrop-filter:blur(14px) saturate(120%);backdrop-filter:blur(14px) saturate(120%)}
.reg-modal-box{background:linear-gradient(180deg,rgba(28,18,14,.92),rgba(18,12,10,.96))!important;border:1px solid rgba(212,163,115,.3)!important}
.reg-modal-head{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border-bottom:1px solid rgba(212,163,115,.35);color:var(--text-primary)}
.reg-modal-head span{color:var(--golden-sand)}
.reg-modal-close{border-radius:var(--r-pill);border:1px solid rgba(212,163,115,.5);background:rgba(255,255,255,.05);color:var(--text-primary)}
.reg-modal-close:hover{background:rgba(212,163,115,.18)}
.reg-modal iframe{background:#120c0a}
.reg-modal.active .reg-modal-box{animation:modalIn .55s var(--ease) both}
@keyframes modalIn{from{opacity:0;transform:translateY(24px) scale(.985)}to{opacity:1;transform:none}}

/* footer */
footer.site-foot{border-top:1px solid rgba(212,163,115,.35);background:linear-gradient(180deg,rgba(32,21,17,.9) 0%,#120c0a 100%)}
.foot-inner::before{content:"";position:absolute;left:5%;right:5%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(212,163,115,.5),transparent)}

/* motion — scroll reveal (respects reduced motion) */
[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
[data-reveal].in-view{opacity:1;transform:none}
[data-reveal="left"]{transform:translateX(-28px)}[data-reveal="right"]{transform:translateX(28px)}
.reveal-stagger>*{transition-delay:calc(var(--i,0)*90ms)}
@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}.mascot .lid,.fm,.hero-mascots .mascot,.savari-img,.orbiting-bull img{animation:none!important}html{scroll-behavior:auto}}
/* scrollbar */
::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#120c0a}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#8e4a23,#5e2d14);border-radius:10px;border:2px solid #120c0a}
/* reveal offsets must never widen the page */
html{overflow-x:hidden}
.about,.welcome,.registration-section,.event-details{overflow-x:clip}
[data-reveal="left"]{transform:translateX(-18px)}[data-reveal="right"]{transform:translateX(18px)}
@media(max-width:768px){nav{flex-wrap:wrap;justify-content:center;gap:.15rem .5rem;max-width:100%}nav a{margin:0 .45rem}.lang-toggle{margin-left:.45rem}.logo-container{max-width:100%}}
/* hero speech bubble — light frosted glass for contrast over the photo */
.hero-bubble{background:linear-gradient(145deg,rgba(255,250,240,.96),rgba(255,244,226,.88))!important;border:1px solid rgba(255,255,255,.7)!important;color:#2b1d12;box-shadow:0 12px 30px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.9);border-radius:16px 16px 16px 4px}
.hero-bubble b{color:#8e4a23;font-family:'Anek Kannada',sans-serif;font-size:1.3rem;text-shadow:none}
.hero-bubble span{color:#3a261c;font-weight:600;font-size:.88rem}
.hero-bubble::after{content:"";position:absolute;right:-8px;bottom:14px;width:16px;height:16px;background:rgba(255,246,232,.92);transform:rotate(45deg);border-radius:3px}
/* placement & padding corrections */
.anim-content{position:absolute!important}
.about,.event-details{padding:6rem 5%}
.about-grid{align-items:center}
.event-details .cards-grid{margin-top:0}
@media(max-width:768px){.about,.event-details{padding:3.5rem 5%}}
/* running-bulls sizing for the new tight cut-out (1502×878 → aspect 1.71): size by width, keep inside the sticky band */
.running-bull{height:auto!important;max-height:none!important;top:auto;object-fit:contain}
.bull-1{width:min(46vw,780px)!important;margin-top:8vh!important}
.bull-2{width:min(38vw,640px)!important;margin-top:-6vh!important}
.bull-3{width:min(30vw,500px)!important;margin-top:-18vh!important}
@media(max-width:768px){.bull-1{width:70vw!important;margin-top:4vh!important}.bull-2{width:56vw!important;margin-top:-10vh!important}.bull-3{width:44vw!important;margin-top:-22vh!important}}

/* running-bulls: sizes & lanes for the wide cut-out (1502×878). Sized by width so the herd fits the band. */
.running-bull{height:auto!important;max-height:none!important;object-fit:contain;will-change:transform}
.bull-1{width:min(34vw,560px)!important;margin-top:10vh!important}
.bull-2{width:min(28vw,460px)!important;margin-top:-16vh!important}
.bull-3{width:min(22vw,360px)!important;margin-top:-38vh!important}
@media(max-width:768px){.bull-1{width:62vw!important;margin-top:6vh!important}.bull-2{width:50vw!important;margin-top:-18vh!important}.bull-3{width:40vw!important;margin-top:-38vh!important}}

/* hero date chip */
.hero-date{display:inline-flex;align-items:center;gap:10px;margin-top:.2rem;padding:.55rem 1.1rem .55rem .8rem;border-radius:999px;background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.04));border:1px solid rgba(212,163,115,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#fff;font-weight:600;font-size:clamp(.9rem,1.3vw,1.05rem);letter-spacing:.01em;box-shadow:0 10px 30px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.25)}
.hero-date-ico{font-size:1.1em;line-height:1}
.hero-subtitle-accent{margin-bottom:1rem!important}
@media(max-width:768px){.hero-date{font-size:.85rem;padding:.45rem .9rem .45rem .7rem}}
/* orbiting clock buffalo: new artwork faces right; orbit runs clockwise, so keep the nose pointing along the path */
.orbiting-bull img{animation:orbitBullFwd 6s linear infinite!important;width:68px}
@keyframes orbitBullFwd{0%{transform:rotate(0deg) translateX(140px) rotate(90deg)}100%{transform:rotate(360deg) translateX(140px) rotate(90deg)}}
/* palace card: elephant sized by card width and pinned to the caption corner, never over the photo */
.palace-card{padding-bottom:1.2rem}
.palace-card .savari-img{position:absolute;right:-14px;bottom:.6rem;top:auto;height:auto;width:clamp(90px,26%,150px);max-height:none;z-index:2}
.palace-card figcaption{padding-right:clamp(100px,30%,165px);min-height:88px}
@media(max-width:900px){.palace-card .savari-img{width:clamp(80px,22%,130px)}}
@media(max-width:560px){.palace-card .savari-img{display:none}.palace-card figcaption{padding-right:0;min-height:0}}
.palace-card .savari-img{width:clamp(80px,22%,130px);bottom:.5rem}
.palace-card figcaption{min-height:132px;padding-right:clamp(90px,26%,145px)}
@media(max-width:900px){.palace-card .savari-img{width:clamp(70px,20%,110px)}.palace-card figcaption{min-height:112px}}

/* palace card v3: photo + elephant side by side (elephant gets its own column, never over the photo) */
.palace-card{padding:.6rem .6rem 1.1rem}
.palace-media{display:grid;grid-template-columns:1fr minmax(120px,34%);gap:.6rem;align-items:stretch}
.palace-media .palace-img{width:100%;height:100%;min-height:240px;aspect-ratio:auto;object-fit:cover;border-radius:12px}
.savari-wrap{position:relative;border-radius:12px;background:radial-gradient(70% 60% at 50% 60%,rgba(255,196,110,.22),transparent 72%),linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.25));border:1px solid rgba(212,163,115,.28);display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.palace-card .savari-img,.savari-wrap .savari-img{position:static!important;width:auto!important;max-width:none;height:calc(100% - 8px)!important;max-height:100%;right:auto;bottom:auto;filter:drop-shadow(0 14px 22px rgba(0,0,0,.65));animation:savariSway 7s ease-in-out infinite;display:block!important}
.palace-card figcaption{padding-right:0!important;min-height:0!important;margin-top:.9rem}
@media(max-width:560px){.palace-media{grid-template-columns:1fr}.savari-wrap{height:220px}.palace-media .palace-img{min-height:180px}}
/* palace card v3 fix: fixed-height media row so the elephant can't stretch it */
.palace-media{height:clamp(240px,26vw,340px);grid-template-columns:1fr minmax(120px,36%)}
.palace-media .palace-img{height:100%!important;min-height:0!important}
.savari-wrap{height:100%;padding-top:6px}
.savari-wrap .savari-img{height:calc(100% - 10px)!important;width:auto!important;object-fit:contain}
@media(max-width:900px){.palace-media{height:clamp(220px,34vw,320px)}}
@media(max-width:560px){.palace-media{height:auto;grid-template-columns:1fr}.palace-media .palace-img{height:auto!important;aspect-ratio:16/10}.savari-wrap{height:240px}}
.palace-media{grid-template-columns:1fr minmax(120px,31%);gap:.7rem}
.savari-wrap .savari-img{position:relative!important;left:6px}
/* palace card v4: stacked — photo on top, elephant panel below, caption last (no overlap by construction) */
.palace-media{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto auto;height:auto!important;gap:.7rem}
.palace-media .palace-img{height:auto!important;aspect-ratio:16/9!important;min-height:0!important;width:100%}
.savari-wrap{height:clamp(210px,20vw,300px)!important;padding:8px 0 0;background:radial-gradient(60% 70% at 50% 65%,rgba(255,196,110,.24),transparent 72%),linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.22))}
.savari-wrap .savari-img{height:calc(100% - 8px)!important;left:0!important}
@media(max-width:900px){.savari-wrap{height:clamp(200px,28vw,280px)!important}}
@media(max-width:560px){.savari-wrap{height:230px!important}}
/* palace photo: no visible frame/border — crop the image's light edge and remove the shadow ring */
.palace-media .palace-img{box-shadow:none!important;border:0!important;outline:0;border-radius:12px;object-fit:cover;transform:scale(1.015);background:#0d0807}
.palace-card .palace-media>*:first-child{overflow:hidden;border-radius:12px}
