:root{--sky-top: #7eb6d9;--sky-mid: #c5dff0;--sky-warm: #f3e9c9;--ink: #1c2428;--ink-soft: #5a6670;--gold: #b8894a;--serif: "Cormorant Garamond", Georgia, serif;--script: "Great Vibes", cursive;--sans: "Instrument Sans", system-ui, sans-serif;--ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;height:100%;overflow:hidden}body.invite-demo{margin:0;height:100%;max-height:100%;background:var(--sky-top);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased;overflow:hidden!important;overscroll-behavior:none;position:relative;touch-action:none}.phone-scroll{position:relative;min-height:100svh;height:100svh;max-height:100svh;overflow:hidden!important;overscroll-behavior:none;touch-action:none;background:linear-gradient(180deg,var(--sky-top) 0%,var(--sky-mid) 55%,var(--sky-warm) 100%)}body.has-phone-shell .phone-scroll{overflow:hidden!important}.invite{position:relative;width:100%;height:100%;min-height:100svh;overflow:hidden}@media(min-width:900px){body.has-phone-shell .phone-scroll{min-height:100%;height:100%;max-height:100%}body.has-phone-shell .invite,body.has-phone-shell .temple-scene,body.has-phone-shell .card-scene,body.has-phone-shell .couple-scene,body.has-phone-shell .closing-scene{min-height:0;height:100%}}img{display:block;max-width:100%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.skip-link{position:absolute;left:-999px;top:0;z-index:100;padding:.6rem .9rem;background:#fff;color:#111}.skip-link:focus{left:.75rem;top:.75rem}.temple-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden;opacity:1;visibility:visible}.temple-scene[aria-hidden=true]{opacity:0;visibility:hidden;pointer-events:none}.temple-scene__stack{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:linear-gradient(180deg,var(--sky-top) 0%,var(--sky-mid) 52%,var(--sky-warm) 100%)}.temple-scene__sky{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center top;z-index:1}.temple-scene__clouds{position:absolute;inset:0 0 auto;height:52%;z-index:2;overflow:hidden;pointer-events:none;mix-blend-mode:screen;opacity:.85}.temple-scene__clouds-strip{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center top;will-change:transform}.temple-scene__clouds-strip--a{animation:cloud-drift-a 32s linear infinite}.temple-scene__clouds-strip--b{animation:cloud-drift-b 32s linear infinite;opacity:.8}.temple-scene__world{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;will-change:transform;overflow:hidden}body.is-revealed .temple-scene__world{transform:none!important}.temple-scene__landscape{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center bottom;z-index:1}body.is-revealed .temple-scene__landscape{animation:temple-breathe 8s ease-in-out infinite;transform-origin:50% 100%}body.is-zooming .temple-scene__landscape{animation:none!important}@keyframes temple-breathe{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-.2%,0)}}@keyframes cloud-drift-a{0%{transform:translateZ(0)}to{transform:translate3d(-100%,0,0)}}@keyframes cloud-drift-b{0%{transform:translate3d(100%,0,0)}to{transform:translateZ(0)}}.card-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none}.card-scene[aria-hidden=false]{opacity:1;visibility:visible;pointer-events:auto}.card-scene__stack{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#1a120c}.card-scene__hall,.card-scene__frame,.card-scene__bells,.card-scene__foreground{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center center;pointer-events:none}.card-scene__hall{z-index:1;transform-origin:50% 45%;animation:hall-breathe 14s ease-in-out infinite}.card-scene__glow{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;z-index:2;pointer-events:none;background:radial-gradient(ellipse 55% 40% at 50% 42%,rgba(255,196,110,.22),transparent 70%),radial-gradient(ellipse 80% 50% at 50% 100%,rgba(255,140,60,.12),transparent 55%);animation:glow-pulse 5.5s ease-in-out infinite}.card-scene__frame{z-index:4;animation:frame-float 7s ease-in-out infinite}.card-scene__bells{z-index:5;transform-origin:50% 0%;animation:bells-sway 5.5s ease-in-out infinite}.card-scene__foreground{z-index:7}.card-scene__diyas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;pointer-events:none}.card-scene__diya{position:absolute;bottom:7.5%;width:2.4rem;height:2.4rem;border-radius:50%;background:radial-gradient(circle,rgba(255,210,120,.85) 0%,rgba(255,140,40,.35) 35%,transparent 70%);filter:blur(1px);animation:diya-flicker 1.8s ease-in-out infinite}.card-scene__diya--left{left:11%}.card-scene__diya--right{right:11%;animation-delay:-.7s}.card-scene__petals{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.card-scene__petals--back{z-index:3}.card-scene__petals--front{z-index:9}.card-scene__petal{position:absolute;top:-10%;width:10px;height:13px;border-radius:60% 40%/55% 45%;background:linear-gradient(145deg,#f2c4c8,#c45c6a 55%,#8f3040);opacity:.9;will-change:transform;animation-name:petal-fall;animation-timing-function:linear;animation-iteration-count:infinite;box-shadow:0 0 4px #b43c5040}.card-scene__petal:nth-child(3n){width:8px;height:11px;background:linear-gradient(145deg,#f7e2a8,#d4a24a 60%,#b07a28);box-shadow:0 0 4px #b4822840}.card-scene__petal:nth-child(4n){width:12px;height:9px;background:linear-gradient(145deg,#f8eef0,#e8b4bc 70%,#c97888)}.card-scene__petal:nth-child(5n){width:7px;height:10px;background:linear-gradient(145deg,#dff0e4,#7fbf8e 55%,#3f8a52);box-shadow:none}.card-scene__petals--back .card-scene__petal{opacity:.55;filter:blur(.4px)}@keyframes petal-fall{0%{transform:translateZ(0) rotate(0) scale(.85);opacity:0}6%{opacity:.92}50%{transform:translate3d(calc(var(--drift) * .55),58vh,0) rotate(calc(var(--spin) * .5)) scale(1)}to{transform:translate3d(var(--drift),118vh,0) rotate(var(--spin)) scale(.9);opacity:.12}}@keyframes bells-sway{0%,to{transform:rotate(-1.15deg)}50%{transform:rotate(1.25deg)}}@keyframes hall-breathe{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.035);filter:brightness(1.07)}}@keyframes glow-pulse{0%,to{opacity:.7}50%{opacity:1}}@keyframes frame-float{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-.45%,0)}}@keyframes diya-flicker{0%,to{opacity:.55;transform:scale(.92)}40%{opacity:.95;transform:scale(1.08)}70%{opacity:.7;transform:scale(.98)}}.card-scene__copy{position:absolute;left:0;right:0;top:31%;z-index:6;width:min(68%,14.5rem);margin-inline:auto;text-align:center;color:#1f2a1c;pointer-events:none}.card-scene__eyebrow{margin:0;font-family:var(--sans);font-size:clamp(.62rem,2.6vw,.72rem);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#7a2e36}.card-scene__names{margin:.55rem 0 0;font-family:var(--script);font-weight:400;font-size:clamp(2.35rem,10.5vw,2.95rem);line-height:1.05;color:#14301c}.card-scene__names>span{display:block}.card-scene__cap{display:inline-block;font-family:var(--script);font-size:1.22em;font-weight:400;line-height:1;text-transform:uppercase;letter-spacing:.01em;vertical-align:baseline}.card-scene__amp{margin:.08rem 0;font-size:.55em;color:#9a6b2f;line-height:1}.card-scene__request{margin:.7rem 0 0;font-family:var(--serif);font-size:clamp(.82rem,3.4vw,.95rem);line-height:1.4;font-weight:500;color:#6b3036}.card-scene__date-label{margin:.85rem 0 0;font-family:var(--script);font-size:clamp(1.2rem,5vw,1.45rem);color:#9a6b2f}.card-scene__date{margin:.15rem 0 0;font-family:var(--serif);font-size:clamp(.88rem,3.6vw,1.02rem);font-weight:600;color:#7a2e36}.card-scene__venue{margin:.7rem 0 0;font-family:var(--serif);font-size:clamp(.82rem,3.4vw,.95rem);line-height:1.35;font-weight:600;color:#7a2e36}.couple-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;background:#0b1020}.couple-scene[aria-hidden=false]{opacity:1;visibility:visible;pointer-events:auto}.couple-scene__stack{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.couple-scene__bg,.couple-scene__fireworks,.couple-scene__pair{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center center;pointer-events:none}.couple-scene__bg{z-index:1;animation:couple-bg-breathe 16s ease-in-out infinite;transform-origin:50% 40%}.couple-scene__fireworks{z-index:2;mix-blend-mode:screen;opacity:.85;animation:fireworks-pulse 4.8s ease-in-out infinite}.couple-scene__fireworks-b{z-index:2;mix-blend-mode:screen;opacity:0;transform:scale(1.08) translate3d(0,-2%,0);animation:fireworks-pulse-b 5.6s ease-in-out infinite;animation-delay:-2.4s}.couple-scene__lights{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;background:radial-gradient(ellipse 70% 35% at 50% 28%,rgba(255,210,120,.22),transparent 70%),radial-gradient(circle at 22% 36%,rgba(255,200,110,.18),transparent 12%),radial-gradient(circle at 78% 36%,rgba(255,200,110,.18),transparent 12%),radial-gradient(circle at 50% 22%,rgba(255,220,150,.14),transparent 18%);animation:lights-shimmer 3.2s ease-in-out infinite}.couple-scene__pair{z-index:4;object-position:center 62%;transform-origin:50% 100%;animation:couple-sway 6.5s ease-in-out infinite}.couple-scene__sparks{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;overflow:hidden;pointer-events:none}.couple-scene__spark{position:absolute;top:8%;width:3px;height:3px;border-radius:50%;background:#ffe6a8;box-shadow:0 0 6px 2px #ffc878a6;opacity:0;animation-name:spark-twinkle;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.couple-scene__petals{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;overflow:hidden;pointer-events:none}.couple-scene__petal{position:absolute;top:-8%;width:9px;height:12px;border-radius:60% 40%;background:linear-gradient(145deg,#f7d0d8,#e8a0b0 60%,#c86a80);opacity:.85;will-change:transform;animation-name:couple-petal-fall;animation-timing-function:linear;animation-iteration-count:infinite}.couple-scene__petal:nth-child(3n){width:7px;height:10px;background:linear-gradient(145deg,#f8e8c8,#e0c078 70%,#c9a050)}.couple-scene__petal:nth-child(4n){width:11px;height:8px;background:linear-gradient(145deg,#fff0f3,#f0c0cc 70%,#d88898)}.couple-scene__caption{position:absolute;left:0;right:0;bottom:5.5%;z-index:7;margin:0;text-align:center;font-family:var(--script);font-size:clamp(1.35rem,5.5vw,1.7rem);color:#f7e8c8;text-shadow:0 2px 12px rgba(20,10,30,.55);pointer-events:none;opacity:.92}@keyframes couple-bg-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes fireworks-pulse{0%,to{opacity:.35;transform:scale(1)}40%{opacity:.95;transform:scale(1.02)}70%{opacity:.55;transform:scale(1.01)}}@keyframes fireworks-pulse-b{0%,to{opacity:0;transform:scale(1.06) translate3d(2%,-1%,0)}35%{opacity:.75;transform:scale(1.1) translate3d(-1%,-3%,0)}65%{opacity:.2;transform:scale(1.12) translate3d(1%,-2%,0)}}@keyframes lights-shimmer{0%,to{opacity:.75}50%{opacity:1}}@keyframes couple-sway{0%,to{transform:translateZ(0) rotate(0)}50%{transform:translate3d(0,-.6%,0) rotate(.2deg)}}@keyframes spark-twinkle{0%,to{opacity:0;transform:scale(.6)}40%{opacity:1;transform:scale(1.2)}70%{opacity:.35;transform:scale(.9)}}@keyframes couple-petal-fall{0%{transform:translateZ(0) rotate(0);opacity:0}8%{opacity:.85}to{transform:translate3d(var(--drift),110vh,0) rotate(var(--spin));opacity:.1}}.closing-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;display:grid;place-items:center;padding:2rem 1.4rem;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .55s var(--ease),visibility .55s}.closing-scene[aria-hidden=false]{opacity:1;visibility:visible;pointer-events:auto}.closing-scene__wash{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#f4f0ea,#e8e2d8)}.closing-scene__inner{position:relative;text-align:center;max-width:20rem;max-height:min(92dvh,40rem);overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.5rem .25rem 1rem;touch-action:pan-y}.closing-scene__eyebrow{margin:0;font-family:var(--sans);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft)}.closing-scene__title{margin:.85rem 0 0;font-size:clamp(1.85rem,7vw,2.35rem);font-weight:500;line-height:1.1;letter-spacing:-.02em}.closing-scene__lede{margin:.9rem 0 0;font-size:.98rem;line-height:1.45;color:var(--ink-soft)}.closing-scene__rsvp{display:inline-block;margin-top:1.5rem;padding:.72rem 1.6rem;border-radius:999px;background:var(--ink);color:#f7f4ef;font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}.closing-scene__studio{margin-top:2rem}.closing-scene__studio-label{margin:0;font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.closing-scene__studio-note{margin:.35rem 0 0;font-family:var(--sans);font-size:.7rem;color:var(--ink-soft)}.closing-scene__links{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem .9rem;margin-top:1.35rem}.closing-scene__links a{font-family:var(--sans);font-size:.68rem;color:var(--ink-soft);text-decoration:underline;text-underline-offset:.15em}.closing-faq{margin:1.25rem 0 .25rem;max-width:22rem;text-align:left}.closing-faq h3{font-family:var(--sans);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 .85rem;text-align:center}.closing-faq dl{display:grid;gap:.85rem;margin:0}.closing-faq dt{font-family:var(--sans);font-size:.78rem;font-weight:600;color:var(--ink);margin:0 0 .3rem}.closing-faq dd{margin:0;font-family:var(--serif);font-size:.95rem;line-height:1.45;color:var(--ink-soft)}.closing-faq a{color:inherit;text-underline-offset:.15em}@media(prefers-reduced-motion:reduce){.temple-scene__clouds-strip,.temple-scene__landscape,.card-scene__hall,.card-scene__glow,.card-scene__frame,.card-scene__bells,.card-scene__diya,.card-scene__petal,.couple-scene__bg,.couple-scene__fireworks,.couple-scene__fireworks-b,.couple-scene__lights,.couple-scene__pair,.couple-scene__spark,.couple-scene__petal{animation:none!important}}
