body.is-arriving{overflow:hidden}.is-arriving .enter{animation:none!important;opacity:0}.is-arriving .hero-photo,.is-arriving .dust i{animation-play-state:paused!important}dialog.arrival{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;overflow:hidden;background:transparent;color:#f3ebd8;box-shadow:none}.arrival::backdrop{background:transparent;backdrop-filter:none}.arrival[open]{display:grid;place-items:center;cursor:pointer}.lunar-sky{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 35%,#263645,#111c2d 37%,#070d18 80%)}.moon-haze{position:absolute;inset:20% -30% -40%;background:radial-gradient(ellipse at 50% 65%,#77969925,transparent 55%);transform:rotate(-20deg)}.lunar-stars{position:absolute;inset:0}.lunar-stars i{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#f9edcc;opacity:.55;box-shadow:0 0 6px #f8edc966}.arrival .arrival-heading{position:absolute;top:4%;z-index:2;width:100%;text-align:center}.arrival .arrival-heading .eyebrow{font:9px/1.6 Manrope,sans-serif;letter-spacing:.5em;color:#d3c5a3}.arrival .arrival-dedication{font:italic 22px/1.4 var(--serif);margin:10px 0 0;color:#cec9ba}.arrival .arrival-invitation{width:min(900px,94vw);display:flex;flex-direction:column;align-items:center;position:relative;z-index:1;text-align:center;padding-top:30px}.wedding-moon{position:relative;width:clamp(150px,25svh,240px);aspect-ratio:1;margin-bottom:32px}.wedding-moon:before{content:"";position:absolute;inset:-30%;border-radius:50%;background:radial-gradient(circle,#c4c6b11c,transparent 70%)}.moon-disc{display:block;width:100%;height:100%;filter:drop-shadow(0 0 22px #ded9ba35)}.wedding-constellation{position:absolute;width:155%;height:auto;top:12%;left:-27.5%;color:#ead4a0;opacity:0;filter:drop-shadow(0 0 9px #f5e0a866)}.ring{stroke-width:1.6;stroke-dasharray:1;stroke-dashoffset:1}.arrival .lunar-copy .eyebrow{font-size:9px;letter-spacing:.26em;color:#cabd9b}.arrival .lunar-copy h2{display:flex;align-items:center;justify-content:center;gap:22px;font:400 clamp(54px,7vw,100px)/1.12 var(--serif);letter-spacing:-.03em;margin:22px 0;color:#f7efdd}.arrival .lunar-copy h2 em{color:#d1b981;font-size:.62em;font-weight:400}.arrival .moon-date{font:10px/1.5 Manrope,sans-serif;letter-spacing:.3em;margin:0;color:#d4cebb}.arrival .moon-open{margin:30px auto 0;display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:14px 23px;min-height:48px;border:1px solid #d5c39988;border-radius:0;background:#e4d2a208;color:#e9ddc2;font-size:11px;letter-spacing:.06em;cursor:pointer;transition:background .2s}.arrival .moon-open:hover{background:#e4d2a21a}.arrival .moon-open span{font-size:22px;line-height:1}.arrival .moon-open:focus-visible{outline:1px solid #e8d6a9;outline-offset:5px}.arrival #arrival-hint{font:italic 17px/1.5 var(--serif);color:#b8bdc1;margin:16px 0 0}.arrival .arrival-bottom{position:absolute;bottom:3%;inset-inline:6%;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.12em;z-index:4}.arrival #skip-arrival{min-height:44px;padding:10px;border:0;background:none;color:#d4ccbb;font-size:10px}.arrival #skip-arrival span{margin-inline-start:12px}.arrival .lunar-vow{position:absolute;top:68%;left:0;right:0;padding:0 20px;opacity:0;font:italic clamp(30px,4vw,55px)/1.3 var(--serif);color:#f0dfba;margin:0;pointer-events:none}.arrival.is-opening .lunar-copy,.arrival.is-opening .arrival-heading{opacity:0;transition:opacity .7s;pointer-events:none}.arrival.is-opening .wedding-moon{animation:moon-union 5.2s both}.arrival.is-opening .moon-disc{animation:moon-dim 5.2s both}.arrival.is-opening .wedding-constellation{animation:rings-appear 5.2s both}.arrival.is-opening .ring{animation:draw-ring 1.7s .45s ease both}.arrival.is-opening .ring-two{animation-delay:.8s}.arrival.is-opening .lunar-vow{animation:stars-vow 5.2s both}.arrival.is-opening .lunar-sky,.arrival.is-opening .arrival-bottom{animation:sky-dissolve 5.2s both}@keyframes moon-union{0%{opacity:1}35%,70%{transform:translateY(70px) scale(1.25);opacity:1}to{transform:translateY(45px) scale(1.4);opacity:0}}@keyframes moon-dim{35%,75%{opacity:.24}to{opacity:0}}@keyframes rings-appear{0%{opacity:0}20%,75%{opacity:1}to{opacity:0}}@keyframes draw-ring{to{stroke-dashoffset:0}}@keyframes stars-vow{0%,35%{opacity:0;transform:translateY(12px)}50%,75%{opacity:1;transform:none}to{opacity:0}}@keyframes sky-dissolve{0%,78%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:no-preference){.lunar-stars i{animation:star-shimmer 4s var(--delay) ease-in-out infinite alternate}.moon-disc{animation:moon-turn 120s linear infinite,living-moon 12s ease-in-out infinite alternate}.moon-disc>g{transform-origin:center;animation:lunar-drift 28s ease-in-out infinite alternate}.wedding-moon:before{animation:moon-breathe 6s ease-in-out infinite alternate}.moon-haze{animation:moon-haze 18s ease-in-out infinite alternate}}@keyframes moon-turn{to{rotate:360deg}}@keyframes living-moon{0%{transform:translateY(0);filter:drop-shadow(0 0 18px #ded9ba35)}to{transform:translateY(-10px);filter:drop-shadow(0 0 42px #ded9ba65)}}@keyframes lunar-drift{to{transform:rotate(18deg);opacity:.2}}@keyframes moon-breathe{to{transform:scale(1.2);opacity:.55}}@keyframes moon-haze{to{transform:translate(8%) rotate(-10deg);opacity:.5}}@keyframes star-shimmer{to{opacity:.15}}[dir=rtl] .arrival .lunar-copy h2{font-size:clamp(45px,6vw,85px);line-height:1.5;letter-spacing:0;margin:6px 0 16px}[dir=rtl] .arrival .lunar-copy .eyebrow,[dir=rtl] .arrival .moon-open{font-size:14px;letter-spacing:0}[dir=rtl] .arrival #arrival-hint{font-style:normal;font-size:18px}[dir=rtl] .arrival #skip-arrival,[dir=rtl] .arrival .arrival-bottom{font-size:13px;letter-spacing:0}[dir=rtl] .arrival .lunar-vow{font-style:normal}@media(max-width:580px){.arrival .arrival-invitation{padding-top:38px}.wedding-moon{width:clamp(135px,23svh,195px);margin-bottom:26px}.arrival .lunar-copy h2{font-size:clamp(41px,11vw,61px);gap:12px;margin:20px 0}.arrival .lunar-copy .eyebrow{font-size:8px;letter-spacing:.18em}.arrival .moon-open{margin-top:26px}.arrival #arrival-hint{font-size:16px}.arrival .arrival-bottom{inset-inline:4%;font-size:8px}[dir=rtl] .arrival .lunar-copy h2{font-size:47px}}@media(max-height:560px){.arrival .arrival-dedication{display:none}.arrival .arrival-heading{top:3%}.arrival .arrival-invitation{flex-direction:row;justify-content:center;gap:35px;padding:25px 16px 0}.wedding-moon{width:130px;flex-shrink:0;margin:0}.arrival .lunar-copy h2,[dir=rtl] .arrival .lunar-copy h2{font-size:38px;margin:10px 0;gap:10px}.arrival .moon-open{margin-top:14px;padding:9px 14px}.arrival #arrival-hint{margin-top:9px;font-size:14px}.arrival .lunar-copy .eyebrow{font-size:8px}.arrival .lunar-vow{top:100%;font-size:26px}.arrival .arrival-bottom{bottom:0}@keyframes moon-union{35%,70%{transform:translate(50px) scale(1.1)}to{opacity:0;transform:translate(50px) scale(1.2)}}}@media(max-width:400px)and (max-height:650px){.arrival .arrival-invitation{padding-top:18px}.wedding-moon{width:130px;margin-bottom:16px}.arrival .lunar-copy h2{margin:12px 0}.arrival .moon-open{margin-top:18px}.arrival .arrival-dedication{font-size:18px}}main .hero{display:flex;flex-direction:column;justify-content:center;gap:24px;background:radial-gradient(ellipse at 50% 30%,#263645,#101b2d 45%,#080f1c)}main .hero-shade{background:radial-gradient(circle at 15% 30%,#e9e0ca99 0 1px,transparent 2px),radial-gradient(circle at 75% 60%,#e9e0ca77 0 1px,transparent 2px),radial-gradient(circle at 40% 20%,#e9e0ca66 0 1px,transparent 2px);background-size:231px 263px,319px 211px,377px 307px}main .hero-moon{width:clamp(135px,19svh,190px);flex-shrink:0;position:relative}main .hero-content{position:relative}main .hero .names{font-size:clamp(64px,8vw,120px)}main .hero .eyebrow{margin-bottom:12px}main .hero-poem{margin-top:16px}main .hero .discover{margin-top:24px}main .letter,main .gallery{background-color:#0c1728;background-image:radial-gradient(ellipse at 15% 15%,#43628625,transparent 60%)}main .rendezvous{background:radial-gradient(ellipse at center,#1a2d45,#080f1c 80%)}main .moon-phases{position:relative;display:flex;justify-content:center;align-items:center;gap:30px;margin:0 auto 42px}.moon-phases i{width:22px;height:22px;border-radius:50%;background:#e1dccb;box-shadow:0 0 15px #d9e8ff22}.moon-phases i:nth-child(1){background:#182740;box-shadow:inset 5px 0 #d9d5c7}.moon-phases i:nth-child(2){background:linear-gradient(90deg,#dfd9c7 50%,#182740 50%)}.moon-phases i:nth-child(4){background:linear-gradient(90deg,#182740 50%,#dfd9c7 50%)}.moon-phases i:nth-child(5){background:#182740;box-shadow:inset -5px 0 #d9d5c7}main .portrait img,main .gallery-grid img{filter:saturate(.45) brightness(.72);box-shadow:0 15px 65px #03091655}main .portrait{padding:0 0 35px}main .portrait:before{inset:-12px -12px 50px;border-radius:50%;border-color:#d5c5a444}main .portrait figcaption{margin-top:20px}main .letter-copy .eyebrow,main .rsvp-copy .eyebrow{color:var(--gold)}main .evening{background-color:#0b1423}main .evening-photo img{filter:saturate(.35) brightness(.65)}main .evening-photo:after{background:linear-gradient(90deg,#101e3320,#0b142340 55%,#0b1423)}[dir=rtl] main .evening-photo:after{background:linear-gradient(-90deg,#101e3320,#0b142340 55%,#0b1423)}main .gallery-heading .eyebrow,main .gallery-grid figcaption span{color:var(--gold)}main .rsvp{background:radial-gradient(ellipse at 85% 15%,#35506d30,transparent 65%),#101d30}main .rsvp input:not([type=radio]),main .rsvp textarea{background:#091423;border:1px solid #75849b70;color:var(--cream)}main .rsvp input[type=radio]{accent-color:#d9c39a}main .rsvp .button{background:var(--gold);color:#0b1423;border-color:var(--gold)}main .rsvp .button:hover{background:#efddba}main .finale{background:radial-gradient(ellipse at 50% 20%,#233952,#0b1423 65%)}main .finale:before,main .finale:after{width:440px;height:440px;border-radius:50%;opacity:.5}main .finale-moon{width:100px;margin:0 auto 38px}body .experience-controls{background:#0b1423f5}body #secret{background:radial-gradient(ellipse at top,#263c55,#080f1c)}body .skip:focus{background:#0b1423;color:var(--cream)}@media(max-width:800px){main .hero .names{flex-direction:row;font-size:clamp(43px,10vw,75px);gap:14px;line-height:1.2}main .hero .names em{font-size:.6em}[dir=rtl] main .hero .names{flex-direction:row;font-size:clamp(44px,10vw,70px);gap:14px;line-height:1.5}}@media(max-width:580px){main .hero{padding-top:125px;padding-bottom:125px;gap:30px}main .hero-moon{width:165px}main .hero .hero-poem{font-size:23px}main .evening-photo:after,[dir=rtl] main .evening-photo:after{background:linear-gradient(180deg,#101e3300 25%,#0b1423)}main .portrait{max-width:280px}.moon-phases{gap:23px}}@media(max-height:600px){main .hero-moon{width:115px}}:root{--night:#0b1423;--deep:#080f1c;--cream:#f3ebd8;--gold:#d9c39a;--ink:#f3ebd8;--muted:#b7c0cf;--line:#bba77545;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Manrope",sans-serif;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--night);color:var(--ink);font:15px/1.9 var(--sans)}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a,button{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:clamp(42px,5.2vw,76px);line-height:1.04;letter-spacing:-.035em}h3{font-size:28px;line-height:1.3}p+p{margin-top:20px}a,button,input,textarea{outline-offset:6px}:focus-visible{outline:2px solid #ac813e}button{border-radius:0}.section-pad{padding:110px max(7.5vw,24px)}.eyebrow{text-transform:uppercase;font:500 10px/1.8 var(--sans);letter-spacing:.24em}.gold-rule{width:58px;height:1px;background:#a4874b;margin:30px 0}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip:focus{position:fixed;inset:10px auto auto 10px;z-index:50;padding:10px 20px;background:var(--cream)}.masthead{position:absolute;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:24px 4.5vw;z-index:5;color:var(--cream);border-bottom:1px solid #f4f0e628}.monogram{border:0;background:none;font:32px/1 var(--serif);min-width:70px;min-height:48px;letter-spacing:-.07em;color:inherit}.monogram span{font-style:italic;font-size:22px;color:var(--gold);padding:0 3px}.masthead nav{display:flex;gap:38px}.masthead a{font-size:10px;letter-spacing:.13em;text-transform:uppercase;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.masthead a:hover{color:var(--gold)}.language{min-width:44px;justify-content:center}.hero{min-height:820px;min-height:100svh;position:relative;isolation:isolate;display:grid;place-items:center;color:var(--cream);overflow:hidden;background:var(--night);padding:150px 24px 125px}.hero-photo,.hero-shade,.dust{position:absolute;inset:0;z-index:-2}.hero-photo img{object-position:center;filter:saturate(.65)}.hero-shade{z-index:-1;background:linear-gradient(180deg,#101f3599,#0d182b7a 38%,#0b1423bd 83%,#080f1ce8)}.hero:after{content:"";position:absolute;inset:115px 26px 95px;border:1px solid #e8d6b425;pointer-events:none;z-index:-1}.hero-content{text-align:center}.hero .eyebrow{color:#eee1c5;margin-bottom:28px;font-size:10px}.names{display:flex;align-items:center;justify-content:center;gap:28px;font-size:clamp(80px,10.8vw,165px);line-height:1.15;letter-spacing:-.055em;text-shadow:0 8px 45px #0c1b1b40}.names em{color:var(--gold);font-size:.57em;font-weight:400;letter-spacing:-.07em}.hero-poem{font:italic 25px/1.45 var(--serif);margin-top:30px;color:#f7eddc}.discover{display:inline-flex;flex-direction:column;align-items:center;gap:18px;text-decoration:none;margin-top:46px;font-size:10px;letter-spacing:.1em}.arrow{font:24px var(--serif);height:42px;width:42px;display:grid;place-items:center;border:1px solid #f2e3be55;border-radius:50%}.hero-bottom{position:absolute;bottom:32px;inset-inline:7.5vw;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.2em}.little-star{font-size:18px;color:var(--gold)}.vertical-note{position:absolute;inset-inline-start:48px;top:50%;writing-mode:vertical-rl;font-size:8px;letter-spacing:.32em}.dust{z-index:0;pointer-events:none;overflow:hidden}.dust i{position:absolute;left:calc(5% + var(--i)*8%);top:calc(15% + mod(var(--i)*17,70)*1%);width:3px;height:3px;background:#ffdb99;border-radius:50%;box-shadow:0 0 12px 3px #ffdeaf55;opacity:.35}.dust i:nth-child(3n){top:70%}.dust i:nth-child(3n+1){top:30%}.letter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:11%;background:radial-gradient(ellipse at top right,#47688730,transparent 70%),var(--night)}.portrait{position:relative;padding:0 24px 30px 0}.portrait img{aspect-ratio:1;border-radius:50%;max-height:610px}.portrait:before{content:"";position:absolute;inset:16px 8px 65px -16px;border:1px solid #a4874b80;border-radius:50%;pointer-events:none}.portrait figcaption{font:italic 18px var(--serif);padding-top:22px;color:var(--muted)}.portrait-number{position:absolute;inset-inline-end:-6px;bottom:0;font:112px var(--serif);color:#b4a079}.letter-copy .blessing{font:italic 18px/1.8 var(--serif);color:var(--muted);margin:32px 0 18px}.letter-copy>p:not(.eyebrow):not(.blessing):not(.signature){max-width:430px;color:#bac6d6}.signature{font-size:12px;margin-top:30px}.signature em{font:italic 34px/1.7 var(--serif)}.rendezvous{position:relative;overflow:hidden;isolation:isolate;background:var(--night);color:var(--cream);text-align:center;padding-block:105px}.rendezvous .eyebrow{color:var(--gold);margin-bottom:24px}.rendezvous h2{font-size:clamp(36px,4.2vw,60px)}.event-date{font:italic 22px var(--serif);margin-top:20px;color:var(--gold)}.countdown{direction:ltr;display:flex;justify-content:center;margin:50px auto 40px;max-width:750px}.countdown>div{width:25%;border-inline-end:1px solid #d9c39a30}.countdown>div:last-child{border:0}.countdown b{display:block;font:400 clamp(46px,7vw,95px)/1 var(--serif);font-variant-numeric:tabular-nums}.countdown span{display:block;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-top:14px}.text-link{display:inline-flex;align-items:center;gap:24px;padding:12px 0;border-bottom:1px solid currentColor;text-decoration:none;font-size:11px;letter-spacing:.08em;cursor:pointer;min-height:44px}.text-link span{font-size:20px}.orbit{position:absolute;inset:30px auto auto 50%;width:900px;height:900px;transform:translate(-50%);border:1px solid #d9c39a0f;border-radius:50%;z-index:-1}.orbit:after{content:"";position:absolute;inset:45px;border:1px solid #d9c39a0c;border-radius:50%}.evening{position:relative;background:#0b1423;color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:10%;overflow:hidden;isolation:isolate;padding-block:100px}.evening-photo{position:absolute;inset:0 50% 0 0;z-index:-2}.evening-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101e3310,#0b142350 65%,#0b1423)}.evening-photo img{filter:saturate(.7);object-position:50% 55%}.evening-copy{grid-column:2}.evening .eyebrow{color:var(--gold);margin-bottom:24px}.evening-copy>p:not(.eyebrow){max-width:400px;color:#c1cbd7;margin-top:24px}.timeline{list-style:none;padding:0;margin:42px 0}.timeline li{display:flex;gap:24px;position:relative;padding-bottom:28px}.timeline li:last-child{padding-bottom:0}.timeline li:not(:last-child):before{content:"";position:absolute;inset-inline-start:18px;top:37px;bottom:0;border-inline-start:1px solid #d9c39a55}.timeline-dot{width:37px;height:37px;flex:none;border:1px solid #d9c39a55;border-radius:50%;display:grid;place-items:center;font:13px var(--serif);color:var(--gold)}.timeline time{font-size:10px;letter-spacing:.14em;color:var(--gold)}.timeline h3{font-size:26px;margin-top:2px}.venue{border-top:1px solid #d9c39a30;padding-top:28px}.venue .eyebrow{font-size:9px;margin-bottom:12px}.venue>p:not(.eyebrow){font-size:12px;color:#c1cbd7;margin-top:7px}.venue .text-link{margin-top:14px;color:var(--gold)}.candlelight{position:absolute;inset:auto auto -180px 10%;width:400px;height:650px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse,#9fc2ef28,transparent 65%)}.gallery-heading{text-align:center;margin-bottom:54px}.gallery-heading .eyebrow{color:#c9b88f}.gallery-heading h2{margin-top:16px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:5%}.gallery-grid figure:first-child{margin-top:75px}.gallery-grid figure:last-child{margin-bottom:75px}.gallery-grid img{height:auto;aspect-ratio:4/5}.gallery-grid figcaption{display:flex;gap:20px;align-items:center;font:italic 24px var(--serif);padding-top:20px}.gallery-grid figcaption span{font:10px var(--sans);color:#c9b88f}.gallery>.demo-note{text-align:center;margin-top:30px}.demo-note{color:var(--muted);font-size:11px;line-height:1.7}.rsvp{display:grid;grid-template-columns:1fr 1fr;gap:12%;border-top:1px solid var(--line);background:#101d30}.rsvp-copy .eyebrow{margin-bottom:28px}.rsvp-copy>p:not(.eyebrow){max-width:300px;margin-top:26px;color:#bac6d6}.seal{display:flex;flex-direction:column;align-items:center;justify-content:center;width:104px;height:104px;margin-top:40px;border-radius:50%;border:1px solid #a68c56;background:radial-gradient(ellipse at 30% 25%,#f0dfad,#c8ab6b 65%,#a8864f);color:#5d4a29;box-shadow:inset 0 0 0 5px #d8bd7a,inset 0 0 0 6px #ae8e4e,0 6px 12px #55452118;transition:transform .25s}.seal:hover{transform:rotate(-8deg)}.seal>span{font:italic 29px var(--serif)}.seal small{font-size:8px;letter-spacing:.13em}.rsvp form>label,.rsvp legend{display:block;font-size:12px;margin-bottom:10px}.rsvp input:not([type=radio]),.rsvp textarea{width:100%;border:0;border-bottom:1px solid #aebbd266;background:#c6d4ec0b;padding:12px;color:var(--ink);font-size:16px;resize:vertical}.rsvp fieldset{border:0;padding:0;margin:30px 0}.choice{display:flex;gap:12px;align-items:center;min-height:44px;font-size:13px;cursor:pointer}.choice input{accent-color:var(--night);width:18px;height:18px}.button{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--night);background:var(--night);color:var(--cream);padding:16px 24px;min-height:54px;font-size:11px;letter-spacing:.08em;transition:background .2s}.button:hover{background:#243853}.button span{font-size:20px}.rsvp .button{width:100%;margin:26px 0 14px}.rsvp #form-status{font-size:13px;margin-top:12px}.finale{background:var(--night);color:var(--cream);text-align:center;position:relative;overflow:hidden;padding-bottom:95px}.finale:before,.finale:after{content:"";position:absolute;width:270px;height:480px;border:1px solid #d9c39a20;border-radius:50% 50% 0 0;top:70px;transform:rotate(-20deg);left:-130px}.finale:after{left:auto;right:-130px;transform:rotate(20deg)}.finale .eyebrow{color:var(--gold);margin-bottom:30px}.finale h2{font-size:clamp(65px,8vw,115px);font-style:italic}.finale p:not(.eyebrow):not(.secret-hint){color:#c7d1de;margin-top:24px;font-size:13px}.footer-monogram{margin-top:24px;font-size:45px}.secret-hint{font:italic 16px var(--serif);color:var(--gold);margin-top:10px}.credit{display:inline-block;text-decoration:none;font:12px var(--sans);letter-spacing:.3em;margin-top:65px}.credit span{font-size:8px;color:#bcc7d8;letter-spacing:.16em}.experience-controls{position:fixed;z-index:10;bottom:18px;inset-inline-end:22px;display:flex;border:1px solid #d9c39a45;background:#0b1423f5;color:var(--cream);border-radius:30px;box-shadow:0 5px 30px #0002;overflow:hidden}.experience-controls button{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 15px;border:0;background:none;color:inherit;font-size:10px}.experience-controls button+button{border-inline-start:1px solid #d9c39a30}.experience-controls button[aria-pressed=false]{color:#bdc8d9}.experience-controls button:focus-visible{outline-offset:-5px}.sound-bars{height:15px;display:flex;align-items:center;gap:2px}.sound-bars i{height:5px;width:2px;background:var(--gold)}.sound-bars i:nth-child(2){height:13px}.sound-bars i:nth-child(3){height:9px}dialog{width:min(540px,calc(100% - 32px));max-height:85svh;overflow:auto;text-align:center;padding:70px 40px 35px;border:1px solid #d9c39a80;background:var(--deep);color:var(--cream);box-shadow:0 0 0 8px #d9c39a15}dialog::backdrop{background:#0b120cd9;backdrop-filter:blur(8px)}dialog h2{font-size:48px;margin:25px 0}dialog>p:not(.eyebrow){font-size:13px;color:#d0d9e6}dialog .eyebrow{font-size:8px;color:var(--gold)}.dialog-close{position:absolute;inset:10px 10px auto auto;width:44px;height:44px;border:0;background:none;color:var(--gold);font-size:26px}.secret-stars{font:26px var(--serif);letter-spacing:.3em;color:var(--gold);margin-bottom:26px}.secret-stars.wished{color:#fff4c0;text-shadow:0 0 18px #ffdfa8}.button#wish{margin:28px auto 0;background:var(--gold);color:var(--deep);border-color:var(--gold)}#wish:disabled{opacity:.7;cursor:default}#wish-status{min-height:26px;margin-top:20px}[dir=rtl]{--serif:"Amiri",serif;--sans:"Noto Naskh Arabic",serif;font-size:18px}[dir=rtl] .eyebrow,[dir=rtl] .masthead a,[dir=rtl] .hero-bottom,[dir=rtl] .countdown span,[dir=rtl] .button{letter-spacing:0;font-size:14px}[dir=rtl] h2{line-height:1.45;letter-spacing:0}[dir=rtl] .names{letter-spacing:0;gap:35px;line-height:1.5}[dir=rtl] .names em,[dir=rtl] .hero-poem{font-style:normal}[dir=rtl] .monogram,[dir=rtl] .seal span{font-family:Cormorant Garamond,Georgia,serif}[dir=rtl] .evening-photo{inset:0 0 0 50%}[dir=rtl] .evening-photo:after{background:linear-gradient(-90deg,#101e3310,#0b142350 65%,#0b1423)}[dir=rtl] .experience-controls button{font-size:13px}[dir=rtl] .rsvp form>label,[dir=rtl] .rsvp legend,[dir=rtl] .choice,[dir=rtl] .demo-note{font-size:15px}[dir=rtl] .finale h2{font-style:normal}@media(prefers-reduced-motion:no-preference){.hero-photo{animation:scene-drift 24s ease-in-out infinite alternate}.enter{animation:arrive 1.5s both cubic-bezier(.18,.65,.3,1)}.names{animation-delay:.2s}.hero-poem{animation-delay:.5s}.discover{animation-delay:.8s}.dust i{animation:mote calc(8s + var(--i)*.8s) ease-in-out infinite alternate;animation-delay:calc(var(--i)*-.9s)}.candlelight{animation:candle 5s ease-in-out infinite alternate}.arrow{animation:beckon 2.8s ease-in-out infinite}.sound-bars i{animation:equalize .9s ease-in-out infinite alternate;animation-play-state:paused}.sound-bars i:nth-child(2n){animation-delay:-.6s}#sound[aria-pressed=true] .sound-bars i{animation-play-state:running}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity 1s,transform 1s cubic-bezier(.2,.65,.3,1)}.js .reveal.visible{opacity:1;transform:none}.secret-stars.wished{animation:starlight 1.5s ease-out}}@keyframes arrive{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes scene-drift{0%{transform:scale(1)}to{transform:scale(1.075)}}@keyframes mote{0%{transform:translateY(30px);opacity:.1}to{transform:translate(24px,-55px);opacity:.7}}@keyframes candle{0%{opacity:.35;transform:scale(.9)}to{opacity:1;transform:scale(1.1)}}@keyframes beckon{50%{transform:translateY(6px)}}@keyframes equalize{to{transform:scaleY(.35)}}@keyframes starlight{50%{transform:scale(1.16);text-shadow:0 0 30px #fff}}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused .enter,.motion-paused .reveal{opacity:1!important;transform:none!important;transition:none!important}html:has(.motion-paused){scroll-behavior:auto}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.seal:hover{transform:none}.js .reveal{opacity:1;transform:none}*,*:before,*:after{animation:none!important}.hero-photo{transform:none}.button,.seal{transition:background .15s}}.vertical-note{inset-inline-start:auto;left:48px;right:auto}.hero-bottom{bottom:65px}[dir=rtl] .vertical-note{left:auto;right:48px}@media(min-width:1600px){.section-pad{padding-inline:max(7.5vw,calc((100vw - 1360px)/2))}}@media(max-width:800px){.section-pad{padding:75px 28px}.masthead{padding:16px 22px}.masthead nav{gap:18px}.masthead a{font-size:9px}.hero{min-height:780px;min-height:100svh;padding-top:130px}.hero:after{inset:95px 16px 88px}.names{font-size:100px;display:flex;flex-direction:column;gap:0;line-height:.95}.names em{font-size:49px;line-height:1.3}.hero .eyebrow{font-size:9px;letter-spacing:.17em;margin-bottom:25px}.hero-poem{font-size:23px;margin-top:22px}.discover{margin-top:26px;gap:12px}.vertical-note{display:none}.hero-bottom{font-size:8px;letter-spacing:.12em;inset-inline:28px;bottom:65px}.letter{gap:7%}.letter h2{font-size:43px}.letter-copy>p:not(.eyebrow):not(.blessing):not(.signature){font-size:13px}.portrait{padding-inline-end:10px}.portrait:before{inset-inline-start:-9px;inset-inline-end:0}.portrait-number{font-size:80px}.evening{grid-template-columns:1fr 1.15fr;gap:6%}.evening h2{font-size:44px}.gallery-grid{gap:24px}.gallery-grid figcaption{font-size:21px}.rsvp{gap:7%}[dir=rtl] .names{line-height:1.05;gap:6px}[dir=rtl] .names em{line-height:1}[dir=rtl] .hero .eyebrow{font-size:13px;letter-spacing:0}[dir=rtl] .letter-copy>p:not(.eyebrow):not(.blessing):not(.signature){font-size:17px}}@media(max-width:580px){.masthead nav a:first-child{display:none}.masthead nav{gap:24px}.masthead .monogram{font-size:29px;min-width:54px}.hero-photo img{object-position:center}.hero-bottom{font-size:7px;gap:8px;letter-spacing:.08em}.letter{grid-template-columns:1fr;gap:55px}.portrait{max-width:340px;width:86%;margin:auto}.portrait img{max-height:430px}.letter-copy{padding-inline:5px}.letter h2{font-size:49px}.letter-copy>p:not(.eyebrow):not(.blessing):not(.signature){font-size:14px}.letter-copy .blessing{font-size:17px}.countdown{margin-block:36px}.countdown b{font-size:50px}.countdown span{font-size:8px;letter-spacing:.07em}.rendezvous h2{font-size:41px}.rendezvous .eyebrow{font-size:9px}.event-date{font-size:20px}.evening{display:block;padding-top:340px}.evening-photo{inset:0 0 auto;height:420px}.evening-photo img{object-position:center 43%}.evening-photo:after{background:linear-gradient(180deg,#0b142300 35%,#0b1423)}.evening-copy{position:relative}.evening h2{font-size:57px}.evening-copy>p:not(.eyebrow){font-size:14px}.candlelight{left:-180px}.gallery-grid{gap:16px}.gallery-grid figure:first-child{margin-top:38px}.gallery-grid figure:last-child{margin-bottom:38px}.gallery-grid img{aspect-ratio:3/5}.gallery-grid figcaption{font-size:19px;display:block;line-height:1.2}.gallery-grid figcaption span{display:block;margin-bottom:10px}.gallery-heading h2{font-size:44px}.rsvp{grid-template-columns:1fr;gap:40px}.rsvp-copy{position:relative}.rsvp h2{font-size:59px}.rsvp-copy>p:not(.eyebrow){max-width:230px}.seal{width:76px;height:76px}.seal>span{font-size:22px}.seal small{font-size:6px}.experience-controls{inset-inline-end:12px;bottom:12px}.experience-controls button{font-size:9px;padding:8px 12px}.finale{padding-bottom:95px}.finale h2{font-size:67px}dialog{padding:60px 25px 30px}dialog h2{font-size:41px}[dir=rtl] .evening-photo{inset:0 0 auto}[dir=rtl] .evening-photo:after{background:linear-gradient(180deg,#0b142300 35%,#0b1423)}[dir=rtl] .hero-bottom{font-size:12px}[dir=rtl] .masthead a{font-size:13px}[dir=rtl] .rsvp h2{font-size:52px}[dir=rtl] .countdown span{font-size:13px}}
