@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600;700&display=swap";:root{--paper:#fcf8f1;--cream:#fffdf8;--olive:#53603d;--deep-olive:#39452e;--matcha:#93a46b;--blush:#ebc6c7;--pink:#c96f7b;--rose:#a95664;--ink:#30342a;--muted:#707265;--line:#53603d30;--serif:"Cormorant Garamond", Georgia, serif;--sans:Manrope, Arial, sans-serif;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0}button,input,textarea{font:inherit}button,summary{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button,a,input,textarea,summary{outline-offset:6px}:focus-visible{outline:2px solid var(--rose)}button{color:inherit}img{object-fit:cover;width:100%;height:100%;display:block}svg{flex-shrink:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500}h2{letter-spacing:-.04em;font-size:clamp(49px,5.5vw,79px);line-height:.94}h2 em,h3 em{color:var(--rose);font-weight:400}p{line-height:1.9}.eyebrow,.micro{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:600;line-height:1.7}.eyebrow{color:var(--rose);margin-bottom:27px}.eyebrow.light{color:var(--blush)}.micro{color:var(--muted)}.section{width:86%;max-width:1120px;margin:0 auto;padding:110px 0}.button{letter-spacing:.12em;text-transform:uppercase;border:1px solid #0000;justify-content:center;align-items:center;gap:30px;min-height:49px;padding:15px 25px;font-size:10px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-pink{background:var(--blush);color:var(--deep-olive)}.button-pink:hover{background:#f3dada}.button-olive{background:var(--olive);color:var(--cream)}.button-olive:hover{background:var(--deep-olive)}.text-button{border:0;border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.1em;background:0 0;align-items:center;gap:14px;padding:10px 0;font-size:10px;display:inline-flex}.skip-link{z-index:100;background:var(--cream);padding:15px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:15px}.wedding-site{overflow:clip}.reveal-on-scroll{opacity:0;transition:opacity .8s,transform .8s cubic-bezier(.2,.7,.2,1);transform:translateY(28px)}.reveal-on-scroll.is-visible{opacity:1;transform:none}.reveal-on-scroll.is-visible .venue-card,.reveal-on-scroll.is-visible .guest-note-grid article,.reveal-on-scroll.is-visible .day-timeline article{animation:.7s both card-arrival}.reveal-on-scroll.is-visible .venue-card:nth-child(2),.reveal-on-scroll.is-visible .guest-note-grid article:nth-child(2),.reveal-on-scroll.is-visible .day-timeline article:nth-child(2){animation-delay:.12s}.reveal-on-scroll.is-visible .guest-note-grid article:nth-child(3),.reveal-on-scroll.is-visible .day-timeline article:nth-child(3){animation-delay:.24s}.invitation-cover{z-index:50;background:linear-gradient(#293820a1,#293820c9),url(/images/wedding-hero.png) 50%/cover;flex-direction:column;justify-content:center;align-items:center;gap:22px;padding:22px;transition:opacity .6s,visibility .6s;display:flex;position:fixed;inset:0;overflow-y:auto}.invitation-cover.is-opening{opacity:0;visibility:hidden}.cover-note{color:#fffbeac7;font:italic 17px var(--serif);gap:32px;display:flex}.stationery-cover{background:var(--cream);width:min(515px,100%);padding:15px;transition:transform .6s;position:relative;transform:rotate(-1deg);box-shadow:0 26px 90px #1720104d}.invitation-cover.is-opening .stationery-cover{transform:translateY(-25px)rotate(0)}.stationery-cover:before{content:"";z-index:-1;border:1px solid #ebc6c75c;position:absolute;inset:-8px 8px 8px -8px;transform:rotate(2.4deg)}.stationery-inner{text-align:center;background-image:radial-gradient(#53603d08 .65px,#0000 .65px);background-size:5px 5px;border:1px solid #c96f7b73;flex-direction:column;align-items:center;padding:29px 22px 27px;display:flex}.stationery-inner>.micro{color:var(--rose);letter-spacing:.2em;font-size:9px}.cover-monogram{font:500 33px var(--serif);color:var(--olive);margin:22px 0 20px}.cover-monogram span{color:var(--pink);margin:0 -2px;font-style:italic;position:relative;top:9px}.stationery-cover h1{letter-spacing:-.055em;white-space:nowrap;font-size:clamp(48px,6vw,76px);line-height:.96}.stationery-cover h1 em{color:var(--pink);font-weight:400}.cover-poem{font:italic 21px/1.4 var(--serif);color:var(--muted);margin-top:23px}.cover-date{align-items:center;gap:22px;margin:27px 0 20px;display:flex}.cover-date span{letter-spacing:.13em;text-transform:uppercase;font-size:8px}.cover-date strong{border-inline:1px solid var(--line);color:var(--olive);font:500 23px var(--serif);letter-spacing:.04em;padding-inline:18px}.seal-button{color:#702f3d;background:radial-gradient(circle at 32% 28%,#e9a9af,#c87785 65%,#ae5b6b);border:4px solid #a74d5d75;border-radius:46% 50% 45% 49%;place-items:center;width:69px;height:69px;margin-top:4px;transition:transform .25s;display:grid;position:relative;box-shadow:inset 1px 1px 2px #f9d0ceaa,inset -1px -2px 3px #8a3c4f99,2px 5px 9px #673f2633}.seal-button:hover{transform:rotate(-8deg)scale(1.06)}.seal-button span{width:50px;height:50px;font:600 20px var(--serif);text-shadow:0 1px #f5c1c67a;border:1px solid #8f455959;border-radius:50%;grid-auto-flow:column;place-items:center;gap:0;display:grid}.seal-button em{font-weight:400}.seal-instruction{letter-spacing:.17em;text-transform:uppercase;color:var(--muted);margin-top:16px;font-size:8px}.cover-bottom{color:#fcf8f1a1;text-transform:uppercase;letter-spacing:.24em;font-size:8px}.wedding-header{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#fcf8f1f5;justify-content:space-between;align-items:center;gap:24px;min-height:78px;padding:12px 4.5%;display:flex;position:sticky;top:0}.wordmark{color:var(--olive);font:500 29px var(--serif);white-space:nowrap;letter-spacing:-.04em;align-items:center;gap:9px;display:inline-flex}.wordmark em{color:var(--rose);font-weight:400}.dog-logo{object-fit:contain;height:auto;display:block}.dog-logo-cover{filter:drop-shadow(0 3px 4px #39452e18);width:min(163px,38vw);height:184px;margin:8px 0 2px}.dog-logo-nav{width:38px;height:42px}.wedding-header nav{gap:27px;display:flex}.wedding-header nav a{text-transform:uppercase;letter-spacing:.11em;color:#5e6554;padding-block:10px;font-size:9px;position:relative}.wedding-header nav a:after{content:"";border-bottom:1px solid var(--pink);transition:right .2s;position:absolute;bottom:3px;left:0;right:100%}.wedding-header nav a:hover:after{right:0}.header-reply{color:var(--rose);text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #a9566450;align-items:center;gap:15px;padding-block:9px;font-size:10px;display:flex}.menu-toggle{background:0 0;border:0;padding:10px;display:none}.menu-toggle span{background:var(--olive);width:25px;height:1px;margin:6px 0;display:block}.wedding-hero{min-height:690px;color:var(--cream);background:var(--deep-olive);isolation:isolate;text-align:center;place-items:center;display:grid;position:relative}.hero-backdrop,.hero-shade{z-index:-2;position:absolute;inset:0}.wedding-site:not([inert]) .hero-backdrop{animation:18s ease-in-out infinite alternate hero-drift}.hero-shade{z-index:-1;background:linear-gradient(90deg,#23331c26,#23331c54 40% 60%,#23331c26),linear-gradient(#0000 30%,#23331c73)}.hero-copy{width:100%;padding:75px 20px 98px}.wedding-site:not([inert]) .hero-copy>*{animation:.85s both hero-rise}.wedding-site:not([inert]) .hero-copy>:nth-child(2){animation-delay:80ms}.wedding-site:not([inert]) .hero-copy>:nth-child(3){animation-delay:.16s}.wedding-site:not([inert]) .hero-copy>:nth-child(4){animation-delay:.24s}.wedding-site:not([inert]) .hero-copy>:nth-child(5){animation-delay:.32s}.wedding-site:not([inert]) .hero-copy>:nth-child(6){animation-delay:.4s}.hero-copy .eyebrow{letter-spacing:.25em;margin-bottom:18px;font-size:9px}.hero-prelude{font:italic 25px var(--serif);color:#f5e5d6d4;margin-bottom:20px;display:block}.hero-copy h1{letter-spacing:-.06em;font-size:clamp(86px,12.7vw,184px);font-weight:400;line-height:.86}.hero-copy h1 em{color:var(--blush);margin-inline:.015em;font-size:.9em}.hero-date{justify-content:center;align-items:center;gap:25px;margin-top:35px;display:flex}.hero-date span{text-transform:uppercase;letter-spacing:.16em;color:var(--blush);font-size:8px}.hero-date strong{letter-spacing:.14em;text-transform:uppercase;border-inline:1px solid #ffffff4f;padding-inline:25px;font-size:11px;font-weight:500}.hero-poem{font:400 23px/1.4 var(--serif);color:#fff9efdc;margin-top:24px}.hero-actions{justify-content:center;align-items:center;gap:34px;margin-top:33px;display:flex}.hero-detail-link{text-transform:uppercase;letter-spacing:.13em;border-bottom:1px solid #ffffff69;align-items:center;gap:20px;padding-block:15px;font-size:9px;display:inline-flex}.music-player{text-align:left;width:min(100%,430px);margin:24px auto 0}.music-player summary{color:var(--cream);background:#1d2a1880;border:1px solid #fff5;align-items:center;gap:12px;padding:12px 14px;list-style:none;transition:background .25s,border-color .25s,transform .25s;display:flex}.music-player summary::-webkit-details-marker{display:none}.music-player summary:hover,.music-player summary:focus-visible{background:#53603db8;border-color:#ebc6c78c;transform:translateY(-2px)}.music-icon{width:31px;height:31px;color:var(--blush);border:1px solid #ebc6c78c;border-radius:50%;flex:0 0 31px;place-items:center;display:grid}.music-player summary>span:nth-child(2){gap:3px;min-width:0;display:grid}.music-player summary small{color:var(--blush);letter-spacing:.15em;text-transform:uppercase;font-size:8px}.music-player summary strong{color:var(--cream);font:500 16px/1.15 var(--serif);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.music-plus{color:var(--blush);margin-left:auto;font-size:23px;font-weight:300;transition:transform .25s}.music-player[open] .music-plus{transform:rotate(45deg)}.music-panel{background:#1d2a18e8;border:1px solid #fff4;margin-top:8px;padding:10px}.music-panel iframe{aspect-ratio:16/9;border:0;width:100%;display:block}.music-panel a{color:var(--blush);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;margin:11px 2px 2px;font-size:9px;display:inline-flex}.hero-caption{color:#fcf8f1b8;letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;font-size:8px;display:flex;position:absolute;bottom:25px;left:4.5%;right:4.5%}.countdown-ribbon{background:var(--cream);border-bottom:1px solid var(--line);grid-template-columns:1.1fr 2fr .7fr;align-items:center;gap:30px;padding:31px 7%;display:grid}.countdown-title .micro{font-size:8px}.countdown-title p{color:var(--olive);font:400 27px var(--serif);margin-top:5px}.countdown-title em{color:var(--rose)}.countdown-units{grid-template-columns:repeat(4,1fr);display:grid}.countdown-units>div{text-align:center;border-left:1px solid var(--line)}.countdown-units strong{color:var(--olive);font:500 43px/.95 var(--serif);font-variant-numeric:tabular-nums;display:block}.countdown-units span{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-top:8px;font-size:8px;display:block}.calendar-link{color:var(--olive);text-transform:uppercase;letter-spacing:.09em;background:0 0;border:0;justify-self:end;align-items:center;gap:10px;padding:10px 0;font-size:9px;display:inline-flex}.our-note{grid-template-columns:1fr 1fr;align-items:center;gap:12%;padding-block:125px;display:grid}.note-imagery{padding-right:20px;position:relative}.arched-photo{background:var(--blush);border-radius:48% 48% 0 0;height:585px;overflow:hidden}.arched-photo img{object-position:50% 48%}.photo-annotation{justify-content:space-between;align-items:center;gap:10px;margin-top:17px;display:flex}.photo-annotation span{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:8px}.photo-annotation em{font:17px var(--serif);color:var(--rose)}.photo-date-stamp{color:var(--olive);background:var(--paper);border:1px solid var(--line);outline:5px solid var(--paper);justify-items:center;gap:4px;padding:18px 23px;display:grid;position:absolute;bottom:68px;right:-16px;transform:rotate(5deg)}.photo-date-stamp span{letter-spacing:.16em;font-size:8px}.photo-date-stamp strong{font:500 50px/.9 var(--serif)}.note-copy h2{margin-bottom:34px;font-size:clamp(50px,6vw,84px)}.note-copy>p:not(.eyebrow){color:var(--muted);max-width:375px;margin-bottom:19px;font-size:13px}.note-copy .handwritten-note{margin-block:28px 24px;font:italic 24px/1.3 var(--serif)!important;color:var(--rose)!important}.signed-note{gap:8px;display:grid}.signed-note>span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:8px}.signed-note strong{font:500 32px var(--serif);color:var(--olive)}.signed-note em{color:var(--rose);font-weight:400}.love-ribbon{background:var(--blush);color:var(--rose);font:italic 24px var(--serif);border-block:1px solid #a9566422;justify-content:center;align-items:center;gap:44px;padding:22px;display:flex}.love-ribbon i{font-size:17px;font-style:normal}.section-heading{justify-content:space-between;align-items:end;gap:45px;margin-bottom:50px;display:flex}.section-heading>p{color:var(--muted);padding-bottom:5px;font-size:12px}.section-heading .eyebrow{margin-bottom:18px}.venue-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.venue-card{border:1px solid var(--line);padding:38px 43px 0;transition:transform .35s,background .35s,border-color .35s,box-shadow .35s;position:relative}.venue-card:before{content:"";pointer-events:none;border:1px solid #53603d20;position:absolute;inset:9px}.venue-card:hover,.venue-card:focus-within{border-color:#a9566466;transform:translateY(-7px);box-shadow:0 18px 34px #5c68441f}.ceremony-card:hover,.ceremony-card:focus-within,.ceremony-card.is-selected{background:#edf1e2}.reception-card:hover,.reception-card:focus-within,.reception-card.is-selected{background:#f5dfdf}.venue-card.is-selected{animation:.75s both venue-card-pulse}.ceremony-card{background:var(--cream)}.reception-card{background:#edcfd0}.venue-topline{color:var(--olive);justify-content:space-between;align-items:center;margin-bottom:35px;display:flex}.venue-topline>span{font:italic 18px var(--serif)}.venue-card>.micro{color:var(--olive);margin-bottom:13px;font-size:8px}.venue-card h3{letter-spacing:-.025em;margin-bottom:26px;font-size:clamp(38px,3.8vw,52px);line-height:.98}.venue-card h3 em{color:var(--olive)}.venue-name{font:500 22px var(--serif)}.venue-location{color:#676857;margin-top:7px;font-size:10px}.venue-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-top:35px;padding:20px 0 25px;display:flex;position:relative}.venue-bottom>span{font:italic 24px var(--serif);color:var(--rose)}.venue-bottom a{text-transform:uppercase;letter-spacing:.09em;align-items:center;gap:15px;font-size:8px;transition:color .2s,font-weight .2s,transform .2s;display:inline-flex}.venue-bottom a:hover,.venue-bottom a:focus-visible,.venue-card.is-selected .venue-bottom a{color:var(--rose);font-weight:700;transform:translate(4px)}.save-date{width:fit-content;color:var(--olive);margin:30px auto 0;display:flex}.dress-section{background:#eef0e6;border-block:1px solid #53603d12}.dress-layout{grid-template-columns:1fr 1fr;align-items:center;gap:9%;padding-block:88px;display:grid}.dress-copy h2{font-size:clamp(44px,4.5vw,64px)}.dress-copy>p:not(.eyebrow){max-width:340px;color:var(--muted);margin-top:18px;font-size:12px}.dress-copy>.dress-code{text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:var(--olive)!important;margin-top:28px!important;font-size:9px!important}.dress-copy>.dress-request{border-left:1px solid #53603d60;padding-left:15px;color:var(--olive)!important;font-size:11px!important}.palette-board{background:var(--cream);border:1px solid var(--line);padding:30px 25px;transform:rotate(1.5deg);box-shadow:8px 8px #53603d08}.palette-heading{text-align:center;gap:7px;margin-bottom:27px;display:grid}.palette-heading>span{text-transform:uppercase;letter-spacing:.18em;color:var(--muted);font-size:8px}.palette-heading em{font:italic 27px var(--serif);color:var(--rose)}.palette-swatches{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.palette-swatches button{background:0 0;border:1px solid #0000;padding:0 0 9px}.color-block{background:var(--swatch);border-radius:50% 50% 0 0;height:140px;display:block;position:relative}.color-block span{color:var(--cream);font-size:8px;position:absolute;bottom:10px;left:12px}.palette-swatches strong{letter-spacing:.025em;margin-top:10px;font-size:8px;font-weight:500;display:block}.palette-swatches button[aria-pressed=true]{border-bottom-color:var(--rose)}.palette-note{min-height:42px;font:italic 18px/1.4 var(--serif);text-align:center;color:var(--olive);margin-top:18px}.palette-footnote{text-align:center;color:var(--muted);font-size:8px;display:block}.guest-notes{padding-block:90px}.guest-notes>.eyebrow{text-align:center;margin-bottom:47px}.guest-note-grid{grid-template-columns:repeat(3,1fr);display:grid}.guest-note-grid article{border-radius:4px;padding:0 35px;transition:background .35s,transform .35s,box-shadow .35s}.guest-note-grid article:hover,.guest-note-grid article:focus-within{background:#f8e6df;transform:translateY(-5px);box-shadow:0 12px 25px #5c684414}.guest-note-grid article:hover h3,.guest-note-grid article:focus-within h3{color:var(--rose)}.guest-note-grid article:first-child{padding-left:0}.guest-note-grid article:last-child{padding-right:0}.guest-note-grid article+article{border-left:1px solid var(--line)}.guest-note-grid article>span{color:var(--rose);font-size:9px}.guest-note-grid h3{margin:23px 0 20px;font-size:38px;line-height:.98}.guest-note-grid p{color:var(--muted);font-size:12px}.day-section{background:var(--olive);color:var(--cream)}.day-layout{grid-template-columns:1fr 1fr;gap:10%;padding-block:95px;display:grid}.day-intro{border:1px solid #0000;border-radius:4px;margin:-24px;padding:24px;transition:background .35s,border-color .35s,transform .35s,box-shadow .35s;position:relative}.day-intro:hover,.day-intro:focus-visible{background:#697755;border-color:#ebc6c766;transform:translateY(-5px);box-shadow:0 16px 30px #26321b2b}.day-intro:hover .eyebrow,.day-intro:focus-visible .eyebrow{color:#fff3dc}.day-intro:hover .day-monogram,.day-intro:focus-visible .day-monogram{color:#f1e6c34f}.day-intro h2{font-size:clamp(50px,5.3vw,74px)}.day-intro h2 em{color:var(--blush)}.day-intro>p:not(.eyebrow){color:#fcf8f1b0;margin-top:25px;font-size:12px}.day-monogram{color:#dfe5c43d;font:400 103px var(--serif);letter-spacing:-.1em;margin-top:35px;display:block}.day-monogram em{color:#ebc6c763}.day-timeline article{grid-template-columns:54px 1fr;gap:24px;padding:0 0 29px;display:grid}.day-timeline article+article{border-top:1px solid #fcf8f131;padding-top:28px}.day-timeline article>div{color:var(--blush);align-content:start;gap:18px;display:grid}.day-timeline article>div span{letter-spacing:.12em;font-size:8px}.day-timeline .micro{color:var(--blush);font-size:8px}.day-timeline h3{margin:8px 0 9px;font-size:37px;line-height:1.15}.day-timeline article section>p:last-child{color:#fcf8f1b0;font-size:11px;line-height:1.8}.mood-grid{grid-template-rows:320px 225px;grid-template-columns:.88fr 1.12fr;gap:22px;display:grid}.mood-grid figure{background:var(--olive);position:relative;overflow:hidden}.mood-grid img{transition:transform .6s}.mood-grid figure:hover img{transform:scale(1.025)}.mood-tall{grid-row:span 2}.mood-wide img{object-position:center 64%}.mood-grid figcaption{color:var(--cream);background:linear-gradient(#0000,#26321bd4);gap:8px;padding:65px 25px 24px;display:grid;position:absolute;bottom:0;left:0;right:0}.mood-grid figcaption span{text-transform:uppercase;letter-spacing:.13em;font-size:8px}.mood-grid figcaption em{font:italic 27px var(--serif)}.mood-quote{text-align:center;color:var(--rose);background:#efd6d3;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:25px;display:flex}.mood-quote .micro{color:var(--rose);font-size:8px}.mood-quote p{font:400 35px/1 var(--serif)}.styling-caption{color:var(--muted);text-transform:uppercase;letter-spacing:.14em;text-align:right;margin-top:18px;font-size:8px}.rsvp-section{background:#edd1cd;position:relative}.rsvp-section:before{content:"";background:repeating-linear-gradient(90deg, var(--pink) 0 12px, transparent 12px 24px);opacity:.35;height:7px;position:absolute;top:0;left:0;right:0}.rsvp-layout{grid-template-columns:.85fr 1.15fr;align-items:center;gap:9%;padding-block:90px;display:grid}.rsvp-copy h2{font-size:clamp(70px,7.5vw,112px)}.rsvp-copy>p:not(.eyebrow){color:#765e59;margin-top:29px;font-size:12px}.reply-by{border-block:1px solid #a9566440;gap:6px;width:fit-content;margin-top:40px;padding:21px 0;display:grid}.reply-by span{text-transform:uppercase;letter-spacing:.14em;color:var(--rose);font-size:8px}.reply-by strong{font:500 40px var(--serif);color:var(--olive)}.rsvp-copy .rsvp-signature{color:var(--rose)!important;font:italic 28px var(--serif)!important;margin-top:24px!important}.reply-card{background:var(--cream);border:1px solid #a9566430;transition:transform .35s,box-shadow .35s,border-color .35s;box-shadow:12px 12px #a9566412}.reply-card:hover,.reply-card:focus-within{border-color:#a9566470;transform:translateY(-5px);box-shadow:14px 17px #a9566420}.reply-header{border-bottom:1px solid var(--line);color:var(--olive);align-items:center;gap:14px;padding:18px 27px;display:flex}.reply-header span{font:italic 19px var(--serif)}.reply-header span:last-child{font:9px var(--sans);color:var(--rose);margin-left:auto}.reply-inner{padding:33px}.reply-inner>.eyebrow{margin-bottom:15px;font-size:8px}.reply-inner h3{font-size:37px;line-height:.99}.preview-notice{color:var(--muted);border-block:1px solid var(--line);margin:20px 0 24px;padding:14px 0;font-size:9px;line-height:1.7}.preview-notice span{color:var(--rose);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;font-size:8px;font-weight:700;display:block}.reply-form{gap:24px;display:grid}.reply-form label,.reply-form legend{color:var(--muted);letter-spacing:.04em;font-size:9px}.reply-form label{gap:8px;display:grid}.field-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.reply-form input,.reply-form textarea{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);resize:vertical;background:0 0;border-radius:0;padding:9px 0;font-size:12px}.reply-form input:focus,.reply-form textarea:focus{border-bottom:2px solid var(--rose);outline:none}.reply-form textarea{min-height:70px}.reply-form label small{font-size:8px}.reply-form fieldset{border:0;margin:0;padding:0}.attendance-options{grid-template-columns:1fr 1fr;gap:9px;margin-top:12px;display:grid}.attendance-options button{border:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:9px;min-height:48px;padding:10px;font-size:10px;transition:transform .2s,border-color .2s,background .2s;display:flex}.attendance-options button:hover,.attendance-options button:focus-visible{background:#ebc6c72e;border-color:#a9566470;transform:translateY(-2px)}.attendance-options button[aria-pressed=true]{background:#ebc6c72e;border-color:#a9566469}.radio-dot{border:1px solid #a9566480;border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}[aria-pressed=true]>.radio-dot{background:var(--rose);box-shadow:inset 0 0 0 2px var(--cream)}.reply-form>.button{width:100%;margin-top:-3px}.reply-deadline{color:var(--muted);text-align:center;margin-top:22px;font-size:8px}.reply-deadline strong{color:var(--olive);font-weight:600}.confirmation{padding:20px 0}.confirmation>svg{color:var(--rose)}.confirmation>.eyebrow{margin-block:22px 12px}.confirmation>p:not(.eyebrow){color:var(--muted);margin-top:18px;font-size:13px}.confirmation .text-button{margin-top:25px}.questions-section{grid-template-columns:.7fr 1.3fr;gap:12%;display:grid}.questions-section>div>p:last-child:not(.eyebrow){color:var(--muted);margin-top:26px;font-size:11px}.questions-list details{border-top:1px solid var(--line)}.questions-list details:last-child{border-bottom:1px solid var(--line)}.questions-list summary{font:500 24px/1.15 var(--serif);grid-template-columns:25px 1fr 20px;align-items:center;gap:16px;padding:24px 0;list-style:none;display:grid}.questions-list summary::-webkit-details-marker{display:none}.question-number{color:var(--rose);font:8px var(--sans)}.question-plus{color:var(--rose);font:300 22px var(--sans);transition:transform .2s}.questions-list details[open] .question-plus{transform:rotate(45deg)}.questions-list details>p{color:var(--muted);padding:0 25px 25px 41px;font-size:11px}.wedding-footer{background:var(--deep-olive);color:var(--cream);text-align:center;padding:64px 7% 25px}.wedding-footer>.micro{color:var(--blush);font-size:8px}.dog-logo-footer{object-fit:contain;background:var(--cream);filter:none;opacity:1;border:1px solid #ebc6c766;border-radius:50% 50% 8px 8px;width:105px;height:125px;margin:19px auto 4px;padding:7px}.footer-names{color:var(--cream);font:400 clamp(65px, 10vw, 150px)/1 var(--serif);letter-spacing:-.06em;margin:22px 0}.footer-names em{color:var(--blush);font-weight:400}.footer-date{color:#fcf8f1aa;letter-spacing:.14em;text-transform:uppercase;justify-content:center;gap:30px;font-size:8px;display:flex}.footer-bottom{color:#fcf8f19c;border-top:1px solid #fcf8f12e;justify-content:space-between;align-items:center;gap:20px;margin-top:60px;padding-top:22px;font-size:8px;display:flex}.footer-bottom button{color:var(--blush);font:italic 16px var(--serif);background:0 0;border:0;align-items:center;gap:10px;padding:5px;display:inline-flex}.footer-bottom a{padding:8px 0}@media (width>=1550px){.wedding-hero{min-height:820px}}@media (width<=1080px){.wedding-header nav{gap:16px}.wedding-header nav a{font-size:8px}.wordmark{font-size:25px}.our-note{gap:9%}.arched-photo{height:535px}.venue-card{padding-inline:30px}.palette-board{padding-inline:17px}.rsvp-layout{gap:6%}.reply-inner{padding:27px}.attendance-options{grid-template-columns:1fr}.guest-note-grid article{padding-inline:25px}}@media (width<=800px){.wedding-header{gap:15px;min-height:70px;padding-inline:5%}.menu-toggle{display:block}.wedding-header nav{background:var(--paper);border-bottom:1px solid var(--line);padding:23px 5%;display:none;position:absolute;top:69px;left:0;right:0}.wedding-header nav.is-open{gap:6px;display:grid}.wedding-header nav a{padding:12px 0;font-size:11px}.header-reply{margin-left:auto;font-size:9px}.wedding-hero{min-height:650px}.hero-copy h1{font-size:110px}.countdown-ribbon{grid-template-columns:1fr 2fr;gap:20px;padding:25px 5%}.calendar-link{display:none}.section{width:88%;padding-block:80px}.our-note{gap:8%}.arched-photo{height:470px}.note-copy h2{font-size:57px}.note-copy>p:not(.eyebrow){font-size:12px}.photo-annotation em{display:none}.photo-date-stamp{padding:14px 17px;right:-9px}.love-ribbon{gap:23px;font-size:20px}.section-heading{gap:25px}.section-heading>p{font-size:11px}.venue-grid{gap:15px}.venue-card{padding:30px 25px 0}.venue-topline>span{font-size:14px}.venue-card h3{font-size:38px}.venue-name{font-size:20px}.venue-location{min-height:36px}.venue-bottom a{gap:6px;font-size:7px}.dress-layout{grid-template-columns:1fr;gap:42px}.dress-copy h2{font-size:62px}.dress-copy>p:not(.eyebrow){max-width:460px}.palette-board{justify-self:center;width:100%;max-width:510px;padding:28px}.color-block{height:175px}.guest-note-grid{gap:24px}.guest-note-grid article{padding-inline:0;border:0!important}.guest-note-grid h3{font-size:30px}.guest-note-grid p{font-size:11px}.day-layout{gap:6%}.day-intro h2{font-size:54px}.day-timeline article{grid-template-columns:35px 1fr;gap:17px}.day-timeline h3{font-size:31px}.mood-grid{grid-template-rows:270px 200px;gap:15px}.mood-quote p{font-size:29px}.rsvp-layout{grid-template-columns:1fr;gap:45px}.rsvp-copy{text-align:center}.rsvp-copy h2{font-size:90px}.reply-by{margin-inline:auto}.reply-card{width:100%;max-width:540px;margin-inline:auto}.attendance-options{grid-template-columns:1fr 1fr}.questions-section{grid-template-columns:.7fr 1.3fr;gap:7%}.questions-list summary{grid-template-columns:17px 1fr 18px;gap:10px;font-size:21px}.questions-list details>p{padding-left:27px}}@media (width<=560px){html{scroll-padding-top:92px}h2{font-size:56px}.eyebrow{letter-spacing:.13em;font-size:9px}.invitation-cover{gap:19px;padding:21px}.cover-note{text-align:center;flex-direction:column;gap:3px;font-size:16px}.cover-note span+span{display:none}.stationery-cover{padding:11px}.stationery-inner{padding:29px 10px 24px}.stationery-inner>.micro{letter-spacing:.15em;font-size:7px}.cover-monogram{margin:23px 0;font-size:28px}.stationery-cover h1{font-size:clamp(40px,12.5vw,68px)}.cover-poem{margin-top:22px;font-size:20px}.cover-date{gap:10px;margin-block:23px 18px}.cover-date strong{padding-inline:13px;font-size:23px}.cover-date span{font-size:7px}.seal-button{width:65px;height:65px}.seal-instruction{margin-top:15px;font-size:7px}.cover-bottom{font-size:7px}.wedding-header{gap:9px;min-height:67px;padding-inline:5%}.wordmark{font-size:25px}.header-reply{gap:9px;font-size:8px}.menu-toggle{padding:8px 0 8px 5px}.menu-toggle span{width:21px}.wedding-header nav{top:66px}.wedding-hero{min-height:670px}.hero-backdrop{object-position:18% center}.hero-shade{background:#25361f69}.hero-copy{padding:90px 20px 112px}.hero-copy .eyebrow{letter-spacing:.17em;margin-bottom:21px;font-size:8px}.hero-prelude{margin-bottom:27px;font-size:22px}.hero-copy h1{letter-spacing:-.055em;font-size:clamp(59px,17.5vw,98px)}.hero-date{flex-wrap:wrap;gap:10px 14px;margin-top:28px}.hero-date strong{border:0;flex-basis:100%;order:-1;padding:0;font-size:10px}.hero-date span{font-size:7px}.hero-date span:last-child{border-left:1px solid #fff6;padding-left:14px}.hero-poem{margin-top:23px;font-size:21px}.hero-actions{flex-direction:column;gap:9px;margin-top:26px}.hero-actions .button{min-width:245px}.hero-detail-link{padding-block:14px;font-size:8px}.hero-caption{letter-spacing:.08em;font-size:6px;bottom:22px}.hero-caption span:last-child{display:none}.countdown-ribbon{grid-template-columns:1fr;gap:20px;padding:25px 6%}.countdown-title{text-align:center}.countdown-title p{font-size:25px}.countdown-title .micro{font-size:7px}.countdown-units>div:first-child{border-left:0}.countdown-units strong{font-size:38px}.countdown-units span{font-size:7px}.section{width:86%;padding-block:70px}.our-note{grid-template-columns:1fr;gap:48px}.note-imagery{padding-right:15px}.arched-photo{height:440px}.photo-date-stamp{bottom:52px;right:-2px}.photo-annotation em{font-size:15px;display:block}.photo-annotation span{font-size:7px}.note-copy h2{font-size:67px}.note-copy>p:not(.eyebrow){max-width:100%;font-size:13px}.love-ribbon{gap:13px;padding:19px 12px;font-size:19px}.love-ribbon i{font-size:12px}.love-ribbon>span:last-child,.love-ribbon>i:last-of-type{display:none}.section-heading{margin-bottom:35px;display:block}.section-heading>p{margin-top:24px;font-size:12px}.venue-grid{grid-template-columns:1fr;gap:22px}.venue-card{padding:29px 30px 0}.venue-topline{margin-bottom:28px}.venue-topline>span{font-size:17px}.venue-card h3{margin-bottom:22px;font-size:45px}.venue-name{font-size:22px}.venue-location{min-height:auto;font-size:9px}.venue-bottom{margin-top:28px}.venue-bottom a{gap:13px;font-size:8px}.save-date{margin-top:22px;font-size:9px}.dress-copy h2{font-size:50px}.dress-copy>p:not(.eyebrow){font-size:12px}.palette-board{padding:25px 16px;transform:rotate(1deg)}.palette-heading em{font-size:25px}.palette-swatches{gap:7px}.color-block{height:122px}.color-block span{font-size:7px;left:9px}.palette-swatches strong{font-size:7px}.palette-note{margin-top:18px;font-size:17px}.palette-footnote{font-size:7px}.guest-notes>.eyebrow{margin-bottom:36px;font-size:8px}.guest-note-grid{grid-template-columns:1fr;gap:0}.guest-note-grid article{padding-block:30px}.guest-note-grid article:first-child{padding-top:0}.guest-note-grid article+article{border-top:1px solid var(--line)!important}.guest-note-grid article:last-child{padding-bottom:0}.guest-note-grid h3{margin-block:18px;font-size:39px}.guest-note-grid p{font-size:12px}.day-layout{grid-template-columns:1fr;gap:40px}.day-intro h2{font-size:59px}.day-monogram{display:none}.day-timeline{border-top:1px solid #fcf8f131;padding-top:30px}.day-timeline article{grid-template-columns:36px 1fr;gap:19px}.day-timeline h3{font-size:37px}.mood-grid{grid-template-rows:auto;grid-template-columns:1fr;gap:17px}.mood-tall{grid-row:auto;height:450px}.mood-wide{height:270px}.mood-quote{min-height:208px}.mood-quote p{font-size:34px}.styling-caption{text-align:center;font-size:7px;line-height:1.7}.rsvp-layout{gap:35px;width:90%}.rsvp-copy{padding-inline:4%}.rsvp-copy>.eyebrow{font-size:8px}.rsvp-copy h2{font-size:85px}.rsvp-copy>p:not(.eyebrow){font-size:12px}.reply-by{margin-top:28px}.reply-card{box-shadow:6px 6px #a9566412}.reply-header{gap:12px;padding:16px 21px}.reply-header span{font-size:17px}.reply-inner{padding:26px 21px}.reply-inner h3{font-size:35px}.field-row{grid-template-columns:1fr;gap:24px}.attendance-options{grid-template-columns:1fr}.attendance-options button{min-height:47px;font-size:11px}.reply-form input,.reply-form textarea{font-size:16px}.reply-form label,.reply-form legend{font-size:10px}.reply-deadline{font-size:8px}.questions-section{grid-template-columns:1fr;gap:35px}.questions-list summary{gap:12px;padding-block:23px;font-size:25px}.questions-list details>p{padding-left:29px;font-size:12px}.wedding-footer{padding:48px 6% 26px}.footer-names{margin-block:23px;font-size:19vw}.wedding-footer>.micro{font-size:7px}.footer-date{gap:17px;font-size:6px}.footer-bottom{flex-direction:column;gap:16px;margin-top:38px;font-size:8px}}@keyframes card-arrival{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-drift{0%{transform:scale(1.02)}to{transform:scale(1.07)translateY(-1.2%)}}@keyframes music-beat{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes venue-card-pulse{0%{transform:translateY(-7px)scale(1)}45%{transform:translateY(-7px)scale(1.018)}to{transform:translateY(-7px)scale(1)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.reveal-on-scroll{opacity:1;transform:none}}
