/* The temple journey: one typographic voice and gesture-driven details. */
body,button,input{font-family:Cormorant,Georgia,serif}.micro,.kicker,.topbar-link,.topbar-note{font-weight:600;font-size:11px;letter-spacing:1.8px}.hero{display:block;min-height:1050px;min-height:max(920px,100svh);text-align:center}.hero-art{inset:0}.art-layer{background-image:url('assets/temple-home.jpg');background-position:center 64%}.art-shade{background:linear-gradient(0deg,#37151e 0%,#37151e55 30%,#37151e33 65%,#37151e44)}.hero-copy{padding:145px 30px 65px;max-width:800px;margin:auto;min-height:inherit;display:flex;flex-direction:column;align-items:center}.hero-copy .kicker{font-size:11px;letter-spacing:2px;margin:0 0 22px}.hero-copy .auspicious{font-size:14px;margin-bottom:20px}.small-intro{font-size:23px;color:#f2dfc3}.hero h1{font-size:clamp(85px,10vw,150px);line-height:.87;margin:24px 0 35px;letter-spacing:-2px;text-shadow:0 3px 30px #140a12aa}.hero h1 em{font-size:.4em;margin:9px 0 13px}.hero-bottom{margin-top:auto;max-width:550px;width:100%;text-align:left;background:#37151e60;padding:20px 23px;border:1px solid #d8b38366;backdrop-filter:blur(8px)}.hero-bottom p{font-size:29px}.hero-bottom .subline{display:inline-block;padding:12px 0;font-size:10px}.hero .vertical-note{display:none}.art-caption{right:28px}.topbar-link{font-size:11px}
.temple-cover{background:#37151e;isolation:isolate}.cover-temple{position:absolute;inset:0;background:linear-gradient(0deg,#1f10152b,#1f101544),url('assets/temple-home.jpg') center 64%/cover no-repeat;z-index:-2;transform-origin:50% 67%}.temple-gateway{position:absolute;top:43%;bottom:17%;width:36%;left:32%;perspective:1000px;filter:drop-shadow(0 0 24px #e4b36f44)}.temple-gateway .cover-panel{background:repeating-linear-gradient(0deg,transparent 0 67px,#c8984f44 68px 70px),repeating-linear-gradient(90deg,transparent 0 32px,#a6743540 33px 35px),linear-gradient(95deg,#5a351a,#8e622a,#5c351b);border:2px solid #ac7b38;transition:transform 2.3s cubic-bezier(.6,0,.2,1)}.temple-gateway .cover-panel:after{inset:12px;border:2px solid #b58745;box-shadow:inset 0 0 0 5px #38200e80}.temple-gateway .cover-panel:before{inset:23px;border:1px solid #c99a53;border-radius:0}.temple-gateway .cover-panel i{position:absolute;top:55%;width:9px;height:35px;border:2px solid #deb26b;border-radius:50%;right:8px}.temple-gateway .panel-right i{left:8px;right:auto}.temple-cover .cover-content{align-self:start;margin-top:6vh;max-width:750px;width:100%;background:radial-gradient(ellipse,#37151e90,transparent 75%);padding:25px 25px;text-shadow:0 2px 10px #261018}.temple-cover .cover-content>.micro{font-size:10px}.temple-cover .cover-telugu{margin:15px 0}.temple-cover h2{font-size:clamp(58px,7vw,98px);line-height:.85;margin:22px 0 18px}.temple-cover h2 i{display:inline;color:var(--gold);font-size:.7em}.temple-cover .cover-names{margin:22px 0;font-size:22px}.temple-cover .primary{font-size:14px;padding:15px 24px}.temple-cover .sound-choice{color:#f3e4cd;font-size:13px}.flying-names{position:absolute;top:42%;left:0;width:100%;text-align:center;font-size:clamp(45px,8vw,105px);font-style:italic;opacity:0;pointer-events:none;color:#fff2d5;text-shadow:0 0 30px #d6a960;transform-origin:center center;z-index:3}.flying-names i{color:var(--gold)}.temple-cover.opening .cover-content{animation:fade-away .7s both}.motion .temple-cover.opening .cover-temple{animation:temple-journey 4.3s cubic-bezier(.25,.65,.3,1) both}.motion .temple-cover.opening .flying-names{animation:names-enter-temple 3.2s .45s both}.temple-cover.opening{animation:cover-vanish 4.3s both}.motion.invitation-open h1>span{animation-delay:3.3s}.motion.invitation-open h1>span:last-child{animation-delay:3.5s}.motion.invitation-open .hero-copy>.kicker{animation-delay:3.1s}
.date-experience{text-align:center;padding:60px 25px 50px}.date-experience .kicker{color:#916238}.date-experience h2{font-size:clamp(38px,5vw,65px);margin:20px 0}.scratch-help{font-size:21px;color:#8b725e;margin:15px auto 26px;max-width:480px}.scratch-card{position:relative;width:min(100%,490px);height:170px;margin:0 auto 12px;overflow:hidden;border:1px solid #aa824b;box-shadow:0 12px 35px #4c2c1110}.date-under{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;background:#fff7e6;color:var(--ink)}.date-under strong{font-weight:500;font-size:38px;line-height:1}.date-under>span:last-child{font-size:20px;color:#8a6442}#scratch{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair;transition:opacity .7s}.scratch-card.revealed #scratch{opacity:0}.date-experience .text-button{font-size:13px;letter-spacing:.5px;padding:12px}.date-experience .text-button:disabled{cursor:default;color:#946e46}#scratch-status{font-size:17px;color:#8a6442;min-height:22px;margin:5px auto}.countdown-heading{margin:30px 0 20px}.countdown-heading>.micro{font-size:10px;color:#8a6442}.countdown-heading p{font-size:17px;color:#907964;margin:8px 0}.countdown{max-width:570px;display:grid;grid-template-columns:repeat(4,1fr);margin:auto;gap:15px}.countdown>div{border-right:1px solid #b48f6240}.countdown>div:last-child{border:0}.countdown strong{font-size:66px;font-weight:300;line-height:1;display:block}.countdown span{display:block;font-size:15px;margin-top:10px;color:#907964;font-variant:small-caps;letter-spacing:1.5px}#countdown-status{font-size:18px;color:#8a6442;margin:22px auto 0}
.has-welcome{display:grid;grid-template-columns:1.1fr .9fr;column-gap:25px;align-items:center;padding-top:35px}.has-welcome>.occasion-top{grid-column:1/-1;grid-row:1}.has-welcome>.occasion-main{grid-column:1;grid-row:2;grid-template-columns:120px 1fr;gap:25px;padding:45px 0}.has-welcome>.occasion-foot{grid-column:1/-1;grid-row:3}.welcome-scene{grid-column:2;grid-row:2;position:relative;width:100%;align-self:center}.welcome-scene p{text-align:center;font-size:18px;color:var(--gold);font-style:italic;margin:-5px 0 30px}.welcome-illustration{display:block;width:100%;max-height:440px;overflow:visible;filter:drop-shadow(0 15px 15px #0002)}.has-welcome .occasion-symbol{display:none}.has-welcome .day{font-size:110px}.has-welcome h3{font-size:76px}.has-welcome .venue{font-size:26px}.arm{transform-box:fill-box;transform-origin:50% 80%;transition:transform 1.4s cubic-bezier(.2,.7,.3,1) .25s}.arm-l{transform:translateX(-14px) rotate(-23deg)}.arm-r{transform:translateX(14px) rotate(23deg)}.seen .arm-l,.seen .arm-r{transform:translateX(0) rotate(0)}.character-head{transform-box:fill-box;transform-origin:center bottom}.motion .seen .character-head{animation:namaste-bow 5.5s 1.8s ease-in-out infinite}.motion .seen .bride .character-head{animation-delay:2.3s}.motion .seen .welcome-scene{animation:scene-arrive 1.5s both}.haldi-petals{position:absolute;inset:0;pointer-events:none;overflow:hidden}.haldi-petals span{position:absolute;left:var(--x);top:-30px;width:14px;height:20px;border-radius:70% 10% 70% 10%;background:#f5d663;opacity:0}.motion .seen .haldi-petals span{animation:haldi-petal calc(9s + var(--n)*.7s) linear infinite;animation-delay:calc(var(--n)*-.8s)}.motion .haldi.seen .occasion-symbol{animation:haldi-bowl 4s ease-in-out infinite}
.gifts{grid-template-columns:22% 1fr 140px;align-items:center;gap:30px}.gift-surprise{width:140px;height:160px;position:relative;border:0;background:none;color:var(--ink)}.gift-box{position:absolute;width:90px;height:70px;background:linear-gradient(110deg,#762637,#a34c55);left:25px;top:57px;border:1px solid #c99b58;box-shadow:0 10px 20px #37151e20}.gift-lid{position:absolute;width:100px;height:20px;background:#a75c66;left:20px;top:43px;border:1px solid #c99b58;z-index:2;transition:transform .8s cubic-bezier(.2,.7,.3,1);transform-origin:15% center}.gift-ribbon{position:absolute;width:14px;height:84px;background:linear-gradient(90deg,#cba45f,#f1d599,#cba45f);top:43px;left:63px;z-index:3;transition:height .5s}.gift-lid:before,.gift-lid:after{content:'';width:27px;height:17px;border:5px solid #d9b878;border-radius:60% 60% 0 60%;position:absolute;top:-20px;left:19px;transform:rotate(15deg)}.gift-lid:after{left:46px;transform:scaleX(-1) rotate(15deg)}.gift-note{position:absolute;bottom:0;left:-15px;right:-15px;font-size:15px;font-style:italic}.gift-spark{position:absolute;font-size:28px;color:#a7772c;opacity:0;transition:opacity .5s,transform .8s}.spark-a{top:10px;left:14px}.spark-b{top:18px;right:8px}.spark-c{top:50px;left:60px}.gift-surprise.unwrapped .gift-lid{transform:translate(-12px,-45px) rotate(-23deg)}.gift-surprise.unwrapped .gift-ribbon{height:66px;top:61px}.gift-surprise.unwrapped .gift-spark{opacity:1;transform:translateY(-20px) rotate(20deg)}.gift-message{grid-column:2/-1;font-size:22px!important;color:#8d543e!important;font-style:italic;min-height:0}.gift-message:empty{display:none}.motion .gift-surprise:not(.unwrapped){animation:gift-wiggle 4s ease-in-out infinite}
.farewell{position:relative;isolation:isolate;overflow:hidden}.closing-doors{position:absolute;inset:0;z-index:-1;pointer-events:none;display:flex;perspective:1500px}.closing-doors span{width:50%;height:100%;background:repeating-linear-gradient(0deg,transparent 0 95px,#b98b4433 96px 98px),linear-gradient(95deg,#4d2c1c,#744b29,#3a2219);border:1px solid #c99a5355;transition:transform 1.8s cubic-bezier(.6,0,.2,1);transform:translateX(-105%) rotateY(35deg);transform-origin:left}.closing-doors span+span{transform:translateX(105%) rotateY(-35deg);transform-origin:right}.farewell.closed .closing-doors span{transform:none}.close-invitation{display:block;padding:14px 20px;margin:22px auto 0;background:#37151e99;color:var(--paper);border:1px solid #d8b38380;min-height:48px;font-size:17px}.close-invitation span{padding-left:15px}.closing-thanks{font-size:23px;font-style:italic;color:var(--gold);max-width:550px;margin:25px auto 0}.closing-thanks:empty{display:none}.farewell.closed>.micro,.farewell.closed>h2,.farewell.closed>.farewell-date{animation:closing-text 1s both}.farewell.closed .primary{display:none}
@keyframes fade-away{to{opacity:0;transform:translateY(-20px)}}@keyframes temple-journey{0%{transform:scale(1)}60%{transform:scale(1.28)}100%{transform:scale(1.75)}}@keyframes names-enter-temple{0%{opacity:0;transform:translateY(-80px) scale(1.15);filter:blur(4px)}20%{opacity:1;filter:blur(0)}50%{opacity:1;transform:translateY(5px) scale(.85)}100%{opacity:0;transform:translateY(190px) scale(.06);filter:blur(2px)}}@keyframes cover-vanish{0%,85%{opacity:1}100%{opacity:0}}@keyframes namaste-bow{0%,25%,65%,100%{transform:rotate(0) translateY(0)}42%{transform:rotate(3deg) translateY(4px)}}@keyframes scene-arrive{from{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:none}}@keyframes haldi-petal{0%{opacity:0;transform:translateY(-20px) rotate(0)}10%{opacity:.6}100%{opacity:0;transform:translate(55px,650px) rotate(400deg)}}@keyframes haldi-bowl{50%{transform:rotate(4deg) translateY(-5px)}}@keyframes gift-wiggle{0%,80%,100%{transform:rotate(0)}85%{transform:rotate(-3deg)}90%{transform:rotate(3deg)}95%{transform:rotate(-2deg)}}@keyframes closing-text{from{opacity:.4}to{opacity:1}}
@media(max-width:1000px){.has-welcome{grid-template-columns:1fr}.has-welcome>.occasion-main{grid-column:1;grid-row:3;grid-template-columns:115px 1fr}.welcome-scene{grid-column:1;grid-row:2;max-width:480px;margin:0 auto}.has-welcome>.occasion-foot{grid-row:4}.welcome-illustration{max-height:380px}.welcome-scene p{margin:-10px auto 0}.gifts{grid-template-columns:1fr 140px}.gifts>.micro{grid-column:1/-1}.gift-message{grid-column:1/-1}.hero-copy{padding-top:135px}.hero{min-height:max(900px,100svh)}}
@media(max-width:760px){.hero-copy{padding:140px 25px 50px}.hero{min-height:880px;min-height:max(840px,100svh)}.hero h1{font-size:clamp(76px,19vw,120px);line-height:.92;letter-spacing:-2px}.hero-copy .kicker{font-size:9px;letter-spacing:1.3px;max-width:280px;line-height:1.8}.hero-copy .auspicious{font-size:12px}.small-intro{font-size:20px}.hero-bottom{padding:17px}.hero-bottom p{font-size:25px}.hero-bottom .subline{font-size:9px;letter-spacing:1px}.hero-bottom .micro{font-size:10px}.round-link{flex-shrink:0}.art-layer{background-position:center center}.temple-cover .cover-content{margin-top:6vh;padding-top:10px}.temple-cover .cover-content>.micro{font-size:8px;letter-spacing:1.2px}.temple-cover h2{font-size:clamp(52px,13vw,78px);line-height:.88;margin:20px 0 17px}.temple-cover .cover-telugu{font-size:19px;margin:15px 0}.temple-cover .cover-names{font-size:20px;margin:18px auto}.temple-cover .primary{font-size:13px;min-height:48px;padding:13px 19px}.temple-cover .sound-choice{font-size:12px;min-height:40px;margin-top:6px}.temple-gateway{top:48%;bottom:16%;width:48%;left:26%}.temple-gateway .cover-panel:after{inset:6px}.temple-gateway .cover-panel:before{inset:13px}.temple-gateway .cover-panel i{width:7px;height:24px}.flying-names{top:45%;font-size:clamp(40px,10vw,65px)}.date-experience{padding:40px 25px}.date-experience h2{font-size:43px}.date-experience .kicker{font-size:10px}.scratch-help{font-size:19px}.scratch-card{height:160px}.date-under strong{font-size:31px}.date-under>span:last-child{font-size:18px}.countdown{gap:8px}.countdown strong{font-size:49px}.countdown span{font-size:13px;letter-spacing:1px}.countdown-heading>.micro{font-size:8px;letter-spacing:1px}.countdown-heading p{font-size:15px}#countdown-status{font-size:17px}.has-welcome{padding-top:27px}.has-welcome>.occasion-main{grid-template-columns:77px 1fr;gap:22px;padding:30px 0}.has-welcome .day{font-size:88px}.has-welcome h3{font-size:54px}.has-welcome .venue{font-size:24px}.welcome-scene{max-width:420px;margin-top:10px}.welcome-illustration{max-height:310px}.welcome-scene p{font-size:17px}.gifts{grid-template-columns:1fr;gap:22px}.gift-surprise{margin:auto}.gift-message{font-size:21px!important}.micro,.kicker{letter-spacing:1.4px}.occasion-top .micro{font-size:9px}.occasion-time{font-size:11px;letter-spacing:1px}.month{font-size:10px}.weekday{font-size:9px}.event-actions a,.event-actions button{font-size:14px}.section-top .micro{font-size:9px}.person .micro{font-size:9px}.topbar-link{font-size:10px}.contact-list .micro{font-size:9px}.chat{font-size:14px}.text-button{font-size:11px}.phone{font-size:29px}.cover-temple{background-position:center}.soundbar>button{font-size:12px}.farewell .micro{font-size:10px}.footer-row{font-size:9px}.footer-row>span{font-size:8px}.footer-row button{font-size:10px}}
.temple-gateway{cursor:pointer}.scratch-card,#scratch{user-select:none;-webkit-user-select:none}.date-experience .scratch-card:focus-within{outline:2px solid #977047;outline-offset:5px}
@media(prefers-reduced-motion:reduce){.cover-temple,.flying-names,.arm,.character-head,.haldi-petals span,.gift-surprise{animation:none!important}.flying-names{display:none}.arm{transform:none!important}.temple-cover.opening{opacity:0}.welcome-scene{opacity:1!important;transform:none!important}.closing-doors span{transition:none!important}.motion .hero h1>span{animation:none!important}}

