:root{--forest:#173f2c;--forest-deep:#09261a;--forest-soft:#2f6649;--ivory:#f6eedf;--ivory-bright:#fffaf0;--rose:#b9636f;--rose-soft:#dc9a95;--gold:#c49a46;--gold-light:#ebcf8d;--ink:#2a3029;--display:"Italiana", Georgia, serif;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Cinzel", Georgia, serif;--numeral:var(--display);--t-label:.7rem;--t-small:.95rem;--t-body:1.1rem;--t-lead:clamp(1.12rem, 2.2vw, 1.3rem);--t-h4:1.25rem;--t-h3:clamp(1.45rem, 3.8vw, 1.9rem);--t-h2:clamp(1.9rem, 5.5vw, 3rem);--t-h1:clamp(2.5rem, 7.5vw, 4.4rem);--t-hero:clamp(3.4rem, 12.5vw, 7.4rem);--ls-label:.18em;--ls-display:.01em}[data-type=playfair]{--display:"Playfair Display", Georgia, serif}[data-type=script]{--display:"Parisienne", "Segoe Script", cursive}[data-type=script] .event h3,[data-type=script] .details-grid b{font-family:var(--serif)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:#07150f}body{color:var(--ink);font-family:var(--serif);letter-spacing:0;background:#07150f;margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}img{max-width:100%;display:block}.wedding-invite{isolation:isolate;background:#0b3424;width:min(100%,980px);margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 80px #0000008c}.carpet-surface{z-index:0;pointer-events:none;background:#0b3424 url(/assets/carpet-continuation-v1.webp) 50%/cover no-repeat;width:min(100vw,980px);height:100lvh;position:fixed;inset:0 auto auto 50%;transform:translate(-50%)}.wedding-invite>.carpet-flow,.wedding-invite>section{z-index:1}.scene{isolation:isolate;min-height:100svh;position:relative;overflow:hidden}.scene-image{z-index:-3;object-fit:cover;width:100%;height:112%;transform:translate3d(0, var(--parallax-y,0), 0) scale(1.03);will-change:transform;position:absolute;inset:-6% 0}.carpet-flow{isolation:isolate;background:0 0;position:relative;overflow:hidden}.carpet-depth{z-index:-3;pointer-events:none;height:calc(100% + 6svh);position:absolute;top:-6svh;left:0;right:0;overflow:hidden;-webkit-mask-image:linear-gradient(#000 0 82%,#000000d1 90%,#0000 100%);mask-image:linear-gradient(#000 0 82%,#000000d1 90%,#0000 100%)}.carpet-depth-layer{object-fit:cover;object-position:center top;width:108%;max-width:none;height:110%;transform:translate3d(0, var(--depth-y,0), 0);will-change:transform;position:absolute;top:-5%;left:-4%}.depth-sky{z-index:0}.depth-palace{z-index:1}.depth-foreground{z-index:2}.carpet-flow:after{content:none}.hero{min-height:108svh;color:var(--ivory-bright);text-align:center}.hero-wash{z-index:-2;background:linear-gradient(#2215142e 0%,#0000 42% 100%);position:absolute;inset:0}.hero-copy{z-index:3;text-shadow:0 2px 2px #03140df0,0 0 18px #031b12b8,0 6px 28px #03140d85;width:min(86%,36rem);margin:0;padding:0;position:absolute;bottom:7rem;left:50%;transform:translate(-50%)}.hero-copy h1 span{color:#fffdf7;-webkit-text-stroke:.25px #07261985}.kicker{font-family:var(--sans);font-size:var(--t-label);letter-spacing:var(--ls-label);text-transform:uppercase;margin:0 0 1rem;font-weight:600;line-height:1.7}h1,h2,h3,p{overflow-wrap:anywhere}h1{font-family:var(--display);font-size:var(--t-hero);margin:0;font-weight:400;line-height:.78}h1 span,h1 em{display:block}h1 em{color:var(--gold-light);font-family:var(--serif);margin:.55rem 0 .7rem;font-size:.3em;font-style:italic;font-weight:400}.hero-date{color:var(--gold-light);font-family:var(--sans);font-size:var(--t-label);margin:1.8rem 0 0}.scroll-marker{z-index:3;color:var(--ivory-bright);font-family:var(--sans);font-size:var(--t-label);text-shadow:0 2px 16px #04160df2;text-transform:uppercase;justify-items:center;gap:.35rem;text-decoration:none;display:grid;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.scroll-marker b{font-size:var(--t-h4);font-weight:400;animation:1.8s ease-in-out infinite scroll-pulse}@keyframes scroll-pulse{50%{transform:translateY(8px)}}.invitation-scene{min-height:94svh;color:var(--ivory);text-align:center;background:0 0;align-items:center;margin-top:0;display:grid;overflow:visible}.invitation-scene:before{content:"";z-index:0;pointer-events:none;border-left:1px solid #ebcf8d7a;border-right:1px solid #ebcf8d7a;position:absolute;inset:clamp(3rem,8vw,6rem) clamp(1.15rem,4vw,3rem) clamp(2rem,5vw,4rem)}.invitation-copy{z-index:1;width:min(82%,36rem);margin:0 auto;padding:clamp(7rem,15vh,11rem) 0 clamp(5rem,10vh,8rem);position:relative}.invitation-copy .kicker{color:var(--gold-light)}.blessing,.invitation-copy>p{font-size:var(--t-body);margin:.55rem 0;line-height:1.35}.family-names{font-style:italic}.rule{background:var(--gold);width:4.2rem;height:1px;margin:1.1rem auto;display:block}.invitation-copy h2{color:var(--ivory-bright);font-family:var(--display);font-size:var(--t-h1);margin:1.2rem 0 .5rem;font-weight:400;line-height:.95}.couple-lockup{color:var(--ivory-bright);font-family:var(--display);gap:.25rem;margin:1rem 0;display:grid}.couple-lockup strong{font-size:var(--t-h1);font-weight:400;line-height:.9}.couple-lockup i{color:var(--rose);font-family:var(--serif);font-size:var(--t-h3)}.daughter-line{font-style:italic}.date-line{max-width:26rem;color:var(--ivory);font-family:var(--sans);font-size:var(--t-label);letter-spacing:var(--ls-label);text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin:1.45rem auto;display:grid}.date-line b{color:var(--rose);font-family:var(--numeral);font-size:var(--t-h1);font-weight:400}.venue{color:var(--gold-light);font-family:var(--sans);font-size:var(--t-label);letter-spacing:var(--ls-label);text-transform:uppercase;font-weight:600}.events-section,.details-section{isolation:isolate;color:var(--ivory);background:0 0;position:relative;overflow:hidden}.events-section{background:0 0;min-height:150svh;margin-top:-6rem;padding:clamp(8rem,13vw,11rem) clamp(1.2rem,5vw,4rem) 9rem}.events-section:before,.events-section:after{content:none}.ornate-backdrop,.details-backdrop{z-index:-2;object-fit:fill;width:100%;height:100%;position:absolute;inset:0}.ornate-backdrop{object-fit:cover;object-position:center top;filter:saturate(.96)brightness(.88);transform:translate3d(0, var(--decoration-y,0), 0) scale(1.04);will-change:transform;-webkit-mask-image:linear-gradient(#0000,#000 6rem,#000);mask-image:linear-gradient(#0000,#000 6rem,#000)}.events-section .ornate-backdrop{opacity:.2;filter:saturate(.65)brightness(.58)}.section-heading{z-index:6;text-align:center;width:min(100%,44rem);margin:0 auto 4rem;position:relative}.section-heading .kicker{color:var(--gold-light)}.section-heading h2,.message-copy h2,.finale-copy h2{font-family:var(--display);font-size:var(--t-h1);margin:0;font-weight:400;line-height:.92}.events-intro{color:#f6eedfbd;font-size:var(--t-body);margin:1rem auto 0;font-style:italic}.events-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(4.5rem,8vw,6rem) clamp(1.4rem,4vw,3rem);width:min(100%,50rem);margin:0 auto;display:grid;position:relative}.events-grid:before{content:none}.event{z-index:1;text-align:center;position:relative}.event:after{content:none}.event-medallion{--event-image:url(/assets/event-v3-01-manjha.webp);--event-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 250' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 250V92C0 82 8 74 18 74C18 62 27 54 39 54C39 43 48 35 61 35C68 20 83 10 100 0C117 10 132 20 139 35C152 35 161 43 161 54C173 54 182 62 182 74C192 74 200 82 200 92V250Z'/%3E%3C/svg%3E");isolation:isolate;aspect-ratio:4/5;filter:drop-shadow(0 22px 24px #00000040);width:min(100%,12.5rem);-webkit-mask:var(--event-mask) center / 100% 100% no-repeat;-webkit-mask:var(--event-mask) center / 100% 100% no-repeat;mask:var(--event-mask) center / 100% 100% no-repeat;background:0 0;margin:0 auto 1.65rem;position:relative;overflow:hidden}.event-medallion:before{content:"";z-index:-1;background:var(--event-image) center / cover no-repeat;pointer-events:none;position:absolute;inset:0}.event-medallion:after{content:"";mix-blend-mode:soft-light;pointer-events:none;background:linear-gradient(155deg,#fffae924,#0000 38%,#194e3724);position:absolute;inset:0}.event-one{--event-image:url(/assets/event-v3-01-manjha.webp)}.event-two{--event-image:url(/assets/event-v3-02-mehendi.webp)}.event-three{--event-image:url(/assets/event-v3-03-sangeet.webp)}.event-four{--event-image:url(/assets/event-v3-04-nikah.webp)}.event-five{--event-image:url(/assets/event-v3-05-rukhsati.webp)}.event-six{--event-image:url(/assets/event-v3-06-walima.webp)}.event h3{color:#f3dca2;font-family:var(--serif);text-shadow:0 2px 12px #03130cb8;margin:0 0 .7rem;font-size:clamp(1.75rem,4.6vw,2.35rem);font-weight:600;line-height:1.05}.event p,.event time{color:#fffaf0f0;font-family:var(--serif);text-shadow:0 2px 10px #03130cd1;margin:.2rem 0 0;font-size:clamp(1rem,2.3vw,1.12rem);font-weight:500;line-height:1.28;display:block}.moon-link span{font-family:var(--display);font-size:var(--t-h1);line-height:.92;display:block}.moon-link small{font-family:var(--sans);font-size:var(--t-label);text-transform:uppercase;margin-top:.65rem;display:block}.message-section{color:var(--ivory);background:0 0;padding:clamp(8rem,14vw,11rem) 0 8rem;position:relative;overflow:hidden}.message-section:before{content:none}.message-copy{z-index:6;text-align:center;width:min(84%,40rem);margin:0 auto 3rem;position:relative}.message-copy .kicker{color:var(--gold-light)}.message-copy p:last-child{font-size:var(--t-lead);margin:1.4rem auto 0;line-height:1.5}.gallery-wrap{position:relative}.gallery{scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:min(72vw,35rem);grid-auto-flow:column;gap:1rem;padding:0 max(14vw,50% - 17.5rem) 1rem;display:grid;overflow-x:auto}.gallery::-webkit-scrollbar{display:none}.gallery figure{aspect-ratio:4/5;scroll-snap-align:center;border-radius:8px;margin:0;overflow:hidden;box-shadow:0 22px 52px #00000057}.gallery img{object-fit:cover;width:100%;height:100%}.gallery figure:first-child img,.gallery figure:nth-child(2) img{object-position:center 35%}.gallery figure:nth-child(3) img{object-position:center 25%}.gallery-control{z-index:2;aspect-ratio:1;width:2.75rem;color:var(--ivory);background:var(--forest);border:1px solid var(--gold-light);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:absolute;top:45%}.gallery-control.previous{left:1rem}.gallery-control.next{right:1rem}.gallery-dots{justify-content:center;gap:.45rem;margin-top:.75rem;display:flex}.gallery-dots button{aspect-ratio:1;cursor:pointer;background:#ebcf8d4d;border:0;border-radius:50%;width:.5rem;padding:0}.gallery-dots button.is-active{background:var(--gold-light)}.guestbook-panel{width:min(34rem,86vw);color:var(--forest-deep);text-align:center;background:var(--ivory-bright);border:1px solid #c49a46b8;border-radius:50% 50% 8px 8px/24% 24% 8px 8px;margin:4.5rem auto 0;padding:clamp(3.8rem,8vw,5.8rem) 2.4rem 3rem;position:relative;box-shadow:0 24px 50px #173f2c29}.guestbook-panel:before{content:"";border-radius:inherit;pointer-events:none;border:1px solid #c49a4659;position:absolute;inset:.65rem}.guestbook-panel .kicker{color:var(--rose);position:relative}.guestbook-panel>span{max-width:25rem;font-family:var(--display);font-size:var(--t-h1);margin:0 auto;line-height:.96;display:block;position:relative}.guestbook-panel>a{min-height:3rem;color:var(--ivory-bright);background:var(--forest);border:1px solid var(--forest);font-family:var(--sans);font-size:var(--t-label);text-transform:uppercase;border-radius:4px;justify-content:center;align-items:center;margin-top:1.8rem;padding:.75rem 1.35rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.details-section{background:0 0;min-height:105svh;padding:clamp(8rem,14vw,11rem) clamp(1.5rem,6vw,5rem) 8rem}.details-section:before,.details-section:after{content:none}.details-section>:not(.details-backdrop):not(.transition-motif){z-index:1;position:relative}.details-backdrop{object-fit:cover;opacity:.78;filter:saturate(.85)brightness(.74);transform:translate3d(0, var(--decoration-y,0), 0) scale(1.04);will-change:transform}.details-section .section-heading>p:last-child{color:#f6eedfc7;max-width:34rem;font-size:var(--t-body);margin:1rem auto 0}.details-grid{text-align:center;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;width:min(100%,50rem);margin:0 auto;display:grid}.details-grid article,.details-grid>a{border-top:1px solid #ebcf8d8c;padding-top:1.2rem}.details-grid>a{color:inherit;text-decoration:none}.details-grid b,.details-grid span{display:block}.details-grid b{color:var(--gold-light);font-family:var(--serif);font-weight:600;font-size:var(--t-h4);font-weight:400}.details-grid span{color:#f6eedfd1;font-family:var(--serif);font-size:var(--t-small);margin-top:.5rem;line-height:1.45}.moon-link{aspect-ratio:1;width:min(21rem,80vw);color:var(--forest-deep);text-align:center;background:radial-gradient(circle at 38% 35%,#ffffffdb,#0000 3%),radial-gradient(circle at 62% 58%,#173f2c24,#0000 16%),#ded8c9;border-radius:50%;place-content:center;margin:5rem auto 0;padding:3rem;text-decoration:none;display:grid;box-shadow:inset -18px -18px 32px #173f2c2b,0 30px 55px #00000040}.finale{min-height:105svh;color:var(--ivory-bright);text-align:center;background:0 0;place-items:center;padding:8rem 1.5rem;display:grid}.finale:before{content:none}.finale-copy{z-index:2;width:min(88%,44rem);margin:0 auto;position:relative}.finale-copy .kicker{color:var(--gold-light)}.finale-copy>p:last-of-type{font-family:var(--sans);font-size:var(--t-label);text-transform:uppercase}.countdown{border-top:1px solid #ebcf8d80;border-bottom:1px solid #ebcf8d80;grid-template-columns:repeat(4,1fr);gap:.65rem;max-width:34rem;margin:2rem auto 1.4rem;padding:1.3rem 0;display:grid}.countdown span,.countdown b,.countdown small{display:block}.countdown b{color:var(--gold-light);font-family:var(--display);font-size:var(--t-h2);font-weight:400}.countdown small{font-family:var(--sans);font-size:var(--t-label);text-transform:uppercase;margin-top:.35rem}.final-action-label{color:var(--gold-light);font-family:var(--sans);font-size:var(--t-label);letter-spacing:var(--ls-label);text-transform:uppercase;margin:2rem 0 .8rem}.final-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;width:min(100%,29rem);margin:0 auto;display:grid}.final-rsvp,.final-map{min-height:3rem;color:var(--forest-deep);background:var(--gold-light);border:1px solid var(--gold-light);font-family:var(--sans);font-size:var(--t-label);text-transform:uppercase;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;padding:.75rem 1.4rem;font-weight:600;text-decoration:none;display:flex}.final-rsvp b,.final-map b{font-weight:600}.final-rsvp small,.final-map small{font-family:var(--serif);letter-spacing:0;text-transform:none;margin-top:.22rem;font-size:.78rem;font-weight:600;line-height:1.2;display:block}.final-map{color:var(--ivory-bright);background:#09261abd;border-color:#ebcf8db3;grid-column:1/-1}.reveal{opacity:0;transition:opacity .9s,transform 1s cubic-bezier(.22,1,.36,1);transform:translateY(28px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.hero-copy.reveal{transform:translate(-50%,28px)}.hero-copy.reveal.is-visible{transform:translate(-50%)}@media (width<=700px){.hero .scene-image{object-position:center 42%}.invitation-scene{min-height:106svh}.invitation-copy{width:88%}.events-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3.6rem 1.35rem}.event:nth-child(2n){padding-top:2rem}.events-section{padding-top:7rem}.message-section,.details-section{padding-top:9rem}.details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 1.2rem}.gallery{grid-auto-columns:76vw;padding-inline:12vw}.gallery-control{top:42%}}@media (width>=701px){.event:nth-child(3n+2){padding-top:2.5rem}}@media (width<=390px){.hero-copy{width:92%}.date-line{gap:.55rem}.moon-link{width:88vw}}@media (width>=981px){.wedding-invite{border-radius:8px;margin-block:2rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scene-image,.carpet-depth-layer,.ornate-backdrop,.details-backdrop{transform:scale(1.04)!important}.reveal{opacity:1;transition:none;transform:none}.hero-copy.reveal{transform:translate(-50%)}.scroll-marker b{animation:none}}.audio-toggle{z-index:40;aspect-ratio:1;width:2.9rem;color:var(--gold-light);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#09261ad1;border:1px solid #ebcf8d8c;border-radius:50%;place-items:center;padding:0;transition:background .4s,border-color .4s,transform .4s;display:grid;position:fixed;bottom:clamp(.9rem,4vw,1.6rem);right:clamp(.9rem,4vw,1.6rem);box-shadow:0 6px 20px #0006}.audio-toggle:hover{border-color:var(--gold-light);transform:translateY(-2px)}.audio-play-icon{border-top:.36rem solid #0000;border-bottom:.36rem solid #0000;border-left:.58rem solid;width:0;height:0;margin-left:.18rem}.audio-bars{align-items:center;gap:2px;height:.95rem;display:none}.audio-bars i{background:currentColor;border-radius:1px;width:2px;height:30%;transition:height .3s}.audio-toggle[aria-pressed=true] .audio-play-icon{display:none}.audio-toggle[aria-pressed=true] .audio-bars{display:flex}.audio-toggle[aria-pressed=true] .audio-bars i{animation:1s ease-in-out infinite eq}.audio-toggle[aria-pressed=true] .audio-bars i:nth-child(2){animation-delay:.18s}.audio-toggle[aria-pressed=true] .audio-bars i:nth-child(3){animation-delay:.36s}.audio-toggle[aria-pressed=true] .audio-bars i:nth-child(4){animation-delay:.54s}@keyframes eq{0%,to{height:25%}50%{height:95%}}.audio-toggle[aria-pressed=false]{animation:3.4s ease-in-out infinite audio-hint}@keyframes audio-hint{0%,to{box-shadow:0 6px 20px #0006,0 0 #ebcf8d59}50%{box-shadow:0 6px 20px #0006,0 0 0 7px #ebcf8d00}}@media (prefers-reduced-motion:reduce){.audio-toggle,.audio-toggle .audio-bars i{animation:none!important}}
