:root{--linen:#f0eee7;--blush:#e7c2b0;--burgundy:#651d2e;--wine:#571d2a;--ink:#562c2d;--olive:#858451;--olive-dark:#646335;--cream:#f6e9d3;--rule:#a9786270;--serif:'Cormorant Garamond',Georgia,serif;--script:'Pinyon Script',cursive;--sans:'Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;color:var(--ink);font-family:var(--serif);font-size:18px;-webkit-font-smoothing:antialiased;background:var(--linen) url('assets/linen-v2.svg') repeat;background-size:420px;overflow-x:clip}body.is-gated,body.modal-open{overflow:hidden}body::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:85;background:url('assets/grain.svg');opacity:.045}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{border:0;background:none;color:inherit;cursor:pointer}img{display:block;width:100%;height:auto}svg{width:24px;height:24px;display:block;flex-shrink:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}p{line-height:1.65}button,a,summary,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--olive-dark);outline-offset:5px}input:focus-visible,textarea:focus-visible{outline:2px solid var(--olive-dark);outline-offset:4px}::selection{background:#b28c75;color:#fff6e8}[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.script{font-family:var(--script);font-weight:400}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:500;line-height:1.7}.suite-width{width:min(1150px,calc(100% - 72px));margin-inline:auto}.section-space{padding-block:100px}.button{font-family:var(--sans);font-size:11px;display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:16px 23px;min-height:49px;line-height:1.5;letter-spacing:.02em;border:1px solid transparent;transition:transform .2s,background .2s;position:relative;z-index:2}.button svg{width:18px;height:18px}.button-burgundy{background:var(--burgundy);color:#f9e8db;box-shadow:0 3px 7px #3c10191c}.button-burgundy:hover{background:#4d1222;transform:translateY(-2px)}.button-cream{background:#f3e7d4;color:#4d412c}.button-cream:hover{background:#fff4e1;transform:translateY(-2px)}.button-outline{border-color:var(--rule);color:var(--wine)}.text-link{font-family:var(--sans);font-size:10px;display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:42px;padding:5px 0;border-bottom:1px solid var(--rule);line-height:1.5;position:relative;z-index:2}.text-link svg{width:17px;height:17px;transition:transform .2s}.text-link:hover svg{transform:translateX(4px)}.ornament{display:flex;align-items:center;justify-content:center;gap:13px;margin:24px auto;width:230px;max-width:85%;color:var(--wine)}.ornament>span{width:74px;height:1px;background:currentColor;opacity:.55}.ornament svg{width:30px;height:34px}.blush-paper{background:#e8c1ae url('assets/embossed-blush-v2.webp') center/100% 100% no-repeat;position:relative;color:var(--wine);box-shadow:1px 2px 2px #b39e825e,4px 9px 14px #6c5c4938,13px 24px 37px #6554431c;isolation:isolate}.paper-frame{position:absolute;inset:20px;border:1px solid #9a69589e;pointer-events:none;z-index:1}.paper-frame::before{content:'';position:absolute;inset:5px;border:1px solid #b48b766b}.gift-frame{position:absolute;inset:13px;border:1px solid #d5c19566;pointer-events:none}.gift-frame::before{content:'';position:absolute;inset:6px;border:1px solid #d5c19540}.velvet-wrap{position:absolute;left:-2%;right:-2%;height:210px;background:url('assets/velvet-crossing-v2.webp') center/100% auto no-repeat;pointer-events:none;z-index:6;filter:drop-shadow(0 4px 2px #3b0d1938)}.hanging-stems{position:absolute;pointer-events:none;background:url('assets/amaranthus-v2.webp') top center/100% 100% no-repeat;filter:drop-shadow(4px 5px 3px #3e38262e)}.skip-link{position:fixed;top:10px;left:10px;transform:translateY(-150%);z-index:200;background:#f4e6d7;padding:14px;font-family:var(--sans);font-size:12px}.skip-link:focus{transform:none}
/* The envelope is the first piece of the same physical invitation suite. */
.welcome{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100svh;overflow-y:auto;padding:45px 25px;background:var(--linen) url('assets/linen-v2.svg') center/420px;transition:opacity .6s,visibility .6s}.welcome-label{font-size:12px;color:var(--burgundy);margin-bottom:56px;text-align:center}.envelope-scene{position:relative;width:min(480px,80vw);aspect-ratio:1.55;perspective:1200px;margin:16px 0 40px;transition:transform 1s cubic-bezier(.4,0,.2,1)}.envelope{position:relative;width:100%;height:100%;background:#858753;box-shadow:1px 4px 6px #342c2540,8px 22px 36px #4a3c3826;isolation:isolate}.envelope-lining{position:absolute;inset:2px;background:#651d2e url('assets/floral-liner-v2.svg') center/220px}.envelope-letter{position:absolute;inset:14px 27px 7px;background:#e5bcaa url('assets/embossed-blush-v2.webp') center/100% 100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--wine);transition:transform .9s .5s,opacity .4s;opacity:0;z-index:1}.envelope-letter .script{font-size:87px;line-height:1.1}.letter-subtitle{text-transform:uppercase;letter-spacing:.19em;font-size:14px}.envelope-letter svg{width:30px;height:36px;margin-top:8px}.envelope-side{position:absolute;inset:0;z-index:3}.side-left{clip-path:polygon(0 0,55% 58%,0 100%);background:linear-gradient(110deg,#92945f,#7d7f49)}.side-right{clip-path:polygon(100% 0,46% 58%,100% 100%);background:linear-gradient(-100deg,#969763,#7f804e)}.envelope-bottom{position:absolute;inset:0;z-index:4;clip-path:polygon(0 100%,0 93%,50% 44%,100% 93%,100% 100%);background:linear-gradient(160deg,#9b9c68,#8b8d54 45%,#7b7d47)}.envelope-flap{position:absolute;inset:0;z-index:5;clip-path:polygon(0 0,100% 0,50% 61%);background:linear-gradient(160deg,#a4a773,#8b8e57);transform-origin:top;transition:transform .8s;filter:drop-shadow(0 3px 2px #4144254d);backface-visibility:hidden}.wax-seal{position:absolute;top:48%;left:50%;width:78px;height:81px;transform:translate(-50%,-24%);border-radius:47% 48% 46% 49%;z-index:6;display:grid;place-items:center;background:radial-gradient(ellipse at 32% 20%,#9e9f69,#828347 63%,#71713c 82%,#a5a56a);box-shadow:1px 5px 6px #3b391a55,inset 1px 1px 1px #d9d4a38a,inset -2px -2px 3px #626329;transition:opacity .35s,transform .5s}.wax-seal::before{content:'';position:absolute;inset:9px;border:1px solid #bcba7f;border-radius:50%;box-shadow:1px 1px 2px #42441c,inset 1px 1px 2px #42441c}.wax-seal span{font-family:var(--serif);font-size:47px;color:#b3b378;text-shadow:1px 2px 1px #4a4d1e}.welcome-copy{text-align:center;position:relative;z-index:2;transition:opacity .3s}.welcome-copy h2{font-size:49px;color:var(--wine);line-height:1.2}.welcome-copy>p{font-size:18px;margin:12px 0 24px}.welcome-date{font-size:11px;margin-top:35px}.welcome-stems-left{height:660px;width:155px;left:8%;top:-80px;transform:rotate(8deg)}.welcome-stems-right{height:590px;width:140px;right:7%;top:-70px;transform:rotate(-7deg) scaleX(-1)}.welcome.is-opening .envelope-flap{transform:rotateX(180deg);filter:none}.welcome.is-opening .wax-seal{opacity:0;transform:translate(-50%,20%) rotate(12deg)}.welcome.is-opening .envelope-letter{opacity:1;transform:translateY(-49%)}.welcome.is-opening .envelope-scene{transform:translateY(90px) scale(1.03)}.welcome.is-opening .welcome-copy,.welcome.is-opening .welcome-label,.welcome.is-opening .welcome-date{opacity:0;transition:opacity .3s}.welcome.is-done{visibility:hidden;opacity:0;pointer-events:none}
/* An arrangement of actual stationery shapes on textured ivory linen. */
.suite-nav{display:flex;align-items:center;justify-content:center;gap:26px;width:min(1150px,calc(100% - 72px));height:91px;margin:0 auto 12px;position:relative;z-index:10}.nav-monogram{display:grid;place-items:center;font-family:var(--serif);font-size:29px;width:35px;height:44px;border:1px solid #85845188;border-radius:50%;color:var(--olive-dark)}.suite-nav nav{display:flex;align-items:center;gap:23px;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.suite-nav nav a{padding-block:10px}.suite-nav nav a:hover{color:var(--burgundy)}.suite-nav nav span{color:var(--olive)}.hero-suite{height:1060px;position:relative}.main-invite{position:absolute;right:36px;top:48px;width:510px;height:800px;z-index:4;text-align:center;transform:rotate(.8deg)}.invite-type{padding:99px 30px 170px;position:relative;z-index:1}.invite-prelude{font-size:11px;text-transform:uppercase;letter-spacing:.17em;line-height:1.5}.main-invite h1{font-size:147px;line-height:1.08;letter-spacing:-.025em;margin-top:22px;outline:none}.invitation-subtitle{text-transform:uppercase;letter-spacing:.22em;font-size:20px;line-height:1.5}.main-invite .ornament{margin:26px auto 25px;width:220px}.printed-date{text-transform:uppercase;font-size:24px;letter-spacing:.17em;line-height:1.55}.printed-date>span{display:block;font-size:23px;letter-spacing:.18em;margin-top:4px}.printed-venue{margin-top:30px}.printed-venue>p{text-transform:uppercase;letter-spacing:.2em;font-size:25px;line-height:1.4}.printed-venue>span{display:block;font-size:16px;line-height:1.65;letter-spacing:.13em;text-transform:uppercase;margin-top:8px}.main-invite>.velvet-wrap{top:65.5%;height:220px;transform:rotate(-1.6deg)}.display-envelope{position:absolute;left:41px;top:39px;width:581px;height:409px;background:#82854e;transform:rotate(-7deg);box-shadow:3px 7px 12px #3e382636,12px 20px 27px #3e382616;z-index:2;isolation:isolate}.display-liner{position:absolute;inset:0;background:#651b2c url('assets/floral-liner-v2.svg') center/230px}.display-fold{position:absolute;inset:0;filter:drop-shadow(0 -1px 1px #4a4c2b44)}.fold-left{clip-path:polygon(0 0,64% 60%,0 100%);background:linear-gradient(125deg,#94955e,#8b8e55)}.fold-right{clip-path:polygon(100% 0,36% 59%,100% 100%);background:linear-gradient(-125deg,#9a9b69,#80834a)}.fold-bottom{clip-path:polygon(0 100%,0 92%,50% 43%,100% 92%,100% 100%);background:linear-gradient(150deg,#9b9c64,#8f9258 45%,#7d8048)}.display-seal{position:absolute;left:48%;top:57%;display:grid;place-items:center;width:85px;height:105px;border-radius:50%;border:2px solid #b2b37e88;box-shadow:inset 1px 2px 3px #54562799,1px 2px 3px #54562788;font-family:var(--serif);font-size:65px;font-weight:400;color:#525724;text-shadow:1px 1px 1px #d2cf9a99;background:linear-gradient(120deg,#999d64,#858b4b)}.display-seal::before{content:'';position:absolute;inset:6px;border:1px solid #7b814480;border-radius:50%;box-shadow:1px 1px 1px #c4c68a8c}.oval-card{position:absolute;top:477px;left:44px;width:370px;height:497px;z-index:5;border-radius:50%;background:radial-gradient(ellipse at 30% 15%,#762c3b,#5d1b2c 65%,#4d1725);box-shadow:inset 1px 1px 2px #c17b70aa,inset -2px -3px 3px #3b111d,4px 9px 14px #5b433739,12px 20px 25px #5b43371a;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:52px 30px;color:#e7c9b5;text-align:center;transform:rotate(-4deg)}.oval-rule{position:absolute;inset:13px;border:1px solid #b0776773;border-radius:50%;box-shadow:1px 2px 2px #37111c,inset 1px 1px 2px #37111c}.oval-rule::before{content:'';position:absolute;inset:5px;border:1px solid #4b101d;border-radius:50%}.oval-card>p:first-of-type{font-size:27px;text-transform:uppercase;letter-spacing:.1em;line-height:1.7}.oval-card sup{font-size:.55em}.oval-card>.ornament{color:#c99d86;width:190px;margin:23px 0}.oval-card>.ornament svg{width:25px;height:29px}.oval-card>.script{font-size:35px;white-space:nowrap;line-height:1.2}.formal-attire{text-transform:uppercase;font-size:15px;letter-spacing:.17em;margin-top:32px}.oval-flower{width:54px;height:65px;margin-top:20px;color:#c89b85}.mini-gift-card{position:absolute;right:66px;top:871px;width:340px;height:190px;z-index:3;display:flex;align-items:center;justify-content:center;flex-direction:column;background:linear-gradient(130deg,#92925b,#818147);box-shadow:2px 4px 6px #3b351c40,7px 13px 20px #3e382624;transform:rotate(1.6deg);text-align:center;color:#343717}.mini-gift-card>svg{width:24px;height:28px;margin-bottom:-2px;opacity:.7}.mini-gift-card h2{font-size:62px;line-height:1.2}.mini-gift-card>p{font-size:15px;letter-spacing:.18em;text-transform:uppercase;line-height:1.4}.mini-gift-card>span{font-size:13px;margin-top:10px;letter-spacing:.025em}.suite-stems-left{height:1010px;width:150px;left:-65px;top:-20px;z-index:1;transform:rotate(3deg)}.suite-stems-right{height:1190px;width:194px;right:-80px;top:-75px;z-index:2;transform:rotate(-5deg) scaleX(-1)}.suite-scroll{position:absolute;left:441px;top:911px;font-size:11px;text-transform:uppercase;letter-spacing:.14em;display:flex;align-items:center;flex-direction:column;gap:17px;text-align:center;color:#756651;z-index:5}.suite-scroll span{font-size:28px;line-height:1}
/* An olive reminder card, rather than a full-width website stripe. */
.countdown-section{padding-top:75px}.olive-countdown{position:relative;width:min(710px,100%);margin:auto;padding:39px 35px 30px;background:linear-gradient(135deg,#898b53,#737642);color:#f4e8cf;text-align:center;box-shadow:2px 4px 8px #423b2730,9px 15px 23px #423b2718;transform:rotate(-.5deg)}.olive-countdown::before{content:'';position:absolute;inset:12px;border:1px solid #d7c89d66;pointer-events:none}.olive-countdown>.eyebrow{font-size:10px;opacity:.85}.olive-countdown h2{font-size:57px;line-height:1.1;margin:15px 0 24px}.countdown{display:flex;justify-content:center;align-items:center;gap:30px}.countdown>div{width:55px;text-align:center}.countdown span{font-size:46px;line-height:1;display:block;font-variant-numeric:tabular-nums}.countdown small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.15em;margin-top:10px}.countdown i{font-style:normal;font-size:29px;opacity:.55;margin-top:-20px}.calendar-link{position:relative;font-family:var(--sans);font-size:9px;display:inline-flex;align-items:center;gap:10px;border-bottom:1px solid #f3e8cd70;padding:7px 0;min-height:39px;margin-top:23px}.calendar-link svg{width:16px;height:16px}.countdown-status{font-size:24px;font-style:italic;padding:15px 0}
/* Portraits appear as small photographic keepsakes next to a handwritten note. */
.portrait-letter{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding-top:130px;padding-bottom:65px}.portrait-pair{position:relative;min-height:595px}.photo-print{background:#f4e8d6;padding:11px 11px 8px;box-shadow:3px 5px 9px #52432f30,10px 18px 25px #52432f1c}.photo-print img{width:100%;height:auto;object-fit:cover}.photo-print figcaption{font-family:var(--script);font-size:26px;text-align:center;padding:8px 3px 2px;color:#69462e;line-height:1.2}.portrait-main{position:absolute;width:355px;left:17px;top:0;transform:rotate(-5deg)}.portrait-main img{aspect-ratio:.82;object-fit:cover}.portrait-inset{position:absolute;width:219px;right:0;top:292px;transform:rotate(8deg);padding:8px 8px 7px}.portrait-inset img{aspect-ratio:.85;object-fit:cover}.portrait-inset figcaption{font-size:20px;padding-top:7px}.little-ribbon{position:absolute;left:-3px;top:-23px;width:155px;height:145px;background:url('assets/velvet-crossing-v2.webp') center/100% auto no-repeat;transform:rotate(-24deg);filter:drop-shadow(2px 3px 2px #4a172e55);pointer-events:none}.letter-paper{padding:72px 52px 57px;text-align:center;min-height:600px;transform:rotate(2deg)}.letter-paper>.eyebrow{font-size:11px}.letter-paper h2{font-size:61px;line-height:1.05;margin-top:24px;white-space:nowrap}.letter-paper>.ornament{width:180px;margin:24px auto}.letter-paper>p:not(.script):not(.eyebrow){font-size:20px;line-height:1.75;position:relative;z-index:2}.letter-paper>p+p:not(.script){margin-top:18px}.letter-paper>.letter-signature{font-size:38px;line-height:1.2;margin-top:25px}.venue-section{padding-bottom:10px;padding-top:26px}.venue-keepsake{position:relative;max-width:580px;margin:0 auto;padding:37px 40px 43px;text-align:center;background:linear-gradient(125deg,#969363,#86824e 70%,#7c7945);color:#f3e6cd;box-shadow:3px 5px 9px #52432f30,10px 18px 25px #52432f1c;transform:rotate(-1deg)}.venue-sprig{width:31px;height:39px;margin:auto auto 14px;color:#e3cda5}.venue-keepsake>.eyebrow{font-size:10px}.venue-keepsake h2{font-size:60px;line-height:1.2;margin:12px 0 15px}.venue-keepsake h3{font-size:27px;text-transform:uppercase;letter-spacing:.16em;line-height:1.3}.venue-keepsake>p:not(.eyebrow){font-size:18px;line-height:1.65;letter-spacing:.07em;margin-top:12px}.venue-keepsake>.button{margin-top:24px;font-size:10px;padding-block:13px}
/* The program and participants use one continuous printed card each. */
.program-section{padding-top:110px;padding-bottom:80px}.program-paper{max-width:820px;margin:auto;padding:64px 70px 116px;transform:rotate(.4deg)}.printed-heading{text-align:center;position:relative;z-index:2}.printed-name{font-size:91px;line-height:1.15}.printed-heading>.invitation-subtitle{font-size:20px;margin-top:9px}.printed-heading .ornament{margin:23px auto}.printed-heading h2{text-transform:uppercase;letter-spacing:.15em;font-size:28px;line-height:1.4}.printed-time{text-transform:uppercase;letter-spacing:.14em;font-size:23px;margin-top:9px}.timeline{list-style:none;margin:42px 0 0;padding:0;position:relative;z-index:2}.timeline li{position:relative;display:grid;grid-template-columns:108px 1fr;gap:36px;min-height:105px;padding:0 0 28px}.timeline li::before{content:'';position:absolute;left:125px;top:0;bottom:0;width:1px;background:#85544e99}.timeline li::after{content:'';position:absolute;left:122px;top:10px;width:7px;height:7px;border:1px solid #76413d;border-radius:50%;background:#e5bdac}.timeline li:last-child{min-height:0;padding-bottom:0}.timeline li:last-child::before{bottom:auto;height:20px}.timeline time{font-size:24px;text-align:right;line-height:1.5;white-space:nowrap;font-weight:600}.timeline h3{font-size:21px;font-weight:600;text-transform:uppercase;letter-spacing:.065em;line-height:1.4;margin-bottom:6px}.timeline li>div{border-bottom:1px solid #9c6f5e8a;padding-bottom:22px}.timeline li:last-child>div{border:0;padding-bottom:0}.timeline p{font-size:18px;font-style:italic;line-height:1.6;color:#603b34}.late-note{font-size:12px;display:block;text-transform:uppercase;letter-spacing:.09em;line-height:1}.program-thanks{font-size:32px;text-align:center;line-height:1.3;margin:34px auto 10px;position:relative;z-index:2}.program-paper>.text-link{display:flex;width:fit-content;margin:16px auto 0;font-size:9px}.program-ribbon{height:190px;bottom:-52px;transform:rotate(-1.2deg)}.partakers-section{padding-block:20px 35px}.partakers-paper{padding:67px 57px 69px;max-width:1040px;margin:auto;transform:rotate(-.6deg)}.partakers-name{font-size:46px;text-transform:uppercase;letter-spacing:.12em;line-height:1.3}.partakers-paper .printed-heading>.invitation-subtitle{font-size:19px;margin-top:4px}.partakers-paper .printed-heading h2{font-size:24px;letter-spacing:.14em}.partakers-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:34px;position:relative;z-index:2;margin-top:36px}.partakers summary{position:relative;text-align:center;padding:9px 7px;border-block:1px solid #7c4a428a;list-style:none;cursor:pointer;min-height:53px;display:flex;align-items:center;justify-content:center;gap:7px}.partakers summary::-webkit-details-marker{display:none}.partakers summary>span{font-size:24px;text-transform:uppercase;letter-spacing:.08em;line-height:1.3}.partakers summary small{font-size:15px;letter-spacing:.02em}.partakers summary i{font-size:18px;font-style:normal;margin-left:4px;opacity:.6;transition:transform .2s}.partakers[open] summary i{transform:rotate(45deg)}.partakers ol{list-style-type:decimal;padding-left:23px;margin:20px 0 0}.partakers li{padding:4px 0 4px 8px;font-size:18px;line-height:1.4}.partakers li span{font-size:19px;letter-spacing:.02em}.partakers-bottom{margin:31px auto 7px}.partakers-paper>.text-link{display:flex;margin:9px auto 0;width:fit-content;font-size:9px}
/* Printed photographs arranged over the same linen. */
.memories{padding-top:80px;padding-bottom:60px;overflow:hidden}.album-heading{text-align:center}.album-heading>.eyebrow{font-size:11px}.album-heading h2{font-size:75px;line-height:1.2;margin-top:17px}.album-heading>.ornament{margin:20px auto 12px}.gallery-track{display:flex;align-items:flex-start;gap:42px;overflow-x:auto;padding:42px max(42px,calc((100vw - 1150px)/2)) 52px;scroll-padding-left:max(42px,calc((100vw - 1150px)/2));scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#ac9778 transparent}.gallery-item{padding:10px 10px 12px;background:#f7eddd;flex:0 0 282px;box-shadow:3px 5px 9px #52432f30,10px 16px 22px #52432f15;scroll-snap-align:center;text-align:center;transform:rotate(-3deg);transition:box-shadow .2s}.gallery-item:nth-child(even){transform:rotate(3deg);margin-top:28px}.gallery-item:nth-child(3){transform:rotate(-1deg)}.gallery-item:nth-child(5){transform:rotate(-5deg);margin-top:7px}.gallery-item img{width:100%;aspect-ratio:.8;object-fit:cover}.gallery-item:hover{box-shadow:4px 7px 14px #52432f40,12px 20px 26px #52432f24}.gallery-item .photo-caption{font-family:var(--script);font-size:25px;display:block;margin-top:14px;padding:0 4px 2px;line-height:1.25;color:#6b4632}.photo-caption small{display:none}.album-footer{display:flex;justify-content:center;align-items:center;gap:28px;margin-top:10px}.gallery-controls{display:flex;align-items:center;gap:10px}.circle-button{width:38px;height:38px;display:grid;place-items:center;border:1px solid #8b6e5280;border-radius:50%;background:#f2e6d573}.circle-button:hover{background:#e6d2bf}.circle-button svg{width:18px;height:18px}.flip{transform:rotate(180deg)}.album-footer>.text-link{font-size:9px}
/* The reply is another blush card resting on an olive backing sheet. */
.reply-section{padding-top:80px;padding-bottom:75px}.reply-stack{position:relative;max-width:660px;margin:auto}.reply-stack::before{content:'';position:absolute;inset:0;background:linear-gradient(130deg,#949663,#7d814e);transform:rotate(3deg);box-shadow:3px 5px 10px #52432f30;z-index:-1}.reply-paper{padding:65px 71px 62px;transform:rotate(-1deg)}.reply-header{text-align:center;position:relative;z-index:2}.reply-header>svg{width:33px;height:43px;margin:0 auto 16px}.reply-header>.eyebrow{font-size:10px}.reply-header h2{font-size:77px;line-height:1.1;margin:21px 0 13px}.reply-header>p:not(.eyebrow){font-size:20px;line-height:1.7}.reply-form{margin-top:37px;position:relative;z-index:2}.reply-form>label{display:block;font-family:var(--sans);font-size:11px;margin-bottom:10px}.reply-form>label>span{font-size:9px;color:#815d50}.reply-form>input,.reply-form>textarea{width:100%;border:0;border-bottom:1px solid #86544391;background:transparent;border-radius:0;resize:vertical;font-size:20px;color:var(--wine);padding:8px 0 12px}.reply-form>input::placeholder,.reply-form>textarea::placeholder{color:#885c50;font-style:italic;font-size:18px}.reply-form fieldset{border:0;padding:0;margin:29px 0}.reply-form legend{font-family:var(--sans);font-size:11px;margin-bottom:14px}.radio-option{display:flex;align-items:center;gap:10px;font-size:24px;padding:11px 0;border-block:1px solid #86544360;cursor:pointer}.radio-option+.radio-option{border-top:0}.radio-option input{accent-color:var(--wine);margin:0 3px 0 0}.radio-option>span:last-child{margin-left:auto;font-size:27px;line-height:1}.reply-form>.button{width:100%;margin-top:27px}.reply-instructions{font-family:var(--sans);font-size:10px;line-height:1.8;margin-top:15px;color:#684238}.reply-signature{font-size:39px;text-align:center;margin-top:27px;line-height:1.3}.reply-ribbon{top:-75px;height:165px;transform:rotate(1.8deg);left:-4%;right:-4%}.site-footer{text-align:center;padding:20px 24px 43px}.footer-seal{display:grid;place-items:center;margin:auto auto 22px;width:58px;height:71px;border-radius:50%;background:linear-gradient(130deg,#989867,#7b7e46);border:2px solid #c0b98a;color:#4d5127;box-shadow:inset 1px 2px 2px #585c2f90,1px 2px 3px #4b452835;font-size:43px;text-shadow:1px 1px 1px #c9c296}.site-footer>p:first-of-type{text-transform:uppercase;letter-spacing:.16em;font-size:12px}.footer-date{font-size:14px;margin-top:5px;letter-spacing:.04em;color:#74604c}.footer-thanks{font-size:34px;line-height:1.4;margin:16px 0 10px}.site-footer>.text-link{font-size:9px;color:#7c6653;border-color:#a18b704d}
/* Accessible dialogs share the paper and typography of the invitation. */
dialog{border:0;padding:0;color:var(--wine);max-height:90svh}dialog::backdrop{background:#241f19dc;backdrop-filter:blur(6px)}.small-dialog{position:relative;width:min(450px,calc(100vw - 32px));padding:51px 36px 34px;text-align:center;background:#e9c5b2 url('assets/embossed-blush-v2.webp') center/100% 100%;box-shadow:0 20px 80px #0004;overflow-y:auto}.small-dialog>.eyebrow{font-size:10px}.small-dialog h2{font-family:var(--script);font-size:57px;line-height:1.2;margin:18px 0}.small-dialog>p:not(.eyebrow){font-size:19px;line-height:1.7;margin-bottom:23px}.small-dialog>.button{width:100%;margin-top:11px;font-size:10px}.small-dialog>small{display:block;font-family:var(--sans);font-size:9px;margin-top:21px}.dialog-close{position:absolute;top:7px;right:11px;font-family:var(--serif);font-size:34px;width:40px;height:40px}.reply-dialog textarea{font-size:17px;line-height:1.6;width:100%;padding:15px;color:var(--wine);background:#f0d4c3d6;border:1px solid var(--rule);resize:vertical}.reply-dialog .reply-feedback{font-family:var(--sans);font-size:10px;margin:16px 0 0;line-height:1.7}.lightbox{inset:0;margin:0;width:100vw;height:100svh;max-width:100vw;max-height:100svh;background:#211c18f5;color:#f4e8d5;overflow:hidden}.lightbox[open]{display:flex;align-items:center;justify-content:center;gap:25px}.lightbox figure{display:flex;align-items:center;justify-content:center;flex-direction:column;max-width:calc(100vw - 160px);height:calc(100svh - 88px)}.lightbox img{height:auto;width:auto;max-width:100%;max-height:calc(100svh - 126px);object-fit:contain}.lightbox figcaption{font-size:18px;font-style:italic;text-align:center;padding-top:13px;color:#e0c8af}.lightbox-close{position:absolute;top:13px;right:22px;font-size:40px;width:44px;height:44px;z-index:1}.lightbox-prev,.lightbox-next{width:42px;height:48px;flex-shrink:0;display:grid;place-items:center;border:1px solid #f4e8d54d}.lightbox-prev:hover,.lightbox-next:hover{background:#ffffff16}.lightbox[data-stationery="true"] .lightbox-prev,.lightbox[data-stationery="true"] .lightbox-next{visibility:hidden}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,20px);max-width:calc(100vw - 32px);background:var(--burgundy);color:var(--cream);padding:12px 20px;font-family:var(--sans);font-size:11px;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;z-index:200}.toast.visible{opacity:1;transform:translate(-50%,0)}.js-reveal .reveal{opacity:0;translate:0 20px;transition:opacity .75s,translate .75s}.js-reveal .reveal.is-visible{opacity:1;translate:0 0}
@media(min-width:1500px){.suite-nav{height:105px}.hero-suite{margin-top:15px}}
@media(max-width:1100px){.suite-width,.suite-nav{width:calc(100% - 60px)}.hero-suite{height:965px}.main-invite{right:18px;width:460px;height:740px}.invite-type{padding:87px 25px 150px}.main-invite h1{font-size:135px;margin-top:24px}.invitation-subtitle{font-size:18px}.main-invite .ornament{margin:24px auto}.printed-date{font-size:22px}.printed-date>span{font-size:21px}.printed-venue{margin-top:25px}.printed-venue>p{font-size:24px}.printed-venue>span{font-size:14px}.main-invite>.velvet-wrap{top:67%;height:195px}.display-envelope{left:15px;top:35px;width:505px;height:367px}.display-seal{left:40%}.oval-card{left:15px;top:450px;width:326px;height:442px;padding-inline:20px}.oval-card>p:first-of-type{font-size:25px}.oval-card>.script{font-size:30px}.oval-card>.ornament{margin-block:19px}.formal-attire{font-size:14px;margin-top:26px}.oval-flower{width:43px;height:56px;margin-top:17px}.mini-gift-card{right:45px;top:802px;width:301px;height:170px}.mini-gift-card h2{font-size:53px}.mini-gift-card>p{font-size:14px}.mini-gift-card>span{font-size:12px}.suite-scroll{left:345px;top:850px;font-size:9px}.suite-stems-left{left:-50px;width:120px;height:930px}.suite-stems-right{right:-59px;width:158px;height:1090px}.portrait-letter{gap:40px}.portrait-pair{min-height:570px}.portrait-main{width:310px;left:0}.portrait-inset{width:190px;top:270px;right:-5px}.letter-paper{padding:64px 37px 50px;min-height:570px}.letter-paper h2{font-size:clamp(46px,5.2vw,53px)}.letter-paper>p:not(.script):not(.eyebrow){font-size:19px}.partakers-paper{padding-inline:40px}.partakers-grid{gap:23px}.partakers summary>span{font-size:22px}.partakers summary small{font-size:14px}.partakers li span{font-size:18px}.gallery-track{padding-inline:35px;scroll-padding-left:35px}.welcome-stems-left{left:4%}.welcome-stems-right{right:3%}}
@media(max-width:850px){.suite-width,.suite-nav{width:calc(100% - 48px)}.suite-nav{height:78px;gap:20px}.suite-nav nav{font-size:11px;gap:16px;letter-spacing:.08em}.hero-suite{height:880px}.main-invite{right:5px;top:60px;width:390px;height:660px}.invite-type{padding:80px 18px 120px}.invite-prelude{font-size:9px}.main-invite h1{font-size:120px;margin-top:20px}.invitation-subtitle{font-size:16px}.main-invite .ornament{width:190px;margin-block:21px}.printed-date{font-size:20px}.printed-date>span{font-size:20px}.printed-venue{margin-top:24px}.printed-venue>p{font-size:23px}.printed-venue>span{font-size:13px}.main-invite>.velvet-wrap{top:69%;height:172px}.display-envelope{left:3px;top:24px;width:413px;height:305px}.display-seal{left:36%;top:55%;width:62px;height:77px;font-size:49px}.oval-card{top:390px;left:-4px;width:278px;height:381px;padding-inline:16px}.oval-card>p:first-of-type{font-size:21px;letter-spacing:.08em}.oval-card>.ornament{width:150px;margin-block:16px}.oval-card>.script{font-size:26px}.formal-attire{font-size:12px;margin-top:22px}.oval-flower{width:36px;height:46px;margin-top:17px}.mini-gift-card{right:23px;top:746px;width:260px;height:151px}.mini-gift-card h2{font-size:49px}.mini-gift-card>svg{width:20px;height:23px}.mini-gift-card>p{font-size:12px}.mini-gift-card>span{font-size:11px;margin-top:8px}.suite-scroll{left:286px;top:793px;font-size:8px;letter-spacing:.1em}.suite-stems-left{width:110px;height:825px;left:-39px;top:-10px}.suite-stems-right{width:135px;height:930px;right:-43px;top:-40px}.countdown-section{padding-top:70px}.portrait-letter{gap:25px;padding-top:100px;padding-bottom:55px}.portrait-pair{min-height:490px}.portrait-main{width:255px;left:-2px}.portrait-inset{width:165px;top:235px;right:-2px}.photo-print{padding:8px 8px 7px}.photo-print figcaption{font-size:23px}.portrait-inset figcaption{font-size:17px}.letter-paper{padding:57px 28px 43px;min-height:530px}.letter-paper>.eyebrow{font-size:10px}.letter-paper h2{font-size:45px;margin-top:20px}.letter-paper>.ornament{margin:18px auto;width:150px}.letter-paper>p:not(.script):not(.eyebrow){font-size:18px;line-height:1.65}.letter-paper>.letter-signature{font-size:32px}.little-ribbon{width:125px;height:120px;left:-10px;top:-20px}.venue-keepsake{max-width:520px;padding:35px 30px 40px}.program-paper{padding:57px 45px 110px}.printed-name{font-size:82px}.printed-heading>.invitation-subtitle{font-size:18px}.printed-heading h2{font-size:25px}.printed-time{font-size:21px}.timeline li{grid-template-columns:95px 1fr;gap:33px;min-height:110px}.timeline li::before{left:111px}.timeline li::after{left:108px}.timeline time{font-size:22px}.timeline h3{font-size:20px}.timeline p{font-size:17px}.program-thanks{font-size:30px}.partakers-paper{padding:58px 32px 55px}.partakers-name{font-size:39px}.partakers-paper .printed-heading>.invitation-subtitle{font-size:17px}.partakers-paper .printed-heading h2{font-size:21px}.partakers-grid{gap:18px}.partakers summary>span{font-size:21px}.partakers summary small{font-size:12px;display:block}.partakers summary{min-height:68px}.partakers summary i{font-size:15px}.partakers li{font-size:15px;padding-left:3px}.partakers li span{font-size:17px;line-height:1.3;display:inline-block;vertical-align:middle}.partakers ol{padding-left:18px}.reply-stack{max-width:620px}.welcome-stems-left{width:100px;height:620px;left:-20px}.welcome-stems-right{width:100px;height:590px;right:-20px}}
@media(max-width:650px){html{scroll-padding-top:20px}.suite-width{width:calc(100% - 36px)}.suite-nav{width:calc(100% - 32px);height:71px;margin-bottom:0;gap:13px}.nav-monogram{font-size:23px;width:28px;height:35px;flex-shrink:0}.suite-nav nav{font-size:9px;letter-spacing:.05em;gap:10px}.suite-nav nav>span{font-size:9px}.hero-suite{height:1110px}.main-invite{right:12px;top:110px;width:calc(100% - 24px);height:655px;transform:rotate(.8deg)}.invite-type{padding:77px 20px 130px}.invite-prelude{font-size:10px;letter-spacing:.13em}.main-invite h1{font-size:130px;margin-top:15px;line-height:1.13}.invitation-subtitle{font-size:16px;letter-spacing:.19em}.main-invite .ornament{margin:22px auto 21px;width:190px}.main-invite .ornament svg{width:25px;height:28px}.printed-date{font-size:22px;letter-spacing:.12em}.printed-date>span{font-size:21px;letter-spacing:.15em;margin-top:1px}.printed-venue{margin-top:25px}.printed-venue>p{font-size:24px;letter-spacing:.16em}.printed-venue>span{font-size:13px;letter-spacing:.11em;line-height:1.65;margin-top:8px}.main-invite>.velvet-wrap{top:71%;height:150px}.display-envelope{width:330px;height:238px;left:13px;top:21px;transform:rotate(-7deg);z-index:2}.display-seal{top:49%;left:31%;width:54px;height:68px;font-size:43px}.oval-card{top:811px;left:6px;width:225px;height:294px;padding:35px 15px;transform:rotate(-5deg);z-index:5}.oval-rule{inset:8px}.oval-rule::before{inset:4px}.oval-card>p:first-of-type{font-size:19px;line-height:1.5;letter-spacing:.065em}.oval-card>.ornament{width:130px;margin:14px 0}.oval-card>.ornament svg{width:20px;height:24px}.oval-card>.script{font-size:23px}.formal-attire{font-size:11px;margin-top:19px}.oval-flower{width:31px;height:40px;margin-top:11px}.mini-gift-card{right:6px;top:888px;width:calc(100% - 231px);min-width:165px;max-width:205px;height:170px;transform:rotate(4deg);z-index:3;padding-inline:16px}.mini-gift-card h2{font-size:51px}.mini-gift-card>p{font-size:11px;letter-spacing:.12em}.mini-gift-card>span{font-size:11px;line-height:1.3;max-width:130px}.mini-gift-card>svg{width:21px;height:26px}.gift-frame{inset:9px}.gift-frame::before{inset:4px}.suite-scroll{display:none}.suite-stems-left{height:1070px;width:100px;left:-40px;top:18px;z-index:1}.suite-stems-right{height:1105px;width:112px;right:-37px;top:48px;z-index:2}.countdown-section{padding-top:70px}.olive-countdown{padding:31px 20px 27px;transform:rotate(-.8deg)}.olive-countdown::before{inset:10px}.olive-countdown>.eyebrow{font-size:9px;letter-spacing:.11em}.olive-countdown h2{font-size:47px;margin:15px 0 25px;line-height:1.1}.countdown{gap:18px}.countdown>div{width:40px}.countdown span{font-size:40px}.countdown small{font-size:9px;letter-spacing:.12em;margin-top:8px}.countdown i{font-size:24px;margin-top:-17px}.calendar-link{font-size:8px;margin-top:20px;gap:8px}.calendar-link svg{width:15px;height:15px}.countdown-status{font-size:22px;line-height:1.3}.section-space{padding-block:67px}.portrait-letter{display:flex;flex-direction:column;gap:35px;padding-top:92px;padding-bottom:54px}.portrait-pair{width:min(385px,100%);min-height:495px}.portrait-main{left:13px;width:285px;top:0}.portrait-inset{width:176px;right:6px;top:254px}.portrait-main figcaption{font-size:26px}.portrait-inset figcaption{font-size:20px}.little-ribbon{width:134px;height:125px;left:2px;top:-23px}.letter-paper{width:calc(100% - 18px);max-width:440px;padding:61px 35px 46px;min-height:515px;transform:rotate(1.6deg)}.paper-frame{inset:15px}.paper-frame::before{inset:4px}.letter-paper>.eyebrow{font-size:10px}.letter-paper h2{font-size:52px;line-height:1.05;margin-top:20px}.letter-paper>.ornament{width:155px;margin:21px auto}.letter-paper>p:not(.script):not(.eyebrow){font-size:20px;line-height:1.65}.letter-paper>.letter-signature{font-size:35px;margin-top:22px}.venue-section{padding-top:25px;padding-bottom:0}.venue-keepsake{padding:34px 22px 37px;max-width:420px;transform:rotate(-1deg)}.venue-sprig{width:27px;height:34px;margin-bottom:12px}.venue-keepsake>.eyebrow{font-size:9px;letter-spacing:.13em}.venue-keepsake h2{font-size:53px;margin:14px 0}.venue-keepsake h3{font-size:25px}.venue-keepsake>p:not(.eyebrow){font-size:17px;letter-spacing:.045em}.venue-keepsake>.button{font-size:9px;padding:13px 16px;gap:11px;min-height:45px;margin-top:22px}.venue-keepsake>.button svg{width:16px;height:16px}.program-section{padding-top:83px;padding-bottom:64px}.program-paper{padding:51px 26px 98px;transform:rotate(.4deg)}.printed-name{font-size:77px;line-height:1.1}.printed-heading>.invitation-subtitle{font-size:15px;letter-spacing:.16em;margin-top:9px}.printed-heading .ornament{width:170px;margin:21px auto}.printed-heading .ornament svg{width:24px;height:29px}.printed-heading h2{font-size:22px;letter-spacing:.12em;line-height:1.5}.printed-time{font-size:20px;letter-spacing:.07em;margin-top:7px}.timeline{margin-top:31px}.timeline li{grid-template-columns:76px 1fr;gap:24px;min-height:116px;padding-bottom:21px}.timeline li::before{left:88px}.timeline li::after{left:85px;top:9px;width:7px;height:7px}.timeline time{font-size:20px;line-height:1.4}.timeline h3{font-size:18px;font-weight:600;letter-spacing:.025em;line-height:1.35;margin-bottom:7px}.timeline p{font-size:16px;line-height:1.5}.timeline li>div{padding-bottom:18px}.late-note{font-size:9px;line-height:1.3;letter-spacing:.04em}.program-thanks{font-size:27px;line-height:1.3;margin-top:27px}.program-thanks br{display:none}.program-paper>.text-link{font-size:8px;margin-top:16px;gap:8px;min-height:35px}.program-paper>.text-link svg{width:14px;height:14px}.program-ribbon{height:140px;bottom:-33px}.partakers-section{padding-top:16px;padding-bottom:26px}.partakers-paper{padding:49px 29px 45px;transform:rotate(-.5deg)}.partakers-name{font-size:35px;line-height:1.2;letter-spacing:.1em}.partakers-paper .printed-heading>.invitation-subtitle{font-size:14px;letter-spacing:.13em;margin-top:9px}.partakers-paper .printed-heading h2{font-size:20px;line-height:1.4;letter-spacing:.07em;max-width:240px;margin:auto}.partakers-grid{display:block;margin-top:29px}.partakers+.partakers{margin-top:32px}.partakers summary{width:100%;max-width:240px;margin:auto;min-height:45px;padding:8px 12px;gap:12px}.partakers summary>span{font-size:25px;letter-spacing:.07em}.partakers summary small{font-size:16px;display:inline}.partakers summary i{font-size:19px}.partakers ol{margin:18px auto 0;width:fit-content;padding-left:23px}.partakers li{padding:5px 0 5px 10px;font-size:18px;line-height:1.25}.partakers li span{font-size:21px;letter-spacing:.035em;line-height:1.3}.partakers-bottom{margin:27px auto 5px;width:170px}.partakers-paper>.text-link{font-size:8px;gap:9px;margin-top:10px}.memories{padding-top:58px;padding-bottom:30px}.album-heading>.eyebrow{font-size:9px;letter-spacing:.13em}.album-heading h2{font-size:54px;line-height:1.1;margin-top:19px}.album-heading>.ornament{width:170px;margin-top:24px;margin-bottom:3px}.gallery-track{gap:29px;padding:32px 29px 40px;scroll-padding-left:29px}.gallery-item{flex-basis:245px;padding:8px 8px 11px}.gallery-item:nth-child(even){margin-top:22px}.gallery-item .photo-caption{font-size:24px;margin-top:12px;line-height:1.15}.album-footer{margin-top:5px;gap:23px}.circle-button{width:34px;height:34px}.circle-button svg{width:16px;height:16px}.gallery-controls{gap:9px}.album-footer>.text-link{font-size:8px;gap:9px}.album-footer>.text-link svg{width:14px;height:14px}.reply-section{padding-top:70px;padding-bottom:61px;width:calc(100% - 54px)}.reply-paper{padding:51px 27px 43px;transform:rotate(-1deg)}.reply-header>svg{width:27px;height:35px;margin-bottom:13px}.reply-header>.eyebrow{font-size:9px;letter-spacing:.1em}.reply-header h2{font-size:64px;margin:19px 0 12px;line-height:1.1}.reply-header>p:not(.eyebrow){font-size:19px;line-height:1.6}.reply-form{margin-top:29px}.reply-form>label{font-size:10px}.reply-form>label>span{font-size:8px}.reply-form>input,.reply-form>textarea{font-size:19px}.reply-form>input::placeholder,.reply-form>textarea::placeholder{font-size:18px}.reply-form fieldset{margin-block:26px}.reply-form legend{font-size:10px}.radio-option{font-size:23px;padding-block:11px;gap:8px}.radio-option>span:last-child{font-size:25px}.reply-form>.button{font-size:10px;padding:14px 18px;gap:14px;min-height:48px;margin-top:24px}.reply-instructions{font-size:9px;line-height:1.8;margin-top:14px}.reply-signature{font-size:35px;margin-top:24px}.reply-ribbon{height:122px;top:-54px}.site-footer{padding-top:11px;padding-bottom:34px}.footer-seal{width:49px;height:60px;font-size:36px;margin-bottom:20px}.site-footer>p:first-of-type{font-size:11px;letter-spacing:.1em}.footer-date{font-size:12px;letter-spacing:.02em}.footer-thanks{font-size:29px;margin-block:16px 9px}.site-footer>.text-link{font-size:8px;gap:9px}.welcome{padding:35px 22px}.welcome-label{font-size:10px;letter-spacing:.13em;margin-bottom:40px}.envelope-scene{width:min(390px,calc(100vw - 50px));margin-bottom:34px}.envelope-letter .script{font-size:70px}.letter-subtitle{font-size:11px;letter-spacing:.13em}.envelope-letter svg{width:24px;height:29px}.wax-seal{width:66px;height:67px}.wax-seal::before{inset:8px}.wax-seal span{font-size:39px}.welcome-copy h2{font-size:40px;line-height:1.15}.welcome-copy>p{font-size:16px;margin:13px 0 23px}.welcome-copy>.button{font-size:10px;padding:14px 20px;min-height:47px}.welcome-date{font-size:9px;margin-top:28px;letter-spacing:.09em}.welcome-stems-left{width:88px;height:560px;left:-29px;top:-70px}.welcome-stems-right{width:85px;height:540px;right:-31px;top:-95px}.lightbox[open]{gap:5px}.lightbox figure{max-width:calc(100vw - 64px);height:calc(100svh - 120px)}.lightbox img{max-height:calc(100svh - 170px)}.lightbox-prev,.lightbox-next{width:26px;height:42px;border-color:transparent}.lightbox-prev svg,.lightbox-next svg{width:19px;height:19px}.lightbox figcaption{font-size:16px;padding-top:17px}.lightbox-close{right:13px;top:13px}.small-dialog{padding:45px 26px 29px}.small-dialog>.eyebrow{font-size:9px}.small-dialog h2{font-size:50px}.small-dialog>p:not(.eyebrow){font-size:18px}}
@media(max-width:430px){.main-invite{height:650px}.invite-type{padding:77px 17px 120px}.main-invite h1{font-size:119px;margin-top:17px}.invitation-subtitle{font-size:14px;letter-spacing:.18em}.printed-date{font-size:20px}.printed-date>span{font-size:19px;margin-top:2px}.printed-venue>p{font-size:23px}.printed-venue>span{font-size:12px;letter-spacing:.09em}.main-invite>.velvet-wrap{top:71%;height:143px}.oval-card{width:205px;height:281px;top:803px;left:0}.oval-card>p:first-of-type{font-size:18px}.oval-card>.script{font-size:21px}.oval-card>.ornament{width:118px;margin-block:12px}.formal-attire{font-size:10px;margin-top:17px}.oval-flower{width:28px;height:35px;margin-top:12px}.mini-gift-card{width:167px;min-width:0;height:157px;right:-3px;top:898px}.mini-gift-card h2{font-size:49px}.mini-gift-card>p{font-size:10px}.mini-gift-card>span{font-size:10px;max-width:120px}.mini-gift-card>svg{width:20px;height:22px}.hero-suite{height:1100px}.display-envelope{width:295px;height:220px;left:9px}.suite-nav nav{font-size:8px;gap:8px}.suite-nav{gap:11px}.portrait-main{width:263px;left:8px}.portrait-inset{width:164px;right:2px;top:247px}.portrait-pair{min-height:472px}.letter-paper{padding-inline:29px}.letter-paper h2{font-size:46px}.letter-paper>p:not(.script):not(.eyebrow){font-size:19px}.letter-paper>.letter-signature{font-size:33px}.countdown{gap:14px}.countdown span{font-size:38px}.countdown>div{width:37px}.olive-countdown>.eyebrow{font-size:8px}.olive-countdown h2{font-size:44px}.printed-heading h2{font-size:20px}.printed-name{font-size:72px}.printed-heading>.invitation-subtitle{font-size:14px}.printed-time{font-size:18px}.timeline li{grid-template-columns:68px 1fr;gap:24px;min-height:119px}.timeline time{font-size:18px}.timeline li::before{left:80px}.timeline li::after{left:77px}.timeline h3{font-size:17px}.timeline p{font-size:16px}.program-paper{padding-inline:24px}.partakers-paper .printed-heading h2{font-size:19px}.reply-header h2{font-size:60px}.reply-header>p:not(.eyebrow){font-size:18px}.reply-paper{padding-inline:25px}}
@media(max-width:355px){.suite-nav nav{font-size:7px;gap:7px}.nav-monogram{width:25px;height:32px;font-size:22px}.suite-nav{gap:9px}.main-invite h1{font-size:103px}.invite-prelude{font-size:8px}.invitation-subtitle{font-size:13px}.main-invite .ornament{margin-block:22px}.printed-date{font-size:19px}.printed-venue>span{font-size:11px}.main-invite>.velvet-wrap{top:69%}.oval-card{width:180px;height:259px;top:801px;left:-1px}.oval-card>p:first-of-type{font-size:16px}.oval-card>.script{font-size:19px}.oval-card>.ornament{margin-block:10px}.formal-attire{font-size:9px;margin-top:16px}.oval-flower{width:25px;height:30px;margin-top:10px}.mini-gift-card{right:-2px;width:142px;height:147px;top:887px}.mini-gift-card h2{font-size:43px}.mini-gift-card>p{font-size:9px}.mini-gift-card>span{font-size:10px;max-width:98px}.hero-suite{height:1076px}.display-envelope{width:265px;height:205px;left:10px}.countdown{gap:9px}.countdown>div{width:35px}.countdown span{font-size:36px}.olive-countdown h2{font-size:41px}.olive-countdown>.eyebrow{font-size:7px}.calendar-link{font-size:7px}.portrait-main{width:231px;left:7px}.portrait-inset{width:145px;right:0;top:221px}.portrait-pair{min-height:426px}.photo-print figcaption{font-size:23px}.portrait-inset figcaption{font-size:18px}.letter-paper h2{font-size:40px}.letter-paper>p:not(.script):not(.eyebrow){font-size:18px}.letter-paper{padding-inline:25px}.letter-paper>.letter-signature{font-size:30px}.program-paper{padding-inline:22px}.printed-heading h2{font-size:18px}.printed-heading>.invitation-subtitle{font-size:12px}.printed-time{font-size:17px}.timeline li{grid-template-columns:61px 1fr;gap:22px}.timeline li::before{left:72px}.timeline li::after{left:69px}.timeline time{font-size:17px}.timeline h3{font-size:16px}.timeline p{font-size:15px}.partakers-paper{padding-inline:25px}.partakers-paper .printed-heading>.invitation-subtitle{font-size:12px}.partakers-paper .printed-heading h2{font-size:18px}.partakers li span{font-size:19px}.reply-section{width:calc(100% - 46px)}.reply-paper{padding-inline:23px}.reply-header h2{font-size:53px}.reply-header>.eyebrow{font-size:8px}.reply-header>p:not(.eyebrow){font-size:17px}.radio-option{font-size:21px}.reply-form>label{font-size:9px}.reply-form legend{font-size:9px}.reply-signature{font-size:32px}.welcome-copy h2{font-size:35px}.welcome-copy>p{font-size:15px}.welcome-label{font-size:9px}.welcome-date{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js-reveal .reveal{opacity:1;translate:0 0}.welcome.is-opening .envelope-scene{transform:none}.welcome.is-opening .envelope-letter{transform:none}}

@media(max-width:650px){.letter-paper h2{font-size:clamp(32px,10.4vw,51px)}}
/* Keep embossed flowers in proportion on the long program and reply papers. */
.program-paper,.partakers-paper,.reply-paper{background-color:#d9ae9b;background-image:none}
.program-paper::before,.partakers-paper::before,.reply-paper::before,.program-paper::after,.partakers-paper::after,.reply-paper::after{content:'';position:absolute;width:305px;height:350px;background-image:url('assets/embossed-blush-v2.webp');background-size:580px 870px;background-repeat:no-repeat;pointer-events:none;z-index:0}
.program-paper::before,.partakers-paper::before,.reply-paper::before{right:0;top:0;background-position:right top;mask-image:radial-gradient(ellipse at top right,#000 46%,transparent 78%)}
.program-paper::after,.partakers-paper::after,.reply-paper::after{left:0;bottom:0;background-position:left bottom;mask-image:radial-gradient(ellipse at bottom left,#000 46%,transparent 78%)}
.reply-signature{position:relative;z-index:2}
@media(max-width:650px){.program-paper::before,.partakers-paper::before,.reply-paper::before,.program-paper::after,.partakers-paper::after,.reply-paper::after{width:185px;height:240px;background-size:390px 585px}.letter-paper h2{font-size:clamp(32px,10.4vw,51px)}}
