/* Rangshakti: warm playbill typography and a quiet, cinematic stage. */
:root{--bg-deep:#141211;--bg-section-alt:#1c1916;--bg-card:#24201c;--bg-card-hover:#302821;--bg-surface:#211c18;--flame-orange:#e86946;--flame-bright:#ed9877;--flame-amber:#e8c48c;--stage-teal:#c0d1b1;--stage-purple:#774535;--text-main:#fff6e9;--text-cream:#eee0cf;--text-sub:#d1c2b0;--text-muted:#b4a596;--border-card:#493a2e;--border-sub:#ffffff26;--border-glow:#c5a47755}
body{cursor:auto;background:var(--bg-deep)}button,a{cursor:pointer}#cursor,#cursorRing,#spotlight{display:none!important}
:focus-visible{outline:3px solid #edbc77!important;outline-offset:4px}
.header-sticky-wrapper{background:#171411!important;border-bottom:1px solid #ffffff20;box-shadow:none!important}
.nav{background:transparent!important}.nav-logo img{border-radius:50%}.nav-logo-title{letter-spacing:2px}.nav-logo-sub{letter-spacing:2px;color:#c9b8a3}
.nav-links a{font-size:14px}.btn-enroll-nav,.btn-hero-fire,.btn-submit-enroll{background:#b83e2e!important;box-shadow:none!important;color:#fff!important;letter-spacing:.4px!important;font-family:var(--font-fs);font-size:15px;font-weight:700;border-radius:6px}
.hero{padding:165px 0 80px!important;min-height:780px;background:#181410}
.hero-video{filter:brightness(.32) saturate(.6)}
.hero-gradient{background:linear-gradient(90deg,#181410f5 5%,#181410bd 48%,#18141040),linear-gradient(0deg,#141211,transparent 40%)}
.hero-container{grid-template-columns:1.25fr .8fr;gap:70px;max-width:1280px}
.hero-kicker{font-family:var(--font-fs);font-size:12px;font-style:normal;letter-spacing:3px;text-transform:uppercase;margin-bottom:25px}
.hero-title{font-family:var(--font-fr);font-size:clamp(60px,6.5vw,96px);font-weight:600;line-height:1.04;letter-spacing:-3px;text-transform:none}
.hero-title span.italic{font-size:1em;background:none;-webkit-text-fill-color:#e9b083;color:#e9b083}
.hero-subtitle{font-size:17px;line-height:1.85;font-weight:400;max-width:490px;margin:26px 0 30px;color:#d5c8b9}
.hero-actions{gap:14px}.btn-hero-fire,.btn-hero-ghost{padding:17px 22px;min-height:52px}.btn-hero-ghost{font-family:var(--font-fs);font-style:normal;font-size:14px;border-radius:6px}
.hero-ad-card{background:#eee3d0;border:0;border-radius:4px;padding:36px 28px;color:#282019;box-shadow:12px 14px 0 #b83e2e55;transform:rotate(2deg)}
.hero-ad-card:before{content:'THE RANGSHAKTI ACTING STUDIO';display:block;font-size:10px;letter-spacing:2px;border-bottom:1px solid #32251b44;padding-bottom:18px;margin-bottom:24px}
.hero-ad-badge{background:transparent;color:#943523;font-family:var(--font-fs);font-size:11px;padding:0;letter-spacing:2px}
.hero-ad-h2{color:#27201a;font-size:3rem}.hero-ad-hand{color:#a43e2b;font-family:var(--font-fr);font-size:2.4rem}
.hero-ad-strip{background:transparent;border:0;border-top:1px solid #32251b33;border-bottom:1px solid #32251b33;color:#66523f;font-size:14px;font-weight:500;letter-spacing:0;padding:16px 0;line-height:1.6}
.hero-ad-grid div{color:#43382f;font-size:13px;font-weight:500}.hero-ad-grid i{color:#a34431}
.marquee-wrap{background:#b83e2e!important;border:0!important}.marquee-item{color:#fff1df!important}
.section-header{margin-bottom:36px}.section-title{letter-spacing:.5px}.show-card,.batch-card,.testi-card{box-shadow:none!important;border-color:#ffffff20!important}
.booking-steps{font-size:13px;font-weight:700;color:#efc18d;margin-bottom:16px}.booking-steps span{margin:0 5px;color:#b2a08e}
.booking-note,.otp-panel p{font-size:14px;line-height:1.6;color:#d6c6b5;margin-bottom:16px}
#bookingModal .modal-content{max-width:600px;width:calc(100% - 24px);max-height:90dvh;overflow:auto;background:#211c18;border:1px solid #77624b}
#bookingModal .modal-header-banner{background:#30241e;padding:28px 40px 20px 24px}#bookingModal .modal-body{padding:24px}
#bookingModal .seat-item{font-family:var(--font-fs);font-size:13px;color:#fff4e3;min-height:36px;background:#ffffff0b}#bookingModal .seat-item.selected{background:#b83e2e}
.otp-panel{margin-top:22px;padding:18px;background:#ffffff06;border:1px solid #ffffff20;border-radius:8px}.otp-controls{display:flex;gap:10px}.otp-controls input{min-width:0}.otp-controls button{background:#ecd3ac;color:#241a15;white-space:nowrap;padding:10px 15px;border-radius:6px;font-weight:700}
#bookingStatus:empty{display:none}#bookingStatus{margin:12px 0 0;color:#f4ce98}button:disabled{opacity:.6;cursor:wait}
@media(max-width:768px){.hero{padding:130px 0 50px!important;min-height:0}.hero-container{padding:0 24px!important;gap:38px!important}.hero-title{font-size:clamp(48px,11vw,74px)!important;letter-spacing:-1.5px!important;line-height:1.08!important}.hero-subtitle{font-size:16px}.hero-kicker{font-size:11px;letter-spacing:1.5px}.hero-ad-card{padding:28px 22px;transform:none;margin:0 auto;max-width:460px;box-shadow:6px 7px 0 #b83e2e55}.hero-ad-grid{grid-template-columns:1fr 1fr}.hero-ad-grid div{font-size:13px}.hero-ad-h2{font-size:2.7rem}.hero-ad-hand{font-size:2rem}.nav-links{background:#211c18!important}#bookingModal .modal-body{padding:18px 14px}#bookingModal .seat-row{gap:4px}.booking-steps{font-size:12px}#bookingModal .seat-item{width:30px;height:36px;flex-shrink:1}.otp-controls button{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.hero-video{display:none}}
