.invite-canvas.program-edition{--invite-ink:#542c3d;--invite-secondary:#715963;overflow:clip}.program-edition .gate-photo{box-shadow:0 0 0 100vmax #e9d9d4}.program-edition .photo-shade,.program-edition .cover-type,.program-edition .invite-footer>span,.program-edition .celebration-atmosphere{display:none}.gate-blessing{z-index:3;pointer-events:none;justify-content:center;width:100%;display:flex;position:absolute;top:14%;left:0}.gate-blessing img{object-fit:contain;filter:drop-shadow(0 2px 4px #773d3b18);width:120px;height:82px}.invite-canvas.program-edition .courtyard-light{background:linear-gradient(#fff0,#f7f2f380 35%,#f7f2f3e8 64%,#fff0 96%);animation:none}.wedding-program{z-index:1;color:var(--invite-ink);text-align:center;max-width:520px;min-height:0;font:400 13px/1.65 var(--font-geist-sans),Arial,sans-serif;text-shadow:none;flex-direction:column;margin-inline:auto;display:flex;position:absolute;inset:5% 9% 8%}.program-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#804f6135 transparent;flex:1;width:100%;min-height:0;padding:8px 12px 28px;position:relative;overflow-y:auto}.program-family{font:400 11px/1.5 var(--font-geist-sans),Arial,sans-serif;color:var(--invite-secondary);margin:0 0 15px}.program-couple h1{font:400 49px/1.04 "Anastasia",var(--font-wedding-names),cursive;color:var(--invite-ink);overflow-wrap:anywhere;margin:0;display:block}.program-couple h1>span{display:block}.program-couple h1 em{font:400 22px/1 var(--font-romance),Georgia,serif;color:#9b536b;margin:4px 0;display:block}.program-invitation{font:400 12px/1.75 var(--font-geist-sans),Arial,sans-serif;max-width:330px;color:var(--invite-secondary);margin:20px auto 0}.program-schedule>h2,.program-venue h3{font:500 27px/1.2 var(--font-romance),Georgia,serif;color:var(--invite-ink);text-wrap:balance;margin:0}.program-location{font:500 14px/1.5 var(--font-geist-sans),Arial,sans-serif;margin:0}.program-location span{color:var(--invite-secondary);margin-top:3px;font-size:11px;font-weight:400;display:block}.illustrated-events{gap:17px;max-width:360px;margin:25px auto 0;padding:0;list-style:none;display:grid}.illustrated-event{text-align:left;grid-template-columns:minmax(0,1fr) 76px;align-items:baseline;gap:12px;display:grid}.illustrated-event h3{font:500 22px/1.2 var(--font-romance),Georgia,serif;overflow-wrap:anywhere;margin:0}.illustrated-event time{font:400 12px/1.5 var(--font-geist-sans),Arial,sans-serif;color:var(--invite-secondary);text-align:right;white-space:nowrap}.program-timezone{font:400 9px/1.5 var(--font-geist-sans),Arial,sans-serif;color:var(--invite-secondary);margin:13px 0 0}.program-venue{padding:36px 0 10px}.venue-eyebrow{font:400 11px/1.5 var(--font-geist-sans),Arial,sans-serif;color:var(--invite-secondary);margin:0 0 7px}.program-venue>p:not(.venue-eyebrow){margin:6px 0 9px;font-size:12px}.program-venue a{color:#75394f;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:10px 0;font-size:11px;display:inline-flex}.program-countdown{max-width:280px;margin:22px auto}.program-countdown>p{font:400 11px/1.5 var(--font-geist-sans),Arial,sans-serif;color:var(--invite-secondary);margin:0 0 12px}.program-countdown>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.program-countdown strong{font:500 28px/1 var(--font-romance),Georgia,serif;font-variant-numeric:tabular-nums;min-height:28px;display:block}.program-countdown small{color:var(--invite-secondary);margin-top:6px;font-size:9px;display:block}.program-quick-actions{flex-wrap:wrap;justify-content:center;gap:12px 22px;display:flex}.program-quick-actions button{color:#75394f;background:0 0;border:0;align-items:center;gap:7px;padding:9px 0;font-size:11px;display:flex}.program-signoff{padding:20px 0 8px}.program-signoff p{font:400 12px/1.7 var(--font-geist-sans),Arial,sans-serif;text-wrap:balance;max-width:270px;margin:8px auto}.program-signoff span{color:var(--invite-secondary);font-size:11px}.program-notice{color:var(--invite-ink);background:#fff7f8;padding:12px;font-size:12px;position:absolute;bottom:8px;left:5%;right:5%}.program-edition.has-arrived .invite-footer button{color:#612e44;background:#fff7f3df;border-color:#b296a0}.program-edition .invite-footer{justify-content:flex-end}.scratch-date{width:100%;max-width:280px;height:60px;margin:13px auto 17px;position:relative}.scratch-date p{height:100%;font:500 14px/1.4 var(--font-geist-sans),Arial,sans-serif;color:var(--invite-ink);background:0 0;place-items:center;margin:0;display:grid}.scratch-date button{touch-action:none;cursor:crosshair;background:0 0;border:0;width:100%;padding:0;position:absolute;inset:0}.scratch-date canvas{width:100%;height:100%;display:block}.rose-petal-shower{z-index:4;pointer-events:none;position:absolute;inset:0;overflow:clip}.falling-rose{opacity:0;position:absolute;top:0;left:0}.falling-rose img{object-fit:contain;width:100%;height:100%;display:block}@container (width<=360px){.program-scroll{padding-inline:3px}.program-couple h1{font-size:44px}.program-couple h1.long-couple{font-size:30px}.illustrated-event h3{font-size:20px}.program-schedule>h2{font-size:25px}}@container (height<=700px){.wedding-program{inset-block:4% 7%}.program-couple h1{font-size:41px}.program-family{margin-bottom:10px}.program-invitation{margin-top:15px}.program-schedule{padding-top:20px}.illustrated-events{gap:13px;margin-top:18px}}@media (prefers-reduced-motion:reduce){.rose-petal-shower{display:none}}.guest-page:has(.program-edition){height:100svh;min-height:0}.guest-page:has(.program-edition){background:#e8ece7}.guest-page>.program-edition{max-width:65svh;margin-inline:auto}.program-edition{--parallax-x:0px;--parallax-y:0px}.program-edition .gate-photo{transform:translate(calc(var(--sway,0%) + var(--parallax-x)),calc(var(--travel) + var(--parallax-y))) rotate(var(--roll,0deg)) scale(var(--zoom))}.gate-blessing{translate:calc(var(--parallax-x) * 1.4) calc(var(--parallax-y) * 1.4)}.program-edition .wedding-program{max-width:440px;font:400 17px/1.6 var(--font-wedding-details),Georgia,serif;--invite-ink:#623145;--invite-secondary:#674d56;inset:9% 13% 13%}.program-scroll{scrollbar-width:none;padding:5px 10px 40px}.program-blessing{object-fit:contain;width:112px;height:78px;margin:0 auto 22px;display:block}.program-family,.program-invitation,.program-location,.program-location span,.illustrated-event time,.program-timezone,.venue-eyebrow,.program-countdown>p,.program-signoff p,.scratch-date p{font-family:var(--font-wedding-details),Georgia,serif;font-style:normal}.program-family{margin:0 0 20px;font-size:16px}.program-couple h1{padding-inline:4px;font-size:64px;line-height:1.1}.program-couple h1 em{color:#92723f;margin:5px 0;font-size:26px}.program-invitation{text-wrap:balance;margin:24px auto 0;font-size:18px;line-height:1.55}.program-schedule>h2,.program-venue h3{font-size:30px;line-height:1.2}.program-location{color:#305f53;margin-top:16px;font-size:23px}.program-location span{margin-top:5px;font-size:17px}.illustrated-event{grid-template-columns:minmax(0,1fr) 85px;gap:14px}.illustrated-event h3{font-size:27px;line-height:1.25}.illustrated-event time{color:#305f53;font-size:18px}.program-timezone{margin-top:22px;font-size:14px}.venue-eyebrow,.program-countdown>p{font-size:16px}.program-venue>p:not(.venue-eyebrow),.program-signoff p{font-size:17px}.program-venue a,.program-quick-actions button,.program-signoff span{font-size:14px}.program-countdown{margin:30px auto}.program-countdown strong{font-size:32px}.scratch-date{height:62px;margin-top:18px}.scratch-date p{font-size:21px}.program-continue{color:#623145;cursor:pointer;background:#fff8eef0;border:1px solid #9d7f692e;border-radius:50%;place-items:center;width:40px;height:40px;display:grid;position:absolute;bottom:-38px;left:calc(50% - 20px)}.falling-rose img{-webkit-backface-visibility:hidden;backface-visibility:hidden}.rose-petal-shower{contain:layout style paint}.palace-depth{opacity:0;pointer-events:none;position:absolute;inset:0}.palace-depth.is-ready{opacity:1}.palace-depth:after{content:"";pointer-events:none;opacity:.16;background:radial-gradient(#fff7d0 0%,#f8d47a77 25%,#0000 70%);width:42%;height:8%;animation:7s ease-in-out infinite alternate pondShine;position:absolute;bottom:14%;left:25%;transform:rotate(-5deg)}@keyframes pondShine{0%{opacity:.1;transform:translate(-5%)rotate(-5deg)}to{opacity:.2;transform:translate(7%)rotate(-5deg)}}.palace-depth canvas{width:100%;height:100%;display:block}.program-edition .gate-photo{height:92%;top:4%}.ceremonial-shehnai{aspect-ratio:840/240;object-fit:contain;filter:drop-shadow(0 5px 3px #55342b20);width:100%;max-width:280px;height:auto;margin:0 auto 24px;display:block}@media (prefers-reduced-motion:reduce){.gate-blessing{translate:none}}.scratch-label{pointer-events:none;color:#633d43;flex-direction:column;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;inset:0}.scratch-label small{font:400 14px/1.4 var(--font-wedding-details),Georgia,serif;margin-top:3px}.is-scratching .scratch-label{opacity:0}@container (height<=720px){.program-edition .wedding-program{inset-block:7% 13%}.program-blessing{width:95px;height:66px;margin-bottom:16px}.program-couple h1{font-size:54px}.program-family{margin-bottom:14px}.program-invitation{margin-top:20px}}@container (width<=360px){.program-edition .wedding-program{inset-inline:10%}.program-couple h1{font-size:48px}.illustrated-event h3{font-size:24px}}@font-face{font-family:Anastasia;src:url(/Anastasia.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}.program-edition{--programme-opacity:0;--blessing-opacity:1}.couple-monogram{z-index:2;opacity:var(--gate-visible,0);text-align:center;pointer-events:none;color:#94713c;position:absolute;inset:calc(9% + 5px) 16% auto}.monogram-blessing-fixed{object-fit:contain;width:98px;height:68px;opacity:calc(1 - var(--schedule-veil,0));filter:drop-shadow(0 2px 2px #46291530);margin:0 auto 28px;display:block}.monogram-window{margin-top:-45px;padding-top:45px;overflow:visible}.monogram-reveal{opacity:var(--crest-opacity,0)}.program-blessing{visibility:hidden}.monogram-mark{width:180px;height:180px;margin:0 auto;position:relative}.monogram-art{object-fit:contain;filter:drop-shadow(0 1px 1px #4f412014);width:100%;height:100%;display:block}.monogram-mark{isolation:isolate}.monogram-art,.monogram-letters,.monogram-lotus{z-index:1;position:relative}.logo-butterfly{opacity:0;perspective:70px;will-change:transform,opacity;pointer-events:none;width:20px;height:20px;position:absolute;top:calc(50% - 10px);left:calc(50% - 10px)}.butterfly-1{filter:hue-rotate(24deg);width:17px;height:17px}.butterfly-2{filter:hue-rotate(-22deg);width:18px;height:18px}.butterfly-wing{-webkit-backface-visibility:visible;backface-visibility:visible;background-image:url(/jewel-butterfly.webp);background-size:200% 100%;width:50%;height:100%;position:absolute;top:0}.wing-left{transform-origin:100%;transform:rotateY(var(--wing-angle,35deg));background-position:0;left:0}.wing-right{transform-origin:0;transform:rotateY(calc(-1 * var(--wing-angle,35deg)));background-position:100%;right:0}.butterfly-body{clip-path:inset(0 47%);background:url(/jewel-butterfly.webp) 50%/100% 100%;position:absolute;inset:0}.monogram-lotus{object-fit:contain;clip-path:ellipse(15% 13% at 54% 83%);pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.monogram-letters{width:160px;height:168px;font:500 italic 142px/1 var(--font-romance),Georgia,serif;text-shadow:0 1px #fff9dd,0 -1px #634921,1px 3px 3px #59452726;margin:auto;position:relative}.monogram-letters span{position:absolute;top:0;left:12px}.monogram-letters span+span{font-size:112px;top:28px;left:58px}@container (height<=720px){.couple-monogram{inset-block-start:10%}.couple-monogram>.monogram-blessing{margin-bottom:28px}.monogram-mark{width:156px;height:156px}.monogram-letters{height:145px;font-size:125px}.monogram-letters span+span{font-size:102px;top:24px}}.program-edition .wedding-program{--invite-ink:#572136;--invite-secondary:#58474c;inset-inline:12%;transform:none;opacity:var(--programme-opacity)!important}.program-edition .gate-blessing{opacity:var(--blessing-opacity)!important}.program-couple h1{font-family:var(--font-romance),Georgia,serif;padding:6px 8px;font-size:70px;font-weight:500;line-height:1.12}.program-couple h1 em{font-family:var(--font-romance),Georgia,serif;color:#856329;margin:0;font-size:24px;font-style:normal}.program-family{margin-bottom:16px;font-size:16px;line-height:1.5}.program-invitation{max-width:300px;margin-top:22px;font-size:18px;line-height:1.6}.program-couple{box-sizing:border-box;min-height:calc(100% + 40px);padding-bottom:32px}.program-schedule{padding-top:16px}.program-schedule>h2{font:500 38px/1.2 var(--font-romance),Georgia,serif;max-width:300px;margin-inline:auto;padding:8px 0}.program-venue h3{font:500 34px/1.25 var(--font-romance),Georgia,serif}.illustrated-events{gap:22px;margin-top:24px}.illustrated-event{grid-template-columns:minmax(0,1fr) 82px;align-items:center}.illustrated-event h3{font:500 26px/1.25 var(--font-romance),Georgia,serif;color:var(--invite-ink)}.illustrated-event time{font-variant-numeric:lining-nums;color:#244d45;font-size:18px}.program-location{color:#244d45;font-size:22px}.program-location span{font-size:16px}.scratch-date{height:68px;margin-block:14px 18px}.scratch-label strong{font:500 27px/1.2 var(--font-romance),Georgia,serif}.scratch-label small{color:#58474c;margin-top:0;font-size:14px}.scratch-date p{color:#572136;font-size:23px;font-weight:500}.program-quick-actions button,.program-venue a{font-family:var(--font-wedding-details),Georgia,serif;color:#244d45;font-size:16px}.program-countdown small{font-size:14px}.program-signoff span{font-size:16px}.ceremonial-shehnai{max-width:230px;margin-bottom:16px}.program-continue{background:#fff9f3;bottom:-43px;box-shadow:0 3px 15px #57213614}@container (height<=720px){.program-couple h1{font-size:59px}.program-blessing{margin-bottom:18px}.program-schedule{padding-top:12px}}@container (width<=360px){.program-couple h1{font-size:53px}.program-schedule>h2{font-size:37px}.illustrated-event h3{font-size:24px}}.gate-depth{opacity:0;pointer-events:none;position:absolute;inset:0}.gate-depth.is-ready{opacity:1}.gate-depth canvas{width:100%;height:100%;display:block}.gate-sun-glare{z-index:3;pointer-events:none;mix-blend-mode:screen;position:absolute;inset:0;overflow:hidden}.sun-ray-fan{transform-origin:50% 20%;background:conic-gradient(at 50% 20%,#0000 124deg,#fff4d200 135deg,#fff5dca6 139deg,#fff5dc00 144deg,#0000 155deg,#fff5dc00 157deg,#fff9e7cf 162deg,#fff5dc00 168deg,#0000 178deg,#fff5dc00 180deg,#fff8e5b3 183deg,#fff5dc00 189deg,#0000 198deg,#fff5dc00 200deg,#fff9e799 206deg,#fff5dc00 213deg,#0000 222deg,#fff5dc88 225deg,#0000 232deg);position:absolute;inset:-15% -40% -25%;-webkit-mask-image:radial-gradient(at 50% 20%,#000 5%,#000a 38%,#0000 76%);mask-image:radial-gradient(at 50% 20%,#000 5%,#000a 38%,#0000 76%)}@media (prefers-reduced-motion:reduce){.gate-sun-glare{display:none}}.program-edition .gate-depth,.program-edition .gate-photo,.program-edition .palace-depth,.program-edition .courtyard>img:not(.ai-background){filter:none}.gate-world:has(.gate-depth.is-ready) .gate-photo{visibility:hidden}.program-edition .gate-world:has(.gate-depth.is-ready){opacity:1}.program-edition .gate-world:has(.gate-depth.is-ready) .photo-shade{display:none}.program-edition .gate-photo{aspect-ratio:3/2;height:100%;top:0;box-shadow:0 0 0 100vmax #d1c0a9}.program-edition .gate-photo img{content:url(/jaipur-entrance-pearl.webp)}.program-edition .stone-facade{clip-path:polygon(evenodd,0 0,100% 0,100% 100%,0 100%,0 0,38.9% 23.3%,61.1% 23.3%,61.1% 85.1%,38.9% 85.1%,38.9% 23.3%)}.program-edition .hinges{width:22.2%;height:61.8%;top:23.3%;left:38.9%}.program-edition .photo-door img{width:900.901%;height:161.812%;top:-37.7023%}.program-edition .photo-door.left img{left:-350.451%}.program-edition .photo-door.right img{left:-450.451%}.program-edition .door-interaction{width:52%;height:63%;top:23%;left:24%}.program-edition .door-interaction:not([aria-valuenow="0"]){outline:none}.program-couple h1 em{text-shadow:0 -1px #fff6d9,1px 2px #c6ad84,1px 4px 6px #674a3120}.program-edition .program-blessing{filter:drop-shadow(0 -1px #fff7db)drop-shadow(0 5px 3px #57352c38)}.program-edition .courtyard-light{background:linear-gradient(#fff0,#f7f2f374 35%,#f7f2f3ce 64%,#fff0 96%)}.program-edition:has(.gate-depth.is-ready) .gate-blessing{visibility:hidden}.program-edition .gate-blessing{top:12%}.program-edition .gate-blessing img{width:64px;height:45px}.program-couple h1,.program-schedule>h2,.program-venue h3{color:#24453c;text-shadow:0 -1px .5px #12251c65,0 1px #ffffeff2,0 2px 1px #ffffef80}.program-family,.program-invitation,.program-location,.illustrated-event h3,.illustrated-event time{text-shadow:0 1px 1px #fffa}.program-location,.illustrated-event time,.scratch-date p,.scratch-label,.program-continue{color:#24453c}.program-schedule{background:0 0}.program-edition .courtyard-light:after{content:"";opacity:calc(var(--schedule-veil,0) * .91);pointer-events:none;background:linear-gradient(90deg,#f6f7f000,#f6f7f0f5 23% 77%,#f6f7f000);position:absolute;inset:0}.program-invitation{text-shadow:0 1px 2px #fffffff2}.program-couple h1{font-size:59px;line-height:1.06}.program-blessing{width:98px;height:68px;margin-bottom:14px}.program-invitation{margin-top:16px;font-size:18px;line-height:1.45}.illustrated-event h3{font-size:24px;font-weight:500}.program-schedule>h2{font-size:35px}@container (height<=720px){.program-blessing{width:82px;height:57px;margin-bottom:10px}.program-family{margin-bottom:10px;font-size:16px}.couple-monogram{inset-block-start:calc(7% + 5px)}.monogram-blessing-fixed{width:82px;height:57px;margin-bottom:28px}.program-blessing{height:45px;margin-bottom:8px}.program-family{margin-bottom:8px;font-size:15px;line-height:1.35}.program-couple h1{font-size:46px;line-height:1.02}.program-invitation{margin-top:8px;font-size:16px;line-height:1.3}}.monogram-art.monogram-gold{filter:none;background:#b58b47;-webkit-mask:url(/video-monogram-ivory.webp) 50%/contain no-repeat;mask:url(/video-monogram-ivory.webp) 50%/contain no-repeat}.program-edition .wedding-program{--invite-ink:#491c2b;--invite-secondary:#352a29}.program-couple{isolation:isolate;position:relative}.program-couple:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(at 50% 45%,#fffaf0e8 0%,#fffaf0b8 42%,#fffaf000 73%);height:280px;position:absolute;inset:54px -18px auto}.program-couple h1{font-family:var(--font-wedding-names),"Imperial Script",cursive;color:#4e2932;-webkit-text-stroke:0;text-shadow:0 1px 1px #fffaf0;padding:4px 12px 8px;font-size:78px;font-weight:400;line-height:.94;overflow:visible}.program-couple h1>span{padding-block:3px;padding-inline:8px}.program-couple h1 em{font:500 23px/1 var(--font-romance),Georgia,serif;color:#77551f;-webkit-text-stroke:0;text-shadow:0 1px #fff8e8;margin:1px 0}.program-couple h1.long-couple{font-size:48px}.program-family{color:#382b2a;text-shadow:0 1px 2px #fffdf6,0 0 6px #fffdf6;margin-bottom:10px;font-size:17px;font-weight:500}.program-invitation{color:#382b2a;text-shadow:0 1px 2px #fffdf6,0 0 6px #fffdf6;margin-top:10px;font-size:18px;font-weight:500;line-height:1.4}.program-schedule>h2,.program-venue h3{color:#591f33;text-shadow:0 1px #fffbf0}.program-location,.illustrated-event time,.scratch-date p,.scratch-label{color:#491c2b}.illustrated-event h3{color:#491c2b;text-shadow:none;font-weight:500}.illustrated-event time,.program-location,.program-timezone,.program-venue>p,.program-countdown,.program-signoff{text-shadow:0 1px 2px #fffdf6}.program-location span,.program-timezone,.venue-eyebrow,.program-countdown>p,.program-countdown small,.program-signoff span,.scratch-label small{color:#40332d}.program-edition .courtyard-light:after{opacity:var(--schedule-veil,0);background:linear-gradient(90deg,#fffaf000,#fffaf0fa 18% 82%,#fffaf000)}@container (height<=720px){.program-couple h1{padding-block:2px 4px;font-size:60px;line-height:.91}.program-couple h1>span{padding-block:1px}.program-family{margin-bottom:6px;font-size:16px}.program-invitation{margin-top:6px;font-size:16px;line-height:1.3}.program-couple:before{height:245px;inset-block-start:40px}}@container (width<=360px){.program-couple h1{font-size:57px}.program-couple h1.long-couple{font-size:38px}.program-invitation{font-size:16px}}.palace-depth:after{display:none}.program-edition .wedding-program{max-width:none;inset:0}.program-edition .invite-footer{pointer-events:none}.program-edition .invite-footer button{pointer-events:auto}.program-edition .program-scroll{scroll-snap-type:y proximity;scroll-behavior:smooth;padding:0}.program-page{scroll-snap-align:start;isolation:isolate;width:100%;min-height:100%;position:relative}.program-edition .program-couple{min-height:100%;padding:180px 11% 70px}.program-couple .program-blessing{display:none}.program-edition .program-couple:before{background:radial-gradient(#fffaf1d6,#fffaf180 45%,#0000 73%);height:310px;top:135px;left:8%;right:8%}.program-edition .program-schedule{background:linear-gradient(#fffdf5e8,#fffcf3f5 65%,#f6efe4ee);padding:65px 12% 100px}.program-edition .programme-finale{background:#fffaf2ed;padding:80px 12% 100px}.ceremony-jump{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:4px 0;display:flex}.ceremony-jump svg{opacity:.55;flex:none;transition:transform .25s,opacity .25s}:is(.ceremony-jump:hover svg,.ceremony-jump:focus-visible svg){opacity:1;transform:translate(3px)}.invite-canvas.program-edition .courtyard-light{background:0 0}.program-edition .courtyard-light:after{display:none}.program-edition .courtyard{transform:translate(calc(var(--parallax-x) * -.4),calc(var(--parallax-y) * -.4))}.invite-canvas.program-edition .courtyard>img:not(.ai-background){content:url(/jaipur-jasmine-courtyard.webp)}.program-edition .courtyard>img:not(.ai-background){filter:contrast(1.09)saturate(1.13)brightness(1.015)}.program-edition .gate-depth,.program-edition .gate-photo{filter:contrast(1.1)saturate(1.16)brightness(1.025)}.program-edition .courtyard{inset:-2%}.program-edition .courtyard>img{object-position:center}.program-edition .ceremony-photo,.program-edition .prewedding-court>.date-story-backdrop{filter:contrast(1.07)saturate(1.12)}.royal-monogram{z-index:1;width:100%;height:100%;position:relative;overflow:visible}.heritage-stroke{stroke-dasharray:1;stroke-dashoffset:1px}.heritage-finish,.heritage-lotus{opacity:0}.crest-forming .heritage-stroke-1{animation:3.2s cubic-bezier(.3,.1,.25,1) .1s both heritageWrite}.crest-forming .heritage-stroke-2{animation:3.4s cubic-bezier(.3,.1,.25,1) .85s both heritageWrite}.crest-forming .heritage-stroke-3{animation:.65s 3.5s both heritageWrite}.crest-forming .heritage-finish{animation:.65s 4.1s both heritageFill}.crest-forming .heritage-lotus{animation:1.3s 4.35s both heritageFill}@keyframes heritageWrite{to{stroke-dashoffset:0}}@keyframes heritageFill{to{opacity:1}}.monogram-mark{perspective:600px;width:152px;height:164px}.program-edition .monogram-blessing-fixed{filter:drop-shadow(0 2px 2px #694d3324);width:74px;height:74px;margin-bottom:34px}.program-edition .gate-blessing img{filter:none;width:42px;height:42px}.program-page:not(:first-child):after{content:"";z-index:2;pointer-events:none;opacity:calc(1 - var(--page-focus,1));background:linear-gradient(#f7f1e8cc,#0000 28% 72%,#f7f1e8cc);position:absolute;inset:0}.crest-initial{font-family:var(--font-wedding-names),"Imperial Script",cursive;fill-opacity:0;stroke-dasharray:700;stroke-dashoffset:700px;font-size:148px;font-weight:400}.crest-forming .initial-first{animation:3.3s cubic-bezier(.2,.5,.2,1) .2s both crestWrite}.crest-forming .initial-second{animation:3.3s cubic-bezier(.2,.5,.2,1) 1.1s both crestWrite}.crest-lotus{opacity:0;transform-origin:50% 92%;transform:scale(.72)}.crest-forming .crest-lotus{animation:1.8s cubic-bezier(.2,.7,.2,1) 3.1s both lotusBloom}@keyframes crestWrite{0%{stroke-dashoffset:700px;fill-opacity:0}62%{fill-opacity:0}85%{stroke-dashoffset:0;fill-opacity:.45}to{stroke-dashoffset:0;fill-opacity:1}}@keyframes lotusBloom{to{opacity:1;transform:scale(1)}}.ceremony-page{color:#542b37;background:#f5eee6;height:100%;min-height:610px;overflow:hidden}.ceremony-photo{z-index:-2;position:absolute;inset:0}.ceremony-photo img,.ceremony-photo canvas{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.ceremony-photo canvas{opacity:0}.ceremony-photo.is-ready canvas{opacity:1}.ceremony-copy{text-align:center;padding:65px 9% 24px;position:relative}.ceremony-copy:before{content:"";z-index:-1;background:linear-gradient(#fffdf58c,#fffdf580 78%,#0000);position:absolute;inset:0 -1px -35px}.ceremony-kicker{font:500 14px/1.4 var(--font-wedding-details),Georgia,serif;color:#5c4a35;margin:0 0 16px}.ceremony-copy h2{font:500 44px/1.03 var(--font-romance),Georgia,serif;color:#642b3b;text-wrap:balance;text-shadow:0 1px 1px #fffefa;margin:0}.ceremony-caption{font:400 18px/1.4 var(--font-wedding-details),Georgia,serif;text-wrap:balance;max-width:285px;margin:18px auto 16px}.ceremony-copy time{font:500 28px/1.1 var(--font-romance),Georgia,serif;display:block}.ceremony-venue{font:400 18px/1.3 var(--font-wedding-details),Georgia,serif;margin:10px 0 0}.ceremony-venue span{margin-top:4px;font-size:15px;display:block}.ceremony-copy>*{opacity:0;transition:opacity 1.1s,transform 1.4s cubic-bezier(.2,.6,.2,1);transform:translateY(16px)}.scene-in-view .ceremony-copy>*{opacity:1;transform:none}.ceremony-copy h2{transition-delay:80ms}.ceremony-caption{transition-delay:.18s}.ceremony-copy time{transition-delay:.28s}.ceremony-venue{transition-delay:.38s}.ceremony-dinner{color:#fff2da;background:#162a34}.ceremony-dinner .ceremony-copy:before{background:linear-gradient(#102e4159,#0000)}.ceremony-dinner .ceremony-copy h2{color:#fff0d3;text-shadow:0 2px 5px #15243080}.ceremony-dinner .ceremony-kicker{color:#e8c996}.programme-dots{z-index:3;background:#fffaf2c9;border-radius:20px;align-items:center;gap:1px;padding:0 4px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.programme-dots button{background:0 0;border:0;place-items:center;width:24px;height:28px;padding:0;display:grid}.programme-dots button:after{content:"";background:#957b69;border-radius:50%;width:5px;height:5px;transition:transform .3s,background .3s}.programme-dots button[aria-current]:after{background:#682d40;transform:scale(1.5)}.program-edition .program-continue{color:#642b3b;background:#fffaf2d9;border:0;bottom:53px}@container (height<=720px){.program-edition .program-couple{padding-top:140px}.program-edition .program-couple:before{height:220px;top:130px}.monogram-mark{width:132px;height:144px}.program-edition .monogram-blessing-fixed{width:64px;height:64px;margin-bottom:36px}.ceremony-copy{padding-top:45px}.ceremony-copy h2{font-size:38px}.ceremony-caption{margin-block:12px;font-size:16px}.ceremony-copy time{font-size:25px}}@media (prefers-reduced-motion:reduce){.crest-initial{fill-opacity:1;stroke-dashoffset:0}.crest-lotus{opacity:1;transform:none}.ceremony-copy>*{opacity:1;transition:none;transform:none}.program-edition .program-scroll{scroll-behavior:auto}.heritage-stroke{stroke-dashoffset:0}.heritage-finish,.heritage-lotus{opacity:1}}.program-edition .scene-journey{scroll-behavior:auto;scroll-snap-type:none;isolation:isolate;z-index:0;overflow:hidden}.program-edition .program-continue{z-index:4}.scene-journey>.program-page{overscroll-behavior:contain;scrollbar-width:none;visibility:hidden;opacity:0;pointer-events:none;width:100%;height:100%;min-height:0;position:absolute;inset:0;overflow:hidden auto}.scene-journey>.program-page.is-current{visibility:visible;opacity:1;pointer-events:auto;z-index:1}.scene-journey>.program-page.is-entering{animation:.82s cubic-bezier(.22,.61,.36,1) both sceneArrive}.scene-journey>.program-page.is-leaving{visibility:visible;z-index:0;opacity:1;animation:.82s linear both sceneDepart}.scene-journey>.is-entering .ceremony-photo{transform-origin:50% 62%;animation:.88s cubic-bezier(.2,.65,.3,1) both cameraArrive}.scene-journey>.is-leaving>:not(.ceremony-photo){animation:.16s ease-out both copyDepart}.scene-journey>.is-entering .ceremony-copy>*{animation:.48s ease-out .22s both copyArrive}.scene-journey>.program-page:after{display:none}.journey-frame{object-fit:cover;object-position:center;transform-origin:50% 35%;filter:contrast(1.04)saturate(1.04);z-index:2;pointer-events:none;opacity:0;width:100%;height:100%;transition:opacity .8s;position:absolute;inset:0;transform:scale(1.18)}.journey-frame.is-visible{opacity:1}.scene-journey .ceremony-copy{padding:110px 11% 24px}.scene-journey .ceremony-copy h2{color:#622e3d;max-width:230px;margin-inline:auto;font-size:38px}.scene-journey .ceremony-dinner .ceremony-copy h2{color:#fff0d3}.scene-journey .ceremony-dinner .ceremony-copy:before{background:linear-gradient(#102a3bac,#102a3b70 75%,#0000)}.scene-journey .ceremony-venue{font-size:16px}.scene-journey .ceremony-caption,.scene-journey .ceremony-venue{max-width:230px;margin-inline:auto}.scene-journey .ceremony-venue span{font-size:inherit;margin:0;display:inline}.scene-journey .ceremony-venue span:before{content:" · "}.scene-journey .ceremony-copy>*{transition:opacity .5s;transform:none}.scene-journey .ceremony-copy-rich{--scene-cover-height:max(100cqh,177.683cqw);z-index:1;top:calc(50% - var(--scene-cover-height) * .195);color:#49372f;width:100%;text-shadow:none;padding:0 20%;position:absolute;left:0;transform:translateY(-50%)}.scene-journey .ceremony-page .ceremony-copy-rich:before{display:none}.invite-canvas.program-edition .scene-journey .ceremony-copy-rich h2{font-size:calc(var(--size-headings,32px) * .8);color:#512d38;max-width:190px;text-shadow:none;-webkit-text-stroke:0;margin:0 auto 6px;font-weight:400;line-height:1.18}.scene-journey .ceremony-copy-rich time{font-family:var(--font-wedding-details),Georgia,serif;color:#49323a;font-size:19px;font-weight:500;line-height:1.25}.scene-journey .ceremony-copy-rich .ceremony-venue{color:#49372f;max-width:175px;margin:6px auto 0;font-size:15px;font-weight:500;line-height:1.25}.scene-journey .ceremony-copy-rich .ceremony-venue span{margin:3px 0 0;font-size:13px;font-weight:400;display:block}.scene-journey .ceremony-copy-rich .ceremony-venue span:before{content:none}.scene-journey .ceremony-copy-rich .ceremony-caption{color:#574238;max-width:155px;margin:8px auto 0;font-size:12px;font-weight:400;line-height:1.3}.scene-journey .ceremony-dinner .ceremony-copy-rich{top:calc(50% - var(--scene-cover-height) * .22);color:#49372f}.scene-journey .ceremony-dinner .ceremony-copy-rich h2{color:#4e2932}.scene-journey .ceremony-dinner .ceremony-copy-rich .ceremony-caption{max-width:180px;margin-top:5px}.scene-journey .ceremony-pheras .ceremony-copy{width:100%;padding:30px 14% 0;position:absolute;top:5%;left:0}.scene-journey .ceremony-pheras .ceremony-kicker{margin-bottom:5px;font-size:12px}.invite-canvas.program-edition .scene-journey .ceremony-pheras .ceremony-copy h2{max-width:280px;font-size:28px;line-height:1.1}.scene-journey .ceremony-pheras .ceremony-caption{margin:7px auto;font-size:14px;line-height:1.3}.scene-journey .ceremony-pheras .ceremony-copy time{font-size:22px}.scene-journey .ceremony-pheras .ceremony-venue{margin-top:7px;font-size:15px;line-height:1.3}.scene-journey .ceremony-pheras .ceremony-venue span{font-size:14px;display:block}.scene-journey .ceremony-pheras .ceremony-venue span:before{content:none}.scene-journey .ceremony-pheras .ceremony-copy:before{display:none}@media (max-height:680px){.scene-journey .ceremony-pheras .ceremony-copy{padding-top:16px;top:3%}.scene-journey .ceremony-pheras .ceremony-caption{margin:4px auto}}.gate-loading-cue{z-index:14;white-space:nowrap;color:#49372f;background:#fffaf2ed;border-radius:4px;align-items:center;gap:8px;padding:10px 14px;font:14px/1.4 Georgia,serif;display:flex;position:absolute;top:65%;left:50%;transform:translate(-50%)}.scene-journey>.is-current .ceremony-copy-rich,.scene-journey>.is-current .ceremony-copy-rich>*{opacity:1}.scene-journey .program-schedule{padding-top:80px;padding-inline:11%}.scene-journey .program-schedule[data-scene-only]{touch-action:pan-x pinch-zoom;overflow:hidden}.program-schedule .scratch-label strong{font-size:18px;font-weight:400}.program-schedule .scratch-date{max-width:220px}.scene-journey .programme-finale{padding-inline:11%}.programme-dots button[aria-current]:after{background:#245b58}.monogram-blessing-fixed{transition:opacity .65s}.painted-monogram{display:block}.entrance-poster{z-index:12;pointer-events:none;opacity:1;background:#e8dfd1;transition:opacity .45s;position:absolute;inset:0}.entrance-poster>img:first-child{object-fit:cover;width:100%;height:100%}.entrance-poster .poster-blessing{object-fit:contain;width:42px;height:44px;position:absolute;top:11%;left:50%;transform:translate(-50%)}.entrance-poster.is-ready{opacity:0}.wedding-families{text-align:center;padding:14px 0 24px}.wedding-families h2{font:500 22px/1.22 var(--font-romance),Georgia,serif;color:#77551f;text-wrap:balance;max-width:260px;margin:0 auto 22px}.wedding-families h3{font:500 23px/1.4 var(--font-wedding-details),Georgia,serif;color:#622e3d;margin:14px 0 4px}.wedding-families p{font:400 18px/1.5 var(--font-wedding-details),Georgia,serif;color:#40332d;text-wrap:balance;max-width:260px;margin:0 auto}.family-relation{font:400 13px/1.5 var(--font-wedding-details),Georgia,serif;color:#75604b;margin:0 0 5px;display:block}.wedding-families p span{font-size:17px;display:block}.program-downloads{flex-wrap:wrap;justify-content:center;gap:12px;margin:20px 0;display:flex}.program-downloads a{font:400 15px/1.4 var(--font-wedding-details),Georgia,serif;color:#622e3d;align-items:center;gap:7px;padding:8px 0;display:inline-flex}.scene-journey .programme-finale{padding-top:100px}.final-rsvp{text-align:left;color:#4b3430;background:#fff9efde;border-top:1px solid #c6a773;max-width:310px;margin:28px auto 0;padding:22px 18px}.final-rsvp h2{text-align:center;font:400 28px/1.2 var(--font-romance),Georgia,serif;color:#6a2f40;margin:0 0 15px}.final-rsvp label{font:400 15px/1.4 var(--font-wedding-details),Georgia,serif;margin:0 0 12px;display:block}.final-rsvp input:not([type=radio]),.final-rsvp select{background:#fffdf8;border:1px solid #cbb59a;width:100%;min-height:38px;margin-top:5px;padding:8px;display:block}.final-rsvp fieldset{border:0;margin:0 0 12px;padding:0}.final-rsvp legend{font:400 15px/1.4 var(--font-wedding-details),Georgia,serif;margin-bottom:6px}.final-rsvp fieldset div{gap:5px;display:grid}.final-rsvp fieldset label{align-items:center;gap:8px;margin:0;display:flex}.final-rsvp button{color:#fffaf1;width:100%;font:500 16px/1.2 var(--font-wedding-details),Georgia,serif;background:#6a2f40;justify-content:center;align-items:center;gap:7px;padding:10px;display:flex}.final-rsvp-success{color:#426150;justify-content:center;align-items:center;gap:7px;display:flex}.final-rsvp small{color:#76665e}.invite-audio{z-index:5;color:#694735;font:13px/1.2 var(--font-wedding-details),Georgia,serif;background:#fffaf0db;align-items:center;gap:6px;padding:6px 9px;display:flex;position:absolute;top:18px;right:18px}.invite-audio button{color:#6a2f40;background:0 0;border:0;place-items:center;width:26px;height:26px;padding:0;display:grid}@keyframes sceneArrive{0%{opacity:0}70%,to{opacity:1}}@keyframes sceneDepart{0%,70%{opacity:1}to{opacity:0}}@keyframes cameraArrive{0%{transform:scale(1.035)}to{transform:none}}@keyframes copyDepart{to{opacity:0}}@keyframes copyArrive{0%{opacity:0}to{opacity:1}}@container (height<=720px){.scene-journey .ceremony-copy{padding-top:105px}.scene-journey .ceremony-copy h2{max-width:230px;font-size:33px}.scene-journey .program-schedule{padding-top:100px}.scene-journey .ceremony-copy-rich{padding-top:0}.scene-journey .ceremony-copy-rich .ceremony-caption{margin-top:6px}}@media (prefers-reduced-motion:reduce){.scene-journey>.program-page.is-current,.scene-journey>.program-page.is-leaving,.scene-journey>.is-entering .ceremony-photo,.scene-journey>.is-entering .ceremony-copy>*,.scene-journey>.is-leaving>:not(.ceremony-photo){animation:none}.journey-frame{transition:none}}@container (height<=720px){.scene-journey .program-schedule{padding:90px 14% 65px}.program-schedule .ceremonial-shehnai{max-width:150px;margin-bottom:8px}.program-schedule .scratch-date{height:48px;margin-block:8px}.program-schedule .program-location{margin-top:12px;font-size:18px}.program-schedule .program-location span{font-size:14px}.program-schedule .illustrated-events{gap:10px;margin-top:14px}.program-schedule .illustrated-event h3{font-size:21px}.program-schedule .illustrated-event time{font-size:14px}}.gate-photo-blessing{z-index:2;background:url(/ganesh-royal-marble.webp) 50%/contain no-repeat;width:42px;height:44px;position:absolute;top:11%;left:50%;transform:translate(-50%)}.gate-depth:not(.is-ready){visibility:hidden}.ganesh-invocation{color:#64452d;text-shadow:0 1px 2px #fffdf6;margin:0 auto 18px;font:400 16px/1.6 Nirmala UI,Mangal,serif}.invite-canvas.program-edition[data-size-names] .program-couple h1 em,.invite-canvas.program-edition .program-couple h1 em{font-family:var(--font-wedding-details),Georgia,serif;margin:5px 0;font-size:24px;font-weight:500;line-height:1.3}.scene-journey .program-schedule.date-scene,.scene-journey .story-scene{touch-action:pan-x pinch-zoom;background:#eee5d8;padding:0;overflow:hidden}.date-story-backdrop{object-fit:cover;pointer-events:none;z-index:-1;width:100%;height:100%;position:absolute;inset:0}.date-scene-copy{text-align:center;transition:top .8s;position:absolute;top:21%;left:13%;right:13%}.entrance-poster>img:first-child{filter:contrast(1.1)saturate(1.16)brightness(1.025)}.date-floral{object-fit:contain;width:230px;max-width:90%;height:auto;margin:0 auto 8px}.invite-canvas .date-scene .date-reveal-heading{font-family:var(--custom-headings,var(--font-romance)),Georgia,serif;color:#542c3d;text-shadow:none;margin:0;padding:0;font-size:30px;font-weight:400;line-height:1.3}.date-scene .scratch-date{max-width:300px;height:74px;margin:12px auto 0}.date-scene[data-revealed=true] .scratch-date{height:42px;margin-top:8px}.date-scene[data-revealed=true] .date-floral{width:190px}.date-scene[data-revealed=true] .date-scene-copy{top:18%}.date-scene[data-revealed=false] .date-scene-copy{top:26%}.date-scene[data-revealed=false] .date-reveal-heading{height:0;overflow:hidden}.date-lanterns{pointer-events:none;z-index:0;position:absolute;inset:0}.date-lanterns canvas{width:100%;height:100%;display:block}.story-scene .date-lanterns{z-index:1;opacity:.93}.story-scene .story-presentation{z-index:2}.date-scene-copy{z-index:3}.date-botanical-depth{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:hidden}.date-sprig{object-fit:contain;transform-origin:15% 95%;filter:drop-shadow(2px 4px 3px #403b2520);width:24%;max-width:125px;height:auto;position:absolute}.date-sprig-left{top:34%;left:-9%;rotate:-12deg}.date-sprig-right{top:43%;right:-10%;rotate:7deg;scale:-1 1}.date-scene.is-current .date-sprig{animation:7s ease-in-out infinite alternate dateBranchBreeze}.date-scene.is-current .date-sprig-right{animation-duration:8.5s;animation-delay:-3s}@keyframes dateBranchBreeze{0%{transform:rotate(-1deg)}to{transform:rotate(1.5deg)}}@media (prefers-reduced-motion:reduce){.date-scene.is-current .date-sprig{animation:none}}.invite-canvas .date-scene .scratch-date p{font-family:var(--custom-date,var(--font-romance)),Georgia,serif;color:#4e2932;text-shadow:none;font-size:27px;font-weight:500;line-height:1.2}.date-scene .scratch-label strong{font-size:20px}.date-reveal-heading,.date-reveal-details{opacity:0;visibility:hidden;transition:opacity .8s,transform .8s,visibility .8s;transform:translateY(8px)}.date-scene[data-revealed=true] .date-reveal-heading,.date-scene[data-revealed=true] .date-reveal-details{opacity:1;visibility:visible;transform:none}.date-weekday{font:400 17px/1.4 var(--font-wedding-details),Georgia,serif;color:#36554b;margin:0}.date-scene .program-countdown{z-index:3;box-sizing:border-box;color:#582d37;width:100%;min-width:0;max-width:240px;text-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-radius:0;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:8px 4px;margin:14px auto 0;padding:0;display:grid;position:relative}.date-scene .program-countdown>p{color:#542c3d;text-wrap:balance;border-bottom:1px solid #94754770;grid-column:1/-1;width:100%;margin:0;padding-bottom:8px;font-size:17px;line-height:1.4}.date-scene .program-countdown strong{font-family:var(--custom-date,var(--font-romance)),Georgia,serif;color:#542c3d;font-variant-numeric:lining-nums tabular-nums;font-weight:400}.date-scene .program-countdown small{font-family:var(--custom-details,var(--font-wedding-details)),Georgia,serif;color:#3f302c;white-space:nowrap;font-size:14px;line-height:1.3;display:block}.date-scene .program-countdown .countdown-days{flex-direction:column;align-items:center;gap:0;min-width:0;margin:0;display:flex}.date-scene .countdown-days strong{min-height:0;font-size:30px;line-height:36px}.date-scene .countdown-days small{margin:2px 0 0}.date-scene .program-countdown .countdown-clock{display:contents}.date-scene .countdown-unit{text-align:center;min-width:0;display:block}.date-scene .countdown-clock strong{height:auto;min-height:0;padding:0;font-size:30px;line-height:36px;display:block}.date-scene .countdown-clock small{margin-top:2px}.countdown-digit{animation:.24s ease-out both countdownTick;display:block}@keyframes countdownTick{0%{opacity:.55;transform:translateY(3px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.countdown-digit{animation:none}}.story-scene .date-story-backdrop{transform:none}.story-copy{color:#4e2932;text-align:center;text-shadow:none;position:absolute;top:20%;left:16%;right:16%}.story-copy h2{font:400 32px/1.3 var(--custom-headings,var(--font-romance)),Georgia,serif;margin:0 0 20px}.story-lead{font:400 17px/1.3 var(--font-wedding-details),Georgia,serif;margin:0 0 8px}.story-copy time{font:500 26px/1.1 var(--custom-date,var(--font-romance)),Georgia,serif;flex-direction:column;align-items:center;display:flex}.story-copy time span:first-child{font-size:56px;line-height:1}.story-copy time span:last-child{color:#36554b;margin-top:5px;font-size:20px}.story-began{font:400 26px/1.3 var(--custom-headings,var(--font-romance)),Georgia,serif;margin:12px 0 18px}.story-message{font:400 17px/1.5 var(--custom-message,var(--font-wedding-details)),Georgia,serif;color:#40332d;text-wrap:balance;max-width:270px;margin:0 auto}.story-scene.is-current .story-copy>*{animation:1s both storyUnfold}.story-scene.is-current .story-copy time{animation-delay:.2s}.story-scene.is-current .story-began{animation-delay:.45s}.story-scene.is-current .story-message{animation-delay:.65s}@keyframes storyUnfold{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@container (height<=720px){.ganesh-invocation{margin-bottom:10px;font-size:14px}.date-scene-copy{top:18%}.date-floral{width:180px}.date-scene .program-countdown{margin-top:12px}.date-scene[data-revealed=true] .date-scene-copy{top:8%}.date-scene[data-revealed=true] .date-floral{width:160px}.date-scene .scratch-date{height:60px;margin-top:6px}.invite-canvas .date-scene .scratch-date p{font-size:24px}.story-copy{top:17%}.story-copy h2{margin-bottom:10px;font-size:28px}.story-copy time span:first-child{font-size:42px}.story-copy time{font-size:23px}.story-began{margin:8px 0;font-size:23px}.story-message{font-size:15px;line-height:1.4}}@media (prefers-reduced-motion:reduce){.story-scene.is-current .story-copy>*{animation:none}.date-scene-copy,.date-reveal-heading,.date-reveal-details{transition:none}}@container (width<=340px){.date-scene .program-countdown{column-gap:2px;width:calc(100% - 16px)}.date-scene .program-countdown strong{font-size:27px}.date-scene .program-countdown small{font-size:13px}}.date-scene .date-scene-copy,.date-scene[data-revealed=true] .date-scene-copy,.date-scene[data-revealed=false] .date-scene-copy{transition:none;top:18%}.date-scene .date-floral,.date-scene[data-revealed=true] .date-floral{width:190px}.invite-canvas .date-scene[data-revealed=false] .date-reveal-heading{height:auto;overflow:visible}.date-scene .scratch-date,.date-scene[data-revealed=true] .scratch-date{touch-action:none;-webkit-user-select:none;user-select:none;height:60px;margin:8px auto 0}.date-scene .scratch-label{pointer-events:none}.date-scene{overscroll-behavior:none;overflow-anchor:none}@container (height<=720px){.date-scene .date-scene-copy,.date-scene[data-revealed=true] .date-scene-copy,.date-scene[data-revealed=false] .date-scene-copy{top:15%}.date-scene .date-floral,.date-scene[data-revealed=true] .date-floral{width:150px}}.invite-canvas.program-edition .programme-finale .wedding-families h3,.invite-canvas.program-edition .programme-finale .program-signoff>span{font-family:var(--font-invite-calligraphy),cursive;font-size:34px;font-weight:700;line-height:1.4}.story-photo-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.story-photo-list img{aspect-ratio:3/4;object-fit:cover;border-radius:4px;width:100%}.story-photo-list>div>div{justify-content:center;display:flex}.story-photo-list .icon-button{width:28px;min-width:0;height:32px;padding:4px}.story-photo-editor .story-upload{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.story-upload input{width:100%}.story-photo-editor>p{color:#617266;font-size:12px;line-height:1.5}.saved-story-photos button{color:#624b35;background:#fffaf1;border:1px solid #d5c19a;border-radius:5px;align-items:center;gap:10px;margin-top:5px;padding:6px;font-size:12px;display:inline-flex}.saved-story-photos img{object-fit:cover;border-radius:3px;width:44px;height:55px}.story-presentation{position:absolute;inset:0}.story-presentation .story-copy{transition:opacity .7s}.story-presentation:not([data-phase=reading]) .story-copy{opacity:0;pointer-events:none}.story-memories{opacity:0;visibility:hidden;transform-origin:50% 42%;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:16px;transition:opacity 1.1s,transform 1.5s cubic-bezier(.2,.65,.3,1),visibility 1.1s;display:flex;position:absolute;inset:14% 8% 15%;transform:scale(.97)}.story-presentation[data-photos-visible=true] .story-memories{opacity:1;visibility:visible;pointer-events:auto;transform:scale(1)}.story-photo-frame{aspect-ratio:4/5;touch-action:pan-y pinch-zoom;outline-offset:8px;flex:none;width:min(100%,340px,48cqh);position:relative}.story-photo-mount{transition:width .75s,height .75s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.story-photo-window{transform:translateX(var(--photo-drag,0px));transition:transform .45s cubic-bezier(.2,.65,.3,1);position:absolute;inset:0}.story-photo-frame[data-dragging=true] .story-photo-window{transition:none}.story-memory-photo{object-fit:contain;opacity:0;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;transition:opacity .75s;position:absolute;inset:0}.story-memory-photo[data-visible=true]{opacity:1;z-index:1}.story-gallery-controls{justify-content:center;align-items:center;gap:4px;min-height:44px;display:flex}.story-gallery-controls button{color:#542c3d;cursor:pointer;background:#fffaf0e8;border:0;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;padding:0;display:grid}.story-gallery-controls button:hover{color:#872f44}.story-gallery-controls button:focus-visible{outline-offset:2px;outline:2px solid #75384a}.story-photo-frame:focus-visible{outline-offset:2px;outline:2px solid #75384a}.story-photo-dots{background:#fffaf0e8;border-radius:20px;align-items:center;padding:0 3px;display:flex}.story-photo-dots button{background:0 0;width:22px}.story-photo-dots button span{background:#76534a66;border-radius:50%;width:5px;height:5px;transition:background .2s,transform .2s}.story-photo-dots button[aria-pressed=true] span{background:#75384a;transform:scale(1.35)}@media (prefers-reduced-motion:reduce){.story-presentation .story-copy,.story-memories,.story-memory-photo,.story-photo-window{transition:none;transform:none}.story-photo-mount{transition:none}}.story-page-title{text-align:center;color:#334d62;font:400 30px/1.3 var(--font-romance),Georgia,serif;letter-spacing:.13em;text-transform:uppercase;margin:0;position:absolute;top:7%;left:8%;right:8%}.story-memories{justify-content:center;gap:12px;inset:17% 9% 12%;transform:none}.story-photo-frame{aspect-ratio:4/5.2;touch-action:pan-y pinch-zoom;background:#fff;width:min(100%,340px,48cqh);padding:12px 12px 58px;transform:rotate(-2deg);box-shadow:0 10px 24px #38576c28,0 1px 4px #38576c15}.story-photo-mount{width:auto;height:auto;transition:none;inset:12px 12px 58px;transform:none}.story-photo-window{overflow:hidden}.story-memory-photo{object-fit:contain;background:#fff}.story-frame-caption{text-align:center;color:#4d5960;height:38px;font:400 clamp(17px,4.8cqw,22px)/1.25 var(--font-invite-calligraphy),cursive;justify-content:center;align-items:center;margin:0;display:flex;position:absolute;bottom:9px;left:12px;right:12px}.story-gallery-controls button,.story-photo-dots{color:#395366;background:#ffffffe0}.story-photo-dots button[aria-pressed=true] span{background:#456783}@container (height<=620px){.story-page-title{font-size:25px;top:6%}.story-memories{gap:7px;inset:14% 10% 11%}.story-photo-frame{width:min(100%,42cqh);padding-bottom:48px}.story-photo-mount{bottom:48px}.story-frame-caption{height:34px;font-size:17px;bottom:6px}}.story-photo-frame{width:min(100%,340px,calc((60cqh - 70px)*var(--photo-ratio,.8)));aspect-ratio:auto}.story-photo-mount{width:100%;height:auto;aspect-ratio:var(--photo-ratio,.8);position:relative;inset:auto}@container (height<=620px){.story-photo-frame{width:min(100%,300px,calc((58cqh - 60px)*var(--photo-ratio,.8)))}.story-photo-mount{bottom:auto}}.story-beginning{text-align:center;color:#304c5c;font:400 17px/1.35 var(--font-romance),Georgia,serif;text-shadow:0 1px 2px #fff8;position:absolute;top:13%;left:7%;right:7%}.story-beginning p{margin:0 0 8px}.story-beginning time{font-weight:600}.story-beginning p:last-child{font-size:16px}.story-memories{inset:28% 9% 11%}.story-photo-frame{width:min(100%,340px,calc((48cqh - 70px)*var(--photo-ratio,.8)))}@container (height<=680px){.story-page-title{font-size:25px;top:5%}.story-beginning{font-size:15px;top:12%}.story-beginning p:last-child{font-size:14px}.story-memories{inset:28% 9% 12%}.story-photo-frame{width:min(100%,300px,calc((47cqh - 60px)*var(--photo-ratio,.8)))}}.invite-canvas.program-edition .wedding-program{--font-wedding-details:var(--font-romance)}.invite-canvas.program-edition .date-scene .date-reveal-heading,.invite-canvas.program-edition .story-copy h2,.invite-canvas.program-edition .story-began,.invite-canvas.program-edition .prewedding-copy h2,.invite-canvas.program-edition .ceremony-copy h2,.invite-canvas.program-edition .wedding-families h2{font-family:var(--font-invite-calligraphy),cursive;letter-spacing:0;font-style:normal;font-weight:400}.invite-canvas.program-edition .date-scene .date-reveal-heading{font-size:34px;line-height:1.3}.invite-canvas.program-edition .story-copy h2{font-size:36px}.invite-canvas.program-edition .prewedding-copy h2{font-size:27px}.invite-canvas.program-edition .ceremony-copy h2{line-height:1.22}.gold-petal-drift{z-index:12;pointer-events:none;contain:layout paint;position:absolute;inset:0;overflow:hidden}.gold-petal-drift>span{top:-24px;left:var(--petal-x);width:var(--petal-size);height:calc(var(--petal-size)*1.45);opacity:0;animation:goldPetalFall var(--petal-duration) var(--petal-delay) linear infinite;position:absolute}.gold-petal-drift i{background:linear-gradient(135deg,#f0dba1 4%,#cba65c 45%,#94713b 78%,#e3c581);border-radius:80% 15% 75% 25%;width:100%;height:100%;animation:5.5s ease-in-out infinite alternate goldPetalTurn;display:block}@keyframes goldPetalFall{0%{opacity:0;transform:translate(-8px)}12%{opacity:.42}48%{opacity:.32;transform:translate(13px,50cqh)}85%{opacity:.38}to{opacity:0;transform:translate(-12px,calc(100cqh + 40px))}}@keyframes goldPetalTurn{0%{transform:rotate(-25deg)rotateY(15deg)}to{transform:rotate(110deg)rotateY(65deg)}}@media (prefers-reduced-motion:reduce){.gold-petal-drift{display:none}}.prewedding-scene{isolation:isolate;background:#fff8eb}.prewedding-court{isolation:isolate;--court-height:max(100cqh,780px,150cqw);width:100%;height:max(100cqh,780px);position:relative}.prewedding-copy{z-index:1;top:calc(50% - var(--court-height)*.244);width:calc(var(--court-height)*.237);height:calc(var(--court-height)*.395);text-align:center;color:#563647;font-family:var(--font-wedding-details),Georgia,serif;flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.prewedding-copy>p{white-space:nowrap;margin:0;font-size:16px;line-height:1.4}.prewedding-copy h2{font-family:var(--custom-headings,var(--font-wedding-names)),cursive;white-space:nowrap;margin:3px 0 7px;font-size:28px;font-weight:400;line-height:1.2}.prewedding-copy>div{margin:4px 0}.prewedding-copy h3{font-size:22px;font-family:var(--font-wedding-details),Georgia,serif;white-space:nowrap;margin:0 0 2px;font-weight:400;line-height:1.25}.prewedding-copy time{font-size:19px;line-height:1.3}.prewedding-copy h4{margin:5px 0 0;font-size:22px;font-weight:400;line-height:1.25}.prewedding-copy a{background:#fffaf0df;border-radius:4px;align-items:center;gap:7px;margin-top:3px;padding:8px 12px;font-size:16px;line-height:1.3;display:inline-flex}.celebration-bursts{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;inset:0}.prewedding-scene[data-active=true] .prewedding-haldi{animation:.8s .3s both celebrationReveal}.prewedding-scene[data-active=true] .prewedding-sangeet{animation:1s 1.8s both celebrationReveal}@keyframes celebrationReveal{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.prewedding-scene[data-active=true] .prewedding-haldi,.prewedding-scene[data-active=true] .prewedding-sangeet{animation:none}}.scene-journey .prewedding-scene{padding:0;overflow:hidden}.prewedding-court{--court-height:max(100cqh,150cqw);height:100%}.prewedding-scene .date-story-backdrop{opacity:1}.prewedding-copy{top:calc(50% - var(--court-height)*.14);gap:7px;width:62%;height:auto}.invite-canvas.program-edition .prewedding-copy h2{white-space:normal;text-wrap:balance;margin:7px 0;font-size:36px}.prewedding-copy h4{margin-top:10px}.prewedding-copy a{background:0 0;border-bottom:1px solid #98744680;border-radius:0;padding:6px 2px}.celebration-sangeet{background:#06172c}.celebration-sangeet .prewedding-copy{color:#f3e1bb;text-shadow:0 1px 2px #061023;top:14%}.celebration-sangeet .prewedding-copy a{border-color:#e1c38180}.sangeet-dancers{z-index:1;transform-origin:50% 95%;filter:drop-shadow(0 8px 9px #02081280);width:min(48%,32cqh);height:auto;position:absolute;bottom:10%;left:26%}.celebration-sangeet[data-active=true] .sangeet-dancers{animation:3.8s ease-in-out infinite alternate sangeetDance}.sangeet-lights{z-index:1;pointer-events:none;position:absolute;inset:0}.sangeet-lights i{opacity:.2;background:#fff1cb;border-radius:50%;width:3px;height:3px;position:absolute;box-shadow:0 0 9px 3px #efcb7870}.celebration-sangeet[data-active=true] .sangeet-lights i{animation:3.6s ease-in-out infinite alternate sangeetTwinkle}@keyframes sangeetDance{0%{transform:translate(-5px)rotate(-3deg)}to{transform:translate(5px)rotate(3deg)}}@keyframes sangeetTwinkle{0%{opacity:.15}to{opacity:.85}}@container (height<=650px){.prewedding-copy{gap:3px}.prewedding-copy>p{font-size:14px}.invite-canvas.program-edition .prewedding-copy h2{margin:3px 0;font-size:30px}.prewedding-copy h4{margin-top:4px;font-size:20px}.prewedding-copy a{font-size:14px}.celebration-sangeet .prewedding-copy{top:12%}}@media (prefers-reduced-motion:reduce){.celebration-sangeet[data-active=true] .sangeet-dancers,.celebration-sangeet[data-active=true] .sangeet-lights i{animation:none}}@container (height<=650px){.celebration-haldi .prewedding-copy{top:calc(50% - var(--court-height)*.18)}}.invite-canvas[data-font-names] :is(.program-couple h1,.program-couple h1>span,.program-couple h1 em,.letter h1,.letter h1 em,.cover-type h2){font-family:var(--custom-names);overflow-wrap:anywhere;font-style:normal;font-weight:400}.invite-canvas[data-font-headings] :is(.program-schedule h2,.program-venue h3,.ceremony-copy h2){font-family:var(--custom-headings);overflow-wrap:anywhere;font-style:normal;font-weight:400}.invite-canvas[data-font-family] :is(.program-family,.letter-family,.cover-type>p){font-family:var(--custom-family);font-style:normal}.invite-canvas[data-font-message] :is(.program-invitation,.letter-message,.ceremony-caption){font-family:var(--custom-message);font-style:normal}.invite-canvas[data-font-events] .illustrated-event h3{font-family:var(--custom-events);overflow-wrap:anywhere;font-style:normal;font-weight:400}.invite-canvas[data-font-details] :is(.program-location,.program-location span,.illustrated-event time,.program-timezone,.program-venue>p,.venue-eyebrow,.program-countdown,.letter-time,.letter-venue,.letter-city,.ceremony-copy time,.ceremony-venue,.ceremony-venue span,.ceremony-kicker){font-family:var(--custom-details);font-style:normal}.invite-canvas[data-font-date] :is(.scratch-date>p,.letter-date,.letter-date>*,.cover-date){font-family:var(--custom-date);font-style:normal;font-weight:400}.invite-canvas[data-font-scratch] .scratch-label>strong{font-family:var(--custom-scratch);font-style:normal;font-weight:400}.invite-canvas[data-font-footer] :is(.program-signoff,.program-signoff>*,.program-quick-actions button,.program-venue>a,.invite-footer,.letter-actions button){font-family:var(--custom-footer);font-style:normal}.invite-canvas[data-size-names] :is(.program-couple h1,.program-couple h1>span,.program-couple h1 em,.letter h1,.letter h1 em,.cover-type h2){font-size:var(--size-names)}.invite-canvas[data-size-headings] :is(.program-schedule h2,.program-venue h3,.ceremony-copy h2){font-size:var(--size-headings)}.invite-canvas[data-size-family] :is(.program-family,.letter-family,.cover-type>p){font-size:var(--size-family)}.invite-canvas[data-size-message] :is(.program-invitation,.letter-message,.ceremony-caption){font-size:var(--size-message)}.invite-canvas[data-size-events] .illustrated-event h3{font-size:var(--size-events)}.invite-canvas[data-size-details] :is(.program-location,.program-location span,.illustrated-event time,.program-timezone,.program-venue>p,.venue-eyebrow,.program-countdown,.letter-time,.letter-venue,.letter-city,.ceremony-copy time,.ceremony-venue,.ceremony-venue span,.ceremony-kicker){font-size:var(--size-details)}.invite-canvas[data-size-date] :is(.scratch-date>p,.letter-date,.letter-date>*,.cover-date){font-size:var(--size-date)}.invite-canvas[data-size-scratch] .scratch-label>strong{font-size:var(--size-scratch)}.invite-canvas[data-size-footer] :is(.program-signoff,.program-signoff>*,.program-quick-actions button,.program-venue>a,.invite-footer,.letter-actions button){font-size:var(--size-footer)}.font-license{align-items:flex-start;gap:9px;line-height:1.5;font-size:12px!important;display:flex!important}.font-license input{flex:none;height:16px;margin-top:2px;width:16px!important}.font-formats{color:#666;margin:8px 0 20px;font-size:11px}.font-category{border-top:1px solid #ddd;min-width:0;padding:16px 0}.font-category>label{margin-bottom:8px}.font-controls{align-items:center;gap:6px;display:flex}.font-controls select{border:1px solid #ccc;border-radius:4px;flex:1;width:0;min-width:0;padding:9px 6px;font:13px Arial,sans-serif}.font-upload{cursor:pointer;flex:none;position:relative;overflow:hidden;margin:0!important}.font-upload input{opacity:0;cursor:pointer;position:absolute;inset:0;width:100%!important}.font-upload.is-disabled{opacity:.4;cursor:not-allowed}.font-upload:focus-within{outline-offset:2px;outline:2px solid #326e60}.font-sample{overflow-wrap:anywhere;min-height:40px;margin:10px 0 0;font-size:23px;line-height:1.5}.font-size-control{color:#606b64;align-items:center;gap:12px;margin-top:12px;font:12px Arial,sans-serif;display:flex}.font-size-control output{color:#254f42;font-variant-numeric:tabular-nums}.font-size-control input{accent-color:#2a6b55;flex:1;min-width:80px}.font-error{color:#8e253b;padding:12px 0;font-size:13px}.font-error button{margin-top:8px;text-decoration:underline;display:block}.invite-canvas[data-size-names] :is(.program-couple h1 em,.letter h1 em){font-size:calc(var(--size-names) * .3)}
