/* Silk, temple brass, jasmine and mango-leaf toran. */
:root{--wine:#8a292d;--gold:#a77828;--line:#cfb278}
.hero-frame{border-color:#ad7e35aa;box-shadow:inset 0 0 0 4px #c89b4020,0 0 0 4px #fff4d72a}
.hero-frame:after{border-color:#b4853e70}
.hero-lotus svg{stroke:#a57020;filter:drop-shadow(0 2px 6px #d8aa5a70)}
.hero-content{animation:enter 1.7s .8s both}
.hero-content h1{background:linear-gradient(105deg,#721d26 15%,#9b4140 40%,#d29b51 49%,#8a292d 58%,#721d26 85%);background-size:250% 100%;color:transparent;background-clip:text;-webkit-background-clip:text;animation:name-shimmer 9s 3s ease-in-out infinite}
.hero-content h1 em{color:#b08535;-webkit-text-fill-color:#b08535}
.hero-content .date-line,.location-line{text-shadow:0 0 8px #fff7e8,0 0 16px #fff7e8;color:#4e3020}
.primary{background:#802c2c;border-color:#802c2c}.primary:hover{background:#642024}
.hero .button{position:relative;overflow:hidden}
.hero .button:after{content:'';position:absolute;inset:-100% -70%;background:linear-gradient(110deg,transparent 43%,#fff2c73a 50%,transparent 57%);animation:button-sheen 6s 3s infinite;pointer-events:none}
.festive-decor{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.toran{position:absolute;top:93px;left:3%;right:3%;height:160px;display:flex;justify-content:space-between;filter:drop-shadow(0 4px 5px #62431728);border-top:3px double #ad7d2e}
.flower-strand{display:flex;flex-direction:column;align-items:center;transform-origin:top center;animation:garland-sway calc(4s + var(--strand)*.13s) ease-in-out infinite alternate;animation-delay:calc(var(--strand)*-.27s);position:relative;padding-top:17px}
.flower-strand:nth-child(3n){padding-top:28px}.flower-strand:nth-child(2n){padding-top:6px}.flower-strand b{font-size:20px;line-height:14px;color:#fffcdf;text-shadow:0 0 1px #9d7a33,1px 2px 2px #9d7a3333;position:relative;font-weight:400}
.flower-tip{font-style:normal;font-size:22px;line-height:18px;color:#d89a25;text-shadow:0 2px 2px #87561544}
.mango-leaf{display:block;width:17px;height:39px;border-radius:95% 0 90% 0;background:linear-gradient(130deg,#7d8c3e,#3b592c 48%,#c6ae51 51%,#597033 54%,#8b9142);transform:rotate(-24deg);margin-bottom:7px;box-shadow:1px 2px 2px #3c421d33}
.hanging-lamp{position:absolute;top:95px;transform-origin:50% 0;animation:lamp-sway 5s ease-in-out infinite alternate;display:flex;align-items:center;flex-direction:column;color:#b07c27;filter:drop-shadow(0 4px 4px #6a421c36)}
.lamp-left{left:9%}.lamp-right{right:9%;animation-delay:-3s}
.lamp-chain{height:145px;width:2px;background:repeating-linear-gradient(#b0833a 0 4px,#e0bb6c 4px 6px);box-shadow:2px 0 0 #b0854033}
.hanging-lamp svg{width:81px;height:102px;fill:#b5853533;stroke:#9f6e22;stroke-width:1.5;overflow:visible}
.flame{position:absolute;bottom:86px;left:calc(50% - 5px);width:10px;height:22px;border-radius:80% 20% 70% 30%;background:linear-gradient(#fffce0 15%,#ffe478 50%,#e19027);box-shadow:0 0 15px 5px #ffd9787a,0 0 45px 18px #f6bf4033;transform-origin:50% 100%;animation:flame-dance .8s ease-in-out infinite alternate}
.kolam{position:absolute;bottom:45px;font-size:145px;font-family:Georgia,serif;line-height:1;color:#fff8d8a1;text-shadow:0 1px 2px #9f6e2233;animation:kolam-turn 70s linear infinite}.kolam-left{left:43px}.kolam-right{right:43px;animation-direction:reverse}
.countdown-section{background:#762b2b;color:#fff4dc;border-top:5px double #d3ad68;border-bottom:5px double #d3ad68;overflow:hidden}
.countdown-section:before,.countdown-section:after{content:'✺';font:200px Georgia,serif;position:absolute;top:50%;color:#d6ac5724;transform:translateY(-50%);pointer-events:none}.countdown-section:before{left:-65px}.countdown-section:after{right:-65px}
.countdown-section .eyebrow,.countdown-section h2 em,.countdown-section .countdown i{color:#e2bc76}.countdown-section .countdown b{color:#fff0d0}.countdown-section p{color:#e9d2b4}
.event-art:before{border-color:#b48843aa;box-shadow:inset 0 0 0 5px #c9993920}
.event.visible .event-art svg{stroke-dasharray:650;stroke-dashoffset:650;animation:draw-ritual 2.8s .2s ease forwards,ritual-float 5s 3s ease-in-out infinite}
.event-art:after{content:'';position:absolute;width:95px;height:95px;border-radius:50%;background:#eac16b33;filter:blur(24px);animation:brass-glow 4s ease-in-out infinite;z-index:-1}
.particle.marigold{width:13px;height:13px;border-radius:60% 15% 70% 20%;background:linear-gradient(120deg,#f6c552,#d68b25);box-shadow:0 1px 4px #a65c2225}
[data-motion=festive] .hero-art{animation:art-in 2.5s both,garden-breathe 24s 2.5s ease-in-out infinite alternate}
[data-motion=festive] .particle:not(.gold){width:12px;height:17px}
.temple-entrance{position:fixed;inset:0;z-index:30;pointer-events:none;perspective:1400px;overflow:hidden}
.temple-entrance[hidden]{display:none}
.temple-door{position:absolute;top:0;bottom:0;width:50.1%;background:repeating-linear-gradient(90deg,#7c2f2710 0 3px,transparent 3px 7px),linear-gradient(100deg,#461c1a,#8c3f2b 45%,#6b2a21);border:9px double #b88638;box-shadow:inset 0 0 90px #18090680;display:grid;place-items:center;backface-visibility:hidden}
.temple-door:before{content:'';position:absolute;inset:28px;border:2px solid #c79b4d8c;border-radius:200px 200px 0 0;box-shadow:inset 0 0 0 8px #d4a74712,0 0 0 8px #d4a74712}
.temple-door:after{content:'';position:absolute;inset:55px;border:1px solid #bd8c4166;border-radius:180px 180px 0 0}
.door-left{left:0;transform-origin:left center}.door-right{right:0;transform-origin:right center}
.door-medallion{font:clamp(120px,22vw,350px) Georgia,serif;color:#c69c53;opacity:.7;text-shadow:0 4px 4px #36150f;animation:brass-glow 2s ease-in-out infinite}
.entrance-blessing{position:absolute;left:0;right:0;top:21%;text-align:center;font:28px var(--serif);color:#f4d89b;text-shadow:0 2px 8px #2f130e;letter-spacing:3px}.entrance-blessing span{display:block;font:italic 20px var(--serif);margin-top:13px;letter-spacing:1px}
.opening .door-left{animation:door-left 2.5s .55s cubic-bezier(.42,0,.18,1) both}.opening .door-right{animation:door-right 2.5s .55s cubic-bezier(.42,0,.18,1) both}.opening .entrance-blessing{animation:blessing-away 1s .65s forwards}
@keyframes door-left{to{transform:rotateY(-105deg);opacity:0}}@keyframes door-right{to{transform:rotateY(105deg);opacity:0}}@keyframes blessing-away{to{opacity:0;transform:translateY(-15px)}}
@keyframes garland-sway{from{transform:rotate(-4deg)}to{transform:rotate(4deg)}}@keyframes lamp-sway{from{transform:rotate(-3deg)}to{transform:rotate(3deg)}}@keyframes flame-dance{from{transform:scale(.85,1.06) rotate(-7deg);opacity:.8}to{transform:scale(1.1,.9) rotate(7deg);opacity:1}}
@keyframes kolam-turn{to{transform:rotate(360deg)}}@keyframes name-shimmer{0%,30%{background-position:100% 50%}70%,100%{background-position:0% 50%}}@keyframes button-sheen{0%,60%{transform:translateX(-70%)}100%{transform:translateX(70%)}}
@keyframes draw-ritual{to{stroke-dashoffset:0}}@keyframes ritual-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes brass-glow{0%,100%{opacity:.55}50%{opacity:1}}@keyframes garden-breathe{from{transform:scale(1)}to{transform:scale(1.045)}}
[data-motion=still] .temple-entrance{display:none}[data-motion=still] .event-art svg{stroke-dashoffset:0}
@media(max-width:900px){.lamp-left{left:5%}.lamp-right{right:5%}.hanging-lamp svg{width:61px;height:84px}.flame{bottom:71px}.lamp-chain{height:165px}.toran{top:94px}.flower-strand b{font-size:17px;line-height:12px}.kolam{font-size:100px}}
@media(max-width:600px){.toran{top:77px;left:0;right:0;height:100px}.flower-strand{padding-top:5px}.flower-strand:nth-child(3n){padding-top:14px}.flower-strand:nth-child(2n){padding-top:0}.flower-strand:nth-child(2n+1){display:none}.flower-strand b{font-size:13px;line-height:9px}.flower-tip{font-size:16px;line-height:11px}.mango-leaf{width:11px;height:24px;margin-bottom:4px}.hanging-lamp{top:78px}.lamp-left{left:4%}.lamp-right{right:4%}.lamp-chain{height:103px}.hanging-lamp svg{width:39px;height:52px}.flame{width:5px;height:13px;bottom:44px;left:calc(50% - 2px);box-shadow:0 0 10px 3px #ffd97880}.hero-content{padding-top:168px;padding-bottom:118px}.hero .eyebrow{font-size:6px;letter-spacing:1.2px}.hero-line{font-size:16px;max-width:270px;margin:auto;line-height:1.35}.blessing{font-size:9px}.hero-lotus svg{margin-top:17px;margin-bottom:12px}.hero-content h1{font-size:79px;margin-top:20px;margin-bottom:20px}.hero-content h1 em{font-size:33px;margin:10px 0}.kolam{font-size:65px;bottom:32px}.kolam-left{left:19px}.kolam-right{right:19px}.temple-door{border-width:5px}.temple-door:before{inset:12px}.temple-door:after{inset:23px}.entrance-blessing{font-size:23px}.entrance-blessing span{font-size:17px}.countdown-section:before,.countdown-section:after{font-size:130px}.countdown-section:before{left:-80px}.countdown-section:after{right:-80px}}
@media(prefers-reduced-motion:reduce){.temple-entrance{display:none}.event-art svg{stroke-dashoffset:0!important}.hero-content h1{background:none;color:var(--wine);-webkit-text-fill-color:var(--wine)}}
