.pearl-demo{--pearl-paper:oklch(99.5% .003 95);--pearl-ivory:oklch(97.8% .008 92);--pearl-champagne:oklch(94.5% .021 85);--pearl-silver:oklch(94.5% .006 245);--pearl-blush:oklch(96% .014 22);--pearl-gold:oklch(73.5% .052 80);--pearl-antique:oklch(60% .046 76);--pearl-ink:oklch(28.5% .025 58);--pearl-muted:oklch(48% .025 62);--pearl-nacre:radial-gradient(ellipse at 22% 8%, color-mix(in oklab, var(--pearl-silver) 70%, transparent), transparent 58%), radial-gradient(ellipse at 84% 24%, color-mix(in oklab, var(--pearl-champagne) 62%, transparent), transparent 56%), radial-gradient(ellipse at 50% 96%, color-mix(in oklab, var(--pearl-blush) 52%, transparent), transparent 62%), linear-gradient(168deg, var(--pearl-paper), color-mix(in oklab, var(--pearl-ivory) 70%, var(--pearl-paper)));min-height:100svh;color:var(--pearl-ink);background:var(--pearl-paper);isolation:isolate;position:relative;overflow-x:clip}.pearl-demo:before{z-index:-2;content:"";filter:blur(3px)saturate(.92)brightness(1.06);opacity:1;background-image:url(/assets/pearl-elena-marcus-portrait-B6gGY_rx.jpg);background-position:50% 26%;background-size:cover;transition:opacity 1.65s cubic-bezier(.32,0,.2,1) .14s;position:fixed;inset:-2rem;transform:scale(1.04)}.pearl-opening-locked:before{opacity:0}.pearl-opening-locked:after{background:var(--pearl-nacre)}.pearl-demo:after{z-index:-1;pointer-events:none;content:"";background:linear-gradient(90deg, color-mix(in oklab, var(--pearl-paper) 62%, transparent), transparent 42%, color-mix(in oklab, var(--pearl-paper) 62%, transparent)), color-mix(in oklab, var(--pearl-paper) 26%, transparent);position:fixed;inset:0}@media (width>=900px){.pearl-demo:before{background-position:50% 22%}}.pearl-opening-locked{height:100svh;overflow-y:hidden}.pearl-shell{isolation:isolate;width:min(91%,54rem);margin-inline:auto;padding-block:clamp(.75rem,3vw,2rem);position:relative}.pearl-suite{border:1px solid color-mix(in oklab, var(--pearl-gold) 52%, transparent);background:radial-gradient(circle at 18% 7%, color-mix(in oklab, var(--pearl-gold) 4%, transparent) 0 1px, transparent 1.5px), transparent;box-shadow:0 30px 100px -40px color-mix(in oklab, var(--pearl-ink) 45%, transparent), inset 0 0 0 1px color-mix(in oklab, var(--pearl-paper) 60%, transparent);background-size:17px 17px,auto;position:relative;overflow:hidden}.pearl-foil-sweep{position:relative}.pearl-foil-sweep:after{z-index:4;content:"";pointer-events:none;background:linear-gradient(104deg, transparent 38%, color-mix(in oklab, var(--pearl-silver) 42%, transparent) 46%, color-mix(in oklab, var(--pearl-paper) 60%, transparent) 50%, color-mix(in oklab, var(--pearl-champagne) 46%, transparent) 54%, transparent 62%);mix-blend-mode:screen;opacity:.85;background-size:260% 100%;animation:13s ease-in-out infinite pearl-nacre-sweep;position:absolute;inset:0}@keyframes pearl-nacre-sweep{0%,12%{background-position:130% 0}55%,to{background-position:-40% 0}}.pearl-opening-stage{--pearl-stage-glow:radial-gradient(circle at 50% 28%, var(--pearl-paper), color-mix(in oklab, var(--pearl-champagne) 72%, var(--pearl-paper)) 54%, color-mix(in oklab, var(--pearl-gold) 22%, var(--pearl-ivory)));z-index:30;perspective:1500px;pointer-events:auto;height:calc(100svh - 1.5rem);position:absolute;inset:.75rem 0 auto;overflow:hidden}.pearl-opening-stage:after{z-index:20;pointer-events:none;content:"";background:var(--pearl-stage-glow);clip-path:inset(calc(100% - clamp(2rem,7svh,5.5rem)) 0 0);position:absolute;inset:0}.pearl-opening-stage[data-state=opening]{pointer-events:none}.pearl-opening-glow{background:var(--pearl-stage-glow);position:absolute;inset:0}.pearl-opening-copy{z-index:8;text-align:center;top:clamp(2rem,8svh,5rem);transition:opacity .45s,transform .45s;position:absolute;inset-inline:1.5rem}.pearl-opening-stage[data-state=opening] .pearl-opening-copy{opacity:0;transform:translateY(-10px)}.pearl-opening-copy h1{font-family:var(--font-display);margin-top:.35rem;font-size:clamp(2.65rem,11vw,5.6rem);font-weight:300;line-height:.9}.pearl-opening-copy p{letter-spacing:.22em;text-transform:uppercase;color:var(--pearl-antique);margin-top:.6rem;font-size:.7rem}.pearl-envelope-scene{width:min(92%,41rem);height:min(53svh,28rem);transform-style:preserve-3d;isolation:isolate;position:absolute;bottom:clamp(2rem,7svh,5.5rem);left:50%;transform:translate(-50%)}.pearl-envelope-shadow{background:color-mix(in oklab, var(--pearl-ink) 18%, transparent);filter:blur(15px);border-radius:50%;height:3rem;position:absolute;inset:auto 6% -1rem}.pearl-envelope-card-mask{z-index:3;pointer-events:none;transform-style:preserve-3d;position:absolute;inset:0;overflow:visible}.pearl-trifold-motion{width:42%;height:84%;transform-style:preserve-3d;position:absolute;bottom:9%;left:50%;transform:translate(-50%,43%)}.pearl-trifold{transform-style:preserve-3d;position:absolute;inset:0}.pearl-trifold-center,.pearl-trifold-wing{border:1px solid color-mix(in oklab, var(--pearl-gold) 62%, transparent);backface-visibility:hidden;box-shadow:0 18px 40px -28px color-mix(in oklab, var(--pearl-ink) 62%, transparent);position:absolute;inset-block:0}.pearl-trifold-center{z-index:3;text-align:center;background:linear-gradient(90deg, var(--pearl-gold), transparent 10%, transparent 90%, var(--pearl-gold)) .55rem .55rem / calc(100% - 1.1rem) 1px no-repeat, linear-gradient(90deg, var(--pearl-gold), transparent 10%, transparent 90%, var(--pearl-gold)) .55rem calc(100% - .55rem) / calc(100% - 1.1rem) 1px no-repeat, radial-gradient(circle at 30% 20%, color-mix(in oklab, var(--pearl-gold) 7%, transparent) 0 1px, transparent 1.4px), var(--pearl-paper);background-size:calc(100% - 1.1rem) 1px,calc(100% - 1.1rem) 1px,14px 14px,auto;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1rem .55rem;display:flex;inset-inline:0}.pearl-trifold-center:before,.pearl-trifold-center:after{content:"";border-color:var(--pearl-gold);opacity:.7;width:1.15rem;height:1.15rem;position:absolute}.pearl-trifold-center:before{border-top:1px solid;border-left:1px solid;top:.7rem;left:.7rem}.pearl-trifold-center:after{border-bottom:1px solid;border-right:1px solid;bottom:.7rem;right:.7rem}.pearl-trifold-monogram{border:1px solid color-mix(in oklab, var(--pearl-gold) 64%, transparent);width:3.35rem;height:3.35rem;font-family:var(--font-display);box-shadow:inset 0 0 0 3px color-mix(in oklab, var(--pearl-champagne) 38%, transparent);border-radius:50%;place-content:center;font-size:1.15rem;display:grid}.pearl-trifold-monogram span,.pearl-hero-monogram span{color:var(--pearl-antique);margin-inline:.08em;font-style:italic}.pearl-trifold-center p,.pearl-trifold-center small,.pearl-trifold-wing span,.pearl-trifold-wing small{letter-spacing:.12em;text-transform:uppercase;font-size:clamp(.38rem,1.8vw,.62rem)}.pearl-trifold-center strong{font-family:var(--font-display);font-size:clamp(1.15rem,5.5vw,2.2rem);font-weight:400;line-height:.9}.pearl-trifold-center em{color:var(--pearl-antique);font-weight:400}.pearl-trifold-wing{z-index:2;background:color-mix(in oklab, var(--pearl-paper) 78%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);width:76%;overflow:hidden}.pearl-trifold-left{transform-origin:100%;right:100%;transform:rotateY(178deg)}.pearl-trifold-right{text-align:center;transform-origin:0;flex-direction:column;justify-content:center;align-items:center;gap:.55rem;padding:.7rem;display:flex;left:100%;transform:rotateY(-178deg)}.pearl-trifold-left img{object-fit:cover;object-position:center 38%;opacity:.58;width:100%;height:100%}.pearl-trifold-wing-copy{text-align:center;background:linear-gradient(transparent, color-mix(in oklab, var(--pearl-paper) 94%, transparent) 30%);padding:.85rem .65rem;position:absolute;inset:48% 0 0}.pearl-trifold-wing-copy span{font-family:var(--font-display);letter-spacing:0;text-transform:none;font-size:clamp(.85rem,3.5vw,1.35rem);font-style:italic}.pearl-trifold-wing p{margin-top:.4rem;font-size:clamp(.46rem,2vw,.68rem);line-height:1.45}.pearl-trifold-right strong{font-family:var(--font-display);font-size:clamp(.9rem,3.8vw,1.45rem);font-weight:400}.pearl-trifold-botanical{border-left:1px solid var(--pearl-gold);border-radius:50%;width:2.8rem;height:3.8rem;transform:rotate(28deg)}.pearl-trifold-botanical:before,.pearl-trifold-botanical:after{content:"";border-top:1px solid var(--pearl-gold);border-radius:50%;width:1.2rem;height:.65rem;display:block;transform:translate(-.25rem,.7rem)rotate(-24deg)}.pearl-trifold-botanical:after{transform:translate(-.1rem,1.25rem)rotate(22deg)}.pearl-envelope-back{z-index:1;border:1px solid color-mix(in oklab, var(--pearl-gold) 45%, transparent);background:var(--pearl-champagne);box-shadow:0 18px 38px -24px color-mix(in oklab, var(--pearl-ink) 48%, transparent);position:absolute;inset:22% 0 0}.pearl-envelope-flap{z-index:5;transform-origin:50% 0;width:100%;height:49%;transform-style:preserve-3d;clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(155deg, var(--pearl-paper), var(--pearl-champagne));border-top:1px solid color-mix(in oklab, var(--pearl-gold) 42%, transparent);filter:drop-shadow(0 8px 7px color-mix(in oklab, var(--pearl-ink) 16%, transparent));backface-visibility:hidden;position:absolute;top:22%;left:0}.pearl-envelope-pocket{z-index:4;border:1px solid color-mix(in oklab, var(--pearl-gold) 45%, transparent);background:linear-gradient(32deg, transparent 49.7%, color-mix(in oklab, var(--pearl-gold) 22%, transparent) 50%, transparent 50.3%), linear-gradient(-32deg, transparent 49.7%, color-mix(in oklab, var(--pearl-gold) 22%, transparent) 50%, transparent 50.3%), var(--pearl-ivory);position:absolute;inset:37% 0 0;overflow:hidden}.pearl-seal{z-index:9;width:8rem;min-height:8rem;box-shadow:0 10px 24px -13px color-mix(in oklab, var(--pearl-ink) 60%, transparent), inset 0 0 0 5px color-mix(in oklab, var(--pearl-paper) 48%, transparent);border-radius:50%;line-height:1.08;position:absolute;top:51%;left:50%;translate:-50% -50%;border-color:color-mix(in oklab, var(--pearl-antique) 62%, transparent)!important;background:radial-gradient(circle at 35% 26%, var(--pearl-paper), var(--pearl-champagne) 54%, var(--pearl-gold))!important;color:var(--pearl-ink)!important}.pearl-seal:focus-visible{outline:3px solid var(--pearl-antique);outline-offset:5px}.pearl-sound-toggle{z-index:10;position:absolute;bottom:.75rem;right:.75rem;color:var(--pearl-ink)!important}.pearl-opening-stage[data-state=opening] .pearl-seal{animation:.55s cubic-bezier(.4,0,.3,1) both pearl-seal-release}.pearl-opening-stage[data-state=opening] .pearl-envelope-flap{animation:1.5s cubic-bezier(.36,.01,.16,1) .65s both pearl-flap-lift}.pearl-opening-stage[data-state=opening] .pearl-trifold-motion{animation:1.65s cubic-bezier(.34,.02,.16,1) 1.95s both pearl-trifold-rise}.pearl-opening-stage[data-state=opening] .pearl-trifold-left{animation:1.5s cubic-bezier(.26,.04,.16,1) 3.92s both pearl-wing-left}.pearl-opening-stage[data-state=opening] .pearl-trifold-right{animation:1.5s cubic-bezier(.26,.04,.16,1) 4.25s both pearl-wing-right}.pearl-opening-stage[data-state=opening] .pearl-trifold{animation:.9s cubic-bezier(.4,0,.25,1) 5.85s both pearl-trifold-settle}.pearl-opening-stage[data-state=opening] .pearl-envelope-pocket,.pearl-opening-stage[data-state=opening] .pearl-envelope-back,.pearl-opening-stage[data-state=opening] .pearl-envelope-shadow{animation:.7s 5.4s both pearl-envelope-clear}.pearl-opening-stage[data-state=opening]:after{animation:.7s 5.4s both pearl-stage-reveal}.pearl-opening-stage[data-state=opening] .pearl-opening-glow{animation:.7s 6.05s both pearl-stage-reveal}.pearl-hero{background:var(--pearl-paper);align-items:end;min-height:calc(100svh - 1.5rem);display:grid;position:relative;overflow:hidden}.pearl-hero img{object-fit:cover;object-position:center 22%;width:100%;height:100%;position:absolute;inset:0}.pearl-hero:after{content:"";background:linear-gradient(180deg, color-mix(in oklab, var(--pearl-paper) 4%, transparent), color-mix(in oklab, var(--pearl-paper) 12%, transparent) 46%, color-mix(in oklab, var(--pearl-paper) 86%, transparent) 92%);position:absolute;inset:0}.pearl-hero-frame{z-index:2;border:1px solid color-mix(in oklab, var(--pearl-gold) 65%, transparent);box-shadow:inset 0 0 0 5px color-mix(in oklab, var(--pearl-paper) 16%, transparent);pointer-events:none;position:absolute;inset:clamp(1rem,4vw,2rem)}.pearl-hero-frame:before,.pearl-hero-frame:after{content:"";border-color:color-mix(in oklab, var(--pearl-gold) 82%, transparent);width:2.5rem;height:2.5rem;position:absolute}.pearl-hero-frame:before{border-top:1px solid;border-left:1px solid;top:.6rem;left:.6rem}.pearl-hero-frame:after{border-bottom:1px solid;border-right:1px solid;bottom:.6rem;right:.6rem}.pearl-hero-monogram{border:1px solid color-mix(in oklab, var(--pearl-gold) 66%, transparent);width:4rem;height:4rem;font-family:var(--font-display);background:color-mix(in oklab, var(--pearl-paper) 72%, transparent);box-shadow:inset 0 0 0 4px color-mix(in oklab, var(--pearl-champagne) 28%, transparent);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:50%;place-content:center;display:grid;position:absolute;top:1.25rem;left:50%;translate:-50%}.pearl-hero-copy{z-index:2;text-align:center;padding:4rem 1.4rem 2.8rem;position:relative}.pearl-kicker{letter-spacing:.2em;text-transform:uppercase;color:var(--pearl-antique);font-size:.65rem}.pearl-hero-copy h1{font-family:var(--font-display);margin-top:.4rem;font-size:clamp(4rem,16vw,7.5rem);font-style:italic;font-weight:300;line-height:.78}.pearl-hero-copy .pearl-date{border-block:1px solid color-mix(in oklab, var(--pearl-gold) 54%, transparent);letter-spacing:.13em;text-transform:uppercase;width:min(100%,33rem);margin:1.5rem auto 0;padding-block:.75rem;font-size:.72rem}.pearl-sheet{background:var(--pearl-nacre), color-mix(in oklab, var(--pearl-paper) 92%, transparent);padding:clamp(4rem,10vw,7rem) clamp(1.35rem,8vw,5.5rem);position:relative}.pearl-sheet-warm{background:radial-gradient(ellipse at 50% 0%, color-mix(in oklab, var(--pearl-champagne) 70%, transparent), transparent 64%), var(--pearl-nacre), color-mix(in oklab, var(--pearl-paper) 88%, transparent)}.pearl-sheet-glass{background:linear-gradient(146deg, color-mix(in oklab, var(--pearl-paper) 72%, transparent), color-mix(in oklab, var(--pearl-champagne) 58%, transparent) 46%, color-mix(in oklab, var(--pearl-silver) 50%, transparent)), transparent;border-block:1px solid color-mix(in oklab, var(--pearl-gold) 52%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 26px 60px -40px color-mix(in oklab, var(--pearl-ink) 45%, transparent)}.pearl-vellum{z-index:3;border-block:1px solid color-mix(in oklab, var(--pearl-gold) 46%, transparent);background:color-mix(in oklab, var(--pearl-paper) 58%, transparent);-webkit-backdrop-filter:blur(5px)saturate(1.05);backdrop-filter:blur(5px)saturate(1.05);box-shadow:0 20px 44px -32px color-mix(in oklab, var(--pearl-ink) 38%, transparent);margin-block:-1rem;padding:clamp(4rem,10vw,7rem) clamp(1.35rem,8vw,5.5rem);position:relative}.pearl-vellum-sheer{background:color-mix(in oklab, var(--pearl-paper) 44%, transparent);-webkit-backdrop-filter:blur(3px)saturate(1.08);backdrop-filter:blur(3px)saturate(1.08)}.pearl-vellum-sheerest{background:color-mix(in oklab, var(--pearl-paper) 32%, transparent);-webkit-backdrop-filter:blur(2px)saturate(1.1);backdrop-filter:blur(2px)saturate(1.1)}.pearl-vellum-sheer .pearl-body,.pearl-vellum-sheerest .pearl-body,.pearl-vellum-sheer .pearl-section-heading,.pearl-vellum-sheerest .pearl-section-heading{text-shadow:0 1px 10px color-mix(in oklab, var(--pearl-paper) 88%, transparent)}.pearl-hairline{background:linear-gradient(90deg, transparent, var(--pearl-gold), transparent);width:min(11rem,45%);height:1px;margin:1.6rem auto}.pearl-ornament-divider:before{content:"";background:radial-gradient(circle, var(--pearl-gold) 0 2px, transparent 2.5px) center / 1rem 1rem no-repeat, linear-gradient(90deg, transparent, var(--pearl-gold) 42%, transparent 42% 58%, var(--pearl-gold) 58%, transparent) center / 100% 1px no-repeat;opacity:.64;width:min(12rem,52%);height:1.1rem;position:absolute;top:1.4rem;left:50%;translate:-50%}.pearl-ornament-rings:after{content:"";background:radial-gradient(circle at 34% 50%, transparent 0 .52rem, var(--pearl-gold) .52rem .56rem, transparent .57rem), radial-gradient(circle at 66% 50%, transparent 0 .52rem, var(--pearl-gold) .52rem .56rem, transparent .57rem);opacity:.6;width:3.1rem;height:1.5rem;position:absolute;top:2.6rem;left:50%;translate:-50%}.pearl-section-heading{text-align:center;max-width:42rem;margin-inline:auto}.pearl-section-heading h2{margin-top:.4rem;font-size:clamp(2.7rem,8vw,5rem);line-height:.92}.pearl-script{font-family:var(--font-display);color:var(--pearl-antique);font-size:clamp(1.65rem,5vw,2.6rem);font-style:italic}.pearl-body{text-align:center;max-width:38rem;color:var(--pearl-muted);margin:1.5rem auto 0;font-size:1rem;line-height:1.9}.pearl-photo-frame{z-index:2;border:1px solid color-mix(in oklab, var(--pearl-gold) 46%, transparent);background:var(--pearl-paper);width:min(100%,41rem);box-shadow:0 24px 55px -34px color-mix(in oklab, var(--pearl-ink) 52%, transparent);margin-inline:auto;padding:.55rem;position:relative}.pearl-photo-frame:before{z-index:2;content:"";border:1px solid color-mix(in oklab, var(--pearl-gold) 48%, transparent);pointer-events:none;position:absolute;inset:.85rem}.pearl-photo-frame img{aspect-ratio:4/5;object-fit:cover;width:100%;display:block}.pearl-photo-frame figcaption{font-family:var(--font-display);text-align:center;color:var(--pearl-antique);padding:.8rem .25rem .2rem;font-size:1.1rem;font-style:italic}.pearl-photo-raised{transform:rotate(.35deg)}.pearl-photo-tucked{transform:rotate(-.3deg)}.pearl-music-sheet{z-index:7;border-block:1px solid color-mix(in oklab, var(--pearl-gold) 48%, transparent);background:linear-gradient(146deg, color-mix(in oklab, var(--pearl-paper) 78%, transparent), color-mix(in oklab, var(--pearl-champagne) 62%, transparent) 48%, color-mix(in oklab, var(--pearl-silver) 54%, transparent)), transparent;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);box-shadow:0 22px 48px -34px color-mix(in oklab, var(--pearl-ink) 48%, transparent);margin-block:-.45rem;padding:clamp(2.4rem,7vw,4rem) clamp(1rem,7vw,4.5rem);position:relative}.pearl-music-inner{align-items:center;gap:1rem;max-width:39rem;margin-inline:auto;display:flex}.pearl-music-title{font-family:var(--font-display);font-size:clamp(2rem,6vw,3rem);line-height:1}.pearl-small-copy{color:var(--pearl-muted);margin-top:.25rem;font-size:.78rem}.pearl-round-control{border-color:color-mix(in oklab, var(--pearl-gold) 60%, transparent)!important;background:color-mix(in oklab, var(--pearl-paper) 80%, transparent)!important;color:var(--pearl-antique)!important}.pearl-music-progress{max-width:39rem;margin:1.4rem auto 0}.pearl-music-progress input{width:100%;accent-color:var(--pearl-gold)}.pearl-time-row{color:var(--pearl-antique);justify-content:space-between;align-items:center;font-size:.68rem;display:flex}.pearl-audio-message{color:var(--pearl-antique);margin-top:.5rem;font-size:.8rem}.pearl-music-dock{z-index:45;right:max(.75rem, env(safe-area-inset-right));bottom:var(--invitation-dock-safe-bottom,max(.75rem, env(safe-area-inset-bottom)));border:1px solid color-mix(in oklab, var(--pearl-gold) 58%, transparent);background:color-mix(in oklab, var(--pearl-paper) 94%, transparent);width:min(22rem,100vw - 1.5rem);min-height:3.5rem;box-shadow:0 20px 54px -27px color-mix(in oklab, var(--pearl-ink) 55%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-items:center;gap:.25rem;padding:.3rem;display:flex;position:fixed}@media (width>=640px){.pearl-music-dock{bottom:var(--invitation-dock-safe-bottom,max(1rem, env(safe-area-inset-bottom)))}}.pearl-dock-track{background:color-mix(in oklab, var(--pearl-gold) 25%, transparent);height:2px;margin-top:.25rem;display:block}.pearl-dock-track span{background:var(--pearl-gold);height:100%;display:block}.pearl-story-insert{z-index:6;background:var(--pearl-nacre), color-mix(in oklab, var(--pearl-paper) 84%, transparent);padding:clamp(4rem,10vw,7rem) clamp(1.1rem,8vw,5rem);position:relative}.pearl-story-ticket{border:1px solid color-mix(in oklab, var(--pearl-gold) 48%, transparent);text-align:center;background:color-mix(in oklab, var(--pearl-paper) 74%, transparent);max-width:42rem;box-shadow:0 28px 64px -38px color-mix(in oklab, var(--pearl-ink) 54%, transparent), inset 0 0 0 5px color-mix(in oklab, var(--pearl-champagne) 35%, transparent);margin-inline:auto;padding:clamp(1.2rem,5vw,3rem)}.pearl-story-ticket:before{content:"";border-top:1px solid var(--pearl-gold);border-bottom:1px solid var(--pearl-gold);opacity:.7;border-radius:50%;width:3.5rem;height:1.5rem;margin:0 auto 1rem;display:block}.pearl-story-ticket h2{margin-top:.5rem;font-size:clamp(2.5rem,8vw,4.6rem);line-height:.92}.pearl-story-preview{aspect-ratio:4/5;border:1px solid color-mix(in oklab, var(--pearl-gold) 45%, transparent);margin:1.8rem auto;position:relative;overflow:hidden}.pearl-story-preview img{object-fit:cover;width:100%;height:100%}.pearl-story-preview:after{content:"";background:linear-gradient(transparent, color-mix(in oklab, var(--pearl-ink) 62%, transparent));position:absolute;inset:55% 0 0}.pearl-story-preview span{z-index:2;color:var(--pearl-paper);font-family:var(--font-display);inset-inline:1rem;font-size:1.45rem;font-style:italic;position:absolute;bottom:1.1rem}.pearl-story-dialog{border-color:color-mix(in oklab, var(--pearl-gold) 55%, transparent)!important;background:var(--pearl-paper)!important;color:var(--pearl-ink)!important}.pearl-dialog-title{font-family:var(--font-display);margin-top:.3rem;font-size:clamp(2.2rem,6vw,3.5rem)!important;font-weight:400!important}.pearl-slideshow-stage{aspect-ratio:16/10;border:1px solid color-mix(in oklab, var(--pearl-gold) 50%, transparent);background:var(--pearl-champagne);width:100%;position:relative;overflow:hidden}.pearl-slideshow-stage figure{opacity:0;margin:0;transition:opacity 1.1s;position:absolute;inset:0}.pearl-slideshow-stage figure[data-active=true]{opacity:1}.pearl-slideshow-stage img{object-fit:cover;width:100%;height:100%}.pearl-slideshow-stage figcaption{color:var(--pearl-paper);font-family:var(--font-display);text-align:center;text-shadow:0 2px 12px var(--pearl-ink);inset-inline:1rem;font-size:clamp(1rem,3vw,1.6rem);font-style:italic;position:absolute;bottom:1rem}.pearl-story-controls{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.pearl-video-stage{background:var(--pearl-ink);width:100%;max-height:65svh}.pearl-reduced-note{text-align:center;color:var(--pearl-muted);font-size:.75rem}.pearl-countdown-grid{border:1px solid color-mix(in oklab, var(--pearl-gold) 48%, transparent);background:color-mix(in oklab, var(--pearl-gold) 42%, transparent);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;max-width:40rem;margin:2rem auto 0;display:grid}.pearl-countdown-grid div{text-align:center;background:radial-gradient(ellipse at 50% 12%, color-mix(in oklab, var(--pearl-silver) 46%, transparent), transparent 70%), color-mix(in oklab, var(--pearl-paper) 72%, transparent);min-width:0;padding:1.25rem .4rem}.pearl-countdown-grid strong{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:clamp(2.4rem,8vw,4rem);font-weight:400;display:block}.pearl-countdown-grid span{letter-spacing:.13em;text-transform:uppercase;color:var(--pearl-muted);font-size:.58rem;display:block}.pearl-venue-grid{border-block:1px solid color-mix(in oklab, var(--pearl-gold) 46%, transparent);gap:1px;max-width:40rem;margin:2rem auto 0;display:grid}.pearl-venue-grid div{text-align:center;padding:1.4rem}.pearl-venue-grid strong{font-family:var(--font-display);font-size:2.1rem;font-weight:400;display:block}.pearl-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.5rem;display:flex}.pearl-notice{border:1px solid color-mix(in oklab, var(--pearl-gold) 45%, transparent);text-align:center;background:color-mix(in oklab, var(--pearl-paper) 80%, transparent);max-width:32rem;margin:1rem auto 0;padding:.8rem 1rem;font-size:.85rem}.pearl-timeline{gap:1.6rem;max-width:36rem;margin:2.5rem auto 0;padding-left:2rem;display:grid;position:relative}.pearl-timeline:before{content:"";background:linear-gradient(transparent, var(--pearl-gold) 8% 92%, transparent);width:1px;position:absolute;top:0;bottom:0;left:.45rem}.pearl-timeline li{list-style:none;position:relative}.pearl-timeline li:before{content:"";border:1px solid var(--pearl-gold);background:radial-gradient(circle at 30% 25%, var(--pearl-paper), var(--pearl-champagne) 54%, var(--pearl-gold));border-radius:50%;width:.9rem;height:.9rem;position:absolute;top:.25rem;left:-2rem}.pearl-timeline time{letter-spacing:.1em;color:var(--pearl-antique);font-size:.7rem;display:block}.pearl-timeline span{font-family:var(--font-display);margin-top:.15rem;font-size:1.8rem;display:block}.pearl-details-grid{gap:.8rem;max-width:42rem;margin:2.5rem auto 0;display:grid}.pearl-detail-note{border:1px solid color-mix(in oklab, var(--pearl-gold) 38%, transparent);background:var(--pearl-nacre), color-mix(in oklab, var(--pearl-paper) 66%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);min-height:9rem;box-shadow:0 16px 38px -26px color-mix(in oklab, var(--pearl-ink) 48%, transparent);padding:1.5rem;position:relative}.pearl-detail-note:nth-child(2n){transform:translateY(.3rem)rotate(.25deg)}.pearl-detail-note:nth-child(odd){transform:rotate(-.2deg)}.pearl-detail-note dt{font-family:var(--font-display);font-size:2rem}.pearl-detail-note dd{color:var(--pearl-muted);margin-top:.5rem;line-height:1.6}.pearl-rsvp-card{border:1px solid color-mix(in oklab, var(--pearl-gold) 52%, transparent);background:var(--pearl-nacre), color-mix(in oklab, var(--pearl-paper) 82%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);max-width:42rem;box-shadow:0 32px 70px -36px color-mix(in oklab, var(--pearl-ink) 58%, transparent), inset 0 0 0 5px color-mix(in oklab, var(--pearl-champagne) 32%, transparent);margin-inline:auto;padding:clamp(1.25rem,6vw,3.5rem)}.pearl-rsvp-sheet{background:linear-gradient(90deg, transparent 0 3%, color-mix(in oklab, var(--pearl-gold) 22%, transparent) 3% 3.2%, transparent 3.2% 96.8%, color-mix(in oklab, var(--pearl-gold) 22%, transparent) 96.8% 97%, transparent 97%), color-mix(in oklab, var(--pearl-paper) 76%, transparent)}.pearl-rsvp-card:before,.pearl-rsvp-card:after{content:"";border-color:var(--pearl-gold);opacity:.65;width:2rem;height:2rem;position:absolute}.pearl-rsvp-card:before{border-top:1px solid;border-left:1px solid;top:.75rem;left:.75rem}.pearl-rsvp-card:after{border-bottom:1px solid;border-right:1px solid;bottom:.75rem;right:.75rem}.pearl-rsvp-card form{margin-top:2.2rem}.pearl-rsvp-card input,.pearl-rsvp-card textarea{background:color-mix(in oklab, var(--pearl-paper) 88%, transparent)!important}.pearl-choice{border:1px solid color-mix(in oklab, var(--pearl-gold) 35%, transparent);background:color-mix(in oklab, var(--pearl-paper) 82%, transparent);align-items:center;gap:.75rem;min-height:3rem;padding:.7rem 1rem;display:flex}.pearl-error-summary{border:1px solid color-mix(in oklab, var(--plum) 48%, transparent);color:var(--plum);background:color-mix(in oklab, var(--pearl-paper) 88%, transparent);padding:.9rem 1rem}.pearl-closing{text-align:center;min-height:86svh;color:var(--pearl-ink);align-items:end;padding:3rem 1.5rem;display:flex;position:relative;overflow:hidden}.pearl-closing img{object-fit:cover;object-position:center 20%;width:100%;height:100%;position:absolute;inset:0}.pearl-closing:after{content:"";background:linear-gradient(180deg, transparent 34%, color-mix(in oklab, var(--pearl-paper) 26%, transparent) 62%, color-mix(in oklab, var(--pearl-paper) 72%, transparent));position:absolute;inset:0}.pearl-closing-scrim{border-top:1px solid color-mix(in oklab, var(--pearl-gold) 62%, transparent);background:color-mix(in oklab, var(--pearl-paper) 62%, transparent);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);text-shadow:0 1px 12px color-mix(in oklab, var(--pearl-paper) 85%, transparent);padding:1.6rem clamp(1.1rem,5vw,2.6rem) 1.9rem;display:inline-block}.pearl-closing-copy{z-index:2;max-width:38rem;margin-inline:auto;position:relative}.pearl-closing h2{margin-top:.7rem;font-size:clamp(2.8rem,9vw,5rem);line-height:.95}.pearl-closing a{color:inherit}@keyframes pearl-seal-release{to{opacity:0;transform:scale(.86)translateY(-12px)}}@keyframes pearl-flap-lift{0%{filter:drop-shadow(0 8px 7px color-mix(in oklab, var(--pearl-ink) 16%, transparent)) brightness(1);transform:rotateX(0)}24%{filter:drop-shadow(0 10px 9px color-mix(in oklab, var(--pearl-ink) 15%, transparent)) brightness(1.04);transform:rotateX(24deg)}62%{filter:drop-shadow(0 2px 8px color-mix(in oklab, var(--pearl-ink) 11%, transparent)) brightness(1.015);transform:rotateX(116deg)}to{filter:drop-shadow(0 -5px 8px color-mix(in oklab, var(--pearl-ink) 8%, transparent)) brightness(.985);transform:rotateX(174deg)}}@keyframes pearl-trifold-rise{0%{box-shadow:0 10px 22px -20px color-mix(in oklab, var(--pearl-ink) 55%, transparent);transform:translate(-50%,43%)}38%{transform:translate3d(-50%,18%,8px)scale(.99)}72%{box-shadow:0 22px 46px -28px color-mix(in oklab, var(--pearl-ink) 52%, transparent);transform:translate3d(-50%,-18%,16px)scale(.995)}to{box-shadow:0 30px 60px -32px color-mix(in oklab, var(--pearl-ink) 48%, transparent);transform:translate3d(-50%,-32%,22px)scale(1)}}@keyframes pearl-wing-left{0%{transform:rotateY(178deg)}to{transform:rotateY(0)}}@keyframes pearl-wing-right{0%{transform:rotateY(-178deg)}to{transform:rotateY(0)}}@keyframes pearl-trifold-settle{0%,40%{opacity:1;transform:translateZ(0)scale(1)}62%{opacity:1;transform:translateZ(20px)scale(1.01)}to{opacity:0;transform:translate3d(0,-.35rem,12px)scale(1)}}@keyframes pearl-stage-reveal{to{opacity:0}}@keyframes pearl-envelope-clear{to{opacity:0;transform:translateY(24px)}}@media (width>=640px){.pearl-shell{width:min(84%,54rem);padding-block:1.75rem}.pearl-opening-stage{height:calc(100svh - 3.5rem);inset-block-start:1.75rem}.pearl-hero{min-height:calc(100svh - 3.5rem)}.pearl-countdown-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pearl-venue-grid,.pearl-details-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.pearl-opening-stage[data-state=opening]{opacity:0;transition:opacity .18s!important}.pearl-opening-stage[data-state=opening] .pearl-seal,.pearl-opening-stage[data-state=opening] .pearl-envelope-flap,.pearl-opening-stage[data-state=opening] .pearl-trifold-motion,.pearl-opening-stage[data-state=opening] .pearl-trifold,.pearl-opening-stage[data-state=opening] .pearl-trifold-left,.pearl-opening-stage[data-state=opening] .pearl-trifold-right,.pearl-opening-stage[data-state=opening] .pearl-envelope-pocket,.pearl-opening-stage[data-state=opening] .pearl-envelope-back,.pearl-opening-stage[data-state=opening] .pearl-envelope-shadow{animation:none!important}.pearl-slideshow-stage figure{transition:none!important}.pearl-foil-sweep:after{opacity:0;animation:none!important}.pearl-demo:before{transition:none}}
