@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,600&display=swap');
:root{--navy:#10122d;--deep:#0a0b1f;--gold:#f6bc5d;--orange:#ff862e;--cream:#fff9f0;--ink:#272438}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--cream)}a{color:inherit;text-decoration:none}img{max-width:100%}.wrap{width:min(1120px,calc(100% - 44px));margin:auto}.site-header{background:#0d0e25;position:sticky;top:0;z-index:10;border-bottom:1px solid #ffffff1d}.nav{display:flex;align-items:center;justify-content:space-between;min-height:83px;gap:20px}.brand{display:flex;align-items:center;gap:12px;color:white;font-size:17px;font-weight:700}.brand img{width:59px;height:59px;object-fit:contain}.brand small{display:block;font-size:10px;letter-spacing:1.2px;color:#e8c99b;font-weight:400;margin-top:4px}.nav nav{display:flex;gap:29px}.nav nav a{color:#f4e9d9;font-size:13px;font-weight:600}.nav nav a:hover,.text-link:hover{color:var(--gold)}.menu-toggle{display:none;background:none;color:white;border:0;font-size:28px;cursor:pointer}.hero{background:radial-gradient(ellipse at 82% 40%,#4a1c48 0%,transparent 43%),radial-gradient(ellipse at 8% 80%,#502041 0%,transparent 40%),linear-gradient(135deg,#10112e,#14142d 65%,#220f2a);color:white;min-height:600px;position:relative;overflow:hidden;display:flex;align-items:center}.hero:after{content:'';position:absolute;inset:0;opacity:.18;background-image:radial-gradient(#ffc87b 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to right,transparent,black)}.hero-content{position:relative;z-index:2;padding:95px 0 90px}.eyebrow{font-size:12px;letter-spacing:2.8px;color:var(--gold);font-weight:700;margin:0 0 21px}.hero h1,.section h2{font-family:'Playfair Display',Georgia,serif;font-weight:600;letter-spacing:-1.5px}.hero h1{font-size:clamp(44px,6vw,78px);line-height:1.14;max-width:850px;margin:0}.hero h1 em,.section h2 span{color:var(--gold);font-style:italic}.hero-copy{max-width:570px;color:#e3d9df;line-height:1.9;font-size:16px;margin:27px 0 31px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:15px 23px;border-radius:6px;font-weight:700;font-size:13px;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(120deg,#f4b54d,#ff8737);color:#25142c}.btn-outline{border:1px solid #ffffff65;color:white}.hero-event{margin-top:70px;border-top:1px solid #ffffff33;padding-top:21px;display:flex;align-items:center;gap:17px;max-width:510px}.hero-event .spark{color:var(--gold);font-size:26px}.hero-event div{display:grid;gap:6px}.hero-event strong{font-size:14px}.hero-event div span{color:#d5c9d3;font-size:12px}.hero-event>a{margin-left:auto;font-size:23px;color:var(--gold)}.mandala{position:absolute;right:9%;top:15%;width:380px;height:380px;border:2px solid #eab55e22;border-radius:50%;display:grid;place-items:center;font-size:170px;color:#ffbc6320;box-shadow:0 0 0 32px #eab55e08,0 0 0 72px #eab55e07;transform:rotate(-12deg)}.glow{position:absolute;width:240px;height:240px;border-radius:50%;filter:blur(75px);opacity:.17}.glow-one{background:#ff8c2a;right:15%;top:15%}.glow-two{background:#a333d1;left:5%;bottom:5%}.section{padding:100px 0}.intro{background:#fffaf2}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.section h2{font-size:clamp(35px,4.5vw,54px);line-height:1.2;margin:0}.intro h2 span,.tickets-section h2 span{color:#cb6d2b}.dark{color:#bd6b2d}.intro-grid>div:last-child p{line-height:1.9;color:#66606b;font-size:15px}.event-section{background:var(--navy);color:white}.section-heading{text-align:center;max-width:660px;margin:0 auto 52px}.section-heading h2{margin-bottom:14px}.section-heading>p:last-child{color:#c9c4cf;line-height:1.7}.event-grid{display:grid;grid-template-columns:minmax(0, .85fr) minmax(0,1fr);gap:70px;align-items:center}.flyer-wrap img{display:block;width:100%;border-radius:12px;border:1px solid #f7c27d70;box-shadow:0 18px 60px #0007}.flyer-wrap p{text-align:center;color:#bcb4c7;font-size:12px;line-height:1.7}.event-tag{display:inline-block;color:var(--gold);font-size:11px;letter-spacing:1.5px;font-weight:700;border:1px solid #f6bc5d70;border-radius:30px;padding:10px 14px}.event-info h3{font-family:'Playfair Display',Georgia,serif;font-size:clamp(37px,4vw,55px);line-height:1.14;margin:24px 0 17px}.event-info h3 span{color:var(--gold)}.event-lead{line-height:1.9;color:#d6ceda;margin-bottom:28px}.detail{display:flex;gap:18px;border-top:1px solid #ffffff24;padding:22px 0}.detail-icon{border:1px solid #f6bc5d4d;border-radius:10px;width:43px;height:43px;flex-shrink:0;display:grid;place-items:center;color:var(--gold);font-size:23px}.detail strong,.detail span{display:block}.detail strong{font-size:14px;margin-bottom:7px}.detail span{color:#cfc8d4;line-height:1.75;font-size:13px}.text-link{display:inline-block;color:var(--gold);font-size:12px;margin-top:8px}.event-info>.btn{margin-top:15px}.tickets-section{background:#fff9f0}.tickets-section .section-heading>p:last-child{color:#77707a}.ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:860px;margin:auto}.ticket-card{border:1px solid #eedccc;border-radius:14px;background:white;overflow:hidden;box-shadow:0 12px 35px #5130170a}.ticket-top{background:#211739;color:#ffd28a;padding:21px 28px;letter-spacing:1.5px;font-size:13px;font-weight:700}.ticket-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:20px 28px;border-bottom:1px solid #f3e8dc}.ticket-row:last-child{border:0}.ticket-row span{font-size:15px;font-weight:600}.ticket-row small{display:block;font-size:11px;color:#8a838b;font-weight:400;margin-top:5px}.ticket-row strong{font-size:23px;color:#c16a2c}.registration{background:#fff0da;border:1px solid #efd5ae;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:28px 32px;margin-top:35px}.registration h3{margin:0 0 8px;font-family:'Playfair Display',Georgia,serif;font-size:24px}.registration p{margin:0;max-width:650px;color:#6e6264;font-size:13px;line-height:1.7}.registration .btn{white-space:nowrap}footer{background:#0a0a1d;color:#b8afc0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:25px 0}.footer-brand{display:flex;gap:13px;align-items:center}.footer-brand img{width:48px;height:48px;object-fit:contain}.footer-brand strong{display:block;color:white;font-size:13px}.footer-brand small{display:block;margin-top:5px;font-size:11px}.footer-inner>p{font-size:11px;text-align:right}@media(max-width:850px){.mandala{right:-160px;opacity:.5}.event-grid{gap:35px}.intro-grid{gap:30px}}@media(max-width:680px){.nav{min-height:75px}.brand{font-size:13px}.brand img{width:48px;height:48px}.brand small{font-size:8px}.menu-toggle{display:block}.nav nav{display:none;position:absolute;top:75px;left:0;right:0;background:#11122d;padding:20px 24px;flex-direction:column;gap:20px;border-top:1px solid #ffffff22}.nav nav.open{display:flex}.hero{min-height:auto}.hero-content{padding:85px 0 65px}.hero h1{font-size:43px}.hero-event{margin-top:55px}.section{padding:70px 0}.intro-grid,.event-grid,.ticket-grid{grid-template-columns:1fr}.intro-grid{gap:18px}.event-grid{gap:38px}.flyer-wrap{max-width:460px;margin:auto}.registration{flex-direction:column;align-items:flex-start}.footer-inner{flex-direction:column;text-align:center}.footer-inner>p{text-align:center}.footer-brand{text-align:left}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* Devotional hero carousel */
.hero-content{width:100%;padding-right:min(39vw,440px)}.hero h1{font-size:clamp(40px,5vw,68px)}.divine-slideshow{position:absolute;z-index:2;right:max(3%,calc((100vw - 1180px)/2));top:50%;transform:translateY(-50%);width:min(36vw,410px);aspect-ratio:1;isolation:isolate;border-radius:50%;border:1px solid #ffc46b55;box-shadow:0 0 0 15px #f6bc5d0a,0 0 85px #ffb44b22;background:radial-gradient(circle,#4b2245,#14132c 75%)}.divine-slide{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:scale(.95);transition:opacity 1s ease,transform 5s ease,visibility 1s;overflow:hidden;border-radius:50%}.divine-slide.active{opacity:1;visibility:visible;transform:scale(1)}.divine-slide>img{width:100%;height:100%;object-fit:contain}.deity-slide>img{position:absolute;inset:0;object-fit:cover}.deity-slide:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#110c26dd)}.deity-slide span{position:absolute;bottom:16%;z-index:1;color:#ffe4a6;font-family:Georgia,serif;font-size:clamp(17px,2vw,27px);text-shadow:0 2px 8px #000}.deity-fallback{font-size:clamp(90px,12vw,165px);color:#f9bc67;opacity:.8}.ganesha{background:radial-gradient(circle,#9a502f,#29132d)}.lakshmi{background:radial-gradient(circle,#91455f,#29132d)}.shiva{background:radial-gradient(circle,#37577b,#16142f)}.slide-dots{position:absolute;z-index:4;bottom:-30px;left:0;right:0;display:flex;gap:10px;justify-content:center}.slide-dots button{width:9px;height:9px;border-radius:50%;padding:0;border:0;background:#b4a5b4;cursor:pointer}.slide-dots button.active{background:#ffbb58;box-shadow:0 0 0 3px #ffbb5825}@media(max-width:850px){.hero-content{padding-right:36vw}.divine-slideshow{right:2%;width:33vw}.hero h1{font-size:clamp(34px,4.7vw,52px)}}@media(max-width:680px){.hero{display:block}.hero-content{padding:55px 0 55px;text-align:center}.hero h1{font-size:clamp(36px,9vw,48px)}.hero-copy{margin:22px auto}.hero-actions{justify-content:center}.divine-slideshow{position:relative;top:auto;right:auto;transform:none;width:min(70vw,300px);margin:0 auto 55px}.hero-event{margin:45px auto 0;text-align:left}.slide-dots{bottom:-24px}}@media(prefers-reduced-motion:reduce){.divine-slide{transition:none}}

/* The deity illustrations are included locally for offline viewing and S3 hosting. */
.deity-slide>img{object-fit:cover;object-position:center 42%;filter:saturate(1.06)}
.radha-krishna{background:radial-gradient(circle,#78513c,#22152f)}
.divine-slide:first-child>img{object-fit:contain}

/* Keep the welcome headline centred within its hero text area. */
@media (min-width:681px){
 .hero-content{text-align:center;padding-right:min(39vw,440px)}
 .hero-content .hero-copy{margin-left:auto;margin-right:auto}
 .hero-content .hero-actions{justify-content:center}
 .hero-content .hero-event{margin-left:auto;margin-right:auto;text-align:left}
}
