@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:300;font-display:swap;src:url(/_next/static/media/fd3893c623c32b6d-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:300;font-display:swap;src:url(/_next/static/media/ea896c3885e026c1-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:300;font-display:swap;src:url(/_next/static/media/024ead497118aa23-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:300;font-display:swap;src:url(/_next/static/media/e74f24ed7f0e4323-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:300;font-display:swap;src:url(/_next/static/media/e18f83c737786aa7-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/fd3893c623c32b6d-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/ea896c3885e026c1-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/024ead497118aa23-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/e74f24ed7f0e4323-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/e18f83c737786aa7-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond Fallback;src:local("Times New Roman");ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.00%;size-adjust:96.98%}.__className_c7caef{font-family:Cormorant Garamond,Cormorant Garamond Fallback}.__variable_c7caef{--serif:"Cormorant Garamond","Cormorant Garamond Fallback"}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/b8c37bb59076c047-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/5bbac197f803cc34-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/9dd75fadc5b3df29-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b8c37bb59076c047-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/5bbac197f803cc34-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/9dd75fadc5b3df29-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Jost Fallback;src:local("Arial");ascent-override:111.45%;descent-override:39.06%;line-gap-override:0.00%;size-adjust:96.01%}.__className_fc965b{font-family:Jost,Jost Fallback;font-style:normal}.__variable_fc965b{--sans:"Jost","Jost Fallback"}:root{--plum:#2b0f24;--rose:#d9829e;--blush:#f7c9d9;--dusty:#c98a9e;--cream:#fdf3f0;--serif-stack:var(--serif),"Cormorant Garamond",Georgia,serif;--sans-stack:var(--sans),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%}body{background:radial-gradient(ellipse at 50% 120%,#5c1c42 0,#2b0f24 55%,#1a0817 100%);background-attachment:fixed;color:var(--cream);font-family:var(--sans-stack);overflow:hidden;position:relative;-webkit-font-smoothing:antialiased}.frame{margin:0;flex:0 0 auto;line-height:0;padding:clamp(7px,.7vw,13px);background:linear-gradient(160deg,#241019,#160610);border:1px solid rgba(247,201,217,.42);box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 0 1px rgba(0,0,0,.35);opacity:0;transition:opacity .9s ease;animation:float 7.5s ease-in-out infinite}.frame.on{opacity:1}@keyframes float{0%{transform:translateY(0) rotate(-.4deg)}50%{transform:translateY(-10px) rotate(.4deg)}to{transform:translateY(0) rotate(-.4deg)}}.frame img{display:block;width:auto;height:auto;max-width:38vw;max-height:70vh;filter:saturate(.85) contrast(1.02) brightness(.95) sepia(.1)}.smoke{position:fixed;inset:-20%;pointer-events:none;z-index:1;filter:blur(60px);transition:filter 2.5s ease}.smoke span{position:absolute;border-radius:50%;opacity:.72;mix-blend-mode:screen;animation:drift linear infinite}.s1{width:60vw;height:60vw;left:-10%;top:10%;background:radial-gradient(circle,#e87ba8 0,transparent 68%);animation-duration:38s}.s2{width:52vw;height:52vw;right:-8%;top:0;background:radial-gradient(circle,#f7a8c4 0,transparent 68%);animation-duration:47s;animation-direction:reverse}.s3{width:70vw;height:70vw;left:15%;bottom:-25%;background:radial-gradient(circle,#b95f8e 0,transparent 70%);animation-duration:55s}.s4{width:40vw;height:40vw;right:12%;bottom:-10%;background:radial-gradient(circle,#ffd6e4 0,transparent 65%);animation-duration:43s;animation-direction:reverse;opacity:.35}@keyframes drift{0%{transform:translate(0) scale(1)}25%{transform:translate(6vw,-4vh) scale(1.12)}50%{transform:translate(-3vw,5vh) scale(.95)}75%{transform:translate(-7vw,-3vh) scale(1.08)}to{transform:translate(0) scale(1)}}.smoke.calm{filter:blur(80px)}#petals{z-index:2}#petals,.vignette{position:fixed;inset:0;pointer-events:none}.vignette{z-index:3;background:radial-gradient(ellipse at center,transparent 42%,rgba(20,6,17,.72) 100%)}.stage{position:relative;z-index:5;height:100vh;height:100dvh;overflow:hidden}.panel{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:5vh 6vw;opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.3,1);pointer-events:none}.panel.on{opacity:1;transform:translateY(0);pointer-events:auto}.panel.out{opacity:0;transform:translateY(-32px)}.panel-inner{display:flex;align-items:center;justify-content:center;gap:clamp(1.5rem,3vw,3.25rem);width:100%}.layout-left{flex-direction:row}.layout-right{flex-direction:row-reverse}.content{width:min(32rem,100%);flex:0 1 32rem;text-align:center}.kicker{font-size:.72rem;letter-spacing:.34em;text-transform:uppercase;color:var(--dusty);margin-bottom:2rem}.kicker,h1{font-weight:300}h1{font-family:var(--serif-stack);font-size:clamp(2.4rem,6vw,4rem);line-height:1.08;letter-spacing:-.01em}h1 em{font-style:italic;color:var(--blush)}.q{font-family:var(--serif-stack);font-size:clamp(1.9rem,4.4vw,3rem);line-height:1.22;margin-bottom:2.6rem}.q,.sub{font-weight:300}.sub{color:rgba(253,243,240,.62);font-size:clamp(.95rem,2vw,1.05rem);line-height:1.7;margin:1.4rem auto 0;max-width:34ch}.q-subtext{font-family:var(--serif-stack);font-style:italic;font-weight:300;font-size:clamp(1.05rem,2.4vw,1.35rem);line-height:1.45;color:rgba(253,243,240,.72);margin:-1.4rem auto 2.1rem;max-width:32ch}.beats{display:flex;flex-direction:column;gap:.9rem}.beat{font-size:clamp(1.2rem,2.5vw,1.7rem)}.beat,.beat-foot{font-family:var(--serif-stack);font-weight:300;line-height:1.5}.beat-foot{font-style:italic;font-size:clamp(1rem,2.2vw,1.15rem);color:var(--dusty);margin-top:1.4rem}.reveal-item{opacity:0;transform:translateY(16px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.3,1)}.reveal-item.shown{opacity:1;transform:none}.opening-cta{margin-top:2.2rem}.opening-subtext{margin-top:1.4rem;font-size:.8rem;font-weight:300;color:rgba(253,243,240,.4);letter-spacing:.01em}.countdown-ambient{position:fixed;right:3.5vw;bottom:1.8vh;z-index:6;display:flex;align-items:baseline;gap:.45rem;opacity:.4;color:var(--cream);font-size:.72rem;letter-spacing:.16em;white-space:nowrap;pointer-events:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cd-unit{white-space:nowrap}.cd-dot{color:var(--dusty)}.progress{position:fixed;left:50%;bottom:2.6vh;transform:translateX(-50%);z-index:6;display:flex;gap:.55rem;opacity:0;transition:opacity .8s ease;pointer-events:none}.progress.on{opacity:1}.dot{width:5px;height:5px;border-radius:50%;background:rgba(247,201,217,.22);transition:background .5s ease,transform .5s ease,box-shadow .5s ease}.dot.done{background:rgba(247,201,217,.5)}.dot.now{background:var(--blush);transform:scale(1.7);box-shadow:0 0 12px rgba(247,201,217,.9)}.calendar{display:inline-block;margin:0 auto 1.6rem;padding:1.1rem 1.3rem 1.3rem;border:1px solid rgba(247,201,217,.16);border-radius:16px;background:rgba(26,8,23,.28)}.cal-month{font-size:.72rem;letter-spacing:.42em;text-transform:uppercase;color:var(--dusty);margin-bottom:.9rem}.cal-grid{display:grid;grid-template-columns:repeat(7,2.15rem);grid-gap:.15rem;gap:.15rem}.cal-head{height:1.3rem;font-size:.58rem;letter-spacing:.08em;color:rgba(201,138,158,.7)}.cal-day,.cal-head{display:flex;align-items:center;justify-content:center}.cal-day{height:2.15rem;font-family:var(--sans-stack);font-size:.88rem;font-weight:300;color:rgba(253,243,240,.68);border-top:1px solid rgba(247,201,217,.08)}.cal-day.blank{border-top-color:transparent}.cal-day.glow{color:#1a0817;font-weight:500;border-radius:50%;border-top-color:transparent;background:var(--blush);animation:dayglow 3.6s ease-in-out infinite}@keyframes dayglow{0%,to{box-shadow:0 0 13px 3px rgba(247,201,217,.55)}50%{box-shadow:0 0 26px 7px rgba(247,201,217,.95)}}.cal-heading{font-family:var(--serif-stack);font-weight:300;font-size:clamp(1.7rem,4vw,2.6rem);line-height:1.15}.btn,.cal-heading{color:var(--cream)}.btn{font-family:var(--sans-stack);font-size:.8rem;font-weight:400;letter-spacing:.24em;text-transform:uppercase;background:transparent;border:1px solid rgba(247,201,217,.42);padding:1.05rem 3.2rem;border-radius:100px;cursor:pointer;transition:background .5s ease,border-color .5s ease,letter-spacing .5s ease}.btn:hover{background:rgba(247,201,217,.13);border-color:var(--blush);letter-spacing:.3em}.btn[disabled]{opacity:.28;cursor:default}.btn[disabled]:hover{background:transparent;border-color:rgba(247,201,217,.42);letter-spacing:.24em}.choices{display:flex;flex-direction:column;gap:1rem;max-width:30rem;margin:0 auto}.choice{font-family:var(--sans-stack);font-size:1.02rem;font-weight:300;color:var(--cream);background:rgba(255,255,255,.045);border:1px solid rgba(247,201,217,.2);padding:1.2rem 1.6rem;border-radius:100px;cursor:pointer;min-height:3.5rem;transition:background .4s ease,border-color .4s ease,transform .4s ease}.choice:hover{background:rgba(247,201,217,.14);border-color:rgba(247,201,217,.55)}.choice.sel{background:rgba(247,201,217,.24);border-color:var(--blush)}.custom-wrap{max-width:30rem;margin:1.1rem auto 0}.custom-input{width:100%;font-family:var(--serif-stack);font-size:1.3rem;font-weight:300;color:var(--cream);text-align:center;background:transparent;border:none;border-bottom:1px solid rgba(247,201,217,.3);padding:.7rem;outline:none;transition:border-color .4s ease}.custom-input:focus{border-bottom-color:var(--blush)}.custom-input::placeholder{color:rgba(253,243,240,.26);font-style:italic}textarea{width:100%;min-height:4.5rem;resize:none;font-family:var(--serif-stack);font-size:1.5rem;font-weight:300;line-height:1.5;color:var(--cream);text-align:center;background:transparent;border:none;border-bottom:1px solid rgba(247,201,217,.3);padding:.9rem;outline:none;transition:border-color .4s ease}textarea:focus{border-bottom-color:var(--blush)}textarea::placeholder{color:rgba(253,243,240,.26);font-style:italic}.nav{margin-top:2.6rem;display:flex;align-items:center;justify-content:center;gap:1.4rem;min-height:3.4rem}.back{background:none;border:none;cursor:pointer;color:rgba(253,243,240,.42);font-family:var(--sans-stack);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;transition:color .4s ease;padding:1rem .4rem;white-space:nowrap}.back:hover{color:var(--blush)}.closing-line{font-weight:300;font-size:clamp(2rem,5vw,3.2rem);line-height:1.15}.closing-line,.closing-sub{font-family:var(--serif-stack)}.closing-sub{margin-top:1.3rem;font-style:italic;font-size:clamp(1.1rem,2.6vw,1.4rem);color:rgba(253,243,240,.7)}.closing-heart{display:block;margin:2.1rem auto 0;width:clamp(1.6rem,3.4vw,2.1rem);height:auto;color:var(--blush,#f7c9d9);opacity:.75;animation:heart-beat 4.5s ease-in-out infinite}@keyframes heart-beat{0%,to{transform:scale(1);opacity:.68}50%{transform:scale(1.06);opacity:.9}}@media (prefers-reduced-motion:reduce){.closing-heart{animation:none;opacity:.8}}.mute{position:fixed;top:1.2rem;right:1.2rem;z-index:6;width:2.4rem;height:2.4rem;display:none;align-items:center;justify-content:center;border:1px solid rgba(247,201,217,.28);border-radius:50%;background:rgba(26,8,23,.35);color:var(--dusty);cursor:pointer}@media (max-width:820px){.panel{padding:4vh 7vw}.layout-left,.layout-right,.panel-inner{flex-direction:column;gap:clamp(1rem,2.6vh,1.9rem)}.frame img{max-width:78vw;max-height:32vh}.content{width:min(30rem,100%);flex:0 0 auto}}@media (max-width:600px){.btn{padding:1.05rem 2.6rem}.choice{min-height:3.4rem;padding:1rem 1.4rem}.choices{gap:.8rem}.q{margin-bottom:1.6rem}.frame img{max-height:27vh}.cal-grid{grid-template-columns:repeat(7,1.95rem)}.cal-day{height:1.95rem;font-size:.82rem}.smoke span{opacity:.5}.s4{opacity:.24}}@media (prefers-reduced-motion:reduce){.frame,.smoke span{animation:none}.frame{transition-duration:.4s}.cal-day.glow{animation:none;box-shadow:0 0 16px 4px rgba(247,201,217,.75)}.panel{transition-duration:.25s}.reveal-item{transition-duration:.3s}}