:root{--gold: #C9A227;--gold-soft: #E8C766;--marigold: #F2A93B;--ivory: #F7F1E3;--paper: #FBF6EA;--ink: #2E2438;--ink-soft: #6B6076;--midnight: #0B1030;--font-display: "Fraunces", Georgia, serif;--font-body: "Albert Sans", system-ui, sans-serif;--s-1: .25rem;--s-2: .5rem;--s-3: .75rem;--s-4: 1rem;--s-6: 1.5rem;--s-8: 2rem;--s-12: 3rem;--s-16: 4rem;--s-24: 6rem;--radius-card: 20px;--hairline: 1px solid color-mix(in srgb, var(--gold) 55%, transparent);--ease-out: cubic-bezier(.22, 1, .36, 1);--dur-reveal: .7s;--dur-micro: .18s;--z-canvas: 0;--z-content: 1;--z-arc: 5;--z-toggle: 6;--z-preloader: 10}:root{--fs-names: clamp(2.75rem, 13vw, 8rem);--fs-title: clamp(2rem, 8vw, 4.25rem);--fs-event: clamp(1.5rem, 6vw, 2.5rem);--fs-body: 1.0625rem;--fs-label: .8125rem;--lh-names: 1.05;--lh-body: 1.65;--wght-names: 340;--wght-title: 560;--soft: 60;--track-label: .14em;--u: 12vh;--measure: 34ch}@media(max-width:340px){:root{--fs-names: clamp(1.85rem, 12.5vw, 8rem);--fs-title: clamp(1.45rem, 8vw, 4.25rem);--fs-event: clamp(1.2rem, 6vw, 2.5rem)}}:root{--scrim: radial-gradient( 48% 44% at 50% 50%, color-mix(in srgb, var(--midnight) 42%, transparent) 0%, color-mix(in srgb, var(--midnight) 30%, transparent) 50%, color-mix(in srgb, var(--midnight) 10%, transparent) 78%, transparent 100% );--text-halo: 0 1px 2px color-mix(in srgb, var(--midnight) 70%, transparent), 0 2px 10px color-mix(in srgb, var(--midnight) 62%, transparent), 0 4px 30px color-mix(in srgb, var(--midnight) 48%, transparent)}@font-face{font-family:Fraunces;src:url(/assets/fonts/fraunces-subset.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Fraunces;src:url(/assets/fonts/fraunces-italic-amp.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap;unicode-range:U+0026}@font-face{font-family:Albert Sans;src:url(/assets/fonts/albert-sans-subset.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Fraunces Fallback;src:local("Georgia"),local("Times New Roman");size-adjust:117.01%;ascent-override:83.58%;descent-override:21.79%;line-gap-override:0%}@font-face{font-family:Albert Sans Fallback;src:local("Helvetica Neue"),local("Arial");size-adjust:104.35%;ascent-override:91.04%;descent-override:23.96%;line-gap-override:0%}:root{--font-display: "Fraunces", "Fraunces Fallback", Georgia, serif;--font-body: "Albert Sans", "Albert Sans Fallback", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:auto;overflow-x:clip}body{min-height:100svh;background:var(--midnight);color:var(--ivory);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);font-synthesis-weight:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}img,svg,canvas{display:block;max-width:100%}img{height:auto}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}a{color:inherit}:focus-visible{outline:2px solid var(--gold-soft);outline-offset:2px;border-radius:4px}.display{font-family:var(--font-display);font-optical-sizing:auto;font-variation-settings:"SOFT" var(--soft),"WONK" 0;font-weight:var(--wght-title);line-height:1.1;text-wrap:balance}.names{font-family:var(--font-display);font-optical-sizing:auto;font-variation-settings:"SOFT" var(--soft),"WONK" 0;font-weight:var(--wght-names);font-size:var(--fs-names);line-height:var(--lh-names);letter-spacing:-.015em}.names .amp{font-style:italic;font-variation-settings:"SOFT" var(--soft),"WONK" 1;color:var(--gold-soft)}.section-title{font-family:var(--font-display);font-optical-sizing:auto;font-variation-settings:"SOFT" var(--soft),"WONK" 0;font-weight:var(--wght-title);font-size:var(--fs-title);line-height:1.1;text-wrap:balance}.event-name{font-family:var(--font-display);font-optical-sizing:auto;font-variation-settings:"SOFT" var(--soft),"WONK" 0;font-weight:var(--wght-title);font-size:var(--fs-event);line-height:1.15}.numeral{font-family:var(--font-display);font-optical-sizing:auto;font-variation-settings:"SOFT" var(--soft),"WONK" 0;font-feature-settings:"lnum" 1}.label{font-family:var(--font-body);font-weight:500;font-size:var(--fs-label);line-height:1.3;text-transform:uppercase;letter-spacing:var(--track-label)}.copy{font-size:var(--fs-body);line-height:var(--lh-body);max-width:var(--measure);text-wrap:pretty}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}#sky-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:var(--z-canvas);pointer-events:none}#scroll-root{position:relative;z-index:var(--z-content);overflow-x:clip}.stage{position:relative;min-height:calc(var(--u) * var(--span, 8))}.stage__inner{position:sticky;top:0;min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;padding:var(--s-16) var(--s-6);padding-block-start:max(var(--s-16),env(safe-area-inset-top));padding-block-end:max(var(--s-16),env(safe-area-inset-bottom))}.stage--flow .stage__inner{position:static;min-height:auto}#hero{--span: 10}#passage,#mehendi,#sangeet{--span: 8}#interlude{--span: 10}#saath-sond,#haldi{--span: 7}#dikh{--span: 6}#baraat{--span: 8}#wedding{--span: 7}#phere{--span: 25}.beat{display:grid;justify-items:center;text-align:center;gap:var(--s-6);inline-size:100%;max-inline-size:62ch}.eyebrow{color:color-mix(in srgb,var(--ivory) 80%,transparent)}.on-sky{position:relative;isolation:isolate;text-shadow:var(--text-halo)}.on-sky:before{content:"";position:absolute;inset:-80% -42%;background:var(--scrim);z-index:-1;pointer-events:none}.paper,.paper .on-sky{text-shadow:none}.paper{background:var(--paper);color:var(--ink);border-radius:var(--radius-card);padding:var(--s-8) var(--s-6)}.paper .eyebrow,.paper .meta{color:var(--ink-soft)}.divider{display:flex;align-items:center;gap:var(--s-3);inline-size:100%;max-inline-size:22rem;color:var(--gold)}.divider:before,.divider:after{content:"";flex:1;height:1px;background:currentcolor;opacity:.55}.day-header{display:grid;justify-items:center;gap:var(--s-4);text-align:center;inline-size:100%}.day-header__garland{width:min(100%,30rem);height:auto}.event__time{display:flex;align-items:center;justify-content:center;gap:var(--s-3)}.event__note{font-size:var(--fs-label);font-style:italic;color:var(--ink-soft)}#hero .beat{gap:var(--s-4)}.names{margin-block:var(--s-2)}.names__word{display:inline-block;white-space:nowrap}.names__letter{display:inline-block;will-change:transform,opacity}.hero__date{font-size:clamp(.95rem,3.6vw,1.25rem);letter-spacing:.01em;color:color-mix(in srgb,var(--ivory) 92%,transparent)}.hero__venue{white-space:nowrap}.scroll-cue{margin-block-start:var(--s-6);color:color-mix(in srgb,var(--ivory) 72%,transparent);display:grid;justify-items:center;gap:var(--s-2)}.scroll-cue:after{content:"";width:12px;height:12px;border-right:1px solid currentcolor;border-bottom:1px solid currentcolor;transform:rotate(45deg);animation:scroll-cue-pulse 2s var(--ease-out) infinite}@keyframes scroll-cue-pulse{0%,to{transform:rotate(45deg) translate(0);opacity:.55}50%{transform:rotate(45deg) translate(3px,3px);opacity:1}}.countdown{margin-block-start:var(--s-2)}.countdown__face{display:flex;align-items:flex-start;justify-content:center;gap:var(--s-1)}.countdown__unit{display:grid;justify-items:center;gap:var(--s-1)}.countdown__digits{display:flex;font-size:clamp(1.75rem,8vw,3rem);font-weight:var(--wght-names);line-height:1;color:var(--ivory)}.countdown__digit{display:inline-flex;align-items:center;justify-content:center;inline-size:.62em;font-variant-numeric:lining-nums}.countdown__digit.is-ticking{animation:digit-flip .32s var(--ease-out)}@keyframes digit-flip{0%{opacity:0;transform:translateY(-.22em)}to{opacity:1;transform:translateY(0)}}.countdown__sep{font-size:clamp(1.75rem,8vw,3rem);line-height:1;color:color-mix(in srgb,var(--gold-soft) 80%,transparent);transform:translateY(-.04em)}.countdown__unit-label{font-size:.625rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb,var(--ivory) 62%,transparent)}.countdown__label{color:color-mix(in srgb,var(--ivory) 82%,transparent)}@media(max-width:340px){.countdown__digits,.countdown__sep,.countdown__fallback{font-size:clamp(1.1rem,8.5vw,3rem)}.countdown__face{gap:0}.countdown__unit-label{font-size:.5rem;letter-spacing:.1em}}.countdown__fallback{font-size:clamp(1.75rem,8vw,3rem);line-height:1}.countdown__arrived{color:var(--gold-soft)}.clock{display:block;overflow:visible}.clock--badge{flex:none;inline-size:28px;block-size:28px}#arc{position:fixed;inset-block-start:0;inset-inline:0;z-index:var(--z-arc);block-size:46px;pointer-events:none;transition:opacity .6s var(--ease-out)}.arc__svg{display:block;inline-size:100%;block-size:46px;overflow:visible;filter:drop-shadow(0 1px 6px color-mix(in srgb,var(--midnight) 55%,transparent))}:root[data-mode=static] #arc{display:none}.arch{position:relative;display:block;inline-size:100%;margin:0;aspect-ratio:1 / 1.12}.arch img{inline-size:100%;block-size:100%;object-fit:cover;clip-path:url(#jharokha-arch)}.arch__outline{position:absolute;inset:0;inline-size:100%;block-size:100%;pointer-events:none;overflow:visible}.event{position:relative;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;inline-size:100%;max-inline-size:27rem;padding:var(--s-4) var(--s-4) var(--s-8);gap:var(--s-3);box-shadow:0 1px 2px color-mix(in srgb,var(--ink) 8%,transparent),0 18px 44px color-mix(in srgb,var(--midnight) 34%,transparent);overflow:hidden}.event:before,.venue:before{content:"";position:absolute;inset:0;background-image:url(/assets/img/ornament-bandhani-tile.webp);background-size:180px;background-repeat:repeat;opacity:.04;pointer-events:none}.event>*{position:relative}.event__art{inline-size:100%;margin-block-end:var(--s-2)}.event-name{color:var(--ink);text-wrap:balance}.event__time{gap:var(--s-2);color:var(--ink-soft)}.event__time .meta{font-size:1rem;letter-spacing:.01em}.event__note{margin-block-start:calc(var(--s-1) * -1);color:color-mix(in srgb,var(--ink-soft) 92%,var(--gold))}.event .copy{color:var(--ink);text-align:center}.day-header{gap:var(--s-3)}.day-header .section-title{color:var(--ivory)}.day-header__garland{inline-size:min(100%,22rem);block-size:auto;aspect-ratio:1536 / 340;object-fit:cover;object-position:center}.divider{margin-block-start:var(--s-2)}.divider:before,.divider:after{content:"";flex:1;block-size:1px;background:currentcolor;opacity:.55}.divider{position:relative}.divider span{display:block;inline-size:11px;block-size:11px;background:currentcolor;clip-path:polygon(50% 0%,59% 32%,85% 15%,68% 41%,100% 50%,68% 59%,85% 85%,59% 68%,50% 100%,41% 68%,15% 85%,32% 59%,0% 50%,32% 41%,15% 15%,41% 32%)}.passage__line,.interlude__hush,.interlude__bloom{color:var(--ivory);text-wrap:balance}#interlude .beat{display:grid;grid-template-areas:"line";place-items:center}#interlude .beat>*{grid-area:line}#interlude[data-state=static] .beat{grid-template-areas:none;display:grid;gap:var(--s-6)}#interlude[data-state=static] .beat>*{grid-area:auto;opacity:1}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-block-size:44px;padding:var(--s-3) var(--s-6);border:var(--hairline);border-radius:999px;color:var(--ivory);font-weight:500;letter-spacing:.04em;text-decoration:none;background:color-mix(in srgb,var(--midnight) 30%,transparent);transition:transform var(--dur-micro) var(--ease-out),background-color var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out)}.button:active{transform:scale(.97);background:color-mix(in srgb,var(--gold-soft) 22%,transparent);border-color:var(--gold-soft)}@media(hover:hover){.button:hover{background:color-mix(in srgb,var(--gold-soft) 14%,transparent);border-color:var(--gold-soft)}}#phere .stage__inner{padding-inline:var(--s-4)}.phere__stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:var(--s-5, 1.25rem);inline-size:min(100%,34rem);text-align:center}.phere__clock{position:absolute;inset-block-start:50%;inset-inline-start:50%;translate:-50% -50%;inline-size:min(70vw,480px);aspect-ratio:1;pointer-events:none;z-index:2;transform-origin:50% 50%}.clock--phere{inline-size:100%;block-size:100%;filter:drop-shadow(0 0 22px color-mix(in srgb,var(--gold) 45%,transparent))}.phere__scene{margin:0;inline-size:min(100%,22rem);transform-origin:50% 60%}.phere__scene img{inline-size:100%;block-size:auto;border-radius:4px}.phere__caption{gap:var(--s-3)}.phere__names{font-size:clamp(2.25rem,11vw,4.5rem)}.phere__copy{color:color-mix(in srgb,var(--ivory) 88%,transparent);margin-inline:auto}#phere-active #arc,:root[data-phere=active] #arc{opacity:.18}#phere[data-state=static] .phere__clock{position:static;translate:none;inline-size:min(46vw,200px);margin-inline:auto}#phere[data-state=static] .phere__scene,#phere[data-state=static] .phere__caption>*{opacity:1}#venue .stage__inner,#finale .stage__inner{padding-block:var(--s-24)}.venue{position:relative;gap:var(--s-5, 1.25rem);inline-size:100%;max-inline-size:32rem;padding:var(--s-4) var(--s-4) var(--s-8);border-radius:var(--radius-card);background:color-mix(in srgb,var(--midnight) 46%,transparent);border:var(--hairline);overflow:hidden;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.venue>*{position:relative}.venue__art{inline-size:100%;block-size:auto;border-radius:12px;margin-block-end:var(--s-2)}.venue .section-title{color:var(--ivory);font-size:clamp(1.6rem,6.5vw,2.5rem)}.venue .copy{color:color-mix(in srgb,var(--ivory) 86%,transparent)}.finale{gap:var(--s-8)}.finale__portrait{position:relative;inline-size:min(100%,24rem);aspect-ratio:1 / 1.24;display:grid;place-items:end center}.finale__frame{position:absolute;inset:0;inline-size:100%;block-size:100%;overflow:visible}.finale__frame-fill{fill:color-mix(in srgb,var(--midnight) 62%,transparent)}.finale__couple{position:relative;inline-size:88%;block-size:auto;align-self:end;margin-block-end:-2%}.finale .section-title{color:var(--ivory);font-size:clamp(1.5rem,6vw,2.25rem)}.footer{position:relative;z-index:var(--z-content);display:grid;justify-items:center;gap:var(--s-3);padding-block:var(--s-16) var(--s-12);padding-block-end:max(var(--s-12),env(safe-area-inset-bottom));padding-inline:var(--s-6);text-align:center;background:linear-gradient(to bottom,transparent,color-mix(in srgb,var(--midnight) 82%,transparent) 42%,var(--midnight))}.footer__clock{display:block;inline-size:22px;block-size:22px;opacity:.85}.footer__monogram{font-size:1.25rem;letter-spacing:.22em;color:color-mix(in srgb,var(--gold-soft) 92%,transparent)}.footer__credit{color:color-mix(in srgb,var(--ivory) 58%,transparent);font-size:.75rem}#music-toggle{position:fixed;inset-block-start:max(var(--s-4),env(safe-area-inset-top));inset-inline-end:max(var(--s-4),env(safe-area-inset-right));z-index:var(--z-toggle);inline-size:44px;block-size:44px;display:grid;place-items:center;border-radius:999px;color:var(--gold-soft);background:color-mix(in srgb,var(--midnight) 42%,transparent);border:var(--hairline);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:transform var(--dur-micro) var(--ease-out),background-color var(--dur-micro) var(--ease-out)}#music-toggle:active{transform:scale(.94)}.music-toggle__icon{inline-size:24px;block-size:24px}.music-toggle__flame{opacity:0;transform-origin:50% 100%;transition:opacity var(--dur-reveal) var(--ease-out)}#music-toggle[data-playing=true]{color:var(--gold-soft)}#music-toggle[data-playing=true] .music-toggle__flame{opacity:1;animation:diya-flicker 2.6s ease-in-out infinite}#music-toggle[data-playing=false]{color:color-mix(in srgb,var(--ivory) 70%,transparent)}@keyframes diya-flicker{0%,to{transform:scaleY(1) translateY(0);opacity:1}45%{transform:scaleY(1.1) translateY(-.4px);opacity:.85}70%{transform:scaleY(.96) translateY(.2px);opacity:1}}@media(prefers-reduced-motion:reduce){#music-toggle[data-playing=true] .music-toggle__flame{animation:none}}.preloader{position:fixed;inset:0;z-index:var(--z-preloader);display:grid;place-content:center;justify-items:center;gap:var(--s-8);background:var(--midnight);transition:opacity 1.4s var(--ease-out),background-color 1.4s var(--ease-out)}.preloader__face{inline-size:min(38vw,168px);aspect-ratio:1}.clock--preloader{inline-size:100%;block-size:100%}.preloader__label{font-size:clamp(1rem,4vw,1.25rem);letter-spacing:.06em;color:color-mix(in srgb,var(--ivory) 88%,transparent);transition:opacity .9s var(--ease-out)}.preloader[data-state=sunrise]{background:linear-gradient(to bottom,var(--preloader-dawn-top, #1e2547) 0%,var(--preloader-dawn-mid, #e8a57e) 55%,var(--preloader-dawn-horizon, #fbd9a4) 100%);opacity:0;pointer-events:none}.preloader[data-state=sunrise] .preloader__label,.preloader[data-state=sunrise] .preloader__face{opacity:0}:root[data-loading=true]{overflow:hidden}@media(prefers-reduced-motion:reduce){.preloader{transition:opacity .2s linear}.preloader[data-state=sunrise]{background:var(--midnight)}}:root[data-mode=static] .stage{min-height:auto;background:var(--static-sky, var(--midnight))}:root[data-mode=static] .stage__inner{position:static;min-height:auto;padding-block:var(--s-24)}:root[data-mode=static] #hero .stage__inner{min-height:100svh;align-content:center}:root[data-mode=static] [data-revealed=false]{opacity:0}:root[data-mode=static] [data-revealed]{transition:opacity var(--dur-reveal) var(--ease-out)}:root[data-mode=static] [data-revealed=true]{opacity:1}@media(prefers-reduced-motion:reduce){:root[data-mode=static] [data-revealed]{transition:none}.scroll-cue:after,.countdown__digit.is-ticking{animation:none}}:root[data-mode=static] #interlude .beat>*{opacity:1}:root[data-mode=static] #phere .phere__stage{gap:var(--s-8)}:root[data-mode=static] .phere__clock{position:static;translate:none;inline-size:min(46vw,190px);margin-inline:auto}:root[data-mode=static] .phere__scene,:root[data-mode=static] .phere__caption>*{opacity:1;transform:none}:root[data-mode=static] #venue .stage,:root[data-mode=static] #finale .stage{background:var(--midnight)}
