.invitation-opening{--motion-duration: 2.2s;--door-perspective: 1400px;--door-open-angle: 100deg;--gold-opacity: .92;--parallax-strength: .12;--opening-ink: #fff9f0;--opening-gold: #d4af37;--opening-gold-soft: #f3d98a;--opening-bg: #140808;--opening-bg-mid: #2a1410;--opening-bg-end: #120808;--opening-font: "Cormorant Garamond", Georgia, serif;--door-face: var(--opening-bg-mid);--door-face-deep: var(--opening-bg-end);position:fixed;inset:0;top:var(--preview-banner-h, 0px);width:100vw;height:calc(100vh - var(--preview-banner-h, 0px));height:calc(100dvh - var(--preview-banner-h, 0px));z-index:9000;overflow:hidden;isolation:isolate;color:var(--opening-ink);background:var(--opening-bg);cursor:pointer;-webkit-tap-highlight-color:transparent}.invitation-opening__background{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse 70% 55% at 50% 38%,var(--opening-bg-mid) 0%,transparent 62%),radial-gradient(ellipse 90% 80% at 50% 100%,rgba(0,0,0,.55) 0%,transparent 55%),var(--opening-bg);pointer-events:none}.invitation-opening__background:after{content:"";position:absolute;inset:0;opacity:.18;background-image:linear-gradient(color-mix(in srgb,var(--opening-gold) 12%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--opening-gold) 10%,transparent) 1px,transparent 1px);background-size:48px 48px;pointer-events:none}.invitation-opening__light{position:absolute;inset:18% 22% 28%;z-index:1;opacity:.18;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,color-mix(in srgb,var(--opening-gold-soft) 55%,transparent) 0%,color-mix(in srgb,var(--opening-gold) 12%,transparent) 42%,transparent 72%);filter:blur(8px)}.invitation-opening__dust{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.7;background-image:radial-gradient(1.5px 1.5px at 18% 22%,color-mix(in srgb,var(--opening-gold-soft) 55%,transparent),transparent),radial-gradient(1px 1px at 72% 28%,color-mix(in srgb,var(--opening-gold) 40%,transparent),transparent),radial-gradient(1.5px 1.5px at 42% 68%,color-mix(in srgb,var(--opening-gold-soft) 35%,transparent),transparent),radial-gradient(1px 1px at 86% 62%,color-mix(in srgb,var(--opening-gold) 45%,transparent),transparent),radial-gradient(1px 1px at 12% 78%,color-mix(in srgb,var(--opening-gold-soft) 30%,transparent),transparent)}.invitation-opening__stage{position:absolute;inset:0;z-index:3;display:flex;perspective:var(--door-perspective);perspective-origin:50% 48%;transform-style:preserve-3d}.invitation-opening__copy{position:absolute;left:50%;top:22%;transform:translate(-50%);z-index:6;text-align:center;pointer-events:none;max-width:min(22rem,calc(100% - 3rem))}.invitation-opening__monogram{position:absolute;left:50%;top:9%;transform:translate(-50%);z-index:6;pointer-events:none;width:clamp(4.5rem,16vw,6.25rem)}.invitation-opening__monogram text{font-family:var(--opening-font)}.invitation-opening__intro{margin:0;font-family:var(--opening-font);font-style:italic;font-weight:400;letter-spacing:.18em;text-transform:uppercase;font-size:clamp(.72rem,2.4vw,.88rem);color:color-mix(in srgb,var(--opening-gold-soft) 80%,var(--opening-ink))}.invitation-opening__trigger{position:absolute;left:50%;bottom:max(7vh,1.75rem);transform:translate(-50%);z-index:8;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:0;width:3.5rem;height:3.5rem;border:0;background:transparent;color:var(--opening-gold);display:flex;align-items:center;justify-content:center;cursor:pointer;touch-action:manipulation}.invitation-opening__trigger:focus-visible{outline:none;border-radius:50%;box-shadow:0 0 0 2px var(--opening-bg),0 0 0 4px var(--opening-gold-soft)}.invitation-opening__pointer{width:2rem;height:2rem;color:var(--opening-gold);filter:drop-shadow(0 2px 8px color-mix(in srgb,var(--opening-gold) 40%,transparent));transform-origin:30% 15%;animation:invitationOpeningPointerTap 1.8s ease-in-out infinite}.invitation-opening__tap-ring{position:absolute;inset:0;border-radius:50%;border:1.5px solid color-mix(in srgb,var(--opening-gold) 55%,transparent);animation:invitationOpeningTapRing 1.8s ease-out infinite;pointer-events:none}.invitation-opening__tap-ring--delay{animation-delay:.9s}@keyframes invitationOpeningPointerTap{0%,to{transform:translateY(0) scale(1);opacity:.85}35%{transform:translateY(3px) scale(.92);opacity:1}55%{transform:translateY(0) scale(1);opacity:.9}}@keyframes invitationOpeningTapRing{0%{transform:scale(.55);opacity:.75}to{transform:scale(1.45);opacity:0}}.invitation-opening--light .invitation-opening__background{background:radial-gradient(ellipse 70% 55% at 50% 38%,var(--opening-bg-mid) 0%,transparent 62%),radial-gradient(ellipse 90% 80% at 50% 100%,color-mix(in srgb,var(--opening-gold) 14%,transparent) 0%,transparent 55%),var(--opening-bg)}.invitation-opening--light .invitation-opening__background:after{opacity:.12}.invitation-opening--light .invitation-opening__intro{color:var(--opening-ink)}.invitation-opening__loader{position:absolute;left:50%;top:50%;z-index:9;width:72px;height:1px;transform:translate(-50%,-50%);background:linear-gradient(90deg,transparent,var(--opening-gold),transparent);pointer-events:none;opacity:.85}.invitation-opening .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.invitation-opening__skip{position:absolute;left:50%;bottom:max(1.25rem,env(safe-area-inset-bottom,0px) + .75rem);z-index:12;transform:translate(-50%);margin:0;padding:.55rem .9rem;border:1px solid color-mix(in srgb,var(--opening-gold) 45%,transparent);border-radius:999px;background:color-mix(in srgb,var(--opening-bg) 72%,transparent);color:var(--opening-ink);font-family:var(--opening-font);font-size:.78rem;letter-spacing:.04em;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.invitation-opening__skip:focus-visible{outline:2px solid var(--opening-gold);outline-offset:3px}.invitation-opening.is-ready .invitation-opening__loader{opacity:0}.invitation-opening.is-complete{pointer-events:none}html.inv-motion-locked,html.inv-motion-locked body{overflow:hidden!important}html.inv-motion-underlay.inv-cover-pending .pages-wrapper,html.inv-motion-underlay.inv-cover-pending .inviti-rsvp,html.inv-motion-underlay.inv-cover-pending .inviti-extras,html.inv-motion-underlay.inv-cover-pending #invitation-experience-content,html.inv-motion-underlay .invitation-experience__content{visibility:visible!important;opacity:1!important}html.inv-motion-locked .invitation-experience__content,html.inv-motion-underlay .invitation-experience__content{pointer-events:none!important}html.inv-motion-locked .sparkle,html.inv-motion-locked .inviti-ambient{visibility:hidden}@media(prefers-reduced-motion:reduce){.invitation-opening{display:none!important}}@media(max-width:640px){.invitation-opening__monogram{top:8%;width:clamp(4rem,22vw,5.5rem)}.invitation-opening__copy{top:20%}}@media(orientation:landscape)and (max-height:500px){.invitation-opening__monogram{top:6%;width:3.6rem}.invitation-opening__copy{top:18%}.invitation-opening__trigger{bottom:.85rem;width:3rem;height:3rem}}.inv-doors{position:absolute;inset:0;display:flex;transform-style:preserve-3d;z-index:4}.inv-door{position:relative;flex:0 0 50%;width:50%;height:100%;transform-style:preserve-3d;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:linear-gradient(90deg,color-mix(in srgb,var(--opening-gold-soft) 12%,transparent),transparent 12%,transparent 88%,color-mix(in srgb,var(--opening-gold-soft) 12%,transparent)),linear-gradient(180deg,var(--door-face) 0%,var(--opening-bg) 42%,var(--door-face-deep) 100%)}.inv-door--left{transform-origin:0% 50%;border-right:1px solid color-mix(in srgb,var(--opening-gold) 35%,transparent);box-shadow:inset -18px 0 28px color-mix(in srgb,#000 38%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--opening-gold) 18%,transparent)}.inv-door--right{transform-origin:100% 50%;border-left:1px solid color-mix(in srgb,var(--opening-gold) 35%,transparent);box-shadow:inset 18px 0 28px color-mix(in srgb,#000 38%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--opening-gold) 18%,transparent)}.invitation-opening--light .inv-door--left,.invitation-opening--light .inv-door--right{box-shadow:inset -10px 0 22px color-mix(in srgb,#000 8%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--opening-gold) 22%,transparent)}.invitation-opening--light .inv-door--right{box-shadow:inset 10px 0 22px color-mix(in srgb,#000 8%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--opening-gold) 22%,transparent)}.inv-door__panel{position:absolute;inset:clamp(.7rem,2.2vw,1.4rem);border:1px solid color-mix(in srgb,var(--opening-gold) 42%,transparent);box-shadow:inset 0 0 0 6px color-mix(in srgb,var(--opening-bg) 35%,transparent),inset 0 0 40px color-mix(in srgb,var(--opening-gold) 8%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--opening-gold) 8%,transparent),transparent 22%,transparent 78%,color-mix(in srgb,#000 18%,transparent)),repeating-linear-gradient(90deg,color-mix(in srgb,var(--opening-gold) 8%,transparent) 0 1px,transparent 1px 18px)}.inv-door__panel:before{content:"";position:absolute;inset:10% 14%;border:1px solid color-mix(in srgb,var(--opening-gold-soft) 22%,transparent);opacity:.9;background:radial-gradient(ellipse at 50% 20%,color-mix(in srgb,var(--opening-gold-soft) 8%,transparent),transparent 46%)}.inv-door__ornament{position:absolute;left:50%;top:50%;width:min(42%,9.5rem);transform:translate(-50%,-50%);color:color-mix(in srgb,var(--opening-gold) 72%,transparent);filter:drop-shadow(0 8px 18px color-mix(in srgb,#000 35%,transparent))}.inv-door__edge{position:absolute;top:0;bottom:0;width:14px;pointer-events:none}.inv-door--left .inv-door__edge{right:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,#000 45%,transparent) 70%,color-mix(in srgb,var(--opening-gold-soft) 28%,transparent))}.inv-door--right .inv-door__edge{left:0;background:linear-gradient(90deg,color-mix(in srgb,var(--opening-gold-soft) 28%,transparent),color-mix(in srgb,#000 45%,transparent) 30%,transparent)}.invitation-opening--light .inv-door--left .inv-door__edge{background:linear-gradient(90deg,transparent,color-mix(in srgb,#000 12%,transparent) 70%,color-mix(in srgb,var(--opening-gold) 28%,transparent))}.invitation-opening--light .inv-door--right .inv-door__edge{background:linear-gradient(90deg,color-mix(in srgb,var(--opening-gold) 28%,transparent),color-mix(in srgb,#000 12%,transparent) 30%,transparent)}.inv-door__handle{position:absolute;top:50%;width:9px;height:42px;border-radius:99px;background:linear-gradient(180deg,var(--opening-gold-soft),var(--opening-gold) 55%,color-mix(in srgb,var(--opening-gold) 70%,#4a3008));box-shadow:0 4px 12px color-mix(in srgb,#000 40%,transparent),inset 0 1px color-mix(in srgb,#fff 35%,transparent)}.inv-door--left .inv-door__handle{right:clamp(1.1rem,3vw,1.8rem);transform:translateY(-50%)}.inv-door--right .inv-door__handle{left:clamp(1.1rem,3vw,1.8rem);transform:translateY(-50%)}.inv-door__shine{position:absolute;inset:0;pointer-events:none;background:linear-gradient(118deg,color-mix(in srgb,var(--opening-gold-soft) 16%,transparent) 0%,transparent 28%,transparent 62%,color-mix(in srgb,var(--opening-gold-soft) 5%,transparent) 100%);mix-blend-mode:screen;opacity:.55}.invitation-opening--light .inv-door__shine{mix-blend-mode:overlay;opacity:.4}html.inv-motion-ready:not(.inv-motion-open) [data-motion-hero-item]{opacity:0;transform:translateY(18px) scale(.97)}html.inv-motion-ready [data-motion].inv-motion-pending,html.inv-motion-ready [data-motion-group].inv-motion-pending [data-motion-item]{opacity:0;transform:translateY(24px)}html.inv-motion-ready [data-motion].inv-motion-in,html.inv-motion-ready [data-motion-item].inv-motion-in,html.inv-motion-ready [data-motion-hero-item].inv-motion-in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html.inv-motion-ready [data-motion-hero-item],html.inv-motion-ready [data-motion],html.inv-motion-ready [data-motion-item]{opacity:1!important;transform:none!important}}
