@font-face{font-family:__Playfair_Display_0a80b4;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Playfair_Display_0a80b4;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-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:__Playfair_Display_0a80b4;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-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:__Playfair_Display_0a80b4;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-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:__Playfair_Display_Fallback_0a80b4;src:local("Times New Roman");ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:111.26%}.__className_0a80b4{font-family:__Playfair_Display_0a80b4,__Playfair_Display_Fallback_0a80b4;font-style:normal}.__variable_0a80b4{--font-playfair:"__Playfair_Display_0a80b4","__Playfair_Display_Fallback_0a80b4"}@font-face{font-family:__Cormorant_Garamond_1a41a3;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_1a41a3;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_1a41a3;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_1a41a3;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_1a41a3;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_1a41a3;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_1a41a3;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_1a41a3;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_1a41a3;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_1a41a3;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_1a41a3;font-style:normal;font-weight:500;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_1a41a3;font-style:normal;font-weight:500;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_1a41a3;font-style:normal;font-weight:500;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_1a41a3;font-style:normal;font-weight:500;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_1a41a3;font-style:normal;font-weight:500;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_1a41a3;font-style:normal;font-weight:600;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_1a41a3;font-style:normal;font-weight:600;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_1a41a3;font-style:normal;font-weight:600;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_1a41a3;font-style:normal;font-weight:600;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_1a41a3;font-style:normal;font-weight:600;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_1a41a3;src:local("Times New Roman");ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.00%;size-adjust:96.98%}.__className_1a41a3{font-family:__Cormorant_Garamond_1a41a3,__Cormorant_Garamond_Fallback_1a41a3;font-style:normal}.__variable_1a41a3{--font-cormorant:"__Cormorant_Garamond_1a41a3","__Cormorant_Garamond_Fallback_1a41a3"}@font-face{font-family:__Great_Vibes_a10525;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/dad5af6a451969b9-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:__Great_Vibes_a10525;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f751862dd005bbab-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Great_Vibes_a10525;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/162bae04ee86dd69-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Great_Vibes_a10525;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/67d172d8d0152ee1-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:__Great_Vibes_a10525;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/536d9d896eaf4f3f-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:__Great_Vibes_a10525;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/87069f06a4f1ee13-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:__Great_Vibes_Fallback_a10525;src:local("Arial");ascent-override:119.68%;descent-override:56.39%;line-gap-override:0.00%;size-adjust:71.11%}.__className_a10525{font-family:__Great_Vibes_a10525,__Great_Vibes_Fallback_a10525;font-weight:400;font-style:normal}.__variable_a10525{--font-script:"__Great_Vibes_a10525","__Great_Vibes_Fallback_a10525"}:root{--rose-deep:#b91c5c;--rose-mid:#e63974;--rose-light:#ff85a9;--coral-warm:#ff6b7a;--peach-soft:#ffa0a8;--cream:#fff5f5;--burgundy:#6b1b3d;--gold-accent:#ffb86c}*{margin:0;padding:0;box-sizing:border-box}html{background-color:var(--burgundy);min-height:100%;min-height:100dvh;min-height:-webkit-fill-available}body,html{overflow:hidden}body{font-family:var(--font-cormorant),Georgia,serif;background:linear-gradient(135deg,var(--burgundy) 0,var(--rose-deep) 25%,var(--rose-mid) 50%,var(--coral-warm) 75%,var(--peach-soft) 100%);background-size:400% 400%;background-attachment:fixed;animation:gradientShift 15s ease infinite,breathe 8s ease-in-out infinite;min-height:100vh;min-height:100dvh;min-height:-webkit-fill-available;height:100%;display:flex;align-items:center;justify-content:center;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23ff8fa3' d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E") 12 12,auto;position:relative}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.grain-overlay{position:fixed;top:-50%;left:-50%;width:200%;height:200%;pointer-events:none;z-index:999;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");animation:grainShift .5s steps(1) infinite}@keyframes grainShift{0%,to{transform:translate(0)}25%{transform:translate(-2%,-2%)}50%{transform:translate(2%,2%)}75%{transform:translate(-1%,1%)}}.blur-blobs{position:fixed;inset:0;width:100%;height:100%;height:100dvh;pointer-events:none;z-index:1;overflow:hidden}.blur-blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.55;animation:blobFloat 20s ease-in-out infinite}.blob-1{width:500px;height:500px;background:radial-gradient(circle,rgba(255,130,170,.7) 0,transparent 70%);top:-10%;left:-10%;animation-delay:0s;animation-duration:25s}.blob-2{width:600px;height:600px;background:radial-gradient(circle,rgba(255,80,120,.6) 0,transparent 70%);top:50%;right:-15%;animation-delay:-5s;animation-duration:30s}.blob-3{width:400px;height:400px;background:radial-gradient(circle,rgba(255,160,180,.6) 0,transparent 70%);bottom:-5%;left:20%;animation-delay:-10s;animation-duration:22s}.blob-4{width:350px;height:350px;background:radial-gradient(circle,rgba(230,70,130,.5) 0,transparent 70%);top:20%;left:60%;animation-delay:-15s;animation-duration:28s}.blob-5{width:450px;height:450px;background:radial-gradient(circle,rgba(255,100,150,.55) 0,transparent 70%);bottom:30%;right:30%;animation-delay:-8s;animation-duration:24s}@keyframes blobFloat{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-40px) scale(1.1)}50%{transform:translate(-20px,30px) scale(.95)}75%{transform:translate(40px,20px) scale(1.05)}}.card-glow{position:fixed;width:1100px;height:1100px;background:radial-gradient(circle,rgba(255,180,200,.7) 0,rgba(255,130,170,.5) 15%,rgba(255,100,150,.35) 30%,rgba(230,70,120,.15) 50%,transparent 70%);pointer-events:none;z-index:5;animation:glowPulse 6s ease-in-out infinite;filter:blur(60px)}.card-glow,.card-glow:before{top:50%;left:50%;transform:translate(-50%,-50%)}.card-glow:before{content:"";position:absolute;width:600px;height:600px;background:radial-gradient(circle,rgba(255,200,220,.55) 0,rgba(255,150,180,.35) 30%,rgba(255,120,160,.15) 50%,transparent 70%);filter:blur(30px);animation:innerGlowPulse 4s ease-in-out infinite}@keyframes innerGlowPulse{0%,to{opacity:.8;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}@keyframes glowPulse{0%,to{opacity:.6;transform:translate(-50%,-50%) scale(1)}50%{opacity:.9;transform:translate(-50%,-50%) scale(1.1)}}.vignette{inset:0;width:100%;height:100%;height:100dvh;z-index:4;background:radial-gradient(ellipse at center,transparent 0,transparent 30%,rgba(60,15,35,.2) 50%,rgba(50,10,25,.45) 70%,rgba(35,5,18,.65) 85%,rgba(20,0,10,.8) 100%)}.center-glow,.vignette{position:fixed;pointer-events:none}.center-glow{top:50%;left:50%;transform:translate(-50%,-50%);width:120vw;height:120vh;z-index:3;background:radial-gradient(ellipse at center,rgba(255,180,200,.15) 0,rgba(255,140,180,.1) 20%,rgba(255,100,150,.05) 40%,transparent 60%);animation:centerGlowPulse 8s ease-in-out infinite}@keyframes centerGlowPulse{0%,to{opacity:.8;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}}.special-heart{position:fixed;bottom:-40px;left:50%;transform:translateX(-50%);pointer-events:none;z-index:50;opacity:0;animation:specialHeartFloat 12s ease-in-out forwards}.special-heart svg{filter:drop-shadow(0 0 8px rgba(255,180,200,.5))}@keyframes specialHeartFloat{0%{opacity:0;transform:translateX(-50%) translateY(0) scale(.8)}5%{opacity:.7;transform:translateX(-50%) translateY(0) scale(1)}50%{opacity:.8;transform:translateX(calc(-50% + 15px)) translateY(-50vh) scale(1.05) rotate(5deg)}95%{opacity:.6;transform:translateX(calc(-50% - 10px)) translateY(-105vh) scale(.95) rotate(-3deg)}to{opacity:0;transform:translateX(-50%) translateY(-110vh) scale(.9)}}.intro-overlay{position:fixed;inset:0;width:100%;height:100%;height:100dvh;z-index:1000;pointer-events:none}.intro-content,.intro-overlay{display:flex;align-items:center;justify-content:center}.intro-content{position:absolute;z-index:1001;animation:introZoom 8s ease-out forwards;flex-direction:column;text-align:center;padding:2rem;pointer-events:auto}.intro-glow{position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(60,20,35,.7) 0,rgba(80,30,50,.5) 30%,transparent 70%);filter:blur(60px);animation:introGlowPulse 3s ease-in-out infinite}@keyframes introZoom{0%{transform:scale(1)}to{transform:scale(1.03)}}@keyframes introGlowPulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.15);opacity:1}}.intro-line{font-family:var(--font-cormorant),Georgia,serif;color:#fff;margin:0;opacity:0;transform:translateY(20px);text-shadow:0 2px 4px rgba(0,0,0,.3),0 4px 20px rgba(80,20,40,.6),0 0 40px hsla(0,0%,100%,.2)}.intro-line-1{font-size:clamp(1.8rem,5vw,2.5rem);font-weight:500;font-style:italic;letter-spacing:.05em;animation:introLineReveal .8s ease-out .3s forwards}.intro-line-2{font-size:clamp(1rem,3vw,1.4rem);font-weight:400;letter-spacing:.02em;margin-top:.5rem;animation:introLineReveal .8s ease-out 1s forwards}.intro-line-3{font-size:clamp(.9rem,2.5vw,1.2rem);font-weight:400;font-style:italic;letter-spacing:.03em;color:#ffe8ee;animation:introLineReveal .8s ease-out 2.2s forwards}@keyframes introLineReveal{0%{opacity:0;transform:translateY(20px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.intro-heart-container{margin:1.5rem 0;opacity:0;animation:introHeartReveal 1s cubic-bezier(.175,.885,.32,1.275) 1.5s forwards;background:none;border:none;padding:1rem;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' stroke='%23ff6b8a' stroke-width='1' d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E") 14 14,pointer;transition:transform .3s ease}.intro-heart-container:hover{transform:scale(1.1)}.intro-heart-container:active{transform:scale(.95)}.intro-heart-svg{filter:drop-shadow(0 0 25px rgba(255,100,150,.8)) drop-shadow(0 0 50px rgba(255,80,120,.5));animation:introHeartBeat 1.2s ease-in-out 2.5s infinite;display:block}.intro-hint{font-family:var(--font-cormorant),Georgia,serif;font-size:.85rem;font-style:italic;color:hsla(0,0%,100%,.85);margin-top:1rem;letter-spacing:.05em;opacity:0;text-shadow:0 1px 8px rgba(80,20,40,.5);animation:hintFadeIn .5s ease-out 3s forwards}@keyframes hintFadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes introHeartReveal{0%{opacity:0;transform:scale(0) rotate(-20deg)}60%{transform:scale(1.2) rotate(5deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}@keyframes introHeartBeat{0%,to{transform:scale(1)}15%{transform:scale(1.15)}30%{transform:scale(1)}45%{transform:scale(1.1)}60%{transform:scale(1)}}.cloud{position:absolute;top:0;height:100%;width:55%;transition:transform 1.8s cubic-bezier(.4,0,.2,1)}.cloud-left{left:0;background:linear-gradient(90deg,rgba(107,27,61,.98),rgba(185,28,92,.95) 60%,rgba(230,57,116,.85) 80%,transparent);transform:translateX(0)}.cloud-right{right:0;background:linear-gradient(-90deg,rgba(107,27,61,.98),rgba(185,28,92,.95) 60%,rgba(230,57,116,.85) 80%,transparent);transform:translateX(0)}.cloud-puff{position:absolute;background:radial-gradient(ellipse,rgba(185,28,92,.9) 0,rgba(230,57,116,.7) 40%,rgba(255,107,122,.5) 70%,transparent 100%);border-radius:50%;filter:blur(20px)}.cloud-left .c1{width:300px;height:250px;top:10%;right:-50px}.cloud-left .c2{width:350px;height:280px;top:30%;right:-80px}.cloud-left .c3{width:280px;height:220px;top:50%;right:-30px}.cloud-left .c4{width:320px;height:260px;top:65%;right:-60px}.cloud-left .c5{width:250px;height:200px;top:85%;right:-40px}.cloud-right .c1{width:300px;height:250px;top:15%;left:-50px}.cloud-right .c2{width:350px;height:280px;top:35%;left:-80px}.cloud-right .c3{width:280px;height:220px;top:55%;left:-30px}.cloud-right .c4{width:320px;height:260px;top:70%;left:-60px}.cloud-right .c5{width:250px;height:200px;top:5%;left:-40px}.intro-overlay.parted .cloud-left{transform:translateX(-100%)}.intro-overlay.parted .cloud-right{transform:translateX(100%)}@keyframes cardReveal{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes vaderDrop{0%{opacity:0;transform:translateY(-30px) scale(.8)}60%{transform:translateY(5px) scale(1.05)}to{opacity:1;transform:translateY(0) scale(1)}}.question{opacity:0}.question.animate-in{opacity:1}.question.animate-in .ruby-name{display:inline-block;opacity:0;animation:wordReveal .5s cubic-bezier(.175,.885,.32,1.275) forwards;animation-delay:.7s}.question-word{display:inline-block;opacity:0}.question.animate-in .w1{animation:wordReveal .4s ease-out forwards;animation-delay:.9s}.question.animate-in .w2{animation:wordReveal .4s ease-out forwards;animation-delay:1s}.question.animate-in .w3{animation:wordReveal .4s ease-out forwards;animation-delay:1.1s}.question.animate-in .w4{animation:wordReveal .4s ease-out forwards;animation-delay:1.2s}.question.animate-in .valentine-word{animation:valentineReveal .7s cubic-bezier(.175,.885,.32,1.275) forwards;animation-delay:1.4s}@keyframes wordReveal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes valentineReveal{0%{opacity:0;transform:translateY(30px) scale(.8)}60%{transform:translateY(-5px) scale(1.1)}to{opacity:1;transform:translateY(0) scale(1)}}.question-subtitle{opacity:0}.question-subtitle.animate-in{animation:subtitleFade .6s ease-out forwards;animation-delay:1.8s}@keyframes subtitleFade{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.buttons-wrapper{opacity:0}.buttons-wrapper.animate-in{animation:buttonsFade .5s ease-out forwards;animation-delay:2.1s}@keyframes buttonsFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hearts-container{opacity:0;transition:opacity 1s ease-out}.hearts-container.visible{opacity:1}.hearts-container{position:fixed;inset:0;width:100%;height:100%;height:100dvh;pointer-events:none;overflow:hidden;z-index:0}.floating-heart{position:absolute;font-size:1.5rem;opacity:0;color:var(--cream);text-shadow:0 0 20px rgba(255,200,220,.5);animation:floatUpSlow ease-in-out infinite;filter:blur(.5px)}@keyframes floatUpSlow{0%{transform:translateY(100vh) translateX(0) rotate(0deg) scale(.6);opacity:0}5%{opacity:.2}25%{transform:translateY(50vh) translateX(30px) rotate(45deg) scale(.8)}50%{transform:translateY(0) translateX(-20px) rotate(90deg) scale(1);opacity:.25}75%{transform:translateY(-50vh) translateX(25px) rotate(135deg) scale(.9)}95%{opacity:.15}to{transform:translateY(-100vh) translateX(0) rotate(180deg) scale(.7);opacity:0}}.floating-heart.drift{animation:floatDrift ease-in-out infinite}@keyframes floatDrift{0%{transform:translateY(100vh) translateX(-50px) scale(.5);opacity:0}10%{opacity:.3}30%{transform:translateY(60vh) translateX(50px) scale(.7)}50%{transform:translateY(30vh) translateX(-30px) scale(.9);opacity:.25}70%{transform:translateY(0) translateX(40px) scale(.8)}90%{opacity:.15}to{transform:translateY(-50vh) translateX(-20px) scale(.6);opacity:0}}.sparkle{position:fixed;width:4px;height:4px;background:radial-gradient(circle,var(--gold-accent) 0,transparent 70%);border-radius:50%;pointer-events:none;animation:sparkleAnim 2s ease-in-out infinite}@keyframes sparkleAnim{0%,to{transform:scale(0);opacity:0}50%{transform:scale(1);opacity:1}}.valentine-container{position:relative;z-index:10;text-align:center;padding:4rem;max-width:700px}.established-text{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2rem;opacity:0;transform:translateY(10px)}.established-text.visible{animation:estReveal .8s ease-out 2.5s forwards}@keyframes estReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.est-content{font-family:var(--font-cormorant),Georgia,"Times New Roman",serif;font-size:.85rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,235,240,.7);white-space:nowrap;font-style:italic;text-shadow:0 0 20px rgba(255,180,200,.3)}.est-line{display:block;width:50px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,220,230,.5) 50%,transparent)}.card{background:hsla(0,0%,100%,.08);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:32px;padding:4rem 3rem;border:1px solid hsla(0,0%,100%,.15);box-shadow:0 32px 64px rgba(74,23,40,.4),inset 0 0 0 1px hsla(0,0%,100%,.1),0 0 100px rgba(200,100,120,.2);opacity:0;transform:translateY(30px)}.card.visible{animation:cardReveal .8s cubic-bezier(.175,.885,.32,1.275) .2s forwards,cardFloat 6s ease-in-out 1.5s infinite}@keyframes cardFloat{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(-10px);opacity:1}}.rose-icon{font-size:4rem;margin-bottom:1.5rem;display:block;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));animation:rosePulse 2s ease-in-out infinite}@keyframes rosePulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.vader-bitmoji{margin:0 auto 1rem;filter:drop-shadow(0 8px 24px rgba(0,0,0,.5));opacity:0;transform:translateY(-30px);perspective:1000px;width:140px;height:160px}.vader-bitmoji.animate-in{animation:vaderDrop .7s cubic-bezier(.175,.885,.32,1.275) .4s forwards,vaderFloat 3s ease-in-out 1.2s infinite}.vader-flip-inner{position:relative;width:100%;height:100%;transition:transform .8s cubic-bezier(.175,.885,.32,1.275);transform-style:preserve-3d}.vader-bitmoji.flipped .vader-flip-inner{transform:rotateY(180deg)}.vader-flip-back,.vader-flip-front{position:absolute;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden}.vader-flip-front{z-index:2}.vader-flip-back{transform:rotateY(180deg)}.vader-bitmoji svg{display:block;margin:0 auto}@keyframes vaderFloat{0%,to{transform:translateY(0) rotate(-2deg);opacity:1}50%{transform:translateY(-8px) rotate(2deg);opacity:1}}.floating-mini-heart{animation:miniHeartBeat 1.5s ease-in-out infinite;transform-origin:center}@keyframes miniHeartBeat{0%,to{transform:scale(1) translateY(0);opacity:1}50%{transform:scale(1.3) translateY(-3px);opacity:.8}}.ruby-name{font-family:var(--font-script),"Great Vibes",cursive;font-size:clamp(3.5rem,10vw,5.5rem);font-weight:400;color:var(--cream);letter-spacing:.02em;margin-bottom:.5rem;text-shadow:0 2px 8px rgba(200,100,120,.4),0 4px 25px rgba(150,50,80,.3)}.question-line,.ruby-name{display:block}.question{font-family:var(--font-playfair),Georgia,serif;font-size:clamp(2rem,5vw,3rem);font-weight:500;color:var(--cream);letter-spacing:.02em;line-height:1.4;margin-bottom:1rem;text-shadow:0 2px 4px rgba(74,23,40,.25),0 4px 20px rgba(200,100,120,.25)}.question-subtitle{font-family:var(--font-cormorant),Georgia,serif;font-size:clamp(.65rem,1.5vw,.8rem);font-weight:400;color:hsla(0,100%,98%,.45);letter-spacing:.3em;text-transform:uppercase;margin-bottom:2.5rem;font-style:normal}.buttons-wrapper{display:flex;align-items:center;gap:2rem;margin-top:2rem;min-height:80px;position:relative}.buttons-wrapper,.buttons-wrapper.chaos-active{justify-content:center}.btn-yes{font-family:var(--font-playfair),Georgia,serif;font-size:1.3rem;font-weight:600;letter-spacing:.1em;padding:1.2rem 3rem;background:linear-gradient(135deg,var(--rose-mid) 0,var(--coral-warm) 100%);color:var(--cream);border:none;border-radius:100px;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' stroke='%23ff6b8a' stroke-width='1' d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E") 14 14,pointer;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 8px 32px rgba(196,69,105,.4),inset 0 0 0 1px hsla(0,0%,100%,.1)}.btn-yes:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);transition:left .5s}.btn-yes:hover{transform:scale(1.08);box-shadow:0 16px 48px rgba(196,69,105,.5),0 0 40px rgba(246,114,128,.4),inset 0 0 0 1px hsla(0,0%,100%,.2)}.btn-yes:hover:before{left:100%}.btn-yes:active{transform:scale(1.02)}.btn-yes.centered{animation:yesCenterPop .5s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes yesCenterPop{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1.1)}}.btn-no-inline{font-family:var(--font-playfair),Georgia,serif;font-size:1.1rem;font-weight:500;letter-spacing:.05em;padding:1rem 2rem;background:hsla(0,0%,100%,.1);color:hsla(0,100%,98%,.7);border:1px solid hsla(0,0%,100%,.2);border-radius:100px;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' stroke='%23ff6b8a' stroke-width='1' d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E") 14 14,pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .3s ease}.btn-no-inline:hover{background:hsla(0,0%,100%,.15);transform:scale(1.02)}.btn-no.floating{font-family:var(--font-playfair),Georgia,serif;font-size:1.1rem;font-weight:500;letter-spacing:.05em;padding:1rem 2rem;background:hsla(0,0%,100%,.1);color:hsla(0,100%,98%,.7);border:1px solid hsla(0,0%,100%,.2);border-radius:100px;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' stroke='%23ff6b8a' stroke-width='1' d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E") 14 14,pointer;position:fixed;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:100;will-change:left,top;transform:translateZ(0);animation:noAppear .3s ease-out}@keyframes noAppear{0%{opacity:1;transform:translateZ(0) scale(1)}50%{transform:translateZ(0) scale(1.1)}to{transform:translateZ(0) scale(1)}}.success-container{text-align:center;animation:successPop .6s cubic-bezier(.175,.885,.32,1.275)}@keyframes successPop{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.success-hearts{font-size:5rem;margin-bottom:1.5rem;animation:heartBeat 1s ease-in-out infinite}@keyframes heartBeat{0%,to{transform:scale(1)}25%{transform:scale(1.1)}50%{transform:scale(1)}75%{transform:scale(1.15)}}.success-text{font-family:var(--font-playfair),Georgia,serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:600;color:var(--cream);text-shadow:0 4px 20px rgba(200,100,120,.4);margin-bottom:1rem}.success-subtext{font-family:var(--font-cormorant),Georgia,serif;font-size:1.4rem;color:hsla(0,100%,98%,.85);font-style:italic;letter-spacing:.05em}.confetti{position:fixed;width:10px;height:10px;pointer-events:none;z-index:200;animation:confettiFall linear forwards;will-change:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}@keyframes confettiFall{0%{transform:translateY(-100vh) rotate(0deg) translateZ(0);opacity:1}to{transform:translateY(100vh) rotate(2turn) translateZ(0);opacity:0}}.card.fade-out{animation:cardFadeOut .5s cubic-bezier(.4,0,.2,1) forwards!important;will-change:opacity,transform}@keyframes cardFadeOut{0%{opacity:1;transform:scale(1) translateZ(0)}to{opacity:0;transform:scale(.95) translateZ(0);pointer-events:none}}.valentine-container.answered .established-text{opacity:0!important}.exploding-heart{position:fixed;pointer-events:none;z-index:250;animation:heartExplode ease-out forwards;will-change:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}@keyframes heartExplode{0%{transform:translate(-50%,-50%) scale(0) rotate(0deg) translateZ(0);opacity:1}15%{transform:translate(-50%,-50%) scale(1.2) rotate(0deg) translateZ(0);opacity:1}to{transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty))) scale(.5) rotate(var(--r));opacity:0}}.success-fullscreen{position:fixed;inset:0;width:100%;height:100%;height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:150;overflow:hidden;animation:successFadeIn .6s ease-out forwards;will-change:opacity}@keyframes successFadeIn{0%{opacity:0}to{opacity:1}}.floating-svg-hearts{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.floating-svg-hearts.minimal .svg-heart{animation-timing-function:linear}.svg-heart{position:absolute;bottom:-50px;color:#ffc8d2;animation:svgHeartFloat linear infinite;filter:blur(1px)}@keyframes svgHeartFloat{0%{transform:translateY(0) translateX(0) rotate(0deg) scale(.8);opacity:0}10%{opacity:1}50%{transform:translateY(-50vh) translateX(20px) rotate(15deg) scale(1)}90%{opacity:1}to{transform:translateY(-110vh) translateX(-10px) rotate(-10deg) scale(.9);opacity:0}}body.hearts-excited .svg-heart{animation-duration:4s!important;filter:blur(.5px)}body.hearts-excited .floating-heart{animation-duration:6s!important}@keyframes heartExcitePulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}body.hearts-excited .floating-heart,body.hearts-excited .svg-heart{animation-timing-function:ease-in-out}.success-sequence{display:flex;flex-direction:column;align-items:center;padding:2rem;max-width:550px;margin-top:-6vh}.seq-line,.success-sequence{text-align:center;width:100%}.seq-line{font-family:var(--font-playfair),Georgia,serif;color:var(--cream);margin:0;padding:0;opacity:0;transform:translateY(15px);animation:seqFadeIn 1s ease-out forwards}@keyframes seqFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.seq-1{font-size:clamp(1.6rem,4.5vw,2.4rem);font-weight:500;line-height:1.35;margin-bottom:1.5rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,200,220,.12);animation-delay:.8s;text-shadow:0 4px 25px rgba(200,100,120,.4),0 8px 40px rgba(150,50,80,.25)}.seq-2{font-size:clamp(1rem,2.5vw,1.25rem);font-weight:400;font-style:italic;color:hsla(0,100%,98%,.6);margin-bottom:3rem;animation-delay:2.2s;letter-spacing:.02em}.seq-date-moment{display:flex;flex-direction:column;align-items:center;gap:.6rem;margin-bottom:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid rgba(255,200,220,.12);opacity:0;transform:translateY(10px);animation:dateMomentReveal 1.2s ease-out forwards;animation-delay:3.5s}.seq-date{font-family:var(--font-playfair),Georgia,serif;font-size:clamp(2.2rem,7vw,3.5rem);font-weight:600;color:var(--cream);letter-spacing:.02em;line-height:1.1;text-shadow:0 4px 30px rgba(255,150,180,.5),0 8px 50px rgba(200,80,120,.35)}.seq-time{font-family:var(--font-cormorant),Georgia,serif;font-size:clamp(1rem,2.5vw,1.2rem);font-weight:500;letter-spacing:.15em;color:hsla(0,100%,98%,.6);padding:.4rem 1rem;border:1px solid rgba(255,200,220,.2);border-radius:100px;background:rgba(255,180,200,.06)}@keyframes dateMomentReveal{0%{opacity:0;transform:translateY(15px) scale(.98)}50%{opacity:1;transform:translateY(-2px) scale(1.01)}to{opacity:1;transform:translateY(0) scale(1)}}.seq-4{font-size:clamp(1.1rem,2.8vw,1.4rem);font-weight:500;font-style:italic;color:hsla(0,100%,98%,.7);animation-delay:5s;letter-spacing:.01em}.success-sequence.faded{animation:sequenceFadeOut .6s ease-out forwards}@keyframes sequenceFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px);pointer-events:none}}.envelope-reveal{position:absolute;bottom:8%;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:1.5rem;opacity:0;animation:envelopeSlideUp .8s cubic-bezier(.175,.885,.32,1.275) forwards;animation-delay:7s}@keyframes envelopeSlideUp{0%{opacity:0;transform:translateX(-50%) translateY(50px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.envelope{width:80px;height:60px;position:relative;animation:envelopeFloat 3s ease-in-out infinite;animation-delay:7.8s}@keyframes envelopeFloat{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(2deg)}}.envelope-body{width:100%;height:100%;background:linear-gradient(135deg,#fff5f5,#ffe4e6);border-radius:4px;box-shadow:0 8px 30px rgba(200,100,120,.3),inset 0 0 0 1px hsla(0,0%,100%,.5);display:flex;align-items:center;justify-content:center}.envelope-flap{position:absolute;top:0;left:0;width:100%;height:50%;background:linear-gradient(135deg,#ffe4e6,#ffd1d8);-webkit-clip-path:polygon(0 0,50% 100%,100% 0);clip-path:polygon(0 0,50% 100%,100% 0);transform-origin:top center;animation:flapWiggle 2s ease-in-out infinite;animation-delay:8s}@keyframes flapWiggle{0%,to{transform:rotateX(0deg)}50%{transform:rotateX(10deg)}}.envelope-heart{font-size:1.8rem;filter:drop-shadow(0 2px 4px rgba(200,100,120,.3))}.reveal-btn{font-family:var(--font-playfair),Georgia,serif;font-size:1.1rem;font-weight:500;letter-spacing:.05em;padding:1rem 2.5rem;background:linear-gradient(135deg,hsla(0,0%,100%,.15),hsla(0,0%,100%,.05));color:var(--cream);border:1px solid hsla(0,0%,100%,.25);border-radius:100px;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' stroke='%23ff6b8a' stroke-width='1' d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E") 14 14,pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .3s ease;box-shadow:0 8px 32px rgba(200,100,120,.2)}.reveal-btn:hover{background:linear-gradient(135deg,hsla(0,0%,100%,.25),hsla(0,0%,100%,.1));transform:scale(1.05);box-shadow:0 12px 40px rgba(200,100,120,.3)}.reveal-btn:active{transform:scale(.98)}.plan-revealed{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;max-width:520px;width:100%;animation:planFadeIn .8s cubic-bezier(.175,.885,.32,1.275) forwards;z-index:200}@keyframes planFadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.plan-block-hero{margin-bottom:3.5rem;padding-bottom:2.5rem;border-bottom:1px solid rgba(255,200,220,.12)}.plan-block-details,.plan-block-hero{display:flex;flex-direction:column;align-items:center}.plan-block-details{gap:1.5rem}.plan-title{font-size:clamp(3rem,11vw,5rem);font-weight:600;color:var(--cream);margin:0 0 1.5rem;letter-spacing:-.02em;line-height:1.1;text-shadow:0 4px 30px rgba(200,100,120,.5),0 8px 50px rgba(150,50,80,.35);animation:titleSlideIn .6s ease-out forwards;animation-delay:.2s}.plan-pickup,.plan-title{font-family:var(--font-playfair),Georgia,serif;opacity:0}.plan-pickup{font-size:clamp(1.5rem,5vw,2.2rem);font-weight:500;font-style:italic;color:hsla(0,100%,99%,.92);margin:0 0 1.25rem;letter-spacing:.01em;animation:pickupReveal .7s ease-out .5s forwards;text-shadow:0 2px 20px rgba(255,150,180,.4)}.plan-datetime-capsule{display:inline-block;font-family:var(--font-cormorant),Georgia,serif;font-size:.85rem;font-weight:500;letter-spacing:.08em;color:hsla(0,100%,98%,.75);padding:.5rem 1.25rem;border:1px solid rgba(255,200,220,.25);border-radius:100px;background:rgba(255,180,200,.08);opacity:0;animation:capsuleFade .5s ease-out forwards;animation-delay:.9s}@keyframes capsuleFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pickupReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:.92;transform:translateY(0)}}@keyframes titleSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.plan-dresscode-group{margin-bottom:0;text-align:center}.plan-dresscode-label{display:block;font-family:var(--font-cormorant),Georgia,serif;font-size:.65rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:hsla(0,100%,98%,.62);margin:0 0 .35rem;opacity:0;animation:fadeIn .5s ease-out forwards;animation-delay:1.1s}.plan-dresscode{font-size:clamp(.95rem,2.5vw,1.05rem);color:hsla(0,100%,98%,.62);line-height:1.5;animation:fadeIn .5s ease-out forwards;animation-delay:1.2s}.plan-dresscode,.plan-note{font-family:var(--font-cormorant),Georgia,serif;font-weight:400;font-style:italic;margin:0;opacity:0}.plan-note{font-size:clamp(.9rem,2.2vw,1rem);color:rgba(255,230,240,.55);line-height:1.6;letter-spacing:.01em;max-width:340px;animation:fadeIn .5s ease-out forwards;animation-delay:1.4s}.calendar-invite{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-cormorant),Georgia,serif;font-size:.9rem;font-style:italic;color:rgba(255,230,240,.75);text-decoration:none;padding:.65rem 1.25rem;border:1px solid rgba(255,180,200,.3);border-radius:100px;background:rgba(255,150,180,.08);opacity:0;animation:calendarSlideUp .5s ease-out forwards;animation-delay:1.6s;transition:all .3s ease;box-shadow:0 2px 15px rgba(255,150,180,.15);cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' stroke='%23ff6b8a' stroke-width='1' d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E") 14 14,pointer}.calendar-invite:hover{color:#fff5fa;border-color:rgba(255,200,220,.6);background:rgba(255,150,180,.2);transform:translateY(-2px);box-shadow:0 4px 20px rgba(255,150,180,.25)}.calendar-icon{color:rgba(255,180,200,.9);transition:color .3s ease}.calendar-invite:hover .calendar-icon{color:#fff5fa}@keyframes calendarSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes classifiedHeartPop{0%{transform:scale(0)}60%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.plan-footer{display:flex;align-items:center;justify-content:center;gap:1rem;opacity:0;animation:footerFadeIn .6s ease-out forwards;animation-delay:1.4s}@keyframes footerFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.footer-heart{color:rgba(255,180,200,.6);animation:footerHeartPulse 2s ease-in-out infinite}.footer-heart:first-child{animation-delay:0s}.footer-heart:last-child{animation-delay:.5s}@keyframes footerHeartPulse{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.15);opacity:.8}}.plan-footer-text{font-family:var(--font-playfair),Georgia,serif;font-size:1rem;color:hsla(0,100%,98%,.7);letter-spacing:.1em}.plan-timestamp{font-family:var(--font-cormorant),Georgia,serif;font-size:.8rem;font-weight:400;font-style:italic;color:hsla(0,100%,98%,.35);letter-spacing:.02em;margin:2.5rem 0 0;opacity:0;animation:timestampFade .8s ease-out forwards;animation-delay:2s}@keyframes timestampFade{0%{opacity:0}to{opacity:1}}body.intro-state{animation:introBgZoom 8s ease-out forwards;will-change:background-size}@keyframes introBgZoom{0%{background-size:400% 400%}to{background-size:412% 412%}}body.answered-state{animation:bgZoom 1s ease-out forwards;will-change:background-size}@keyframes bgZoom{0%{background-size:400% 400%}to{background-size:450% 450%}}@media (max-width:768px){.card{padding:2.5rem 1.5rem;margin:1rem;max-width:calc(100vw - 2rem)}.question{font-size:clamp(1.5rem,6vw,2rem);line-height:1.35}.ruby-name{font-size:clamp(2.8rem,9vw,4rem);margin-bottom:.3rem}.question-subtitle{font-size:.65rem}.vader-bitmoji,.vader-bitmoji svg{width:100px;height:115px}.buttons-wrapper{flex-direction:column;gap:1rem}.btn-no-inline,.btn-yes{min-width:140px}.btn-no-inline,.btn-no.floating,.btn-yes{padding:.9rem 2.5rem;font-size:1rem}.established-text{padding:0 1rem}.est-content{font-size:.7rem}.est-line{width:35px}.card-glow{width:500px;height:500px}.card-glow:before{width:300px;height:300px}.success-sequence{padding:1.5rem;margin-top:-5vh}.seq-line.seq-1{font-size:clamp(1.3rem,5vw,1.8rem);margin-bottom:1.25rem;padding-bottom:1.5rem}.seq-line.seq-2{font-size:clamp(.9rem,3vw,1.05rem);margin-bottom:2rem}.seq-date-moment{margin-bottom:2rem;padding-bottom:2rem}.seq-date{font-size:clamp(1.8rem,6vw,2.4rem)}.seq-time{font-size:clamp(.85rem,2.2vw,1rem)}.seq-line.seq-4{font-size:clamp(.95rem,3vw,1.15rem)}.envelope-reveal{bottom:5%}.envelope{width:50px;height:35px}.reveal-btn{padding:.8rem 1.8rem;font-size:.9rem}.plan-revealed{padding:1.5rem;max-width:calc(100vw - 2rem)}.plan-icon{font-size:2.5rem}.plan-title{font-size:clamp(2.2rem,9vw,3.5rem)}.plan-pickup{font-size:clamp(1.3rem,4.5vw,1.8rem)}.plan-datetime-capsule{font-size:.8rem;padding:.45rem 1rem}.plan-block-hero{margin-bottom:2.5rem;padding-bottom:2rem}.plan-block-details{gap:1.25rem}.plan-dresscode-label{font-size:.6rem}.plan-dresscode{font-size:clamp(.85rem,3vw,.95rem)}.plan-note{font-size:clamp(.8rem,2.5vw,.9rem);max-width:280px}.plan-footer{gap:.6rem}.plan-footer-text{font-size:.85rem}.plan-timestamp{font-size:.8rem;margin-top:2rem}.blur-blob{filter:blur(60px)}.blur-blob:first-child{width:250px;height:250px}.blur-blob:nth-child(2){width:200px;height:200px}.blur-blob:nth-child(3){width:280px;height:280px}.blur-blob:nth-child(4){width:180px;height:180px}.blur-blob:nth-child(5){width:220px;height:220px}.floating-heart{font-size:.8rem}.svg-heart{width:15px!important}}@media (max-width:480px){.card{padding:2rem 1.25rem}.question{font-size:clamp(1.3rem,5.5vw,1.7rem)}.ruby-name{font-size:clamp(2.2rem,8vw,3rem)}.vader-bitmoji,.vader-bitmoji svg{width:80px;height:90px}.btn-no-inline,.btn-yes{min-width:120px;padding:.8rem 2rem;font-size:.9rem}.success-sequence{margin-top:0}.seq-line.seq-1{font-size:clamp(1.1rem,5vw,1.4rem);margin-bottom:1rem;padding-bottom:1.25rem}.seq-date-moment,.seq-line.seq-2{margin-bottom:1.5rem}.seq-date-moment{padding-bottom:1.5rem}.seq-date{font-size:clamp(1.5rem,5.5vw,2rem)}.seq-line.seq-4{font-size:clamp(.9rem,2.8vw,1.05rem)}.envelope-reveal{bottom:3%}.plan-revealed{padding:1.25rem}.plan-title{font-size:clamp(2rem,8vw,2.8rem)}.plan-pickup{font-size:clamp(1.2rem,4vw,1.5rem)}.plan-datetime-capsule{font-size:.75rem;padding:.4rem .9rem}.plan-block-hero{margin-bottom:2rem;padding-bottom:1.5rem}.plan-block-details{gap:1rem}.plan-timestamp{margin-top:2rem}}@media (hover:none) and (pointer:coarse){.btn-no.floating{min-width:100px}}