@font-face{font-family:Cormorant;src:url(/assets/cormorant.woff2) format("woff2");font-weight:400 600;font-display:swap}@font-face{font-family:Cormorant;src:url(/assets/cormorant-medium.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Cormorant;src:url(/assets/cormorant-italic.woff2) format("woff2");font-style:italic;font-display:swap}@font-face{font-family:Jost;src:url(/assets/jost.woff2) format("woff2");font-display:swap}:root{--paper:#f6f0e4;--ink:#153d30;--muted:#516453;--gold:#987640;--line:#b8a37d66;--serif:Cormorant,Georgia,serif;--sans:Jost,Arial,sans-serif;color-scheme:light;font-family:var(--sans);font-size:16px;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}body.cover-active{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{border:0;background:none}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3,i{font-family:var(--serif);font-weight:400}::selection{background:#d4c29c;color:var(--ink)}html{scrollbar-gutter:stable}.cover{scrollbar-width:none}.cover::-webkit-scrollbar{display:none}.sound-toggle{position:fixed;right:21px;top:max(20px,env(safe-area-inset-top));z-index:40;width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--ink);border-radius:50%;background:#f6f0e4cc;transition:background .2s,transform .2s}.sound-toggle:hover{background:var(--paper);transform:scale(1.05)}.eyebrow{font-size:11px;letter-spacing:.25em;line-height:1.8}.text-link{display:inline-flex;align-items:center;justify-content:center;gap:17px;border-bottom:1px solid var(--gold);padding:9px 0;font-family:var(--serif);font-size:23px;line-height:1.2;transition:color .2s,gap .3s}.text-link:hover{gap:24px;color:#806132}.text-link svg{flex-shrink:0}.cover{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;overflow-x:hidden;overflow-y:auto;background:var(--paper) url(/assets/paper-silk.webp) center/cover no-repeat}.cover-inner{width:min(100%,560px);min-height:max(760px,100dvh);margin:0 auto;padding:66px 16px 56px;display:flex;align-items:center;flex-direction:column;position:relative}.cover-heading{text-align:center;width:100%;position:relative;z-index:1}.cover-heading .eyebrow{margin:0 0 22px}.cover h1{font-size:clamp(48px,12.7vw,75px);line-height:1.1;letter-spacing:-.048em;white-space:nowrap}.cover h1 i{font-style:normal}.cover-date{font-size:13px;letter-spacing:.25em;margin-top:12px}.envelope-scene{display:block;position:relative;width:100%;aspect-ratio:1.555;flex-shrink:0;margin:70px 0 0;isolation:isolate;perspective:1200px;padding:0;filter:drop-shadow(0 13px 10px #49382026);transform-style:preserve-3d;transition:transform .5s}.envelope-scene.closed:hover{transform:translateY(-3px)}.envelope-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;pointer-events:none}.envelope-back{z-index:0}.envelope-pocket{z-index:3;clip-path:polygon(0 0,50% 68%,100% 0,100% 100%,0 100%)}.envelope-flap{z-index:4;clip-path:polygon(0 0,100% 0,100% 2%,51% 69%,49% 69%,0 2%);transform-origin:50% 0;backface-visibility:visible}.wax-seal{position:absolute;width:24%;height:auto;left:38%;top:49%;z-index:5;filter:drop-shadow(0 4px 3px #071e214d);pointer-events:none}.keepsake-card{position:absolute;z-index:-1;width:88%;height:94%;left:9%;top:-10%;transform:rotate(-8deg)}.keepsake-card>img,.rising-letter>img{width:100%;height:100%;object-fit:cover;box-shadow:0 5px 8px #4c3c2726}.keepsake-card>div,.rising-letter>div{position:absolute;top:10%;right:10%;bottom:10%;left:10%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:9px}.keepsake-card strong{font:34px var(--serif)}.keepsake-card span{font:italic 16px var(--serif)}.keepsake-card small{font-size:8px;letter-spacing:.15em}.rising-letter{position:absolute;width:88%;height:94%;left:6%;top:3%;z-index:2}.rising-letter span{font:14px var(--serif)}.rising-letter strong{font:46px/.9 var(--serif)}.rising-letter strong i{font-size:26px}.rising-letter small{font-size:9px;letter-spacing:.18em}.cover-welcome{text-align:center;margin-top:48px}.cover-welcome>p{font:23px/1.2 var(--serif)}.open-link{font-size:26px;margin-top:18px}.open-link svg{width:25px;height:25px}.cover-details{text-align:center;margin-top:44px}.cover-details p{font:19px/1.3 var(--serif);margin-bottom:12px}.cover-details span{display:block;font-size:11px;letter-spacing:.15em;line-height:1.7}.skip-opening{position:fixed;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;font-size:12px;padding:10px 16px;background:var(--paper);border:1px solid var(--line);z-index:10}.cover.opening .envelope-scene{visibility:hidden}.cover.opening .cover-heading,.cover.opening .cover-welcome,.cover.opening .cover-details{animation:cover-copy-out .55s ease forwards}.cover.opening{animation:cover-background-out .2s .82s linear forwards;pointer-events:none}.opening-stage{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;isolation:isolate}.opening-top-stage{z-index:34;animation:flap-behind 1ms 1.86s forwards}.opening-front-stage{z-index:32}.opening-camera{position:absolute;left:calc((100% - var(--envelope-width))/2);top:0;width:var(--envelope-width);height:var(--envelope-height);transform-origin:0 0;animation:envelope-approach .95s cubic-bezier(.76,0,.24,1) both;will-change:transform}.opening-drop{position:absolute;top:0;right:0;bottom:0;left:0;perspective:2400px;perspective-origin:50% 0;animation:pocket-depart 1.65s 2.15s cubic-bezier(.65,0,.24,1) both;will-change:transform}.opening-hinge,.opening-pocket,.opening-original-pocket{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;max-width:none}.opening-hinge{clip-path:polygon(0 0,100% 0,100% 3%,53% 67%,51.5% 69%,48.5% 69%,47% 67%,0 3%);transform-origin:50% 0;backface-visibility:visible;animation:reference-hinge 1.3s 1.18s cubic-bezier(.65,0,.35,1) both;will-change:transform;filter:drop-shadow(0 7px 5px #061d2240)}.opening-pocket{filter:drop-shadow(0 -2px 3px #071e211a)}.opening-original-pocket{clip-path:polygon(0 0,50% 69%,100% 0,100% 100%,0 100%);animation:cover-background-out .25s .7s linear forwards}.opening-seal{position:absolute;left:38%;top:49%;width:24%;max-width:none;filter:drop-shadow(0 4px 3px #071e214d);animation:seal-lift .5s .1s ease both}.skip-opening{z-index:45;border-radius:2px;background:#f6f0e4e8}.invitation{visibility:hidden;position:relative;background:var(--paper);transform-origin:50% 0}.invitation.is-entering{visibility:visible;z-index:1;animation:invitation-expand 1.8s 2.05s cubic-bezier(.22,1,.36,1) both}.invitation.is-open{visibility:visible}.intro-word{display:inline-block;white-space:nowrap}.intro-word+.intro-word{margin-left:.15em}.intro-word>span{display:inline-block}.intro-ampersand{font-size:.75em;font-style:italic;color:var(--gold)}.is-entering .family-invitation .eyebrow{animation:invitation-ink .65s 2.65s both}.is-entering .intro-word>span{animation:invitation-ink .8s calc(2.8s + var(--letter-index)*35ms) both}.is-entering .invitation-seal{animation:invitation-ink .8s 2.55s both}.is-entering .invitation-line{animation:invitation-ink .85s 3.05s both}.is-entering .families{animation:invitation-ink .85s 3.25s both}.is-entering .invitation-note,.is-entering .invitation-date,.is-entering .family-invitation>.text-link{animation:invitation-ink .85s 3.45s both}.is-entering .page-nav{animation:invitation-ink .75s 3.65s both}@keyframes envelope-approach{0%{transform:translate(var(--start-x),var(--start-y)) scale(var(--start-scale-x),var(--start-scale-y))}to{transform:translate(0) scale(1)}}@keyframes reference-hinge{0%{transform:rotateX(0);filter:brightness(1) drop-shadow(0 7px 5px #061d2240)}to{transform:rotateX(-180deg);filter:brightness(.8) drop-shadow(0 -5px 8px #061d2220)}}@keyframes flap-behind{to{z-index:0}}@keyframes pocket-depart{0%{transform:translateY(0)}to{transform:translateY(var(--envelope-drop))}}@keyframes invitation-expand{0%{transform:translateY(12vh) scale(.94)}to{transform:translateY(0) scale(1)}}@keyframes invitation-ink{0%{opacity:0;filter:blur(5px);transform:translateY(8px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}@keyframes seal-lift{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:translateY(-12px) scale(1.08)}}@keyframes cover-copy-out{to{opacity:0;transform:translateY(-6px)}}@keyframes cover-background-out{to{opacity:0}}.page-nav{height:80px;max-width:1320px;padding:18px 82px 16px 40px;margin:auto;display:flex;align-items:center;justify-content:space-between}.page-nav>a{font:30px var(--serif);letter-spacing:-.07em}.page-nav>a span{font-size:19px;color:var(--gold);padding:0 3px}.page-nav nav{display:flex;gap:26px;font-size:12px;letter-spacing:.04em}.page-nav nav a{padding:10px 0;border-bottom:1px solid transparent}.page-nav nav a:hover{border-color:var(--gold)}.family-invitation{padding:22px 24px 100px;text-align:center;background:url(/assets/paper-silk.webp) center top/100% auto no-repeat;min-height:800px}.invitation-seal{width:76px;margin:0 auto 26px}.family-invitation h1{font-size:clamp(60px,8.5vw,110px);letter-spacing:-.055em;line-height:1.1;margin:17px 0 22px;outline:none}.family-invitation h1 i{font-size:.75em;margin:0 .05em;color:var(--gold)}.invitation-line{font:23px/1.4 var(--serif)}.families{display:flex;align-items:center;justify-content:center;gap:50px;margin:49px auto 30px;max-width:880px}.families>div{flex:1}.families h2{font-size:29px}.families p{font-size:11px;color:var(--muted);margin:10px 0 5px}.families strong{font:18px/1.5 var(--serif)}.families strong span{font-style:italic;color:var(--gold);padding:0 3px}.family-join{font:italic 38px var(--serif);color:var(--gold)}.invitation-note{font:19px/1.5 var(--serif);margin:30px 0}.invitation-date{display:grid;gap:10px;margin:35px auto 26px}.invitation-date span{font-size:10px;letter-spacing:.2em}.invitation-date strong{font:32px/1 var(--serif)}.celebration-section{max-width:1220px;margin:0 auto;padding:80px 48px 100px}.celebration-intro{text-align:center;margin-bottom:58px}.celebration-intro h2{font-size:clamp(38px,4.2vw,60px);line-height:1.08;letter-spacing:-.035em}.celebration-intro h2 i{line-height:1.2}.celebration-intro p{font:18px/1.5 var(--serif);margin-top:22px;color:var(--muted)}.event-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center}.celebration-photo{height:560px;overflow:hidden}.celebration-photo img{width:100%;height:100%;object-fit:cover;object-position:64% center}.event{display:grid;grid-template-columns:66px 1fr;gap:26px;padding:32px 0}.event+.event{border-top:1px solid var(--line)}.event-time{display:flex;flex-direction:column;align-items:center;gap:2px;padding-top:3px}.event-time>span{font:54px/.9 var(--serif)}.event-time>small{font-size:10px;letter-spacing:.17em}.event h3{font-size:36px;line-height:1.1}.event h3 i{font-size:.85em}.event p{font:17px/1.55 var(--serif);color:var(--muted);margin-top:15px}.event-footnote{font-size:11px;line-height:1.8;margin:18px 0;color:var(--muted)}.calendar-link{font-family:var(--sans);font-size:12px;gap:9px;padding:13px 0}.countdown-section{text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:82px 24px 70px;margin:0 auto;max-width:1124px}.countdown-section h2{font-size:42px;line-height:1.15;letter-spacing:-.025em;margin:15px 0 35px}.countdown{display:flex;justify-content:center;gap:52px}.countdown>div{display:flex;flex-direction:column;min-width:58px}.countdown span{font:56px/1 var(--serif);font-variant-numeric:tabular-nums}.countdown small{font-size:10px;color:var(--muted);letter-spacing:.1em;margin-top:10px}.fine-copy{font-size:11px;letter-spacing:.09em;color:var(--muted);margin-top:35px}.venue-section{max-width:1220px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:100px 48px;align-items:center}.venue-copy>svg{color:var(--gold);margin-bottom:20px}.venue-copy h2{font-size:60px;line-height:1;letter-spacing:-.04em}.venue-copy h2 i{line-height:1.2}.venue-copy h3{font-size:29px;margin:28px 0 16px}.venue-copy p{font-size:13px;line-height:1.9;color:var(--muted)}.solid-link{display:inline-flex;align-items:center;gap:30px;background:var(--ink);color:var(--paper);padding:16px 24px;margin-top:30px;font-size:13px;min-height:48px;transition:background .2s}.solid-link:hover{background:#265441}.venue-still-life{height:460px;overflow:hidden}.venue-still-life img{width:100%;height:100%;object-fit:cover;object-position:80% center}.closing{padding:85px 24px 36px;text-align:center;background:url(/assets/paper-silk.webp) center 68%/cover no-repeat}.closing img{margin:0 auto 26px}.closing p{font:19px/1.55 var(--serif)}.closing h2{font-size:48px;line-height:1.1;letter-spacing:-.03em;margin:25px 0 28px}.signature{font:40px var(--serif);letter-spacing:-.035em}.signature i{color:var(--gold)}.closing p.closing-date{font:10px var(--sans);letter-spacing:.2em;margin-top:17px}.replay-link{display:inline-flex;gap:8px;align-items:center;margin-top:60px;padding:12px;font-size:11px;border-bottom:1px solid var(--line)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,12px);z-index:50;background:var(--ink);color:var(--paper);padding:16px 22px;max-width:calc(100% - 32px);width:max-content;font-size:13px;line-height:1.5;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.toast.visible{opacity:1;transform:translate(-50%)}.will-reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1)}.will-reveal.is-visible{opacity:1;transform:translateY(0)}@media(min-width:700px){.cover{background-size:auto 115%;background-color:#f3eddf}.cover-inner{padding-top:52px;min-height:900px;width:510px}.cover-heading .eyebrow{font-size:11px}.cover h1{font-size:69px}.cover-date{font-size:13px}.envelope-scene{margin-top:56px;width:94%}.cover-welcome{margin-top:38px}.cover-details{margin-top:34px}.cover-details p{font-size:22px}.cover-details span{font-size:12px}.sound-toggle{right:30px;top:25px;width:42px;height:42px}}@media(max-width:699px){.cover-inner{min-height:max(790px,100dvh)}.page-nav{height:70px;padding:15px 78px 15px 24px}.page-nav nav{gap:20px;font-size:11px}.sound-toggle{right:17px;top:17px}.family-invitation{padding:28px 25px 75px;background-size:auto 100%;min-height:920px}.family-invitation h1{font-size:57px;margin:18px 0 21px}.invitation-seal{width:66px;height:66px;margin-bottom:24px}.family-invitation .eyebrow{font-size:10px;letter-spacing:.18em}.invitation-line{font-size:22px;max-width:320px;margin:auto}.families{flex-direction:column;gap:18px;margin:34px 0 27px}.families h2{font-size:28px}.families p{margin:6px 0 2px;font-size:11px}.families strong{font-size:18px}.family-join{font-size:29px;line-height:1}.invitation-note{font-size:18px;margin:24px 0}.invitation-date{margin-top:29px;gap:11px}.invitation-date strong{font-size:31px}.invitation-date span:last-child{font-size:9px;letter-spacing:.1em}.desktop-break{display:none}.celebration-section{padding:64px 26px}.celebration-intro{margin-bottom:34px}.celebration-intro h2{font-size:39px}.celebration-intro p{font-size:18px;margin-top:18px}.event-layout{grid-template-columns:1fr;gap:15px}.celebration-photo{height:320px}.celebration-photo img{object-position:60% center}.event{grid-template-columns:58px 1fr;gap:21px;padding:31px 0}.event h3{font-size:34px}.event p{font-size:17px}.event-footnote{margin-left:0}.calendar-link{font-size:12px}.countdown-section{padding:57px 22px;margin:0 26px}.countdown-section .eyebrow{font-size:10px;letter-spacing:.17em}.countdown-section h2{font-size:35px;margin:13px 0 30px}.countdown{gap:15px;justify-content:space-between}.countdown>div{min-width:45px}.countdown span{font-size:45px}.countdown small{font-size:9px;letter-spacing:.02em}.fine-copy{font-size:10px;margin-top:29px}.venue-section{grid-template-columns:1fr;gap:39px;padding:70px 26px}.venue-copy h2{font-size:50px}.venue-copy h3{font-size:29px;margin:26px 0 13px}.venue-copy p{font-size:13px}.venue-still-life{height:300px}.venue-still-life img{object-position:65% center}.closing{padding:67px 24px 27px;background-size:auto 140%}.closing h2{font-size:41px}.closing p{font-size:18px}.signature{font-size:37px}.replay-link{margin-top:45px}}@media(max-width:360px){.cover-inner{padding-top:72px;min-height:770px}.cover h1{font-size:45px}.cover-heading .eyebrow{font-size:10px}.cover-date{font-size:12px}.envelope-scene{margin-top:67px}.cover-welcome{margin-top:43px}.cover-welcome>p{font-size:22px}.open-link{font-size:25px}.cover-details{margin-top:40px}.cover-details p{font-size:18px}.cover-details span{font-size:10px}.family-invitation h1{font-size:51px}.celebration-intro h2{font-size:34px}.event{gap:12px}.countdown{gap:8px}.countdown span{font-size:40px}}.cover-heading .eyebrow{margin-bottom:14px}.cover h1{font-weight:500;font-size:clamp(48px,13.7vw,75px)}.cover-date{margin-top:9px}.envelope-scene{margin-top:60px;aspect-ratio:1.5}.cover-welcome>p{font-size:21px}.open-link{font-size:23px;gap:13px}.cover-details p{font-size:18px}.cover-details{margin-top:41px}@media(min-width:700px){.cover h1{font-size:69px}.envelope-scene{margin-top:56px}.cover-details p{font-size:22px}.cover-welcome>p{font-size:25px}.open-link{font-size:28px}}@media(max-width:360px){.cover h1{font-size:46px}.cover-welcome>p{font-size:20px}.open-link{font-size:23px}.envelope-scene{margin-top:62px}}@media(min-width:700px){.cover{background-image:url(/assets/paper-silk-wide.webp);background-size:cover;background-position:center}.family-invitation{background-image:url(/assets/paper-silk-wide.webp);background-size:cover}.closing{background-image:url(/assets/paper-silk-wide.webp);background-size:cover}}@media(min-width:700px)and (max-height:800px){.cover-inner{width:460px;padding:32px 16px 28px;min-height:max(740px,100dvh)}.cover h1{font-size:61px}.envelope-scene{margin-top:44px}.cover-welcome{margin-top:28px}.cover-welcome>p{font-size:23px}.open-link{font-size:25px;margin-top:12px}.cover-details{margin-top:26px}.cover-details p{font-size:20px;margin-bottom:9px}}.motion-toggle{position:fixed;right:32px;top:78px;z-index:40;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#f6f0e4e8;transition:background .2s}.motion-toggle:hover{background:#e8deca}.family-invitation,.closing{position:relative;isolation:isolate;overflow:hidden;background-image:none}.family-invitation:before,.closing:before{content:"";position:absolute;top:-2%;right:-2%;bottom:-2%;left:-2%;z-index:-1;background:url(/assets/paper-silk.webp) center/cover no-repeat;transform-origin:70% 50%;pointer-events:none}.closing:before{background-size:auto 140%}.family-invitation:before,.closing:before{animation:silk-breathe 16s ease-in-out infinite alternate;animation-play-state:paused}.is-entering .family-invitation:before,.is-open .family-invitation:before,.is-open .closing:before{animation-play-state:running}@keyframes silk-breathe{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(.4%,-.5%,0) scale(1.035)}}.invitation-date:before{content:"";display:block;width:64px;height:1px;background:var(--gold);margin:0 auto 13px;transform-origin:center}.is-entering .invitation-date:before,.is-open .invitation-date:before{animation:rule-unfold 1.1s cubic-bezier(.16,1,.3,1) both}@keyframes rule-unfold{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}.will-reveal:not(.is-visible) h2{opacity:0;transform:translateY(16px)}.will-reveal h2{transition:opacity 1s .12s,transform 1s .12s cubic-bezier(.16,1,.3,1)}.will-reveal.is-visible h2{opacity:1;transform:translateY(0)}.celebration-intro.will-reveal p{transition:opacity .9s .25s,transform .9s .25s}.celebration-intro.will-reveal:not(.is-visible) p{opacity:0;transform:translateY(12px)}.motion-photo{position:relative;isolation:isolate;overflow:hidden;background:#153d30}.motion-photo>img{animation:photo-drift 16s ease-in-out infinite alternate;animation-play-state:paused;transition:filter 1.2s ease}.is-open .motion-photo.in-view>img{animation-play-state:running}.motion-photo.evening>img{filter:brightness(.82) saturate(.9)}.motion-photo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,transparent 50%,#081d12b3);opacity:.85}.venue-still-life:after{background:linear-gradient(120deg,#d0b67712,transparent 60%)}@keyframes photo-drift{0%{transform:scale(1.015) translateZ(0)}to{transform:scale(1.095) translate3d(-.9%,-.5%,0)}}.photo-caption{position:absolute;z-index:1;left:30px;right:22px;bottom:30px;color:#fff7e6;animation:caption-arrive .7s ease both}.photo-caption>span{font-size:9px;letter-spacing:.2em}.photo-caption p{font:italic 30px/1.1 var(--serif);margin-top:9px}@keyframes caption-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.schedule-hint{font-size:9px;letter-spacing:.19em;color:var(--muted);margin-bottom:4px}.event.event-disclosure{display:block;padding:0;border-bottom:1px solid var(--line)}.event.event-disclosure+.event{border-top:0}.event-trigger{display:grid;grid-template-columns:60px 1fr 18px;gap:23px;align-items:center;width:100%;padding:28px 0;text-align:left}.event-trigger .event-time{color:var(--muted);transition:color .35s,transform .35s}.event-trigger:hover .event-time,.selected .event-time{color:var(--gold)}.event-trigger:hover .event-time{transform:translateY(-2px)}.event-trigger .event-title{font:34px/1.05 var(--serif)}.event-title small{display:block;font:11px/1.6 var(--sans);color:var(--muted);margin-top:10px;letter-spacing:.01em}.event-trigger>svg,.calendar-link>svg:last-child{transition:transform .45s cubic-bezier(.16,1,.3,1);color:var(--gold)}.turned{transform:rotate(180deg)}.expand-panel{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .55s cubic-bezier(.16,1,.3,1),opacity .35s}.expand-panel.expanded{grid-template-rows:1fr;opacity:1}.expand-panel>div{overflow:hidden;min-height:0}.event-description{padding:0 16px 29px 83px}.event-description p{margin-top:0;font:18px/1.45 var(--serif)}.event-description>span{display:block;font:10px/1.9 var(--sans);color:var(--muted);margin-top:16px}.event-description>a{display:inline-flex;gap:7px;align-items:center;font:11px/1.5 var(--sans);margin-top:10px;min-height:44px;border-bottom:1px solid var(--line)}.event-description>a:hover{border-color:var(--gold)}.calendar-link{min-height:46px}.calendar-options{padding:17px 0 5px}.calendar-options>p{font:17px/1.4 var(--serif);margin-bottom:8px}.calendar-options>a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.calendar-options>a:hover{color:#806132}.calendar-options>a small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.calendar-options>small{display:block;font:10px/1.7 var(--sans);margin-top:13px;color:var(--muted)}.countdown-section h2{margin-bottom:22px}.countdown-selector{display:flex;justify-content:center;gap:24px;margin:0 auto 34px}.countdown-selector button{font:17px var(--serif);padding:12px 0;min-height:44px;position:relative;color:var(--muted)}.countdown-selector button>span{font:9px var(--sans);margin-left:5px;white-space:nowrap}.countdown-selector button:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transition:transform .4s cubic-bezier(.16,1,.3,1)}.countdown-selector button[aria-pressed=true]{color:var(--ink)}.countdown-selector button[aria-pressed=true]:after{transform:scaleX(1)}.countdown-number{display:block;height:1.05em;overflow:hidden}.countdown-number>span{display:block;animation:number-arrive .55s cubic-bezier(.16,1,.3,1) both}@keyframes number-arrive{0%{opacity:0;transform:translateY(50%)}to{opacity:1;transform:translateY(0)}}.venue-actions{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;margin-top:30px}.venue-actions .solid-link{margin-top:0}.copy-address{display:inline-flex;gap:8px;align-items:center;font:11px var(--sans);min-height:44px;padding:10px 0;border-bottom:1px solid var(--line)}.copy-address:hover{border-color:var(--gold)}.manual-address{width:100%;min-height:110px;padding:12px;background:transparent;border:1px solid var(--line);border-radius:0;resize:vertical;color:var(--ink);font:12px/1.6 var(--sans)}.solid-link svg{transition:transform .3s}.solid-link:hover svg{transform:translate(2px,-2px)}.motion-paused .family-invitation:before,.motion-paused .closing:before,.is-open.motion-paused .motion-photo.in-view>img{animation-play-state:paused}.motion-paused .countdown-number>span,.motion-paused .photo-caption{animation:none}.atmosphere{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;overflow:hidden;contain:strict;animation:atmosphere-arrive 1.6s ease both}.family-invitation,.closing{isolation:auto}.family-invitation:before,.closing:before{z-index:0}.will-reveal.is-visible{transform:none}.family-invitation>*,.closing>.reveal,.celebration-intro,.schedule-hint,.event-disclosure,.event-footnote,.calendar-link,.calendar-options,.countdown-section>.reveal,.venue-copy,.page-nav{position:relative;z-index:3}.photo-caption{z-index:3}.flight-feather{position:absolute;left:0;top:0;will-change:transform;pointer-events:none}.flight-feather>img{display:block;width:100%;height:auto;max-width:none;-webkit-user-select:none;user-select:none;transform:translate(-50%,-50%) scaleY(var(--flatten,1)) rotate(var(--bank,-28deg)) scaleX(var(--roll,1));filter:drop-shadow(1px 3px 2px #66542526)}.feather-ground-shadow{position:absolute;left:0;top:0;width:93px;height:9px;opacity:0;border-radius:50%;background:radial-gradient(ellipse,#6d552b,transparent 70%);filter:blur(2px)}.feather-rest{position:relative;width:180px;height:99px;margin:8px auto 0}.feather-rest>span{position:absolute;left:50%;bottom:21px;width:1px;height:1px}.closing .replay-link{margin-top:14px}.air-dust{position:absolute;top:-15%;right:0;bottom:0;left:0;transform:translate3d(0,var(--dust-travel,0px),0)}.particle-track{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size)}.particle-drift{display:block;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle,#b18d4f 0 25%,#b18d4f66 50%,transparent 75%);animation:particle-drift var(--duration) var(--delay) ease-in-out infinite alternate}@keyframes atmosphere-arrive{0%{opacity:0}to{opacity:1}}@keyframes particle-drift{0%{transform:translate3d(-6px,8px,0);opacity:.13}to{transform:translate3d(12px,-14px,0);opacity:.38}}.atmosphere.is-paused{animation:none}.atmosphere.is-paused .particle-drift{animation-play-state:paused}@media(max-width:699px){.particle-track:nth-of-type(n+10){display:none}}@media(min-width:700px){.family-invitation:before,.closing:before{background-image:url(/assets/paper-silk-wide.webp);background-size:cover}}@media(max-width:699px){.motion-toggle{right:19px;top:65px;width:34px;height:34px}.schedule-hint{margin-top:18px}.event-trigger{grid-template-columns:50px 1fr 16px;gap:18px;padding:26px 0}.event-trigger .event-title{font-size:32px}.event-description{padding-left:68px;padding-right:6px}.event-title small{font-size:10px}.event-description>span{font-size:10px}.photo-caption{left:23px;bottom:25px}.photo-caption p{font-size:28px}.countdown-selector{gap:21px;margin-bottom:30px}.countdown-selector button{font-size:16px}.countdown-selector button>span{font-size:8px}.venue-actions{gap:10px 22px}}@media(max-width:360px){.event-trigger{grid-template-columns:40px 1fr 14px;gap:14px}.event-trigger .event-title{font-size:28px}.event-title small{font-size:9px}.event-description{padding-left:54px}.countdown-selector{gap:17px}.countdown-selector button{font-size:15px}.countdown-selector button>span{display:block;margin:4px 0 0}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.will-reveal,.will-reveal:not(.is-visible) h2,.celebration-intro.will-reveal:not(.is-visible) p{opacity:1;transform:none}.motion-photo>img,.family-invitation:before,.closing:before{animation:none!important}.atmosphere{display:none}.feather-rest{height:24px}}@property --seal-progress{syntax:"<angle>";inherits:true;initial-value:0deg}.royal-envelope{width:100%;margin-top:60px;flex-shrink:0}.royal-envelope .envelope-scene{margin:0 auto;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;--tilt-x:0deg;--tilt-y:0deg;--light-x:50%;--light-y:25%;--seal-progress:0deg}.envelope-scene.closed:hover{transform:none}.envelope-depth{position:absolute;top:0;right:0;bottom:0;left:0;display:block;isolation:isolate;transform:rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transform-style:preserve-3d;transition:transform .65s cubic-bezier(.16,1,.3,1)}.keepsake-message{position:absolute;top:10%;right:10%;bottom:10%;left:10%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:9px}.envelope-lustre{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;background:radial-gradient(ellipse at var(--light-x) var(--light-y),#ffe1a229,transparent 62%);mix-blend-mode:soft-light;opacity:.7;transition:opacity .5s}.royal-seal{position:absolute;z-index:5;left:38%;top:49%;width:24%;aspect-ratio:1;filter:drop-shadow(0 4px 3px #071e214d);transform:translateZ(14px);transition:transform .4s cubic-bezier(.16,1,.3,1),filter .4s}.royal-seal>img{width:100%;height:100%;object-fit:contain;pointer-events:none}.seal-reflection{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 40%,#fff5d59c 48%,transparent 56%);background-size:350% 100%;mask:url(/assets/seal.webp) center/contain no-repeat;mix-blend-mode:screen;pointer-events:none;animation:gold-reflection 8s ease-in-out infinite}.seal-charge{position:absolute;top:-11%;right:-11%;bottom:-11%;left:-11%;border-radius:50%;background:conic-gradient(from -90deg,#edcc82 var(--seal-progress),transparent 0);mask:radial-gradient(circle,transparent 67%,#000 67.5% 68.5%,transparent 69%);opacity:0;transition:opacity .25s}.seal-echo{position:absolute;top:-5%;right:-5%;bottom:-5%;left:-5%;border:1px solid #c7a65d80;border-radius:50%;pointer-events:none;opacity:0;animation:seal-invitation 5s 1.5s ease-out infinite}.seal-gold-dust{position:absolute;z-index:6;left:50%;top:67%;width:1px;height:1px;pointer-events:none}.seal-gold-dust>span{position:absolute;width:3px;height:3px;background:#d4b161;opacity:0;transform:rotate(var(--ray)) translateY(0)}.seal-instruction{font:10px/1.5 var(--sans);letter-spacing:.13em;text-align:center;color:var(--muted);margin:20px 0 0;min-height:15px;transition:color .3s}.seal-instruction.is-holding{color:#87622f}.cover-welcome{margin-top:29px}.is-holding .envelope-depth{transform:rotateX(0) rotateY(0) translateY(-2px)}.is-holding .royal-seal{transform:translateZ(20px) scale(1.045);filter:drop-shadow(0 6px 8px #b1874052)}.is-holding .seal-charge{opacity:1}.is-holding .seal-echo{animation:none;opacity:0}.is-holding .seal-reflection{animation-duration:1.4s}.envelope-scene:focus-visible .seal-charge{opacity:.7;--seal-progress:360deg}.envelope-scene.closed:hover .envelope-lustre{opacity:1}.cover.unsealing .envelope-depth{transform:rotateX(0) rotateY(0);transition-duration:.35s}.cover.unsealing .royal-envelope{animation:none}.cover.unsealing .royal-seal{animation:seal-release .72s cubic-bezier(.16,1,.3,1) both}.cover.unsealing .seal-charge{--seal-progress:360deg;animation:seal-ring-release .72s ease-out both}.cover.unsealing .seal-echo{animation:none;opacity:0}.cover.unsealing .seal-reflection{animation:gold-reflection .72s ease both}.cover.unsealing .seal-gold-dust>span{animation:foil-release .6s var(--spark-delay) ease-out both}.cover.opening .seal-instruction{animation:cover-copy-out .35s ease both}.cover .cover-heading{animation:stationery-arrive 1.2s cubic-bezier(.16,1,.3,1) both}.cover .royal-envelope{animation:stationery-arrive 1.2s .12s cubic-bezier(.16,1,.3,1) both}.cover .cover-welcome,.cover .cover-details{animation:stationery-arrive 1s .4s cubic-bezier(.16,1,.3,1) both}.cover.opening .royal-envelope{animation:none}.cover.motion-paused .seal-reflection,.cover.motion-paused .seal-echo{animation-play-state:paused}.cover.motion-paused .envelope-depth{transform:none;transition:none}@keyframes stationery-arrive{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes gold-reflection{0%,12%{background-position:100% 50%;opacity:0}18%{opacity:.65}36%{background-position:0% 50%;opacity:.2}42%,to{background-position:0% 50%;opacity:0}}@keyframes seal-invitation{0%,65%{opacity:0;transform:scale(.98)}70%{opacity:.42}to{opacity:0;transform:scale(1.18)}}@keyframes seal-release{0%{transform:translateZ(14px) scale(1)}40%{transform:translateZ(14px) scale(1.1);filter:drop-shadow(0 0 15px #d7b76580) brightness(1.13)}to{transform:translateZ(14px) scale(1);filter:drop-shadow(0 4px 3px #071e214d)}}@keyframes seal-ring-release{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}@keyframes foil-release{0%{opacity:0;transform:rotate(var(--ray)) translateY(5px) scale(.5)}20%{opacity:.8}to{opacity:0;transform:rotate(var(--ray)) translateY(var(--distance)) scale(.15)}}@media(min-width:700px){.royal-envelope{margin-top:56px}.cover-welcome{margin-top:19px}}@media(min-width:700px)and (max-height:800px){.royal-envelope{margin-top:44px}.cover-welcome{margin-top:10px}.seal-instruction{margin-top:15px}}@media(max-width:360px){.royal-envelope{margin-top:62px}.seal-instruction{font-size:9px;letter-spacing:.08em;margin-top:17px}.cover-welcome{margin-top:27px}}@media(prefers-reduced-motion:reduce){.cover .cover-heading,.cover .royal-envelope,.cover .cover-welcome,.cover .cover-details,.seal-reflection,.seal-echo,.seal-gold-dust>span{animation:none!important}.envelope-depth,.royal-seal{transform:none!important;transition:none}.seal-reflection,.seal-echo{display:none}}@font-face{font-family:Amiri;src:url(/assets/amiri-arabic.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}.arabic-calligraphy{font-family:Amiri,Traditional Arabic,serif;font-weight:400;font-style:normal;font-synthesis:none;letter-spacing:normal;text-wrap:balance}.cover-bismillah{position:relative;z-index:1;flex-shrink:0;font-size:31px;line-height:1.8;text-align:center;margin-top:20px;animation:stationery-arrive 1.2s .08s cubic-bezier(.16,1,.3,1) both}.cover .royal-envelope{margin-top:37px}.cover.opening .cover-bismillah{animation:cover-copy-out .55s ease forwards}.family-relations{display:grid;gap:16px;margin-top:12px}.family-relation{display:grid;justify-items:center;gap:4px}.families .family-relation p{margin:0;font-size:11px;line-height:1.6;letter-spacing:.035em}.families .family-relation strong{display:block;font:20px/1.4 var(--serif)}.countdown-section{max-width:870px;padding:38px 24px 34px}.countdown-section h2{font-size:32px;margin:10px 0 8px}.countdown-selector{margin-bottom:21px;gap:25px}.countdown-selector button{font-size:16px}.countdown{max-width:340px;margin:auto;gap:30px}.countdown>div{min-width:46px}.countdown span{font-size:38px}.countdown small{margin-top:8px;font-size:9px}.countdown-section .fine-copy{margin-top:21px;font-size:10px}.venue-landscape{height:auto;aspect-ratio:853 / 1280;max-height:620px}.venue-landscape img{object-position:50% 64%;animation-name:venue-breathe}.venue-landscape:after{background:none}@keyframes venue-breathe{0%{transform:scale(1.005)}to{transform:scale(1.045)}}.verse-closing{padding:74px 30px 28px}.verse-closing>.reveal{max-width:810px;margin:auto}.closing-crest{display:flex;justify-content:center;align-items:center;gap:23px;margin-bottom:28px}.closing-crest img{width:54px;height:54px;margin:0}.closing-crest>span{width:90px;height:1px;background:linear-gradient(90deg,transparent,#98764080)}.closing-crest>span:last-child{transform:rotate(180deg)}.closing .closing-arabic{font:400 30px/2 Amiri,Traditional Arabic,serif;letter-spacing:normal;padding:6px 0;max-width:790px;margin:auto}.verse-divider{display:flex;align-items:center;justify-content:center;gap:10px;margin:23px auto 24px}.verse-divider:before,.verse-divider:after{content:"";width:40px;height:1px;background:#98764070}.verse-divider>span{width:5px;height:5px;border:1px solid var(--gold);transform:rotate(45deg)}.closing-translation{margin:0 auto;max-width:570px;font:italic 24px/1.6 var(--serif);text-wrap:balance;color:#3c5142}.closing .verse-citation{margin-top:22px;font:10px/1.8 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#78603a}.verse-citation span{margin-left:13px;white-space:nowrap}.closing-signoff{margin-top:38px}.closing-signoff .signature{font-size:34px}.closing-signoff .closing-date{margin-top:10px;font-size:9px}.verse-closing .feather-rest{margin-top:0}.verse-closing>.replay-link{position:relative;z-index:3}@media(min-width:700px){.cover-bismillah{font-size:36px;margin-top:19px}.cover .royal-envelope{margin-top:40px}.families{align-items:flex-start}.family-join{align-self:flex-start;margin-top:35px}}@media(min-width:700px)and (max-height:800px){.cover-bismillah{font-size:31px;margin-top:12px}.cover .royal-envelope{margin-top:31px}}@media(max-width:699px){.countdown-section{padding:30px 14px 28px}.countdown-section h2{font-size:28px;margin-bottom:5px}.countdown{max-width:275px;gap:18px}.countdown>div{min-width:39px}.countdown span{font-size:32px}.countdown-selector{margin-bottom:19px}.countdown-section .fine-copy{margin-top:18px;font-size:9px;letter-spacing:.04em}.venue-landscape{max-height:550px}.verse-closing{padding:54px 25px 25px}.closing-crest{margin-bottom:22px;gap:19px}.closing-crest>span{width:54px}.closing .closing-arabic{font-size:25px;line-height:2}.verse-divider{margin:20px auto 21px}.closing-translation{font-size:21px;line-height:1.6}.closing .verse-citation{font-size:9px;margin-top:22px}.closing-signoff{margin-top:30px}.closing-signoff .signature{font-size:31px}}@media(max-width:360px){.cover-bismillah{font-size:27px;margin-top:17px}.cover .royal-envelope{margin-top:34px}.countdown-section{padding-left:6px;padding-right:6px}.countdown-section h2{font-size:25px}.countdown-selector button>span{display:inline;margin-left:4px}.countdown{gap:12px}.countdown span{font-size:30px}.closing .closing-arabic{font-size:23px}.closing-translation{font-size:20px}}@media(prefers-reduced-motion:reduce){.cover-bismillah{animation:none}}.cover .cover-prelude{width:min(100%,510px);min-height:100dvh;padding:max(72px,env(safe-area-inset-top)) 24px max(64px,env(safe-area-inset-bottom));justify-content:center}.cover-prelude .cover-bismillah{margin-top:0;font-size:clamp(29px,8.4vw,36px);line-height:1.9}.cover .cover-prelude .royal-envelope{margin-top:62px}.cover-prelude .seal-instruction{margin:22px auto 0;min-height:38px;max-width:270px;font:10px/1.8 var(--sans);letter-spacing:.07em}.cover-prelude .cover-welcome{margin-top:26px}.cover-prelude .cover-welcome>p{font:26px/1.3 var(--serif)}.cover-prelude .cover-welcome>p i{display:inline-block;padding-bottom:2px}.cover-prelude .open-link{min-height:44px;margin-top:16px;font-size:23px;padding:9px 0;gap:18px}.cover-prelude .open-link:hover{gap:24px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(min-width:700px){.cover-prelude .cover-bismillah{font-size:40px}.cover .cover-prelude .royal-envelope{margin-top:68px}.cover-prelude .cover-welcome>p{font-size:28px}.cover-prelude .open-link{font-size:24px}}@media(max-height:540px){.cover .cover-prelude{width:min(100%,340px);padding-top:38px;padding-bottom:38px}.cover-prelude .cover-bismillah{font-size:28px}.cover .cover-prelude .royal-envelope{margin-top:43px}}
