*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0;padding:0}html{scroll-behavior:smooth}body{overflow-x:hidden}.engagement-frame{pointer-events:none;z-index:50;width:100%;height:100%;position:fixed;inset:0;overflow:hidden}.engagement-flower{pointer-events:none;will-change:transform;filter:drop-shadow(0 16px 28px rgba(var(--accent-rgb,117, 130, 101), .12));display:block;position:absolute}.engagement-flower img{width:100%;height:auto;display:block}.engagement-flower-top{transform-origin:82% 12%;width:min(25vw,420px);animation:8.5s ease-in-out infinite flower-float-top;top:-50px;right:-100px}.engagement-flower-bottom{transform-origin:18% 88%;width:min(25vw,420px);animation:9.5s ease-in-out infinite flower-float-bottom;bottom:-60px;left:-100px}@keyframes flower-float-top{0%,to{transform:translate(0,0)rotate(0)}25%{transform:translate(-.55rem,.55rem)rotate(-1.2deg)scale(1.01)}50%{transform:translate(-1.15rem,1.2rem)rotate(-2.8deg)scale(1.03)}75%{transform:translate(-.35rem,.7rem)rotate(-1.1deg)scale(1.01)}}@keyframes flower-float-bottom{0%,to{transform:translate(0,0)rotate(0)}25%{transform:translate(.55rem,-.5rem)rotate(1.15deg)scale(1.01)}50%{transform:translate(1.1rem,-1.05rem)rotate(2.7deg)scale(1.03)}75%{transform:translate(.3rem,-.65rem)rotate(1deg)scale(1.01)}}@media (width<=768px){.engagement-flower-top{width:40vw;animation-duration:7s;top:-20px;right:-40px}.engagement-flower-bottom{width:40vw;animation-duration:7.8s;bottom:-25px;left:-40px}}@media (width<=380px){.engagement-flower-top,.engagement-flower-bottom{width:38vw}}@media (prefers-reduced-motion:reduce){.engagement-flower-top,.engagement-flower-bottom{animation:none}}.preloader{z-index:999;background:var(--photo-card-bg,#7f8877);opacity:1;justify-content:center;align-items:center;transition:opacity .6s;display:flex;position:fixed;inset:0}.preloader.is-leaving{opacity:0;pointer-events:none}.preloader-mark{transform-origin:50%;width:clamp(72px,16vw,118px);height:auto;filter:drop-shadow(0 10px 22px rgba(var(--accent-rgb,117, 130, 101), .14));animation:2.8s ease-in-out infinite preloaderFloat}.preloader-mark path{transform-box:fill-box;transform-origin:50%;opacity:0;fill:var(--accent,#fcfff9);animation:.9s forwards preloaderReveal}.preloader-mark path:first-child{animation-delay:50ms}.preloader-mark path:nth-child(2){animation-delay:.12s}.preloader-mark path:nth-child(3){animation-delay:.19s}.preloader-mark path:nth-child(4){animation-delay:.26s}.preloader-mark path:nth-child(5){animation-delay:.33s}.preloader-mark path:nth-child(6){animation-delay:.4s}.preloader-mark path:nth-child(7){animation-delay:.47s}.preloader-mark path:nth-child(8){animation-delay:.54s}.preloader-mark path:nth-child(9){animation-delay:.61s}.preloader-mark path:nth-child(10){animation-delay:.68s}.preloader-mark path:nth-child(11){animation-delay:.75s}.preloader-mark path:nth-child(12){animation-delay:.82s}@keyframes preloaderReveal{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes preloaderFloat{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-8px)scale(1.03)}}@media (prefers-reduced-motion:reduce){.preloader-mark{animation:none}.preloader-mark path{opacity:1;animation:none}.preloader-mark{filter:none}}.couple-photo-stack{aspect-ratio:1;-webkit-user-select:none;user-select:none;touch-action:pan-y;justify-content:center;align-items:center;width:clamp(300px,34vw,520px);display:flex;position:relative}.photo-card{aspect-ratio:.82;background:var(--photo-card-bg,#758265);box-sizing:border-box;width:88%;box-shadow:0 10px 28px rgba(var(--accent-deep-rgb,55, 65, 45), .14), 0 2px 6px rgba(var(--accent-deep-rgb,55, 65, 45), .08);will-change:transform, opacity;transition:transform 1.2s cubic-bezier(.22,1,.36,1),opacity .9s,filter 1s;position:absolute;overflow:hidden}.photo-card:active{cursor:grabbing}.photo-card img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.photo-position-0{z-index:4;opacity:1;filter:blur();cursor:grab;transform:translate(0)rotate(0)scale(1)}.photo-position-1{z-index:3;opacity:1;filter:brightness(.98);transform:translate(10%,-7%)rotate(6deg)scale(.97)}.photo-position-2{z-index:2;opacity:1;filter:brightness(.96);transform:translate(-10%,-10%)rotate(-6deg)scale(.94)}.photo-position-3{z-index:1;opacity:1;filter:brightness(.94);transform:translate(-5%,7%)rotate(-10deg)scale(.91)}@media (width<=768px){.couple-photo-stack{width:min(78vw,340px)}.photo-card{width:70%}.photo-position-1{transform:translate(9%,-7%)rotate(6deg)scale(.97)}.photo-position-2{transform:translate(-9%,-9%)rotate(-6deg)scale(.94)}.photo-position-3{transform:translate(-5%,6%)rotate(-9deg)scale(.91)}}@media (width<=380px){.couple-photo-stack{width:82vw}}@media (prefers-reduced-motion:reduce){.photo-card{transition:none}.couple-photo-stack{touch-action:pan-y}}.music-player{z-index:60;pointer-events:none;flex-direction:column;align-items:flex-end;gap:.4rem;display:flex;position:fixed;bottom:clamp(1rem,2vw,1.75rem);right:clamp(1rem,2vw,1.75rem)}.music-player-button{pointer-events:auto;border:1px solid rgba(var(--accent-rgb,117, 130, 101), .18);background:rgba(var(--surface-rgb,248, 250, 247), .78);color:var(--accent,#758265);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 16px 34px rgba(var(--accent-shadow-rgb,91, 101, 76), .12);cursor:pointer;border-radius:999px;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:transform .3s,box-shadow .3s,background .3s;display:inline-flex}.music-player-button:hover{background:rgba(var(--surface-rgb,248, 250, 247), .92);box-shadow:0 20px 40px rgba(var(--accent-shadow-rgb,91, 101, 76), .15);transform:translateY(-2px)}.music-player-button:active{transform:translateY(0)}.music-player-icon{align-items:flex-end;gap:.2rem;width:1.35rem;height:1rem;display:inline-flex}.music-player-icon span{transform-origin:bottom;background:currentColor;border-radius:999px;width:.2rem;animation:1.2s ease-in-out infinite musicBar}.music-player-icon span:first-child{height:35%;animation-delay:0s}.music-player-icon span:nth-child(2){height:70%;animation-delay:.12s}.music-player-icon span:nth-child(3){height:48%;animation-delay:.24s}.music-player-button.is-playing .music-player-icon span{animation-duration:.9s}.music-player-text{letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;font-family:EB Garamond,serif;font-size:.82rem}.music-player-note{background:rgba(var(--surface-rgb,248, 250, 247), .72);color:rgba(var(--accent-rgb,117, 130, 101), .88);letter-spacing:.08em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;margin:0;padding:.35rem .7rem;font-family:EB Garamond,serif;font-size:.72rem}@keyframes musicBar{0%,to{opacity:.75;transform:scaleY(.5)}50%{opacity:1;transform:scaleY(1)}}@media (width<=768px){.music-player{bottom:1rem;right:1rem}.music-player-button{padding:.65rem .9rem}.music-player-text{letter-spacing:.08em;font-size:.7rem}}@media (prefers-reduced-motion:reduce){.music-player-button,.music-player-button:hover{transition:none;transform:none}.music-player-icon span{animation:none}}.falling-leaves{z-index:18;pointer-events:none;position:fixed;inset:0;overflow:hidden}.falling-leaf{top:-14vh;left:var(--leaf-left);width:var(--leaf-size);height:var(--leaf-size);color:var(--leaf-color);opacity:var(--leaf-opacity);filter:drop-shadow(0 10px 16px rgba(var(--photo-card-bg,117, 130, 101), .12));animation:leafFall var(--leaf-duration) linear var(--leaf-delay) infinite;transform:translate3d(0, 0, 0) rotate(var(--leaf-rotate));will-change:transform, opacity;position:absolute}.falling-leaf.is-flipped{transform:scaleX(-1) translate3d(0, 0, 0) rotate(var(--leaf-rotate))}.falling-leaf svg{width:100%;height:100%;display:block}@keyframes leafFall{0%{transform:translate3d(0, -15vh, 0) rotate(var(--leaf-rotate));opacity:0}12%{opacity:var(--leaf-opacity)}50%{transform:translate3d(calc(var(--leaf-drift) * .6), 52vh, 0) rotate(calc(var(--leaf-rotate) + 170deg))}to{transform:translate3d(var(--leaf-drift), 118vh, 0) rotate(calc(var(--leaf-rotate) + 360deg));opacity:0}}@media (width<=768px){.falling-leaf{top:-18vh}}@media (prefers-reduced-motion:reduce){.falling-leaf{opacity:.12;animation:none}}@font-face{font-family:Montine;src:url(/fonts/Montine.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}.engagement{color:#758265;isolation:isolate;width:100%;min-height:100vh;position:relative;overflow-x:hidden}.engagement:before{content:"";z-index:-1;pointer-events:none;background-color:#f8faf7;background-image:url(/assets/engBgWeb-BcLJasFj.png);background-position:top;background-repeat:no-repeat;background-size:100%;width:100%;height:100%;position:fixed;inset:0}.splash{text-align:center;flex-direction:column;align-items:center;width:100%;min-height:100svh;padding:15vh 5vw 8vh;display:flex;position:relative;overflow:hidden}.splash-content{flex-direction:column;align-items:center;width:100%;display:flex}.quote{color:#758265;text-align:center;letter-spacing:.2em;opacity:0;margin:5.5em 0 0;font-family:EB Garamond,serif;font-size:clamp(1.1rem,2.2vw,2rem);font-style:italic;font-weight:500;line-height:1.5;animation:2s cubic-bezier(.22,1,.36,1) .4s forwards splashFade}.verse{color:#758265;text-transform:uppercase;letter-spacing:.4em;opacity:0;margin:2rem 0 0;font-family:EB Garamond,serif;font-size:clamp(.9rem,1.9vw,1.5rem);font-style:italic;font-weight:200;animation:2s cubic-bezier(.22,1,.36,1) .9s forwards splashFade}.splash-sign{color:#758265;opacity:0;flex-direction:column;align-items:center;width:100%;margin-top:auto;animation:2.2s cubic-bezier(.22,1,.36,1) 1.4s forwards signatureReveal;display:flex}.splash-signature{width:clamp(120px,10vw,300px);height:auto;margin-bottom:5rem;display:block}.scroll-prompt{color:#758265;cursor:pointer;opacity:0;background:0 0;border:none;outline:none;flex-direction:column;justify-content:center;align-items:center;padding:0;font-family:EB Garamond,serif;animation:1.6s ease-out 2.7s forwards promptReveal;display:flex;position:absolute;bottom:3.5vh;left:50%;transform:translate(-50%)}.scroll-prompt span{letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;font-family:EB Garamond,serif;font-size:clamp(.7rem,1vw,.95rem);transition:letter-spacing .5s}.scroll-prompt:hover span{letter-spacing:.25em}.scroll-arrow{opacity:.35;margin-top:.5rem;font-family:sans-serif;font-size:1.3rem;animation:2.5s ease-in-out 3.5s infinite arrowFloat}.invitation-section{text-align:center;opacity:0;justify-content:center;align-items:center;width:100%;min-height:35svh;margin-top:12vh;padding:10vh 15vw;transition:opacity 1.4s cubic-bezier(.22,1,.36,1),transform 1.4s cubic-bezier(.22,1,.36,1);display:flex;position:relative;transform:translateY(35px)}.invitation-section.is-visible{opacity:1;transform:translateY(0)}.invitation-content{justify-content:center;align-items:center;width:100%;max-width:900px;padding:0 5vw;display:flex}.invitation-message{color:#758265;letter-spacing:.08em;text-align:center;margin:0;font-family:EB Garamond,serif;font-size:clamp(1rem,1.8vw,1.6rem);font-style:italic;font-weight:500;line-height:1.7}.invitation-message .word{opacity:0;filter:blur(4px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1),filter 1s;display:inline-block;transform:translateY(18px)}.invitation-section.is-visible .invitation-message .word{opacity:1;filter:blur();transform:translateY(0)}.invitation-section.is-visible .invitation-message .word:first-of-type{transition-delay:.1s}.invitation-section.is-visible .invitation-message .word:nth-of-type(2){transition-delay:.17s}.invitation-section.is-visible .invitation-message .word:nth-of-type(3){transition-delay:.24s}.invitation-section.is-visible .invitation-message .word:nth-of-type(4){transition-delay:.31s}.invitation-section.is-visible .invitation-message .word:nth-of-type(5){transition-delay:.38s}.invitation-section.is-visible .invitation-message .word:nth-of-type(6){transition-delay:.45s}.invitation-section.is-visible .invitation-message .word:nth-of-type(7){transition-delay:.52s}.invitation-section.is-visible .invitation-message .word:nth-of-type(8){transition-delay:.59s}.invitation-section.is-visible .invitation-message .word:nth-of-type(9){transition-delay:.66s}.invitation-section.is-visible .invitation-message .word:nth-of-type(10){transition-delay:.73s}.invitation-section.is-visible .invitation-message .word:nth-of-type(11){transition-delay:.8s}.invitation-section.is-visible .invitation-message .word:nth-of-type(12){transition-delay:.87s}.countdown-section{text-align:center;opacity:0;justify-content:center;align-items:center;width:100%;min-height:80svh;margin-top:-20vh;padding:10vh 8vw;transition:opacity 1.6s cubic-bezier(.22,1,.36,1),transform 1.6s cubic-bezier(.22,1,.36,1);display:flex;position:relative;transform:translateY(35px)}.countdown-section.is-visible{opacity:1;transform:translateY(0)}.countdown-content{flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.couple-name{zoom:1.2;color:#758265;letter-spacing:.01em;white-space:nowrap;opacity:0;justify-content:center;align-items:center;gap:.25em;margin-top:10vh;margin-bottom:4vh;font-family:Montine,cursive;font-size:clamp(4rem,8vw,8rem);font-weight:400;line-height:1;transition:opacity 1.4s .15s,transform 1.4s cubic-bezier(.22,1,.36,1) .15s;display:flex;transform:translateY(20px)}.ampersand{opacity:.75;margin:0 .1em;font-family:Montine,cursive;font-size:.38em;font-style:italic}.countdown-heading{color:#758265;text-transform:uppercase;letter-spacing:.22em;opacity:0;margin:4rem 0 1rem;font-family:Bodoni Moda,serif;font-size:clamp(.65rem,1vw,.9rem);font-weight:500;transition:opacity 1s .5s,transform 1s .5s;transform:translateY(12px)}.countdown{opacity:0;justify-content:center;align-items:flex-start;gap:clamp(1rem,2.5vw,3rem);transition:opacity 1.2s .75s,transform 1.2s cubic-bezier(.22,1,.36,1) .75s;display:flex;transform:translateY(12px)}.countdown-item{flex-direction:column;align-items:center;min-width:65px;display:flex}.countdown-number{color:#758265;letter-spacing:.08em;font-variant-numeric:tabular-nums;font-family:Bodoni Moda,serif;font-size:clamp(1.8rem,3vw,3rem);font-weight:700;line-height:1}.countdown-label{color:#758265;text-transform:lowercase;letter-spacing:.15em;opacity:.75;margin-top:.55rem;font-family:Bodoni Moda,serif;font-size:1rem;font-weight:400}.countdown-divider{color:#758265;opacity:.45;margin-top:.05em;font-family:Bodoni Moda,serif;font-size:clamp(1.4rem,2vw,2.2rem);line-height:1}.countdown-section.is-visible .couple-name,.countdown-section.is-visible .countdown-heading,.countdown-section.is-visible .countdown{opacity:1;transform:translateY(0)}.couple-section{justify-content:center;align-items:center;width:100%;padding:5vh 5vw;display:flex;position:relative}.couple-section-content{grid-template-columns:minmax(280px,1fr) minmax(280px,1fr);align-items:center;width:100%;max-width:1200px;display:grid}.couple-photos{opacity:0;justify-content:center;align-items:center;transition:opacity 1.3s cubic-bezier(.22,1,.36,1),transform 1.3s cubic-bezier(.22,1,.36,1);display:flex;transform:translate(-30px)}.couple-section.is-visible .couple-photos{opacity:1;transform:translate(0)}.couple-details{text-align:center;flex-direction:column;gap:clamp(1.5rem,3vh,2rem);display:flex}.couple-person{color:#758265;opacity:0;transition:opacity 1.1s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1);transform:translateY(22px)}.couple-section.is-visible .couple-person{opacity:1;transform:translateY(0)}.couple-section.is-visible .couple-person:first-of-type{transition-delay:.2s}.couple-section.is-visible .couple-person:nth-of-type(2){transition-delay:.35s}.couple-person h2{margin:0 .8rem;font-family:Montine,serif;font-size:clamp(1.6rem,2.5vw,3rem);font-weight:600}.couple-person p{letter-spacing:.08em;margin:.35rem 0;font-family:EB Garamond,serif;font-size:clamp(.95rem,1.2vw,1.2rem);line-height:1.4}.event-section{text-align:center;justify-content:center;align-items:center;width:100%;padding:10vh 8vw;display:flex;position:relative}.event-content{flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:900px;display:flex}.event-heading{color:#758265;text-transform:uppercase;letter-spacing:.22em;opacity:0;margin:0;font-family:EB Garamond,serif;font-size:clamp(1rem,2vw,1.8rem);font-weight:600;transition:opacity 1.4s cubic-bezier(.22,1,.36,1) .15s,transform 1.4s cubic-bezier(.22,1,.36,1) .15s;transform:translateY(20px)}.event-section.is-visible .event-heading{opacity:1;transform:translateY(0)}.event-date{color:#758265;opacity:0;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(1.5rem,4vw,4rem);width:min(100%,700px);margin-top:clamp(3rem,6vh,5rem);transition:opacity 1.5s cubic-bezier(.22,1,.36,1) .45s,transform 1.5s cubic-bezier(.22,1,.36,1) .45s;display:grid;transform:translateY(18px)}.event-section.is-visible .event-date{opacity:1;transform:translateY(0)}.event-day,.event-time{border-top:1px solid #758265;border-bottom:1px solid #758265;justify-content:center;align-items:center;padding:6px 0;display:flex;position:relative}.event-day:before,.event-time:before{content:"";opacity:.6;background:#758265;width:100%;height:0;transition:transform 1.2s cubic-bezier(.22,1,.36,1) .9s;position:absolute;top:50%;transform:scaleX(0)}.event-section.is-visible .event-day:before,.event-section.is-visible .event-time:before{transform:scaleX(1)}.event-day span,.event-time span{z-index:1;color:#758265;text-transform:uppercase;letter-spacing:.18em;white-space:nowrap;background:0 0;padding:0 1.5rem;font-family:Bodoni Moda,serif;font-size:clamp(.7rem,1.1vw,1rem);font-weight:500;position:relative}.event-month-date{color:#758265;flex-direction:column;justify-content:center;align-items:center;min-width:120px;display:flex}.event-month-date .month{text-transform:uppercase;letter-spacing:.22em;font-family:Bodoni Moda,serif;font-size:clamp(.75rem,1.2vw,1.05rem);font-weight:500}.event-month-date .date{letter-spacing:.02em;margin-top:.2rem;font-family:Bodoni Moda,serif;font-size:clamp(3.5rem,6vw,5.5rem);font-weight:600;line-height:.95}.event-month-date .year{letter-spacing:.25em;margin-top:.65rem;font-family:Bodoni Moda,serif;font-size:clamp(.65rem,1vw,.9rem);font-weight:500}.event-location{color:#758265;opacity:0;margin-top:clamp(3rem,5vh,4rem);transition:opacity 1.4s cubic-bezier(.22,1,.36,1) .9s,transform 1.4s cubic-bezier(.22,1,.36,1) .9s;transform:translateY(18px)}.event-section.is-visible .event-location{opacity:1;transform:translateY(0)}.event-location p{letter-spacing:.12em;margin:0;font-family:Bodoni Moda,serif;font-size:clamp(.9rem,1.4vw,1.25rem);font-weight:600;line-height:1.6}.event-location span{letter-spacing:.08em;opacity:.85;margin-top:.3rem;font-family:EB Garamond,serif;font-size:clamp(.85rem,1.2vw,1.1rem);font-style:normal;display:block}.location-button{color:#fff;letter-spacing:.06em;cursor:pointer;opacity:0;background:#758265;border:none;border-radius:5px;justify-content:center;align-items:center;min-width:140px;margin-top:2.2rem;padding:.75rem 1.5rem;font-family:EB Garamond,serif;font-size:.95rem;font-weight:500;text-decoration:none;transition:transform .35s,box-shadow .35s,background .35s;display:inline-flex;transform:translateY(15px)scale(.96)}.location-button:hover{background:#687556;transform:translateY(-2px);box-shadow:0 8px 20px #75826533}.location-button:active{transform:translateY(0)scale(.98)}.event-section.is-visible .location-button{animation:1.2s cubic-bezier(.22,1,.36,1) 1.3s forwards locationButtonReveal}@keyframes locationButtonReveal{0%{opacity:0;transform:translateY(15px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes splashFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes signatureReveal{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes promptReveal{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:.7;transform:translate(-50%)translateY(0)}}@keyframes arrowFloat{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:.65;transform:translateY(5px)}}@media (width<=768px){.engagement:before{background-image:url(/assets/engBgMobile-BIQR-XnM.png);background-position:top;background-size:100%}.splash{min-height:100svh;padding:17vh 8.5vw 9vh}.quote{font-size:unset;letter-spacing:.2em;margin-top:5.5em;line-height:1.5}.verse{letter-spacing:.3em;margin-top:1rem;font-size:.65rem}.splash-signature{width:100px;margin-bottom:4rem}.scroll-prompt{bottom:3vh}.scroll-prompt span{letter-spacing:.15em;font-size:.65rem}.scroll-arrow{margin-top:.4rem;font-size:1.1rem}.invitation-section{padding:10vh 8vw}.invitation-content{padding:0 5vw}.invitation-message{letter-spacing:.06em;font-size:.85rem;line-height:1.9}.desktop-break{display:none}.invitation-message .word{filter:blur(3px);transform:translateY(12px)}.countdown-section{padding:10vh 6vw}.couple-name{letter-spacing:0;white-space:normal;flex-direction:column;justify-content:center;align-items:center;gap:0;font-family:Montine,cursive;font-size:clamp(3.4rem,15vw,5rem);line-height:.85;display:flex}.couple-name .ampersand{margin:.15em 0;font-family:Montine,cursive;font-size:.38em;font-style:normal;line-height:.8}.countdown-heading{letter-spacing:.18em;margin-top:3.5rem;margin-bottom:1rem;font-size:.55rem}.countdown{gap:.45rem}.countdown-item{min-width:48px}.countdown-number{letter-spacing:.04em;font-size:1.35rem}.countdown-label{letter-spacing:.08em;margin-top:.2rem;font-size:.6rem}.countdown-divider{margin-top:.02em;font-size:1.15rem}.couple-section{min-height:100svh;margin-top:-10vh;padding:0 8vw}.couple-section-content{flex-direction:column;gap:2rem;display:flex}.couple-details{gap:2rem}.couple-person h2{font-size:1.8rem}.couple-person p{letter-spacing:.06em;font-size:.95rem;line-height:1.7}.event-section{padding:8vh 8vw}.event-content{max-width:100%}.event-heading{letter-spacing:.18em;font-size:.8rem}.event-day span,.event-time span{letter-spacing:.12em;padding:0 .35rem;font-size:.48rem}.event-month-date{min-width:70px}.event-month-date .month{letter-spacing:.16em;font-size:.55rem}.event-month-date .date{margin-top:.15rem;font-size:3rem}.event-month-date .year{letter-spacing:.18em;margin-top:.45rem;font-size:.5rem}.event-location{margin-top:2.5rem}.event-location p{letter-spacing:.08em;font-size:.72rem;line-height:1.6}.event-location span{margin-top:.25rem;font-size:.72rem;line-height:1.6}.location-button{border-radius:4px;min-width:110px;margin-top:1.7rem;padding:.6rem 1.15rem;font-size:.72rem}}@media (width<=380px){.splash{padding-left:6vw;padding-right:6vw}.quote{letter-spacing:.14em}.verse{letter-spacing:.22em}.splash-signature{width:90px}.invitation-section{padding:10vh 6vw}.couple-name{font-size:3rem}.countdown{gap:.25rem}.countdown-item{min-width:42px}.countdown-number{font-size:1.15rem}.countdown-label{font-size:.38rem}.countdown-divider{font-size:1rem}.event-section{padding:7vh 5vw}.event-heading{letter-spacing:.14em;font-size:.7rem}.event-date{gap:.15rem;margin-top:2.3rem}.event-day span,.event-time span{letter-spacing:.08em;padding:0 .15rem;font-size:.42rem}.event-month-date{min-width:62px}.event-month-date .month{font-size:.48rem}.event-month-date .date{font-size:2.7rem}.event-month-date .year{font-size:.45rem}.event-location{margin-top:2.2rem}.event-location p,.event-location span{font-size:.65rem}.location-button{min-width:100px;margin-top:1.5rem;padding:.55rem 1rem;font-size:.68rem}}@media (prefers-reduced-motion:reduce){.quote,.verse,.splash-sign,.scroll-prompt,.event-heading,.event-date,.event-location,.location-button{opacity:1;animation:none;transform:none}.scroll-arrow{animation:none}.invitation-section,.countdown-section,.couple-name,.countdown-heading,.countdown{opacity:1;transition:none;transform:none}.invitation-message .word{opacity:1;filter:none;transition:none;transform:none}}.rsvp-section{text-align:center;justify-content:center;align-items:center;width:100%;padding:10vh 8vw;display:flex;position:relative}.rsvp-content{flex-direction:column;align-items:center;width:100%;max-width:620px;display:flex}.rsvp-heading{color:#758265;text-transform:uppercase;letter-spacing:.22em;opacity:0;margin:0 0 4rem;font-family:EB Garamond,serif;font-size:clamp(1rem,2vw,1.8rem);font-weight:600;transform:translateY(20px)}.rsvp-section.is-visible .rsvp-heading{animation:1.4s cubic-bezier(.22,1,.36,1) .2s forwards rsvpHeadingReveal}.rsvp-form{flex-direction:column;align-items:stretch;gap:2rem;width:100%;display:flex}.rsvp-field{text-align:left;opacity:0;flex-direction:column;width:100%;display:flex;transform:translateY(15px)}.rsvp-section.is-visible .rsvp-field{animation:1.2s cubic-bezier(.22,1,.36,1) .45s forwards rsvpFieldReveal}.rsvp-section.is-visible .rsvp-field:nth-child(2){animation-delay:.55s}.rsvp-section.is-visible .rsvp-field:nth-child(3){animation-delay:.65s}.rsvp-section.is-visible .rsvp-field:nth-child(4){animation-delay:.75s}.rsvp-field label{color:#758265;letter-spacing:.04em;margin-bottom:.65rem;font-family:EB Garamond,serif;font-size:clamp(.75rem,1vw,.95rem);font-weight:400}.rsvp-field input,.rsvp-field select,.rsvp-field textarea{color:#758265;letter-spacing:.04em;background:0 0;border:none;border-bottom:1px solid #7582658c;border-radius:0;outline:none;width:100%;padding:.45rem 0;font-family:EB Garamond,serif;font-size:1rem;transition:border-color .3s}.rsvp-field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.rsvp-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.rsvp-field input[type=number]{appearance:textfield}.rsvp-field select{appearance:none;cursor:pointer}.rsvp-field textarea{resize:none;min-height:60px;line-height:1.5}.rsvp-field input:focus,.rsvp-field select:focus,.rsvp-field textarea:focus{border-bottom-color:#758265}.rsvp-button{color:#fff;letter-spacing:.04em;cursor:pointer;opacity:0;background:#758265;border:none;border-radius:5px;align-self:center;min-width:125px;margin-top:1rem;padding:.7rem 1.5rem;font-family:EB Garamond,serif;font-size:.95rem;font-weight:500;transition:transform .3s,box-shadow .3s,background .3s;transform:translateY(12px)scale(.97)}.rsvp-button:hover{background:#687556;transform:translateY(-2px);box-shadow:0 8px 20px #7582652e}.rsvp-button:active{transform:translateY(0)scale(.98)}.rsvp-section.is-visible .rsvp-button{animation:1.2s cubic-bezier(.22,1,.36,1) .9s forwards rsvpButtonReveal}@keyframes rsvpHeadingReveal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes rsvpFieldReveal{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes rsvpButtonReveal{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=768px){.rsvp-section{padding:8vh 12vw}.rsvp-content{max-width:100%}.rsvp-heading{letter-spacing:.18em;margin-bottom:3rem;font-size:.8rem}.rsvp-form{gap:1.65rem}.rsvp-field label{margin-bottom:.5rem;font-size:.68rem}.rsvp-field input,.rsvp-field select,.rsvp-field textarea{padding:.35rem 0;font-size:.8rem}.rsvp-field textarea{min-height:50px}.rsvp-button{border-radius:4px;min-width:110px;margin-top:.8rem;padding:.6rem 1.15rem;font-size:.72rem}}@media (width<=380px){.rsvp-section{padding:7vh 10vw}.rsvp-heading{letter-spacing:.14em;margin-bottom:2.5rem;font-size:.7rem}.rsvp-form{gap:1.4rem}.rsvp-field label{font-size:.62rem}.rsvp-field input,.rsvp-field select,.rsvp-field textarea{font-size:.75rem}.rsvp-button{min-width:100px;font-size:.68rem}}.rsvp-honeypot{opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;position:absolute!important;left:-9999px!important}.rsvp-field input:disabled{opacity:.45;cursor:not-allowed}.rsvp-error{color:#9a5c5c;letter-spacing:.03em;text-align:center;margin:-.5rem 0 0;font-family:EB Garamond,serif;font-size:.85rem}.rsvp-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.rsvp-field select{appearance:none;color:#758265;letter-spacing:.04em;cursor:pointer;background-color:#0000;background-image:linear-gradient(45deg,#0000 50%,#758265 50%),linear-gradient(135deg,#758265 50%,#0000 50%);background-position:calc(100% - 8px),calc(100% - 3px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;border:none;border-bottom:1px solid #7582658c;outline:none;width:100%;padding:.45rem 2rem .45rem 0;font-family:EB Garamond,serif;font-size:1rem;transition:border-color .3s,opacity .3s}.rsvp-field select:focus{border-bottom-color:#758265}.rsvp-field select option{color:#758265;background:#f5f7f3;font-family:EB Garamond,serif}@media (width<=768px){.rsvp-field select{background-position:calc(100% - 6px),calc(100% - 1px);background-size:4px 4px,4px 4px;padding:.35rem 1.5rem .35rem 0;font-size:.8rem}}.rsvp-thank-you{text-align:center;color:#758265;opacity:0;flex-direction:column;align-items:center;width:100%;margin-top:-8rem;padding:2rem 1rem;animation:1.4s cubic-bezier(.22,1,.36,1) forwards thankYouReveal;display:flex;transform:translateY(15px)}.thank-you-title{letter-spacing:.18em;text-transform:uppercase;margin:0;font-family:EB Garamond,serif;font-size:clamp(1.2rem,2.5vw,2rem);font-weight:500}.thank-you-message{letter-spacing:.06em;opacity:.85;margin:1.5rem 0 0;font-family:EB Garamond,serif;font-size:clamp(.9rem,1.4vw,1.15rem);font-style:italic;line-height:1.8}.rsvp-thank-you:before{content:"✦";color:#758265;opacity:.55;margin-bottom:1.2rem;font-size:.8rem}@keyframes thankYouReveal{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.rsvp-thank-you{padding:1.5rem .5rem}.thank-you-title{letter-spacing:.15em;font-size:1rem}.thank-you-message{letter-spacing:.04em;margin-top:1rem;font-size:.78rem;line-height:1.8}}@font-face{font-family:Brittany Signature;src:url(/fonts/BrittanySignature.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}.wedding{--accent:#340b13;--accent-rgb:52, 11, 19;--accent-hover:#6e4416;--accent-shadow-rgb:108, 70, 23;--accent-deep-rgb:65, 45, 13;--accent-mark:#b98a3e;--surface:#fff8ea;--surface-rgb:255, 248, 234;--gold-gradient:linear-gradient(91deg, #ffc45f 5.87%, #e7ce9d 16.06%, #efd092 39.39%, #f9bb5e 67.34%);--photo-card-bg:linear-gradient(91deg, #ffc45f 5.87%, #e7ce9d 16.06%, #efd092 39.39%, #f9bb5e 67.34%)}.wedding-main{width:100%;min-height:100vh;color:var(--accent);isolation:isolate;position:relative;overflow-x:hidden}.wedding-main:before{content:"";z-index:-1;pointer-events:none;background-color:var(--surface);background-image:url(/assets/wedBgWeb-9ekQ87K2.png);background-position:top;background-repeat:no-repeat;background-size:100%;width:100%;height:100%;position:fixed;inset:0}.w-splash{text-align:center;flex-direction:column;align-items:center;width:100%;min-height:100svh;padding:15vh 5vw 8vh;display:flex;position:relative;overflow:hidden}.w-splash-content{flex-direction:column;align-items:center;width:100%;display:flex}.w-quote{text-transform:uppercase;color:#8a5a1e;text-align:center;letter-spacing:.2em;opacity:0;margin:5.5em 0 0;font-family:Cormorant Garamond,serif;font-size:clamp(1.1rem,2.2vw,2rem);font-style:italic;font-weight:500;line-height:1.5;animation:2s cubic-bezier(.22,1,.36,1) .4s forwards splashFade}.w-verse{color:#8a5a1e;text-transform:uppercase;letter-spacing:.4em;opacity:0;margin:2rem 0 0;font-family:Cormorant Garamond,serif;font-size:clamp(.9rem,1.9vw,1.5rem);font-style:italic;font-weight:200;animation:2s cubic-bezier(.22,1,.36,1) .9s forwards splashFade}.w-splash-sign{color:#8a5a1e;opacity:0;flex-direction:column;align-items:center;width:100%;margin-top:auto;animation:2.2s cubic-bezier(.22,1,.36,1) 1.4s forwards signatureReveal;display:flex}.w-splash-signature{width:clamp(120px,10vw,300px);height:auto;margin-bottom:5rem;display:block}.w-scroll-prompt{color:#8a5a1e;cursor:pointer;opacity:0;background:0 0;border:none;outline:none;flex-direction:column;justify-content:center;align-items:center;padding:0;font-family:Cormorant Garamond,serif;animation:1.6s ease-out 2.7s forwards promptReveal;display:flex;position:absolute;bottom:3.5vh;left:50%;transform:translate(-50%)}.w-scroll-prompt span{letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;font-family:Cormorant Garamond,serif;font-size:clamp(.7rem,1vw,.95rem);transition:letter-spacing .5s}.w-scroll-prompt:hover span{letter-spacing:.25em}.w-scroll-arrow{opacity:.35;margin-top:.5rem;font-family:sans-serif;font-size:1.3rem;animation:2.5s ease-in-out 3.5s infinite arrowFloat}.w-invitation-section{text-align:center;opacity:0;justify-content:center;align-items:center;width:100%;min-height:35svh;margin-top:12vh;padding:10vh 15vw;transition:opacity 1.4s cubic-bezier(.22,1,.36,1),transform 1.4s cubic-bezier(.22,1,.36,1);display:flex;position:relative;transform:translateY(35px)}.w-invitation-section.is-visible{opacity:1;transform:translateY(0)}.w-invitation-content{justify-content:center;align-items:center;width:100%;max-width:900px;padding:0 5vw;display:flex}.w-invitation-message{color:#8a5a1e;letter-spacing:.08em;text-align:center;margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(1rem,1.8vw,1.6rem);font-style:italic;font-weight:500;line-height:1.7}.w-invitation-message .w-word{opacity:0;filter:blur(4px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1),filter 1s;display:inline-block;transform:translateY(18px)}.w-invitation-section.is-visible .w-invitation-message .w-word{opacity:1;filter:blur();transform:translateY(0)}.w-invitation-section.is-visible .w-invitation-message .w-word:first-of-type{transition-delay:.1s}.w-invitation-section.is-visible .w-invitation-message .w-word:nth-of-type(2){transition-delay:.17s}.w-invitation-section.is-visible .w-invitation-message .w-word:nth-of-type(3){transition-delay:.24s}.w-invitation-section.is-visible .w-invitation-message .w-word:nth-of-type(4){transition-delay:.31s}.w-invitation-section.is-visible .w-invitation-message .w-word:nth-of-type(5){transition-delay:.38s}.w-invitation-section.is-visible .w-invitation-message .w-word:nth-of-type(6){transition-delay:.45s}.w-invitation-section.is-visible .w-invitation-message .w-word:nth-of-type(7){transition-delay:.52s}.w-invitation-section.is-visible .w-invitation-message .w-word:nth-of-type(8){transition-delay:.59s}.w-invitation-section.is-visible .w-invitation-message .w-word:nth-of-type(9){transition-delay:.66s}.w-invitation-section.is-visible .w-invitation-message .w-word:nth-of-type(10){transition-delay:.73s}.w-invitation-section.is-visible .w-invitation-message .w-word:nth-of-type(11){transition-delay:.8s}.w-invitation-section.is-visible .w-invitation-message .w-word:nth-of-type(12){transition-delay:.87s}.w-countdown-section{text-align:center;opacity:0;justify-content:center;align-items:center;width:100%;min-height:80svh;margin-top:-20vh;padding:10vh 8vw;transition:opacity 1.6s cubic-bezier(.22,1,.36,1),transform 1.6s cubic-bezier(.22,1,.36,1);display:flex;position:relative;transform:translateY(35px)}.w-countdown-section.is-visible{opacity:1;transform:translateY(0)}.w-countdown-content{flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.w-couple-name{z-index:60;zoom:1.2;color:#8a5a1e;letter-spacing:.01em;white-space:nowrap;opacity:0;justify-content:center;align-items:center;gap:.25em;margin-top:10vh;margin-bottom:4vh;font-family:Brittany Signature,cursive;font-size:clamp(4rem,8vw,8rem);font-weight:400;transition:opacity 1.4s .15s,transform 1.4s cubic-bezier(.22,1,.36,1) .15s;display:flex;transform:translateY(20px)}.w-ampersand{opacity:.75;margin:0 .1em;font-family:Brittany Signature,cursive;font-size:.38em;font-style:italic}.w-countdown-heading{color:#8a5a1e;text-transform:uppercase;letter-spacing:.22em;opacity:0;margin:4rem 0 1rem;font-family:Baskervville SC,serif;font-size:clamp(.65rem,1vw,.9rem);font-weight:500;transition:opacity 1s .5s,transform 1s .5s;transform:translateY(12px)}.w-countdown{opacity:0;justify-content:center;align-items:flex-start;gap:clamp(1rem,2.5vw,3rem);transition:opacity 1.2s .75s,transform 1.2s cubic-bezier(.22,1,.36,1) .75s;display:flex;transform:translateY(12px)}.w-countdown-item{flex-direction:column;align-items:center;min-width:65px;display:flex}.w-countdown-number{color:#8a5a1e;letter-spacing:.08em;font-variant-numeric:tabular-nums;font-family:Baskervville SC,serif;font-size:clamp(1.8rem,3vw,3rem);font-weight:700;line-height:1}.w-countdown-label{color:#8a5a1e;text-transform:lowercase;letter-spacing:.15em;opacity:.75;margin-top:.55rem;font-family:Baskervville SC,serif;font-size:1rem;font-weight:400}.w-countdown-divider{color:#8a5a1e;opacity:.45;margin-top:.05em;font-family:Baskervville SC,serif;font-size:clamp(1.4rem,2vw,2.2rem);line-height:1}.w-countdown-section.is-visible .w-couple-name,.w-countdown-section.is-visible .w-countdown-heading,.w-countdown-section.is-visible .w-countdown{opacity:1;transform:translateY(0)}.w-couple-section{justify-content:center;align-items:center;width:100%;padding:5vh 5vw;display:flex;position:relative}.w-couple-section-content{grid-template-columns:minmax(280px,1fr) minmax(280px,1fr);align-items:center;width:100%;max-width:1200px;display:grid}.w-couple-photos{opacity:0;justify-content:center;align-items:center;transition:opacity 1.3s cubic-bezier(.22,1,.36,1),transform 1.3s cubic-bezier(.22,1,.36,1);display:flex;transform:translate(-30px)}.w-couple-section.is-visible .w-couple-photos{opacity:1;transform:translate(0)}.w-couple-details{text-align:center;flex-direction:column;gap:clamp(1.5rem,3vh,2rem);display:flex}.w-couple-person{color:#8a5a1e;opacity:0;transition:opacity 1.1s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1);transform:translateY(22px)}.w-couple-section.is-visible .w-couple-person{opacity:1;transform:translateY(0)}.w-couple-section.is-visible .w-couple-person:first-of-type{transition-delay:.2s}.w-couple-section.is-visible .w-couple-person:nth-of-type(2){transition-delay:.35s}.w-couple-person h2{margin:0 .8rem;font-family:Brittany Signature,serif;font-size:clamp(1.6rem,2.5vw,3rem);font-weight:600}.w-couple-person p{letter-spacing:.08em;margin:.35rem 0;font-family:Cormorant Garamond,serif;font-size:clamp(.95rem,1.2vw,1.2rem);line-height:1.4}.w-event-section{text-align:center;justify-content:center;align-items:center;width:100%;padding:10vh 8vw;display:flex;position:relative}.w-event-content{flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:900px;display:flex}.w-event-heading{color:#8a5a1e;text-transform:uppercase;letter-spacing:.22em;opacity:0;margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(1rem,2vw,1.8rem);font-weight:600;transition:opacity 1.4s cubic-bezier(.22,1,.36,1) .15s,transform 1.4s cubic-bezier(.22,1,.36,1) .15s;transform:translateY(20px)}.w-event-section.is-visible .w-event-heading{opacity:1;transform:translateY(0)}.w-event-date{color:#8a5a1e;opacity:0;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(1.5rem,4vw,4rem);width:min(100%,700px);margin-top:clamp(3rem,6vh,5rem);transition:opacity 1.5s cubic-bezier(.22,1,.36,1) .45s,transform 1.5s cubic-bezier(.22,1,.36,1) .45s;display:grid;transform:translateY(18px)}.w-event-section.is-visible .w-event-date{opacity:1;transform:translateY(0)}.w-event-day,.w-event-time{border-top:1px solid #c88a1a;border-bottom:1px solid #c88a1a;justify-content:center;align-items:center;padding:6px 0;display:flex;position:relative}.w-event-day:before,.w-event-time:before{content:"";opacity:.6;background:#c88a1a;width:100%;height:0;transition:transform 1.2s cubic-bezier(.22,1,.36,1) .9s;position:absolute;top:50%;transform:scaleX(0)}.w-event-section.is-visible .w-event-day:before,.w-event-section.is-visible .w-event-time:before{transform:scaleX(1)}.w-event-day span,.w-event-time span{z-index:1;color:#8a5a1e;text-transform:uppercase;letter-spacing:.18em;white-space:nowrap;background:0 0;padding:0 1.5rem;font-family:Baskervville SC,serif;font-size:clamp(.7rem,1.1vw,1rem);font-weight:500;position:relative}.w-event-month-date{color:#8a5a1e;flex-direction:column;justify-content:center;align-items:center;min-width:120px;display:flex}.w-event-month-date .w-month{text-transform:uppercase;letter-spacing:.22em;font-family:Baskervville SC,serif;font-size:clamp(.75rem,1.2vw,1.05rem);font-weight:500}.w-event-month-date .w-date{letter-spacing:.02em;margin-top:.2rem;font-family:Baskervville SC,serif;font-size:clamp(3.5rem,6vw,5.5rem);font-weight:600;line-height:.95}.w-event-month-date .w-year{letter-spacing:.25em;margin-top:.65rem;font-family:Baskervville SC,serif;font-size:clamp(.65rem,1vw,.9rem);font-weight:500}.w-event-location{color:#c88a1a;opacity:0;margin-top:clamp(3rem,5vh,4rem);transition:opacity 1.4s cubic-bezier(.22,1,.36,1) .9s,transform 1.4s cubic-bezier(.22,1,.36,1) .9s;transform:translateY(18px)}.w-event-section.is-visible .w-event-location{opacity:1;transform:translateY(0)}.w-event-location p{letter-spacing:.12em;margin:0;font-family:Baskervville SC,serif;font-size:clamp(.9rem,1.4vw,1.25rem);font-weight:600;line-height:1.6}.w-event-location span{letter-spacing:.08em;opacity:.85;margin-top:.3rem;font-family:Cormorant Garamond,serif;font-size:clamp(.85rem,1.2vw,1.1rem);font-style:normal;display:block}.w-location-button{color:#4a3210;letter-spacing:.06em;cursor:pointer;opacity:0;background:linear-gradient(91deg,#ffc45f 5.87%,#e7ce9d 16.06%,#efd092 39.39%,#f9bb5e 67.34%);border:none;border-radius:5px;justify-content:center;align-items:center;min-width:140px;margin-top:2.2rem;padding:.75rem 1.5rem;font-family:Cormorant Garamond,serif;font-size:.95rem;font-weight:500;text-decoration:none;transition:transform .35s,box-shadow .35s,background .35s;display:inline-flex;transform:translateY(15px)scale(.96)}.w-location-button:hover{filter:brightness(.96);transform:translateY(-2px);box-shadow:0 8px 20px #8a5a1e40}.w-location-button:active{transform:translateY(0)scale(.98)}.w-event-section.is-visible .w-location-button{animation:1.2s cubic-bezier(.22,1,.36,1) 1.3s forwards locationButtonReveal}@media (width<=768px){.wedding-main:before{background-image:url(/assets/wedBgMobile-BDNnHT3Q.png);background-position:top;background-size:100%}.w-splash{min-height:100svh;padding:17vh 8.5vw 9vh}.w-quote{font-size:unset;letter-spacing:.2em;margin-top:5.5em;line-height:1.5}.w-verse{letter-spacing:.3em;margin-top:1rem;font-size:.65rem}.w-splash-signature{width:100px;margin-bottom:4rem}.w-scroll-prompt{bottom:3vh}.w-scroll-prompt span{letter-spacing:.15em;font-size:.65rem}.w-scroll-arrow{margin-top:.4rem;font-size:1.1rem}.w-invitation-section{padding:10vh 8vw 0}.w-invitation-content{padding:0 5vw}.w-invitation-message{letter-spacing:.06em;font-size:.85rem;line-height:1.9}.w-desktop-break{display:none}.w-invitation-message .w-word{filter:blur(3px);transform:translateY(12px)}.w-countdown-section{padding:10vh 6vw}.w-couple-name{z-index:60;letter-spacing:0;white-space:normal;flex-direction:column;justify-content:center;align-items:center;gap:0;font-family:Brittany Signature,cursive;font-size:clamp(3.4rem,15vw,5rem);line-height:1.5;display:flex}.w-couple-name .w-ampersand{margin:.1em 0;font-family:Brittany Signature,cursive;font-size:.38em;font-style:normal;line-height:.8}.w-countdown-heading{letter-spacing:.18em;margin-top:3.5rem;margin-bottom:1rem;font-size:.55rem}.w-countdown{gap:.45rem}.w-countdown-item{min-width:48px}.w-countdown-number{letter-spacing:.04em;font-size:1.35rem}.w-countdown-label{letter-spacing:.08em;margin-top:.2rem;font-size:.6rem}.w-countdown-divider{margin-top:.02em;font-size:1.15rem}.w-couple-section{min-height:100svh;margin-top:-10vh;padding:0 8vw}.w-couple-section-content{flex-direction:column;gap:2rem;display:flex}.w-couple-details{gap:2rem}.w-couple-person h2{font-size:1.8rem}.w-couple-person p{letter-spacing:.06em;font-size:.95rem;line-height:1.7}.w-event-section{padding:8vh 8vw}.w-event-content{max-width:100%}.w-event-heading{letter-spacing:.18em;font-size:.8rem}.w-event-day span,.w-event-time span{letter-spacing:.12em;padding:0 .35rem;font-size:.48rem}.w-event-month-date{min-width:70px}.w-event-month-date .w-month{letter-spacing:.16em;font-size:.55rem}.w-event-month-date .w-date{margin-top:.15rem;font-size:3rem}.w-event-month-date .w-year{letter-spacing:.18em;margin-top:.45rem;font-size:.5rem}.w-event-location{margin-top:2.5rem}.w-event-location p{letter-spacing:.08em;font-size:.72rem;line-height:1.6}.w-event-location span{margin-top:.25rem;font-size:.72rem;line-height:1.6}.w-location-button{border-radius:4px;min-width:110px;margin-top:1.7rem;padding:.6rem 1.15rem;font-size:.72rem}}@media (width<=380px){.w-splash{padding-left:6vw;padding-right:6vw}.w-quote{letter-spacing:.14em}.w-verse{letter-spacing:.22em}.w-splash-signature{width:90px}.w-invitation-section{padding:10vh 6vw}.w-couple-name{font-size:3rem}.w-countdown{gap:.25rem}.w-countdown-item{min-width:42px}.w-countdown-number{font-size:1.15rem}.w-countdown-label{font-size:.38rem}.w-countdown-divider{font-size:1rem}.w-event-section{padding:7vh 5vw}.w-event-heading{letter-spacing:.14em;font-size:.7rem}.w-event-date{gap:.15rem;margin-top:2.3rem}.w-event-day span,.w-event-time span{letter-spacing:.08em;padding:0 .15rem;font-size:.42rem}.w-event-month-date{min-width:62px}.w-event-month-date .w-month{font-size:.48rem}.w-event-month-date .w-date{font-size:2.7rem}.w-event-month-date .w-year{font-size:.45rem}.w-event-location{margin-top:2.2rem}.w-event-location p,.w-event-location span{font-size:.65rem}.w-location-button{min-width:100px;margin-top:1.5rem;padding:.55rem 1rem;font-size:.68rem}}@media (prefers-reduced-motion:reduce){.w-quote,.w-verse,.w-splash-sign,.w-scroll-prompt,.w-event-heading,.w-event-date,.w-event-location,.w-location-button{opacity:1;animation:none;transform:none}.w-scroll-arrow{animation:none}.w-invitation-section,.w-countdown-section,.w-couple-name,.w-countdown-heading,.w-countdown{opacity:1;transition:none;transform:none}.w-invitation-message .w-word{opacity:1;filter:none;transition:none;transform:none}}.w-rsvp-section{text-align:center;justify-content:center;align-items:center;width:100%;padding:10vh 8vw;display:flex;position:relative}.w-rsvp-content{flex-direction:column;align-items:center;width:100%;max-width:620px;display:flex}.w-rsvp-heading{color:#8a5a1e;text-transform:uppercase;letter-spacing:.22em;opacity:0;margin:0 0 4rem;font-family:Cormorant Garamond,serif;font-size:clamp(1rem,2vw,1.8rem);font-weight:600;transform:translateY(20px)}.w-rsvp-section.is-visible .w-rsvp-heading{animation:1.4s cubic-bezier(.22,1,.36,1) .2s forwards rsvpHeadingReveal}.w-rsvp-form{flex-direction:column;align-items:stretch;gap:2rem;width:100%;display:flex}.w-rsvp-field{text-align:left;opacity:0;flex-direction:column;width:100%;display:flex;transform:translateY(15px)}.w-rsvp-section.is-visible .w-rsvp-field{animation:1.2s cubic-bezier(.22,1,.36,1) .45s forwards rsvpFieldReveal}.w-rsvp-section.is-visible .w-rsvp-field:nth-child(2){animation-delay:.55s}.w-rsvp-section.is-visible .w-rsvp-field:nth-child(3){animation-delay:.65s}.w-rsvp-section.is-visible .w-rsvp-field:nth-child(4){animation-delay:.75s}.w-rsvp-field label{color:#8a5a1e;letter-spacing:.04em;margin-bottom:.65rem;font-family:Cormorant Garamond,serif;font-size:clamp(.75rem,1vw,.95rem);font-weight:400}.w-rsvp-field input,.w-rsvp-field select,.w-rsvp-field textarea{color:#8a5a1e;letter-spacing:.04em;background:0 0;border:none;border-bottom:1px solid #8a5a1e8c;border-radius:0;outline:none;width:100%;padding:.45rem 0;font-family:Cormorant Garamond,serif;font-size:1rem;transition:border-color .3s}.w-rsvp-field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.w-rsvp-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.w-rsvp-field input[type=number]{appearance:textfield}.w-rsvp-field select{appearance:none;cursor:pointer}.w-rsvp-field textarea{resize:none;min-height:60px;line-height:1.5}.w-rsvp-field input:focus,.w-rsvp-field select:focus,.w-rsvp-field textarea:focus{border-bottom-color:#c88a1a}.w-rsvp-button{color:#4a3210;letter-spacing:.04em;cursor:pointer;opacity:0;background:linear-gradient(91deg,#ffc45f 5.87%,#e7ce9d 16.06%,#efd092 39.39%,#f9bb5e 67.34%);border:none;border-radius:5px;align-self:center;min-width:125px;margin-top:1rem;padding:.7rem 1.5rem;font-family:Cormorant Garamond,serif;font-size:.95rem;font-weight:500;transition:transform .3s,box-shadow .3s,background .3s;transform:translateY(12px)scale(.97)}.w-rsvp-button:hover{filter:brightness(.96);transform:translateY(-2px);box-shadow:0 8px 20px #8a5a1e2e}.w-rsvp-button:active{transform:translateY(0)scale(.98)}.w-rsvp-section.is-visible .w-rsvp-button{animation:1.2s cubic-bezier(.22,1,.36,1) .9s forwards rsvpButtonReveal}@media (width<=768px){.w-rsvp-section{padding:8vh 12vw}.w-rsvp-content{max-width:100%}.w-rsvp-heading{letter-spacing:.18em;margin-bottom:3rem;font-size:.8rem}.w-rsvp-form{gap:1.65rem}.w-rsvp-field label{margin-bottom:.5rem;font-size:.68rem}.w-rsvp-field input,.w-rsvp-field select,.w-rsvp-field textarea{padding:.35rem 0;font-size:.8rem}.w-rsvp-field textarea{min-height:50px}.w-rsvp-button{border-radius:4px;min-width:110px;margin-top:.8rem;padding:.6rem 1.15rem;font-size:.72rem}}@media (width<=380px){.w-rsvp-section{padding:7vh 10vw}.w-rsvp-heading{letter-spacing:.14em;margin-bottom:2.5rem;font-size:.7rem}.w-rsvp-form{gap:1.4rem}.w-rsvp-field label{font-size:.62rem}.w-rsvp-field input,.w-rsvp-field select,.w-rsvp-field textarea{font-size:.75rem}.w-rsvp-button{min-width:100px;font-size:.68rem}}.w-rsvp-honeypot{opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;position:absolute!important;left:-9999px!important}.w-rsvp-field input:disabled{opacity:.45;cursor:not-allowed}.w-rsvp-error{color:#9a5c5c;letter-spacing:.03em;text-align:center;margin:-.5rem 0 0;font-family:Cormorant Garamond,serif;font-size:.85rem}.w-rsvp-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.w-rsvp-field select{appearance:none;color:#c88a1a;letter-spacing:.04em;cursor:pointer;background-color:#0000;background-image:linear-gradient(45deg,#0000 50%,#c88a1a 50%),linear-gradient(135deg,#c88a1a 50%,#0000 50%);background-position:calc(100% - 8px),calc(100% - 3px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;border:none;border-bottom:1px solid #8a5a1e8c;outline:none;width:100%;padding:.45rem 2rem .45rem 0;font-family:Cormorant Garamond,serif;font-size:1rem;transition:border-color .3s,opacity .3s}.w-rsvp-field select:focus{border-bottom-color:#c88a1a}.w-rsvp-field select option{color:#c88a1a;background:#f5f7f3;font-family:Cormorant Garamond,serif}@media (width<=768px){.w-rsvp-field select{background-position:calc(100% - 6px),calc(100% - 1px);background-size:4px 4px,4px 4px;padding:.35rem 1.5rem .35rem 0;font-size:.8rem}}.w-rsvp-thank-you{text-align:center;color:#c88a1a;opacity:0;flex-direction:column;align-items:center;width:100%;margin-top:-8rem;padding:2rem 1rem;animation:1.4s cubic-bezier(.22,1,.36,1) forwards thankYouReveal;display:flex;transform:translateY(15px)}.w-thank-you-title{letter-spacing:.18em;text-transform:uppercase;margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(1.2rem,2.5vw,2rem);font-weight:500}.w-thank-you-message{letter-spacing:.06em;opacity:.85;margin:1.5rem 0 0;font-family:Cormorant Garamond,serif;font-size:clamp(.9rem,1.4vw,1.15rem);font-style:italic;line-height:1.8}.w-rsvp-thank-you:before{content:"✦";color:#c88a1a;opacity:.55;margin-bottom:1.2rem;font-size:.8rem}@media (width<=768px){.w-rsvp-thank-you{padding:1.5rem .5rem}.w-thank-you-title{letter-spacing:.15em;font-size:1rem}.w-thank-you-message{letter-spacing:.04em;margin-top:1rem;font-size:.78rem;line-height:1.8}}.wedding-main :is(.w-quote,.w-verse,.w-scroll-prompt,.w-scroll-prompt span,.w-scroll-arrow,.w-invitation-message,.w-word,.w-couple-name,.w-couple-name .w-ampersand,.w-countdown-heading,.w-countdown-number,.w-countdown-label,.w-countdown-divider,.w-couple-person,.w-couple-person h2,.w-couple-person p,.w-event-heading,.w-event-date,.w-event-day span,.w-event-time span,.w-event-month-date,.w-event-location,.w-event-location p,.w-event-location span,.w-rsvp-heading,.w-rsvp-field label,.w-rsvp-error,.w-rsvp-thank-you,.w-thank-you-title,.w-thank-you-message){background:var(--gold-gradient);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.wedding-frame{pointer-events:none;z-index:50;width:100%;height:100%;position:fixed;inset:0;overflow:hidden}.wedding-flower{pointer-events:none;will-change:transform;filter:drop-shadow(0 16px 28px #8a5a1e24);display:block;position:absolute}.wedding-flower img{width:100%;height:auto;display:block}.wedding-flower-top{transform-origin:82% 12%;width:min(25vw,420px);animation:8.5s ease-in-out infinite flower-float-top;top:0;left:0}.wedding-flower-bottom{transform-origin:18% 88%;width:min(25vw,420px);animation:9.5s ease-in-out infinite flower-float-bottom;bottom:0;right:0}@media (width<=768px){.wedding-flower-top{width:40vw;animation-duration:7s;top:0;left:0}.wedding-flower-bottom{width:40vw;animation-duration:7.8s;bottom:0;right:0}}@media (width<=380px){.wedding-flower-top,.wedding-flower-bottom{width:38vw}}@media (prefers-reduced-motion:reduce){.wedding-flower-top,.wedding-flower-bottom{animation:none}}.admin-page{color:#263126;background:#f6f5f1;min-height:100vh;padding:40px;font-family:Arial,Helvetica,sans-serif}.admin-header{justify-content:space-between;align-items:flex-start;gap:24px;max-width:1400px;margin:0 auto 36px;display:flex}.admin-eyebrow{color:#758265;letter-spacing:.18em;margin:0 0 8px;font-size:12px;font-weight:700}.admin-header h1{letter-spacing:-.03em;margin:0;font-family:Georgia,serif;font-size:clamp(32px,4vw,52px);font-weight:500}.admin-subtitle{color:#7b8178;margin:10px 0 0;font-size:14px}.refresh-button{color:#364034;cursor:pointer;background:#fff;border:1px solid #d8d9d1;border-radius:10px;padding:11px 18px;font-size:13px;transition:all .2s}.refresh-button:hover{background:#f1f2ed}.refresh-button:disabled{opacity:.6;cursor:not-allowed}.admin-error{color:#9a3d37;background:#fff1f0;border:1px solid #efcdca;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;max-width:1400px;margin:0 auto 24px;padding:14px 18px;display:flex}.admin-error button{color:inherit;cursor:pointer;background:0 0;border:0;font-weight:600}.stats-grid{grid-template-columns:repeat(5,1fr);gap:14px;max-width:1400px;margin:0 auto 20px;display:grid}.stat-card{background:#fff;border:1px solid #e4e4dc;border-radius:14px;align-items:center;gap:16px;padding:22px;display:flex}.stat-icon{color:#758265;background:#eef0e9;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:21px;display:grid}.stat-card p{color:#858a82;margin:0 0 5px;font-size:12px}.stat-card h2{margin:0;font-family:Georgia,serif;font-size:28px;font-weight:500}.stat-card.attending .stat-icon{color:#50704e;background:#eaf3e9}.stat-card.maybe .stat-icon{color:#9a8141;background:#f5f0df}.stat-card.not-attending .stat-icon{color:#9c5750;background:#f7e9e7}.stat-card.guests .stat-icon{color:#756384;background:#eeeaf4}.event-summary{grid-template-columns:1fr 1fr;gap:14px;max-width:1400px;margin:0 auto 28px;display:grid}.event-summary-card{background:#fff;border:1px solid #e4e4dc;border-radius:14px;padding:20px 22px}.event-summary-top{color:#72786f;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;display:flex}.event-summary-card strong{margin-right:8px;font-family:Georgia,serif;font-size:32px;font-weight:500;display:inline-block}.event-summary-card small{color:#92958f}.event-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.engagement-dot{background:#9b8aa7}.wedding-dot{background:#758265}.responses-section{background:#fff;border:1px solid #e4e4dc;border-radius:16px;max-width:1400px;margin:0 auto;overflow:hidden}.responses-header{padding:26px 28px 20px}.responses-header h2{margin:0;font-family:Georgia,serif;font-size:25px;font-weight:500}.responses-header p{color:#8a8e87;margin:6px 0 0;font-size:13px}.filters{gap:10px;padding:0 28px 22px;display:flex}.search-wrapper{color:#8b9087;border:1px solid #dedfd7;border-radius:9px;flex:1;align-items:center;min-width:220px;height:42px;padding:0 12px;display:flex}.search-wrapper span{margin-right:8px;font-size:21px}.search-wrapper input{color:#333a32;background:0 0;border:0;outline:0;width:100%;height:100%;font-size:13px}.filters select{color:#454b43;cursor:pointer;background:#fff;border:1px solid #dedfd7;border-radius:9px;outline:none;min-width:145px;height:42px;padding:0 12px}.table-wrapper{width:100%;overflow-x:auto}.rsvp-table{border-collapse:collapse;width:100%;min-width:900px}.rsvp-table th{text-align:left;color:#7c8179;text-transform:uppercase;letter-spacing:.06em;background:#fafaf7;border-top:1px solid #ecece5;border-bottom:1px solid #ecece5;padding:13px 20px;font-size:11px;font-weight:700}.rsvp-table td{vertical-align:middle;border-bottom:1px solid #eeeeea;padding:17px 20px;font-size:13px}.rsvp-table tbody tr:last-child td{border-bottom:0}.rsvp-table tbody tr:hover{background:#fcfcf9}.guest-name{color:#30372f;font-weight:600}.event-badge,.status-badge{border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:11px;font-weight:600;display:inline-flex}.event-badge.engagement{color:#74617e;background:#f0ebf4}.event-badge.wedding{color:#627153;background:#edf1e9}.guest-count{color:#3e443c;font-weight:600}.status-badge.yes{color:#4f704c;background:#eaf4e8}.status-badge.maybe{color:#907a3d;background:#f5f0df}.status-badge.no{color:#98544d;background:#f7e9e7}.status-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.wishes{color:#6e746c;white-space:nowrap;text-overflow:ellipsis;max-width:250px;overflow:hidden}.submitted-date{color:#858a82;white-space:nowrap;font-size:12px}.admin-loading{color:#858a82;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:280px;display:flex}.loader{border:2px solid #e2e3dc;border-top-color:#758265;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:280px;padding:30px;display:flex}.empty-state>div{color:#a0a79b;font-family:Georgia,serif;font-size:38px}.empty-state h3{margin:12px 0 6px;font-family:Georgia,serif;font-size:21px;font-weight:500}.empty-state p{color:#8a8f87;margin:0;font-size:13px}@media (width<=1000px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=700px){.admin-page{padding:24px 14px}.admin-header{flex-direction:column;margin-bottom:26px}.refresh-button{width:100%}.stats-grid{grid-template-columns:repeat(2,1fr)}.event-summary{grid-template-columns:1fr}.filters{flex-direction:column;padding:0 18px 20px}.search-wrapper{width:100%;min-width:0}.filters select{width:100%}.responses-header{padding:22px 18px 18px}.responses-section{border-radius:12px}}@media (width<=450px){.stats-grid{grid-template-columns:1fr}.admin-header h1{font-size:34px}}.invitation{background-position:top;background-repeat:no-repeat;background-size:100%;width:100%;min-height:100vh}.engagement{background-image:url(/assets/engBgWeb-BcLJasFj.png)}.wedding{background-image:url(/assets/wedBgWeb-9ekQ87K2.png)}@media (width<=768px){.engagement{background-image:url(/assets/engBgMobile-BIQR-XnM.png)}.wedding{background-image:url(/assets/wedBgMobile-BDNnHT3Q.png)}}
