*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--maroon:#6e1020;--maroon2:#4a0a12;--maroon3:#9b1c2e;--gold:#b08d4f;--gold2:#d4af6e;--gold3:#f0d080;--ivory:#faf6ef;--ivory2:#f0e8dc;--cream:#fdf8ef;--sage:#8b9e7d;--brown:#2a1f14;--mid:#6b4e35;--border:#e2d4c4}html{scroll-behavior:auto}body{background:var(--ivory);color:var(--brown);font-family:var(--font-inter),"Inter",sans-serif;overflow-x:hidden;overscroll-behavior:none;-webkit-font-smoothing:antialiased}button{-webkit-tap-highlight-color:transparent}.curtain-overlay{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;overflow:hidden}.curtain-valance{position:relative;z-index:2;height:80px;flex-shrink:0;background:repeating-linear-gradient(90deg,var(--maroon2) 0,var(--maroon) 12px,#8a1528 20px,rgba(255,210,215,.18) 24px,#8a1528 28px,var(--maroon) 38px,var(--maroon2) 52px);box-shadow:0 4px 24px rgba(0,0,0,.5)}.curtain-valance:after{content:"";position:absolute;bottom:-18px;left:0;width:100%;height:20px;background:inherit;-webkit-mask-image:radial-gradient(ellipse 3.2% 100% at 1.6% 0,black 70%,transparent 71%);mask-image:radial-gradient(ellipse 3.2% 100% at 1.6% 0,black 70%,transparent 71%);-webkit-mask-size:6.4% 100%;mask-size:6.4% 100%;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}.curtain-panels{flex:1 1;display:flex;position:relative}.curtain-panel{flex:1 1;position:relative;background:repeating-linear-gradient(90deg,var(--maroon2) 0,var(--maroon) 14px,#8a1528 24px,rgba(255,210,215,.2) 29px,#8a1528 34px,var(--maroon) 46px,var(--maroon2) 62px);will-change:transform}.curtain-panel:after{content:"";inset:0;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 40%,rgba(0,0,0,.18))}.curtain-panel:after,.curtain-seam{position:absolute;pointer-events:none}.curtain-seam{top:0;bottom:0;left:50%;width:4px;margin-left:-2px;transform-origin:center center;z-index:8;opacity:0;background:linear-gradient(180deg,rgba(240,208,128,0),rgba(240,208,128,.9) 16%,#fff8c8 50%,rgba(240,208,128,.9) 84%,rgba(240,208,128,0));box-shadow:0 0 16px 5px rgba(240,208,128,.8),0 0 48px 14px rgba(240,208,128,.5),0 0 120px 40px rgba(255,238,170,.28);will-change:opacity,transform}.curtain-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10;pointer-events:none}.curtain-open-btn{pointer-events:auto;padding:.9rem 2.6rem;background:transparent;border:1.5px solid rgba(255,210,215,.55);border-radius:100px;font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:1.15rem;font-style:italic;letter-spacing:.16em;color:rgba(250,246,239,.92);cursor:pointer;transition:background .25s,border-color .25s;white-space:nowrap;min-height:52px}.curtain-open-btn:hover{background:rgba(255,210,215,.08);border-color:rgba(255,210,215,.8)}.hero-section{position:relative;height:100vh;height:100dvh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-photo-wrap{position:absolute;inset:0;transition:filter 1.6s ease}.hero-photo-wrap.blurred{filter:blur(6px)}.hero-photo-wrap.clear{filter:blur(0)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,10,7,.55),rgba(13,10,7,.18) 50%,rgba(13,10,7,.65))}.hero-text{position:relative;z-index:2;text-align:center;padding:2rem 1.5rem;opacity:0;transform:translateY(20px);transition:opacity .9s ease .3s,transform .9s ease .3s}.hero-text.visible{opacity:1;transform:translateY(0)}.hero-families{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-style:italic;font-size:clamp(.9rem,2.2vw,1.2rem);font-weight:300;color:rgba(250,246,239,.8);letter-spacing:.18em;display:block;margin-bottom:.6rem}.hero-names{font-family:var(--font-greatvibes),"Great Vibes",cursive;font-size:clamp(3.2rem,8vw,6rem);color:#fff;line-height:1.05;display:block;margin-bottom:.4rem}.hero-names em{color:var(--gold2);font-style:normal}.hero-invite{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-style:italic;font-size:clamp(.85rem,2vw,1.15rem);color:rgba(250,246,239,.78);letter-spacing:.1em;display:block;margin-bottom:.55rem}.hero-title{display:inline-flex;align-items:baseline;justify-content:center;gap:.45rem;flex-wrap:wrap;line-height:1.2}.hero-title-the,.hero-title-wedding{font-family:var(--font-greatvibes),"Great Vibes",cursive;font-size:clamp(2rem,5.5vw,3.8rem);color:var(--gold2);font-style:normal}.hero-title-lrvr{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(1.6rem,4.2vw,2.95rem);font-weight:500;font-style:normal;letter-spacing:.02em;color:#fff;text-transform:uppercase}.scroll-cue{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:.4rem;opacity:0;transition:opacity .6s ease 1.8s}.scroll-cue.visible{opacity:1}.scroll-cue span{font-family:var(--font-inter),"Inter",sans-serif;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(250,246,239,.45)}.scroll-arrow{width:20px;height:20px;border-right:1.5px solid rgba(250,246,239,.45);border-bottom:1.5px solid rgba(250,246,239,.45);transform:rotate(45deg);animation:scrollBounce 1.8s ease-in-out infinite}@keyframes scrollBounce{0%,to{transform:rotate(45deg) translateY(0)}50%{transform:rotate(45deg) translateY(5px)}}.journey-section,.kinetic-stage{height:100vh;height:100dvh;position:relative}.kinetic-stage{width:100vw;overflow:hidden;transform:translateZ(0)}.k-layer,.kinetic-stage{background:var(--maroon)}.k-layer{position:absolute;inset:0;will-change:opacity,transform}.caption-wrap{position:absolute;bottom:0;left:0;right:0;z-index:5;padding:3rem 2rem 2.5rem;background:linear-gradient(0deg,rgba(58,8,16,.82),transparent);pointer-events:none}.caption-text{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-style:italic;font-size:clamp(1.3rem,3.4vw,2.2rem);font-weight:400;color:#fff;text-align:center;line-height:1.45;min-height:2.5em;letter-spacing:.01em;text-shadow:0 1px 2px rgba(0,0,0,.95),0 2px 20px rgba(0,0,0,.85),0 0 56px rgba(0,0,0,.5)}.wr-word{display:inline-block;opacity:0;transform:translateY(.4em);filter:blur(3px);transition:opacity .65s ease,transform .65s ease,filter .65s ease}.wr-word.in{opacity:1;transform:translateY(0);filter:blur(0)}.tw-caret{display:inline-block;margin-left:2px;color:#fff;font-weight:300;animation:twBlink 1.05s step-end infinite}@keyframes twBlink{0%,50%{opacity:1}50.01%,to{opacity:0}}.question-overlay{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(58,8,16,.88);padding:2rem;text-align:center;opacity:0;pointer-events:none;transition:opacity .6s ease}.question-overlay.visible{opacity:1;pointer-events:auto}.q-text{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(1.8rem,4.5vw,3rem);font-weight:300;color:var(--ivory);margin-bottom:2.8rem;max-width:540px;line-height:1.3}.q-opts{display:flex;gap:.9rem;flex-wrap:wrap;justify-content:center}.q-btn{padding:.9rem 2.4rem;border-radius:100px;font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:1.12rem;font-weight:400;letter-spacing:.04em;cursor:pointer;transition:all .25s;border:1.5px solid transparent;min-height:54px;min-width:168px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.q-btn.primary{background:var(--maroon);color:#fff;border-color:var(--maroon)}.q-btn.primary.selected,.q-btn.primary:hover{background:var(--gold);border-color:var(--gold);color:var(--brown);box-shadow:0 4px 22px rgba(176,141,79,.5);transform:translateY(-2px)}.q-btn.ghost{background:transparent;color:rgba(250,246,239,.72);border-color:rgba(250,246,239,.3)}.q-btn.ghost.selected,.q-btn.ghost:hover{border-color:rgba(250,246,239,.62);background:rgba(250,246,239,.08);color:#fff}.q-btn.selected{pointer-events:none}@media (max-width:640px){.q-opts{flex-direction:column;align-items:center}.q-btn{width:82%;text-align:center}}.tap-section{position:relative;height:100vh;height:100dvh;display:flex;align-items:center;justify-content:center;overflow:hidden}.tap-bg{z-index:0}.tap-bg,.tap-overlay{position:absolute;inset:0}.tap-overlay{background:linear-gradient(180deg,rgba(8,4,2,.55),rgba(8,4,2,.4) 45%,rgba(8,4,2,.62));z-index:1}.tap-qmark{position:absolute;z-index:2;font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-style:italic;font-weight:300;font-size:clamp(16rem,52vw,32rem);color:rgba(212,175,110,.2);line-height:1;top:50%;left:50%;transform:translate(-50%,-52%) scale(0);opacity:0;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform,opacity}.tap-card-wrap{position:relative;z-index:3;width:calc(100% - 2.5rem);max-width:390px;margin:0 auto;will-change:opacity,transform}.tap-card{position:relative;background:linear-gradient(155deg,#fefbf3,#faf3e2 45%,#f5e9d0);border:2px solid var(--maroon);box-shadow:0 0 0 5px #faf3e2,0 0 0 6.5px rgba(176,141,79,.65),0 16px 64px rgba(0,0,0,.5),0 4px 20px rgba(0,0,0,.3);border-radius:2px;padding:2rem 1.75rem 2.2rem;text-align:center;overflow:visible}.tap-card:after{content:"";inset:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 14px,rgba(176,141,79,.03) 0,rgba(176,141,79,.03) 15px),repeating-linear-gradient(-45deg,transparent,transparent 14px,rgba(176,141,79,.03) 0,rgba(176,141,79,.03) 15px);border-radius:2px}.tap-card:after,.tap-corner{position:absolute;pointer-events:none}.tap-corner{font-size:.7rem;color:var(--gold);line-height:1}.tap-tl{top:9px;left:9px}.tap-tr{top:9px;right:9px}.tap-bl{bottom:9px;left:9px}.tap-br{bottom:9px;right:9px}.tap-divider{display:flex;align-items:center;gap:.55rem;margin:.2rem 0 1.4rem}.tap-divider span:not(.tap-orn){flex:1 1;height:1px;background:linear-gradient(90deg,transparent,rgba(176,141,79,.55))}.tap-divider span:last-child{background:linear-gradient(90deg,rgba(176,141,79,.55),transparent)}.tap-orn{font-size:.7rem;color:var(--gold);flex:none}.tap-question{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(1.5rem,3.8vw,2.2rem);font-weight:400;color:var(--maroon2);line-height:1.35;margin-bottom:1.6rem;letter-spacing:.01em}.tap-opts{display:flex;flex-direction:column;gap:.65rem;align-items:center}.tap-btn-yes{width:100%;max-width:260px;padding:.82rem 1.6rem;background:var(--maroon);border:2px solid var(--maroon);border-radius:100px;font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:1.05rem;font-weight:400;letter-spacing:.04em;color:#fff;cursor:pointer;transition:all .25s;min-height:50px;-webkit-tap-highlight-color:transparent}.tap-btn-yes.selected,.tap-btn-yes:hover{background:var(--gold);border-color:var(--gold);color:var(--brown);box-shadow:0 4px 18px rgba(176,141,79,.4);transform:translateY(-2px)}.tap-btn-yes.selected{pointer-events:none}.tap-btn-no{width:100%;max-width:260px;padding:.75rem 1.6rem;background:transparent;border:1.5px solid rgba(110,16,32,.3);border-radius:100px;font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:1rem;font-weight:400;letter-spacing:.04em;color:var(--mid);cursor:pointer;transition:all .25s;min-height:48px;-webkit-tap-highlight-color:transparent}.tap-btn-no.selected,.tap-btn-no:hover{border-color:var(--maroon);color:var(--maroon);background:rgba(110,16,32,.05)}.tap-btn-no.selected{pointer-events:none}.scratch-section{position:relative;min-height:100vh;min-height:100dvh;background:radial-gradient(ellipse at center,#7a1124 0,#5a0d1b 60%,#3a0810 100%);justify-content:center;padding:4rem 2rem;text-align:center}.scratch-heading,.scratch-section{display:flex;flex-direction:column;align-items:center}.scratch-heading{gap:.1rem;margin-bottom:.6rem}.sh-line{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(1.9rem,5.2vw,3rem);font-weight:400;color:var(--gold2);letter-spacing:.05em;line-height:1.15}.sh-amp{font-family:var(--font-greatvibes),"Great Vibes",cursive;font-size:clamp(1.7rem,4.2vw,2.5rem);color:var(--gold3);line-height:1;margin:.05rem 0}.scratch-hint{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-style:italic;font-size:clamp(.9rem,2vw,1.1rem);color:rgba(240,208,128,.7);letter-spacing:.1em;margin-bottom:3rem}.scratch-circles{display:flex;gap:2.2rem;align-items:flex-end;justify-content:center;flex-wrap:wrap}.scratch-item{display:flex;flex-direction:column;align-items:center;gap:.8rem}.scratch-date-label{font-family:var(--font-inter),"Inter",sans-serif;font-size:.62rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(240,208,128,.6)}.tap-reveal-wrap{position:relative;width:128px;height:128px;border-radius:50%;outline:none}.tap-reveal-wrap:focus-visible{box-shadow:0 0 0 3px var(--gold2)}.tap-date-value{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(2rem,5.5vw,2.6rem);font-weight:400;color:var(--maroon);background:var(--ivory);-webkit-user-select:none;-moz-user-select:none;user-select:none;letter-spacing:.04em}.tap-date-value,.tap-foil{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:50%}.tap-foil{background:linear-gradient(135deg,#7a5e1e,#b08d4f 20%,#d4af6e 38%,#f0d494 52%,#d4af6e 64%,#c9a04a 80%,#7a5e1e);box-shadow:inset 0 1px 0 rgba(255,248,200,.3),0 2px 12px rgba(0,0,0,.4);transition:transform .48s cubic-bezier(.15,0,.1,1.5),opacity .38s ease;will-change:transform,opacity}.tap-foil.revealed{transform:scale(1.6);opacity:0;pointer-events:none}.tap-hint-icon{font-size:1.4rem;color:rgba(255,248,200,.6);animation:tapPulse 2s ease-in-out infinite;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}@keyframes tapPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.scratch-reveal-msg{margin-top:3.5rem;opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}.scratch-reveal-msg.visible{opacity:1;transform:translateY(0)}.scratch-reveal-title{font-family:var(--font-greatvibes),"Great Vibes",cursive;font-size:clamp(2.4rem,6.5vw,3.8rem);color:#fff;margin-bottom:.5rem;line-height:1.1}.countdown-wrap{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem;opacity:0;transition:opacity .6s ease .4s}.countdown-wrap.visible{opacity:1}.cd-unit{display:flex;flex-direction:column;align-items:center;min-width:64px}.cd-num{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(2.2rem,5.5vw,3.2rem);font-weight:400;color:var(--gold2);line-height:1;min-width:2ch;text-align:center}.cd-label{font-family:var(--font-inter),"Inter",sans-serif;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(250,246,239,.35);margin-top:.35rem}.home-section{position:relative;min-height:100vh;min-height:100dvh;color:var(--ivory)}.home-bg{position:fixed;inset:0;z-index:-1;will-change:transform}.home-overlay{position:absolute;inset:0;background:rgba(13,10,7,.52);z-index:0}.home-inner{position:relative;z-index:1;padding:5rem 1.5rem 6rem;max-width:600px;margin:0 auto;text-align:center}.home-caption{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-style:italic;font-size:clamp(1.4rem,3.5vw,2.2rem);font-weight:300;color:rgba(250,246,239,.9);margin-bottom:3.5rem;line-height:1.45;min-height:2.5em}.venue-block{margin-bottom:3.5rem;opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.venue-block.visible{opacity:1;transform:translateY(0)}.venue-names{font-family:var(--font-greatvibes),"Great Vibes",cursive;font-size:clamp(2rem,5.5vw,3.5rem);color:#fff;margin-bottom:1rem;line-height:1.05}.venue-names em{color:var(--gold2);font-style:normal}.gold-rule{width:80px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:.8rem auto 1.2rem;opacity:0;transition:opacity .6s ease .3s}.gold-rule.visible{opacity:1}.venue-main-date{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(2.2rem,5.6vw,3.6rem);font-weight:500;color:var(--gold3);letter-spacing:.06em;margin-bottom:.9rem;opacity:0;transform:translateY(10px);transition:opacity .7s ease .5s,transform .7s ease .5s;text-shadow:0 0 14px rgba(240,208,128,.45),0 0 52px rgba(212,175,110,.4)}.venue-main-date.visible{opacity:1;transform:translateY(0)}.venue-name-place{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(1.2rem,3vw,1.7rem);color:#fff;margin-bottom:.3rem;opacity:0;transform:translateY(10px);transition:opacity .7s ease .85s,transform .7s ease .85s}.venue-name-place.visible{opacity:1;transform:translateY(0)}.venue-location{font-family:var(--font-inter),"Inter",sans-serif;font-size:.9rem;font-weight:500;letter-spacing:.2em;color:var(--gold2);text-shadow:0 0 22px rgba(212,175,110,.4);opacity:0;transition:opacity .6s ease 1s}.venue-location.visible{opacity:1}.rsvp-form-wrap{background:rgba(250,246,239,.06);border:1px solid rgba(226,212,196,.15);border-radius:16px;padding:2rem 1.5rem;text-align:left}.form-heading{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(1.4rem,3vw,2rem);font-weight:400;color:#ffffff;text-align:center;margin-bottom:1.5rem;text-shadow:0 1px 14px rgba(0,0,0,.5);letter-spacing:.04em}.form-fields{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.form-group-label{font-family:var(--font-inter),"Inter",sans-serif;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold2);margin:.55rem 0 -.1rem}.form-group-label:first-child{margin-top:0}.form-input{width:100%;padding:.85rem 1.1rem;background:rgba(255,255,255,.12);border:1.5px solid rgba(226,212,196,.38);border-radius:10px;font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:1.05rem;color:#fff;outline:none;transition:border-color .2s,background .2s;min-height:52px}.form-input::placeholder{color:rgba(250,246,239,.4);font-style:italic}.form-input:focus{border-color:rgba(176,141,79,.75);background:rgba(255,255,255,.18)}.form-input.error{border-color:rgba(220,80,80,.6)}.form-textarea{resize:none;min-height:82px;font-style:italic}.phone-row{display:flex;gap:.5rem;align-items:stretch}.phone-row .form-phone{flex:1 1 auto;min-width:0}.form-cc{flex:0 0 auto;width:auto;max-width:40%;padding:.85rem .55rem;background:rgba(255,255,255,.12);border:1.5px solid rgba(226,212,196,.38);border-radius:10px;font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:1.02rem;color:#fff;outline:none;min-height:52px;transition:border-color .2s,background .2s;-webkit-tap-highlight-color:transparent}.form-cc:focus{border-color:rgba(176,141,79,.75);background:rgba(255,255,255,.18)}.form-cc option{color:#1a1a1a}.form-error{font-family:var(--font-inter),"Inter",sans-serif;font-size:.75rem;color:rgba(220,130,130,.9);margin-bottom:.75rem;display:none}.form-error.visible{display:block}.form-btns{display:flex;flex-direction:column;gap:.65rem;margin-top:1.25rem}.btn-confirm{padding:1rem;background:var(--maroon);border:none;border-radius:12px;color:#fff;font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:1.1rem;font-weight:400;letter-spacing:.05em;cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s;min-height:54px}.btn-confirm:hover{background:var(--gold);color:var(--brown);transform:translateY(-2px);box-shadow:0 6px 22px rgba(176,141,79,.4)}.btn-confirm:disabled{opacity:.6;pointer-events:none}.btn-decline{padding:.9rem;background:transparent;border:1.5px solid rgba(226,212,196,.18);border-radius:12px;color:rgba(250,246,239,.42);font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:1rem;cursor:pointer;transition:border-color .2s,color .2s;min-height:52px}.btn-decline:hover{border-color:rgba(226,212,196,.4);color:rgba(250,246,239,.65)}.ty-wrap{text-align:center;padding:4rem 1.5rem;display:none}.ty-wrap.visible{display:block;animation:tyReveal .6s cubic-bezier(.215,.61,.355,1) both}@keyframes tyReveal{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.ty-title{font-family:var(--font-greatvibes),"Great Vibes",cursive;font-size:clamp(2.2rem,6vw,4rem);color:var(--gold2);margin-bottom:.75rem;line-height:1.1}.ty-sub{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(1.05rem,2.7vw,1.45rem);color:#fff;line-height:1.5;text-shadow:0 1px 12px rgba(0,0,0,.45)}.dr-scroll-cue{position:absolute;bottom:1.6rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.4rem;opacity:0;transition:opacity .8s ease;pointer-events:none}.dr-scroll-cue.visible{opacity:1}.dr-scroll-cue span{font-family:var(--font-inter),"Inter",sans-serif;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold2)}.kinetic-closing{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:2rem;text-align:center;background:rgba(58,8,16,.6);opacity:0;pointer-events:none;transition:opacity .8s ease}.kinetic-closing.visible{opacity:1}.kinetic-closing p{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-style:italic;font-size:clamp(1.5rem,4vw,2.3rem);color:var(--maroon2);line-height:1.4;max-width:460px;padding:1.9rem 2.1rem;border-radius:3px;background:linear-gradient(155deg,#fefbf3,#faf3e2 45%,#f5e9d0);border:2px solid var(--maroon);box-shadow:0 0 0 5px #faf3e2,0 0 0 6.5px rgba(176,141,79,.6),0 18px 54px rgba(0,0,0,.5);transform:scale(.94);transition:transform .6s cubic-bezier(.2,.7,.3,1.2)}.kinetic-closing.visible p{transform:scale(1)}.dr-names{font-family:var(--font-greatvibes),"Great Vibes",cursive;font-size:clamp(2.6rem,7vw,4.4rem);color:#fff;line-height:1.05;margin-bottom:2.2rem;text-shadow:0 0 40px rgba(212,175,110,.3)}.dr-names em{color:var(--gold2);font-style:normal}.dr-venue-name{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(1.4rem,3.4vw,2rem);color:#fff;letter-spacing:.03em}.dr-venue-loc{font-size:.82rem;font-weight:500;letter-spacing:.2em;color:var(--gold2);margin-top:.45rem}.dr-celebrations,.dr-venue-loc{font-family:var(--font-inter),"Inter",sans-serif;text-transform:uppercase}.dr-celebrations{font-size:.72rem;font-weight:700;letter-spacing:.12em;color:#fff;margin-top:.55rem}.rsvp-wrap{position:relative;z-index:1;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:600px;margin:0 auto;padding:5rem 1.5rem;text-align:center;opacity:0;transform:translateY(16px);transition:opacity .8s ease,transform .8s ease}.rsvp-wrap.visible{opacity:1;transform:translateY(0)}.rsvp-stage{width:100%;animation:rsvpFade .5s cubic-bezier(.215,.61,.355,1) both}.done-card{display:flex;flex-direction:column;align-items:center}.done-card .ty-sub{max-width:440px;margin:0 auto}.done-rule{width:70px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:2.3rem auto}.done-date{font-family:var(--font-greatvibes),"Great Vibes",cursive;font-size:clamp(2rem,5.5vw,3.4rem);color:var(--gold2);line-height:1.1;margin:0 0 .5rem;-webkit-text-stroke:.4px var(--gold2);text-shadow:0 1px 14px rgba(0,0,0,.4)}.done-seeyou{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(1.15rem,2.9vw,1.55rem);color:#fff;line-height:1.55;letter-spacing:.04em;text-shadow:0 1px 12px rgba(0,0,0,.55)}@keyframes rsvpFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.rsvp-headline{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-size:clamp(1.9rem,5vw,3rem);font-weight:400;color:#fff;line-height:1.2;margin-bottom:.6rem;text-shadow:0 1px 16px rgba(0,0,0,.5)}.rsvp-sub{font-size:clamp(1.05rem,2.6vw,1.4rem);color:rgba(250,246,239,.85);margin-bottom:2.2rem}.rsvp-formhint,.rsvp-sub{font-family:var(--font-cormorant),"Cormorant Garamond",serif;font-style:italic}.rsvp-formhint{font-size:clamp(.85rem,1.9vw,1rem);color:rgba(250,246,239,.65);letter-spacing:.02em;margin-bottom:1.3rem}.rsvp-btns{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap}.rsvp-btns .btn-confirm,.rsvp-btns .btn-decline{min-width:200px}@media (max-width:640px){.rsvp-btns{flex-direction:column;align-items:center}.rsvp-btns .btn-confirm,.rsvp-btns .btn-decline{width:84%}}.music-toggle{position:fixed;top:1rem;right:1rem;z-index:900;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(58,8,16,.5);border:1px solid rgba(212,175,110,.6);color:var(--gold2);cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .25s,border-color .25s,transform .2s;touch-action:manipulation;-webkit-tap-highlight-color:transparent;animation:fadeInToggle .6s ease both}.music-toggle:hover{background:rgba(58,8,16,.72);border-color:var(--gold2);transform:scale(1.05)}@keyframes fadeInToggle{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}.curtain-overlay{display:none!important}.hero-text{transform:none!important}.hero-text,.scroll-cue{opacity:1!important}.gold-rule,.venue-block,.venue-location,.venue-main-date,.venue-name-place{opacity:1!important;transform:none!important}}