@font-face{font-family:cormorant;src:url(../media/cormorant_regular-s.p.0ff3afb71bau2.ttf)format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:cormorant;src:url(../media/cormorant_italic-s.p.1tllqyq3m6y17.ttf)format("truetype");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:cormorant;src:url(../media/cormorant_medium-s.p.3tzynwpmh2ge3.ttf)format("truetype");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:cormorant;src:url(../media/cormorant_medium_italic-s.p.2j-jz9ibqiezn.ttf)format("truetype");font-display:swap;font-weight:500;font-style:italic}@font-face{font-family:cormorant Fallback;src:local(Arial);ascent-override:105.17%;descent-override:32.67%;line-gap-override:0.0%;size-adjust:87.85%}.LcXxzW_className{font-family:cormorant,cormorant Fallback}.LcXxzW_variable{--font-serif:"cormorant", "cormorant Fallback"}
@font-face{font-family:dmSans;src:url(../media/dm_sans-s.p.1lf96kbl_wni-.ttf)format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:dmSans;src:url(../media/dm_sans_medium-s.p.0uw4im59apgn9.ttf)format("truetype");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:dmSans Fallback;src:local(Arial);ascent-override:94.36%;descent-override:29.49%;line-gap-override:0.0%;size-adjust:105.13%}.hZ1M5G_className{font-family:dmSans,dmSans Fallback}.hZ1M5G_variable{--font-sans:"dmSans", "dmSans Fallback"}
html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}
:root{--cream:#f6f3eb;--paper:#fbf8f0;--green:#173f35;--deep:#12372d;--ink:#263c32;--gold:#ac8d51;--muted:#82857a;--line:#dcdccf;--font-body:var(--font-sans),Arial,sans-serif}html.lenis{scroll-behavior:auto}.rsvp-dialog{overscroll-behavior:contain}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{background:var(--cream);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-weight:400}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0}a{color:inherit;text-decoration:none}button:disabled{cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:6px}::selection{background:#b69a5e55}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-serif),Georgia,serif;font-weight:400}em{font-weight:400}h2{font-size:clamp(38px,4.1vw,60px);line-height:1.06}h2 em{color:#6b7b5b}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site{isolation:isolate;min-height:100svh;position:relative}.site:after{content:"";pointer-events:none;z-index:20;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.7' d='M0 0h180v180H0z'/%3E%3C/svg%3E");position:fixed;inset:0}.site-header{border-bottom:1px solid var(--line);z-index:3;justify-content:space-between;align-items:center;height:98px;margin:0 5%;display:flex;position:relative}.monogram{font-family:var(--font-serif),serif;letter-spacing:-3px;white-space:nowrap;font-size:37px}.monogram>span:first-child{color:var(--gold);padding:0 3px;font-size:25px;font-style:italic}.monogram-dot{color:var(--gold);margin-left:3px}.header-date{letter-spacing:2.3px;white-space:nowrap;font-size:14px;position:absolute;left:50%;transform:translate(-50%)}.header-date>span{color:var(--gold);margin:0 11px}.header-note{font-family:var(--font-serif),serif;color:#727a68;align-items:center;gap:14px;font-size:18px;font-style:italic;display:flex}.header-note svg{color:var(--gold)}.eyebrow{font-family:var(--font-body);letter-spacing:2.7px;font-size:13px;font-weight:400;line-height:1.6}.entrance{background:radial-gradient(at 50% 43%,#fffdf6 0%,#f6f3eb00 65%);flex-direction:column;align-items:center;min-height:calc(100svh - 98px);display:flex;overflow:hidden}.entrance-heading{text-align:center;z-index:2;padding-top:47px}.entrance-heading>.eyebrow{color:#7d806e;justify-content:center;align-items:center;gap:14px;display:flex}.entrance-heading>.eyebrow>span{background:#b0a078;width:25px;height:1px}.entrance-heading h1{letter-spacing:-1.8px;margin:18px 0 17px;font-size:clamp(40px,4.1vw,64px);line-height:1.06}.entrance-heading h1 em{color:#6a795b;font-size:.93em}.entrance-heading>p:last-child{color:#85877b;letter-spacing:.15px;font-size:15px}.envelope{perspective:1100px;width:100%;height:100%;transform-style:preserve-3d;position:relative}.envelope-back{background:#173b31;border:1px solid #46604a;border-radius:4px;position:absolute;inset:0}.envelope-front{z-index:4;clip-path:polygon(0 0,50% 54%,100% 0,100% 100%,0 100%);background:linear-gradient(150deg,#315847 0%,#1c483b 44%,#163d32 100%);border-radius:3px;position:absolute;inset:0}.envelope-front:before{content:"";background:linear-gradient(33deg,#0000 49.65%,#9fba8c28 49.8%,#0000 50.15%),linear-gradient(-33deg,#0000 49.65%,#9fba8c28 49.8%,#0000 50.15%);position:absolute;inset:0}.envelope-front:after{content:"";border:1px solid #c4b57935;border-top:0;position:absolute;inset:13px}.envelope-lining{background:radial-gradient(at 50% 0,#8c98601a,#0000 70%);position:absolute;inset:0}.envelope-flap{z-index:5;clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top;backface-visibility:hidden;filter:drop-shadow(0 5px 3px #0006);background:linear-gradient(150deg,#385a47,#214635 65%,#35503b);height:58%;position:absolute;inset:0}.envelope-flap:before{content:"";clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(148deg,#0000 49.5%,#b8a06977 49.7%,#0000 50%),linear-gradient(-148deg,#0000 49.5%,#b8a06977 49.7%,#0000 50%);height:90%;position:absolute;top:10px;left:11px;right:11px}.envelope-botany{opacity:.7;width:110px;height:180px;position:absolute;bottom:-28px;right:13px;transform:rotate(-34deg)}.invitation-letter{background:var(--paper);z-index:2;border:8px double #b3a07977;flex-direction:column;justify-content:center;align-items:center;gap:16px;width:86%;height:245px;display:flex;position:absolute;top:13px;left:7%;box-shadow:0 0 15px #0002}.invitation-letter>.eyebrow{font-size:11px}.invitation-letter>span:nth-child(2){font-family:var(--font-serif),serif;font-size:30px}.invitation-letter>span em{color:var(--gold)}.invitation-letter small{letter-spacing:2px;font-size:11px}.wax-seal{z-index:7;background:linear-gradient(125deg,#e0c782 2%,#b6954f 27%,#d1b26d 49%,#a98a46 72%,#dfc785);border-radius:47% 53% 48% 51%/52% 45% 55% 48%;place-items:center;width:76px;height:76px;transition:scale .3s;display:grid;position:absolute;top:40%;left:calc(50% - 38px);transform:rotate(5deg);box-shadow:1px 4px 6px #061d2177,inset 0 0 0 2px #e1c581,inset 1px 2px 3px #f5dfa6}.wax-seal:hover{scale:1.08}.seal-inner{color:#715a31;text-shadow:0 1px 1px #f1d79a;border:1px solid #8c713d80;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:61px;height:61px;display:flex;box-shadow:inset 1px 1px 3px #7f602455,1px 1px 1px #f7e5ae}.seal-inner>span{font-family:var(--font-serif),serif;letter-spacing:-3px;font-size:30px;line-height:1}.seal-and{margin:0 1px;font-size:20px}.seal-inner small{letter-spacing:1.2px;margin-top:5px;font-size:8px}.floating-star{color:var(--gold);font-size:26px;animation:4s ease-in-out infinite star-glow;position:absolute}.star-one{top:25px;left:204px}.star-two{font-size:18px;animation-delay:1s;bottom:65px;right:127px}.star-three{font-size:17px;animation-delay:2s;top:17px;right:193px}.entrance-action{z-index:2;flex-direction:column;align-items:center;gap:17px;margin-top:5px;margin-bottom:42px;display:flex}.open-invitation{letter-spacing:.3px;background:0 0;border-bottom:1px solid #a3a88d;justify-content:center;align-items:center;gap:28px;padding:0 4px 12px;font-size:16px;display:flex}.open-invitation svg{transition:transform .3s}.open-invitation:hover svg{transform:translate(5px)}.entrance-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;width:90%;margin-top:auto;padding:23px 0 25px;display:flex}.entrance-footer>span:first-child{letter-spacing:2.2px;font-size:13px}.entrance-footer>span i{font-family:var(--font-serif),serif;color:var(--gold);margin:0 5px;font-size:18px}.footer-center{font-family:var(--font-serif),serif;color:#888b7e;font-size:18px;font-style:italic}.music-button{color:#767c6c;white-space:nowrap;background:0 0;align-items:center;gap:10px;padding:8px 0;font-size:13px;display:flex}.music-bars{align-items:center;gap:3px;height:14px;display:flex}.music-bars i{background:#869077;width:1px;height:5px}.music-bars i:nth-child(2){height:12px}.music-bars i:nth-child(3){height:8px}.music-bars i:nth-child(4){height:13px}.playing .music-bars i{animation:1s ease-in-out infinite alternate music}.playing .music-bars i:nth-child(2){animation-delay:.3s}.playing .music-bars i:nth-child(3){animation-delay:.6s}.playing .music-bars i:nth-child(4){animation-delay:.2s}.gold-dust{pointer-events:none;z-index:8;position:absolute;inset:0}.gold-dust i{opacity:0;background:#d0ad67;border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:50%}.opening .envelope-wrap{animation:.7s forwards envelope-level}.opening .wax-seal{animation:.6s forwards seal-break}.opening .envelope-flap{animation:.9s .3s forwards flap-open}.opening .invitation-letter{animation:1.3s .8s forwards letter-reveal}.opening .gold-dust i{animation:dust 1.7s calc(.5s + var(--i)*20ms) ease-out forwards}.opening .entrance-heading,.opening .entrance-action{opacity:.35;transition:opacity 1s}.opening .orbit{animation:2s forwards halo}.ornament{color:var(--gold);justify-content:center;align-items:center;gap:17px;font-size:22px;display:flex}.ornament>span{opacity:.5;background:currentColor;width:54px;height:1px}.opened .site-header{background:var(--deep);color:var(--cream);border-color:#c2b07826;height:84px;margin:0;padding:0 5%}.header-rsvp{color:#d5c495;background:0 0;align-items:center;gap:16px;font-size:14px;display:flex}.revealed{animation:1.3s both page-reveal}.wedding-hero{background:var(--deep);color:var(--cream);text-align:center;flex-direction:column;align-items:center;min-height:810px;padding:66px 25px 35px;display:flex;position:relative;overflow:hidden}.wedding-hero>.eyebrow{color:#c5b681;z-index:1;font-size:12px}.wedding-hero h1{letter-spacing:-1.5px;outline:none;margin:36px 0 22px;font-size:86px;line-height:.9;position:relative}.wedding-hero h1>span{letter-spacing:1px;margin-top:13px;font-size:20px;display:block}.wedding-hero h1>em{color:#c8ad70;margin:19px 0;font-size:54px;line-height:.8;display:block}.hero-arch{pointer-events:none;border:1px solid #bcaa6f3d;border-radius:290px 290px 0 0;width:570px;height:790px;position:absolute;top:29px}.hero-arch:after{content:"";border-radius:inherit;border:1px solid #bcaa6f17;position:absolute;inset:11px}.hero-botany{opacity:.6;pointer-events:none;width:330px;height:620px;position:absolute}.hero-botany-left{bottom:-90px;left:-70px;transform:rotate(-17deg)}.hero-botany-right{top:-80px;right:-70px;transform:scale(-1)}.hero-invitation{font-family:var(--font-serif),serif;color:#d6dccb;margin:17px 0 26px;font-size:22px;line-height:1.4}.hero-day{font-family:var(--font-serif),serif;font-size:27px}.hero-location{letter-spacing:2.8px;color:#b9c2ac;margin:12px 0 29px;font-size:12px}.button{letter-spacing:.3px;justify-content:center;align-items:center;gap:23px;min-height:54px;padding:18px 27px;font-size:15px;transition:transform .25s,background .25s;display:inline-flex;position:relative}.button:hover{transform:translateY(-3px)}.button.gold{color:#253e30;background:#d8c38c}.button.gold:hover{background:#e7d5a7}.button.green{background:var(--green);color:var(--cream)}.button.green:hover{background:#285242}.scroll-cue{letter-spacing:2px;color:#bdc3ac;flex-direction:column;gap:12px;margin-top:40px;font-size:11px;display:flex}.scroll-cue span{color:#c3ae76;font-size:22px}.verse-section{text-align:center;max-width:840px;margin:auto;padding:91px 24px 72px}.arabic{color:#8c784e;margin-bottom:27px;font-family:Georgia,serif;font-size:29px}.verse-section blockquote{font-family:var(--font-serif),serif;color:#64705a;margin:0 0 25px;font-size:28px;font-style:italic;line-height:1.4}.verse-section cite{font-family:var(--font-body);letter-spacing:2px;color:#8b8c7d;font-size:12px;font-style:normal}.verse-section .ornament{margin-top:36px}.countdown-section{text-align:center;padding:35px 20px 91px}.countdown-section>.eyebrow{color:#858672;margin-bottom:19px}.countdown{justify-content:center;margin:42px 0 33px;display:flex}.countdown>div{border-right:1px solid #cfccba;width:127px}.countdown>div:last-child{border:0}.countdown span{font-family:var(--font-serif),serif;font-size:57px;line-height:1;display:block}.countdown small{letter-spacing:2.4px;color:#8d8d79;margin-top:11px;font-size:11px;display:block}.text-link{border-bottom:1px solid #b5b49b;align-items:center;gap:10px;padding-bottom:10px;font-size:14px;display:inline-flex}.text-link>span{color:var(--gold);margin-left:13px}.program-section{border-top:1px solid var(--line);max-width:1160px;margin:0 auto;padding:71px 40px 86px}.section-heading{justify-content:space-between;align-items:end;gap:40px;display:flex}.section-heading .eyebrow{color:#7f836e;margin-bottom:21px}.section-heading>p{color:#838575;padding-bottom:5px;font-size:15px;line-height:1.9}.timeline{border-top:1px solid #c3c8b2;grid-template-columns:repeat(3,1fr);margin-top:49px;display:grid}.program-item{border-right:1px solid var(--line);flex-direction:column;align-items:flex-start;padding:41px 32px 0;display:flex;position:relative}.program-item:first-child{padding-left:0}.program-item:last-child{border-right:0}.program-number{background:var(--cream);color:#9a9b88;padding:4px 13px 4px 0;font-size:13px;position:absolute;top:-11px;left:32px}.program-item:first-child .program-number{left:0}.program-icon{height:43px;font-family:var(--font-serif),serif;color:var(--gold);align-items:center;font-size:40px;line-height:1;display:flex}.rings-icon{width:55px;position:relative}.rings-icon i{border:1px solid #ab8b51;border-radius:50%;width:25px;height:25px;display:block;transform:rotate(-20deg)}.rings-icon i+i{margin-left:-9px;transform:translateY(5px)}.program-time{font-family:var(--font-serif),serif;margin:20px 0 15px;font-size:37px}.program-time>span{margin:0 3px;font-size:21px}.program-item h3{margin-bottom:10px;font-size:28px;line-height:1.1}.program-item>p:not(.program-time){color:#7a826f;font-size:14px;line-height:1.8}.program-place{color:#707b66;margin:17px 0 22px;font-size:14px;line-height:1.8}.program-item>a{border-bottom:1px solid #c0c3ad;align-items:center;gap:6px;margin-top:auto;padding-bottom:7px;font-size:13px;display:flex}.program-item>a>span{margin-left:13px}.rsvp-section{text-align:center;background:#e9ecdf;justify-content:center;padding:82px 25px 75px;display:flex;position:relative;overflow:hidden}.rsvp-section>div{z-index:1;position:relative}.rsvp-section .eyebrow{color:#7a816b;margin-bottom:24px}.rsvp-section h2{font-size:clamp(37px,4.4vw,59px)}.rsvp-section p:not(.eyebrow){color:#78816d;margin:23px 0 29px;font-size:16px;line-height:1.9}.rsvp-botany{opacity:.7;width:330px;height:520px;position:absolute;bottom:-116px;left:-25px;transform:rotate(-28deg)}.text-button{text-underline-offset:5px;color:#808675;background:0 0;margin:19px auto 0;padding:7px;font-size:14px;text-decoration:underline;display:block}.main-footer{text-align:center;flex-direction:column;align-items:center;padding:48px 20px 26px;display:flex}.main-footer>p{font-family:var(--font-serif),serif;color:#7d826f;margin:10px 0 22px;font-size:20px;font-style:italic}.main-footer>span{letter-spacing:2px;color:#888b77;font-size:11px}.main-footer .music-button{margin-top:22px}.replay{color:#8d907e;background:0 0;margin-top:16px;padding:8px;font-size:13px}.rsvp-dialog{background:var(--paper);width:calc(100% - 30px);max-width:560px;max-height:90svh;color:var(--ink);border:1px solid #cfc7ad;margin:auto;padding:0;overflow:auto;box-shadow:0 20px 90px #001b2366}.rsvp-dialog::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0b271acc}.rsvp-dialog[open]{animation:.4s both dialog-in}.dialog-inner{padding:40px 41px 28px;position:relative}.dialog-close{color:#6c775f;background:0 0;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:15px;right:16px}.dialog-flower{color:#a48b54;text-align:center;margin-bottom:19px;font-size:42px;line-height:1;display:block}.dialog-inner>.eyebrow{text-align:center;font-size:11px}.dialog-inner h2{text-align:center;margin:13px 0 12px;font-size:43px}.dialog-intro{text-align:center;color:#828573;max-width:300px;margin:0 auto 24px;font-size:15px;line-height:1.7}.response-choices{border:0;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 24px;padding:0;display:grid}.response-choices label{cursor:pointer;border:1px solid #d7d6c4;justify-content:center;align-items:center;gap:7px;padding:15px 8px;font-size:14px;display:flex}.response-choices label.selected{background:#e9eedf;border-color:#6d8066}.response-choices input{accent-color:var(--green);width:12px;height:12px;margin:0}.field{flex-direction:column;gap:9px;margin:17px 0;font-size:14px;display:flex}.field>span{color:#8d8b7a;font-size:13px}.field input,.field textarea,.field select{resize:vertical;min-width:0;color:var(--green);background:0 0;border:1px solid #d8d6c8;border-radius:0;padding:12px 13px;font-size:16px}.field input::placeholder,.field textarea::placeholder{color:#a1a191;font-size:15px}.submit-button{width:100%;margin-top:6px}.local-note{color:#959382;text-align:center;line-height:1.7;margin:15px 0 0!important;font-size:13px!important}.form-error{color:#a14532;margin-bottom:12px;font-size:15px}.success{text-align:center;padding:30px 0 17px}.success-icon{color:#a68b4e;border:1px solid #a7945e;border-radius:50%;place-items:center;width:76px;height:76px;margin:0 auto 29px;display:grid}.success>p:not(.eyebrow){color:#7c826f;margin:21px 0;font-size:17px;line-height:1.8}.success .button{margin-top:25px}@keyframes envelope-appear{0%{opacity:0;transform:translateY(26px)rotate(-1deg)}to{opacity:1;transform:translateY(0)rotate(-5deg)}}@keyframes star-glow{0%,to{opacity:.35;transform:scale(.8)}50%{opacity:.9;transform:scale(1.1)}}@keyframes music{to{transform:scaleY(.4)}}@keyframes envelope-level{to{filter:drop-shadow(0 32px 20px #223b322b);transform:rotate(0)translateY(25px)}}@keyframes seal-break{40%{opacity:1;transform:scale(1.2)rotate(12deg)}to{opacity:0;transform:translateY(50px)scale(.7)rotate(25deg)}}@keyframes flap-open{to{z-index:1;transform:rotateX(180deg)}}@keyframes letter-reveal{0%{z-index:2;transform:translateY(0)}65%{z-index:2;transform:translateY(-155px)}to{z-index:6;transform:translateY(-174px)scale(1.1)}}@keyframes dust{0%{opacity:0;transform:translate(0)}20%{opacity:1}to{opacity:0;transform:translate(var(--x),var(--y)) rotate(180deg)}}@keyframes halo{to{opacity:0;transform:scale(1.3)}}@keyframes page-reveal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-in{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@media (min-height:900px) and (min-width:760px){.entrance-heading{padding-top:65px}.entrance-action{margin-top:8px}.entrance-footer{padding-top:28px;padding-bottom:28px}}@media (min-width:1500px){.entrance-heading h1{font-size:68px}}@media (max-width:760px){.site-header{height:78px;margin:0 6%}.monogram{font-size:31px}.header-date{letter-spacing:1.5px;font-size:12px;position:static;transform:none}.header-date>span{margin:0 6px}.header-note{display:none}.entrance{min-height:calc(100svh - 78px)}.entrance-heading{padding:44px 20px 0}.entrance-heading>.eyebrow{letter-spacing:2px;gap:10px;font-size:11px}.entrance-heading h1{letter-spacing:-1.5px;margin-top:20px;margin-bottom:19px;font-size:45px;line-height:1.05}.entrance-heading>p:last-child{max-width:270px;margin:auto;font-size:14px;line-height:1.8}.star-one{top:9px;left:103px}.star-two{bottom:45px;right:85px}.star-three{top:5px;right:140px}.invitation-letter{height:215px}.invitation-letter>span:nth-child(2){font-size:27px}.entrance-action{gap:16px;margin-top:-12px;margin-bottom:36px}.open-invitation{gap:30px;font-size:15px}.entrance-action>span{letter-spacing:1.6px;font-size:10px}.entrance-footer{width:88%;min-height:74px;padding:22px 0}.entrance-footer>span:first-child{letter-spacing:1.5px;font-size:11px}.footer-center{display:none}.music-button{font-size:12px}.opened .site-header{height:75px;padding:0 6%}.opened .header-date{display:none}.header-rsvp{gap:9px;font-size:13px}.wedding-hero{min-height:765px;padding-top:63px}.hero-arch{width:88%;height:740px;top:25px}.wedding-hero h1{margin-top:36px;font-size:73px}.wedding-hero h1>span{font-size:18px}.hero-botany{opacity:.38;width:210px;height:420px}.hero-botany-left{bottom:-60px;left:-95px}.hero-botany-right{top:-15px;right:-100px}.hero-invitation{max-width:270px;margin:18px 0 25px;font-size:20px;line-height:1.4}.desktop-break{display:none}.hero-day{font-size:25px}.hero-location{letter-spacing:2px;font-size:11px}.wedding-hero .button{padding:17px 22px}.scroll-cue{margin-top:34px}.verse-section{padding:65px 28px 48px}.arabic{font-size:25px;line-height:1.7}.verse-section blockquote{font-size:25px}.verse-section cite{letter-spacing:1.5px;font-size:11px}.countdown-section{padding:30px 22px 60px}.countdown-section>.eyebrow{letter-spacing:2px;font-size:11px}.countdown-section h2{max-width:310px;margin:auto;font-size:39px}.countdown{margin-top:30px}.countdown>div{width:80px}.countdown span{font-size:43px}.countdown small{letter-spacing:1px;font-size:10px}.text-link{gap:7px;font-size:13px}.program-section{padding:51px 27px 55px}.section-heading{display:block}.section-heading .eyebrow{letter-spacing:2px;margin-bottom:17px;font-size:11px}.section-heading h2{font-size:46px}.section-heading>p{margin-top:22px;font-size:14px}.timeline{border-top:0;border-left:1px solid #c3c8b2;margin-top:34px;margin-left:8px;display:block}.program-item,.program-item:first-child{border-right:0;min-height:260px;margin-bottom:18px;padding:0 0 38px 30px}.program-item:last-child{margin-bottom:0;padding-bottom:0}.program-number,.program-item:first-child .program-number{background:var(--cream);padding:5px 0;font-size:12px;top:5px;left:-9px}.program-icon{font-size:40px;position:absolute;top:1px;right:16px}.program-time{margin:0 0 12px;font-size:36px}.program-item h3{font-size:29px}.program-place{margin:13px 0 17px}.program-item>a{width:fit-content;margin-top:0}.rsvp-section{padding:62px 23px}.rsvp-section h2{font-size:38px}.rsvp-section .eyebrow{letter-spacing:2px;font-size:11px}.rsvp-section p:not(.eyebrow){font-size:15px}.rsvp-botany{opacity:.45;width:270px;bottom:-120px;left:-120px}.main-footer{padding-top:35px}.dialog-inner{padding:37px 23px 24px}.dialog-inner h2{font-size:36px}.response-choices label{gap:5px;padding:14px 5px;font-size:13px}.dialog-inner>.eyebrow{letter-spacing:2px;font-size:10px}.success h2{font-size:38px}}@media (max-width:380px){.entrance-heading h1{font-size:39px}.entrance-heading{padding-top:29px}.entrance-action{margin-top:-12px}.header-date{font-size:11px}.rsvp-section h2{font-size:34px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.opening .invitation-letter{opacity:0}}.music-dock{z-index:5;position:absolute;bottom:25px;right:5%}.opened .music-dock{bottom:30px;right:5%}.reply-actions{justify-content:center;gap:23px;display:flex}.reply-actions .text-button{margin:19px 0 0}.success h2:focus{outline:none}.open-invitation,.field input,.field select{min-height:44px}@media (max-width:760px){.music-placeholder{width:105px}.music-dock{bottom:25px;right:6%}.opened .music-dock{justify-content:center;padding-bottom:22px;display:flex;position:static}.field input,.field textarea,.field select{font-size:20px}.reply-actions{gap:16px}.entrance-footer{margin-top:auto}}.program-item>p:not(.program-time),.program-place{font-size:16px}.program-item>a{font-size:15px}.program-number{color:#747d66}.local-note{color:#737461}.field>span{color:#727764}@media (max-width:760px){.section-heading>p{font-size:16px}.program-item{min-height:275px}.entrance-action>span{font-size:11px}.entrance-heading>p:last-child{color:#737b68}}.sealed .envelope{animation:5s ease-in-out 1.4s infinite envelope-float}.site.opening:before{content:"";z-index:9;pointer-events:none;background:var(--deep);clip-path:circle(0% at 50% 60%);animation:.75s cubic-bezier(.65,0,.35,1) 1.6s forwards emerald-reveal;position:fixed;inset:0}.revealed .wedding-hero h1{animation:1.2s .15s both rise-in}.revealed .hero-invitation,.revealed .hero-day,.revealed .hero-location{animation:1.2s .4s both rise-in}.revealed .wedding-hero .button{animation:1.2s .65s both rise-in}@keyframes envelope-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes emerald-reveal{to{clip-path:circle(130% at 50% 60%)}}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-delay:0s!important}}.envelope-front:before{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 440 270' preserveAspectRatio='none'%3E%3Cpath d='M0 270L220 145L440 270' fill='none' stroke='%2395a77c' stroke-opacity='.24' stroke-width='1'/%3E%3C/svg%3E") 50%/100% 100%}.envelope-flap:before{clip-path:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 440 156' preserveAspectRatio='none'%3E%3Cpath d='M10 6L220 148L430 6' fill='none' stroke='%23b8a069' stroke-opacity='.4' stroke-width='1'/%3E%3C/svg%3E") 50%/100% 100%;height:100%;inset:0}.opened .music-dock{border:1px solid var(--line);background:#f6f3ebf5;border-radius:40px;padding:4px 14px;position:fixed;bottom:22px;right:25px;box-shadow:0 3px 15px #12372d15}.opened .music-dock .music-button{color:#526445}.envelope-trigger{text-align:initial;cursor:pointer;background:0 0;border-radius:4px;padding:0;transition:filter .3s;display:block}.envelope-trigger:focus-visible{outline:3px solid var(--gold);outline-offset:12px}.envelope-trigger:hover{filter:drop-shadow(12px 28px 25px #223b3244)}.envelope{display:block}.sealed .wax-seal{animation:2.8s ease-in-out infinite seal-invitation}.envelope-instruction{color:#59694f;justify-content:center;align-items:center;gap:10px;font-size:15px;line-height:1.5;display:flex}.envelope-instruction>span{color:var(--gold);font-size:27px}.entrance-action{gap:14px;width:min(440px,100% - 40px)}.open-invitation{background:var(--green);width:100%;min-height:64px;color:var(--paper);border:1px solid #9c8a58;border-radius:4px;gap:25px;padding:17px 25px;font-size:19px;font-weight:500;transition:background .25s,transform .25s,box-shadow .25s;box-shadow:0 8px 24px #173f3526,inset 0 0 0 4px #f6f3eb08}.open-invitation:hover{background:#285643;transform:translateY(-3px);box-shadow:0 12px 28px #173f3538}.open-invitation svg{color:#dcc58a;flex-shrink:0}.entrance-action>span{letter-spacing:1.4px;color:#6f755f;font-size:11px}.entrance-heading>p:last-child{color:#6a735f;font-size:17px;line-height:1.6}.eyebrow{letter-spacing:2px;font-size:12px}.wedding-hero>.eyebrow{font-size:12px}.hero-invitation{font-size:27px}.hero-day{font-size:33px}.hero-location{font-size:13px}.scroll-cue{font-size:12px;line-height:1.6}.button{min-height:58px;font-size:16px}.program-item>p:not(.program-time),.program-place,.section-heading>p{font-size:16px}.program-item>a,.text-link{font-size:15px}.countdown small{letter-spacing:1.5px;font-size:12px}.verse-section cite{font-size:12px}.rsvp-section p:not(.eyebrow){font-size:16px}.local-note{font-size:12px!important}.music-placeholder{width:190px}.entrance-footer{gap:16px}.main-footer{padding-bottom:85px}@keyframes seal-invitation{0%,to{box-shadow:1px 4px 6px #061d2177,0 0 #d6b96c44,inset 0 0 0 2px #e1c581,inset 1px 2px 3px #f5dfa6}60%{box-shadow:1px 4px 6px #061d2177,0 0 0 15px #d6b96c00,inset 0 0 0 2px #e1c581,inset 1px 2px 3px #f5dfa6}}@media (max-width:760px){.entrance-heading{padding-top:28px}.entrance-heading>.eyebrow{letter-spacing:1.3px;font-size:11px}.entrance-heading h1{margin-top:16px;margin-bottom:16px}.entrance-heading>p:last-child{max-width:335px;font-size:16px}.entrance-action{gap:12px;margin-top:0;margin-bottom:28px}.envelope-instruction{text-align:center;gap:6px;font-size:14px}.envelope-instruction>span{font-size:23px}.open-invitation{min-height:60px;padding:16px 20px;font-size:18px}.entrance-action>span{letter-spacing:1px;text-align:center;font-size:10px}.entrance-footer{flex-wrap:wrap;justify-content:center;padding:20px 0 67px}.entrance-footer>span:first-child{font-size:13px}.music-placeholder{display:none}.music-dock{justify-content:center;display:flex;bottom:20px;left:0;right:0}.music-button{min-height:40px;font-size:14px}.opened .music-dock{bottom:16px;left:auto;right:16px}.header-rsvp{gap:8px;font-size:13px}.header-date{letter-spacing:1px;font-size:11px}.wedding-hero>.eyebrow{letter-spacing:1.5px;font-size:11px}.hero-invitation{max-width:320px;font-size:25px}.hero-day{font-size:30px}.hero-location{letter-spacing:1.6px;font-size:12px}.hero-arch{height:calc(100% - 35px)}.scroll-cue,.countdown-section>.eyebrow,.section-heading .eyebrow,.rsvp-section .eyebrow{letter-spacing:1.5px;font-size:11px}.countdown>div{width:85px}.countdown small{letter-spacing:.7px;font-size:10px}.text-link{flex-wrap:wrap;justify-content:center;font-size:14px;line-height:1.5}.program-item,.program-item:first-child{min-height:310px}.program-item h3{font-size:31px}.response-choices{grid-template-columns:1fr}.response-choices label{min-height:48px;font-size:15px}.response-choices input{flex-shrink:0;width:16px;height:16px}.field,.dialog-intro{font-size:15px}.dialog-inner>.eyebrow{letter-spacing:1.4px;font-size:10px}.dialog-intro{max-width:350px}.field input,.field textarea,.field select{font-size:16px}.field input::placeholder,.field textarea::placeholder{font-size:14px}.reply-actions{flex-wrap:wrap}}@media (max-width:380px){.header-date{letter-spacing:.6px;font-size:10px}.envelope-instruction{font-size:13px}}@media (prefers-reduced-motion:reduce){.sealed .wax-seal{animation:none}}@media (min-width:761px){.site-header{height:86px}.entrance{min-height:calc(100svh - 86px)}.entrance-heading{padding-top:32px}.entrance-action{margin-top:0;margin-bottom:28px}}@media (min-width:761px) and (max-height:800px){.entrance-heading{padding-top:24px}}.envelope-scene{--envelope-width:min(440px, 82vw);--seal-size:clamp(60px, calc(var(--envelope-width) * .173), 76px);perspective:1500px;flex-shrink:0;place-items:center;width:min(780px,100%);height:auto;margin:28px 0 16px;padding-block:40px;display:grid;position:relative;transform:none}.envelope-wrap{width:var(--envelope-width);aspect-ratio:44/27;filter:drop-shadow(12px 26px 21px #223b322b);height:auto;animation:1.4s cubic-bezier(.2,.8,.2,1) both envelope-appear;position:relative;transform:rotate(-5deg)}.entrance-branch{width:calc(var(--envelope-width) * .365);height:calc(var(--envelope-width) * .6);z-index:0;pointer-events:none;position:absolute;top:50%}.branch-left{left:calc(50% - var(--envelope-width) * .72);transform:translateY(-50%)rotate(-27deg)}.branch-right{right:calc(50% - var(--envelope-width) * .72);transform:translateY(-50%)scaleX(-1)rotate(-32deg)}.orbit,.orbit-two{width:calc(var(--envelope-width) * 1.15);pointer-events:none;border:1px solid #b8ac862d;border-radius:50%;height:calc(100% - 20px);position:absolute;top:10px}.orbit-two{width:calc(var(--envelope-width) * 1.2);opacity:.45;border-style:dashed;height:100%;top:0}.wax-seal{top:35%;left:calc(50% - var(--seal-size) / 2);width:var(--seal-size);height:var(--seal-size)}.seal-inner{width:calc(100% - 15px);height:calc(100% - 15px)}.seal-inner>span{font-size:clamp(24px, calc(var(--envelope-width) * .068), 30px)}.seal-and{font-size:.67em}.seal-inner small{font-size:clamp(6px, calc(var(--envelope-width) * .018), 8px);letter-spacing:.6px}.seal-open-label{top:calc(35% + var(--seal-size) + 12px);text-align:center;letter-spacing:1px;color:#ead7a5;font-size:14px;position:absolute;left:0;right:0}.envelope-caption{text-align:center;letter-spacing:1.2px;color:#d2c39d;font-size:11px;position:absolute;bottom:8%;left:0;right:0}.invitation-letter{height:calc(100% - 26px)}.entrance-action{flex-shrink:0}.envelope-instruction{min-height:24px}.envelope-instruction>span{font-size:22px;line-height:1}@media (max-width:760px){.envelope-scene{--envelope-width:min(380px, 82vw);margin-top:22px;margin-bottom:16px;padding-block:30px}.invitation-letter{gap:10px}}@media (min-width:761px) and (max-height:800px){.envelope-scene{--envelope-width:min(380px, 82vw);margin-top:24px;padding-block:24px}.entrance-heading{padding-top:20px}.entrance-heading h1{margin-block:14px}}@media (max-width:380px){.envelope-scene{--envelope-width:min(330px, 86vw);--seal-size:56px}.wax-seal{top:30%}.seal-open-label{top:calc(30% + var(--seal-size) + 10px)}}[data-reveal-state]{transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0s)}[data-reveal-state=pending]{opacity:0;will-change:opacity, transform;transform:translateY(18px)}[data-reveal-state=visible]{opacity:1;transform:none}[data-reveal-delay="1"]{--reveal-delay:80ms}[data-reveal-delay="2"]{--reveal-delay:.16s}[data-reveal-state=pending]:focus-within{opacity:1;transition:none;transform:none}@media (max-width:760px){[data-reveal-delay]{--reveal-delay:0s}}@media (prefers-reduced-motion:reduce){[data-reveal-state]{opacity:1;transition:none;transform:none}}
:root{--cream:#f6efdf;--paper:#fffaf0;--green:#0a503b;--deep:#063a2b;--ink:#153e2f;--gold:#a47124;--gold-light:#e7c77d;--muted:#536451;--line:#d6c5a3;--title-shadow:0 1px 0 #fffdf4, 0 3px 8px #173f3526}h1,h2,h3{font-weight:500}h2,h3{text-shadow:var(--title-shadow)}h2 em{color:#96631e;font-weight:500}.eyebrow,.header-date,.header-rsvp{font-weight:500}.monogram{text-shadow:var(--title-shadow)}.header-note{color:#7d5725}.entrance{background:radial-gradient(at 50% 42%,#fffaf1 0%,#f5ebd9 74%,#f0e4ce 100%)}.entrance-heading h1{color:#0b4935;text-shadow:var(--title-shadow)}.entrance-heading h1 em{color:#96631e;text-shadow:0 1px #fff8e8,0 3px 9px #8c5d2224;font-weight:500}.entrance-heading>.eyebrow{color:#82571d}.entrance-heading>.eyebrow>span{background:#a77a35}.entrance-heading>p:last-child,.envelope-instruction{color:#3e5942}.entrance-action>span,.footer-center,.music-button{color:#536348}.envelope-back{background:#073a29;border-color:#8b7849}.envelope-front{background:linear-gradient(145deg,#1c6749,#0c4b35 50%,#063724)}.envelope-flap{background:linear-gradient(145deg,#29714f,#145239 58%,#19462d)}.envelope-front:after{border-color:#d6b96c75}.seal-open-label{color:#ffe1a0;text-shadow:0 1px 3px #012719;font-weight:500}.envelope-caption{color:#f2d79b;text-shadow:0 1px 2px #012719}.envelope-botany{opacity:.9}.open-invitation,.button.green{color:#fff4d8;text-shadow:0 1px 2px #002c20;background:linear-gradient(135deg,#146747,#073f2d);border:1px solid #bc9750;font-weight:500;box-shadow:0 8px 20px #093e2a2b,inset 0 1px #ffffff20}.open-invitation:hover,.button.green:hover{background:linear-gradient(135deg,#207c56,#0a5039)}.open-invitation svg{color:#f0cf84}.opened .site-header{background:#043426;border-color:#c7a96355}.opened .monogram{text-shadow:0 2px 4px #001c17a6}.opened .header-date{color:#f2e6c9}.header-rsvp{color:#efd18e}.wedding-hero{color:#fff5df;background:radial-gradient(at 50% 35%,#155c43 0%,#073e2c 56%,#032c20 100%)}.wedding-hero h1{text-shadow:0 2px 1px #001d1780,0 6px 20px #001c1780}.wedding-hero h1>span{color:#f2e7c9;text-shadow:0 2px 4px #001b2170}.wedding-hero h1>em{color:#e9c676;font-weight:500}.wedding-hero>.eyebrow,.hero-location{color:#f0d797}.hero-invitation{color:#fff0d4;text-shadow:0 2px 5px #001b1959}.hero-day{color:#ffe2a1;text-shadow:0 2px 5px #001b1980;font-weight:500}.hero-arch{border-color:#dbb76773}.hero-arch:after{border-color:#dbb76733}.hero-botany{opacity:.8}.wedding-hero .ornament,.scroll-cue span{color:#e9c775}.scroll-cue{color:#f3e4c0}.button.gold,.rsvp-section .button.green{color:#153e2b;text-shadow:0 1px #fff2c280;background:linear-gradient(130deg,#f0d494,#d9b260 60%,#efd498);border:1px solid #eacb83;font-weight:500;box-shadow:0 7px 20px #001f1a45,inset 0 1px #fff4ce}.button.gold:hover,.rsvp-section .button.green:hover{background:linear-gradient(130deg,#ffe7ac,#e7c375 60%,#fae3aa)}.arabic{color:#91601d;text-shadow:0 1px 1px #fffaf0}.verse-section blockquote{color:#2d583d;text-shadow:0 2px 4px #23493212;font-weight:500}.verse-section cite,.countdown-section>.eyebrow,.section-heading .eyebrow,.countdown small{color:#7f5928}.countdown span{color:#0b4e36;text-shadow:var(--title-shadow);font-weight:500}.countdown>div{border-color:#cdb68b}.text-link{color:#194d36;border-color:#9e7a3c}.timeline{border-top-color:#c2a36d}.program-item{border-right-color:#d1bd98}.program-number{color:#835a23}.program-time{color:#93621e;text-shadow:0 1px #fffaf0;font-weight:500}.program-item h3{color:#0a4b34}.program-item>p:not(.program-time),.program-place,.section-heading>p{color:#445741}.program-item>a{color:#23543a;border-color:#b8995d;font-weight:500}.rings-icon i{border-color:#a87825}.rsvp-section{color:#fff2d7;background:radial-gradient(at 55% 30%,#1a6044 0%,#073c2a 75%)}.rsvp-section h2{text-shadow:0 3px 10px #00271980}.rsvp-section h2 em{color:#eac77c}.rsvp-section .eyebrow{color:#e8ca8b}.rsvp-section p:not(.eyebrow){color:#f1e3c7}.rsvp-section .text-button{color:#f0d69e}.rsvp-botany{opacity:.8}.main-footer>p,.main-footer>span,.replay{color:#506144}.rsvp-dialog{border-color:#b89758;box-shadow:0 20px 90px #001b2366}.dialog-inner h2{color:#0b4c35}.dialog-intro,.success>p:not(.eyebrow),.text-button{color:#465c43}.response-choices label{color:#284c34;border-color:#c4b892}.response-choices label.selected{background:#e4eddd;border-color:#1c6547}.field{color:#254e35;font-weight:500}.field>span{color:#59664e;font-weight:400}.field input,.field textarea,.field select{border-color:#bcb796;font-weight:400}.field input::placeholder,.field textarea::placeholder{color:#707862}.local-note{color:#59654e}.opened .music-dock{background:#fff8e8f5;border-color:#c6aa70}.opened .music-dock .music-button{color:#315b3d}@media (max-width:760px){.timeline{border-left-color:#c2a36d}.hero-botany{opacity:.5}}
