*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #000000;--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .8);--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--glow-white: rgba(255, 255, 255, .4);--font-lucida: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Verdana, sans-serif;--font-elegant: "Cormorant Garamond", Georgia, "Times New Roman", serif}html{scroll-behavior:smooth}body{font-family:var(--font-lucida);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff6}::selection{background:#fff3;color:var(--text-primary)}button{font-family:inherit}.app{min-height:100vh;width:100%;background-color:#000;position:relative;overflow-x:hidden}html{scroll-behavior:smooth;scroll-padding-top:2rem}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.scroll-progress-bar{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,#ffffff4d,#fffc,#ffffff4d);z-index:10000;transition:width .15s cubic-bezier(.25,.46,.45,.94);box-shadow:0 0 20px #ffffff80;will-change:width}.film-grain{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000;opacity:.02;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E")}@keyframes grain{0%,to{transform:translate(0)}50%{transform:translate(1%,1%)}}.vignette{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:999;background:radial-gradient(ellipse at center,transparent 30%,rgba(0,0,0,.8) 100%)}.light-sweep{position:fixed;top:0;left:0;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.02),transparent);pointer-events:none;z-index:997;will-change:transform,opacity;animation:lightSweep 12s ease-in-out infinite;transform:translate(-100%) skew(-15deg)}@keyframes lightSweep{0%,to{transform:translate(-100%) skew(-15deg);opacity:0}10%{opacity:1}50%{transform:translate(300%) skew(-15deg);opacity:1}60%,to{opacity:0}}.particles-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden}.particle{position:absolute;left:var(--start-x);top:var(--start-y);width:var(--size);height:var(--size);opacity:var(--opacity);background:radial-gradient(circle,rgba(255,255,255,.8) 0%,transparent 70%);border-radius:50%;will-change:transform;animation:particleFloat var(--duration) ease-in-out var(--delay) infinite}@keyframes particleFloat{0%,to{transform:translate(0)}50%{transform:translate(15px,-20px)}}.twinkles-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2;overflow:hidden}.twinkle{position:absolute;width:4px;height:4px;background:#fff;border-radius:50%;animation:twinkle 3s ease-in-out infinite;box-shadow:0 0 6px 2px #ffffff4d}@keyframes twinkle{0%,to{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1)}}.spotlight{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:3;transition:background .3s ease}.letterbox{position:fixed;left:0;width:100%;height:15vh;background:#000;z-index:1001;transition:transform 1.5s cubic-bezier(.4,0,.2,1)}.letterbox-top{top:0}.letterbox-bottom{bottom:0}.letterbox-hide.letterbox-top{transform:translateY(-100%)}.letterbox-hide.letterbox-bottom{transform:translateY(100%)}.entrance-overlay{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:100;background:radial-gradient(ellipse at center,#0f0f0ff2,#000 70%);animation:entranceZoom 4s ease-out forwards}@keyframes entranceZoom{0%{transform:scale(1.2);opacity:0}30%{opacity:1}to{transform:scale(1);opacity:1}}.entrance-fade{animation:fadeOutEntrance 1s ease-out forwards;pointer-events:none}@keyframes fadeOutEntrance{to{opacity:0;visibility:hidden}}.entrance-content{text-align:center;position:relative}.spotlight-circle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:350px;height:350px;background:radial-gradient(circle,rgba(255,255,255,.12) 0%,transparent 60%);border-radius:50%;animation:pulseGlow 3s ease-in-out infinite}@keyframes pulseGlow{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.15);opacity:.9}}.entrance-icon{font-size:3.5rem;color:#ffffffe6;margin-bottom:1.5rem;text-shadow:0 0 30px rgba(255,255,255,.5);animation:iconFloat 3s ease-in-out infinite,fadeInUp 1s ease-out .5s both}@keyframes iconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.entrance-text{font-family:var(--font-elegant);font-size:clamp(2rem,5vw,3.2rem);font-weight:400;letter-spacing:.35em;text-transform:uppercase;color:#fff;margin-bottom:.5rem;text-shadow:0 0 40px rgba(255,255,255,.4);animation:fadeInUp 1s ease-out .8s both}.entrance-subtext{font-family:var(--font-lucida);font-size:clamp(.9rem,2vw,1.1rem);letter-spacing:.6em;text-transform:uppercase;color:#fff9;animation:fadeInUp 1s ease-out 1.1s both}.enter-button-container{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:200;background:radial-gradient(ellipse at center,#0a0a0af7,#000 80%)}.fade-in{animation:fadeIn 1s ease-out}.fade-out{animation:fadeOut 1s ease-out forwards;pointer-events:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.enter-button{position:relative;display:flex;flex-direction:column;align-items:center;gap:1.2rem;padding:2.5rem 5rem;background:#ffffff05;border:1px solid rgba(255,255,255,.12);border-radius:4px;cursor:pointer;transition:all .5s cubic-bezier(.4,0,.2,1);overflow:hidden}.enter-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);transition:left .6s ease}.enter-button:hover:before{left:100%}.enter-button:hover{background:#ffffff0d;border-color:#ffffff40;transform:scale(1.02);box-shadow:0 0 50px #ffffff14,0 0 100px #ffffff0a,inset 0 0 30px #ffffff05}.enter-button:focus{outline:none;border-color:#fff6;box-shadow:0 0 0 3px #ffffff1a}.enter-button-icon{font-size:2.5rem;color:#ffffffb3;text-shadow:0 0 20px rgba(255,255,255,.3);animation:iconFloat 3s ease-in-out infinite}.enter-button-text{font-family:var(--font-lucida);font-size:clamp(1rem,2.5vw,1.2rem);letter-spacing:.5em;text-transform:uppercase;color:#fff;text-shadow:0 0 25px rgba(255,255,255,.5)}.enter-button-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 50%);opacity:0;transition:opacity .5s ease;pointer-events:none}.enter-button:hover .enter-button-glow{opacity:1}.main-content{min-height:100vh;opacity:0;visibility:hidden;transform:translateY(40px);transition:opacity 1.4s cubic-bezier(.22,1,.36,1),visibility 1.4s cubic-bezier(.22,1,.36,1),transform 1.6s cubic-bezier(.22,1,.36,1);position:relative;z-index:10;will-change:opacity,transform}.content-reveal{opacity:1;visibility:visible;transform:translateY(0)}.content-wrapper{max-width:850px;margin:0 auto;padding:5rem 2rem 8rem}[data-scroll-reveal]{opacity:0;transform:translateY(50px) scale(.97);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}[data-scroll-reveal].scroll-revealed{opacity:1;transform:translateY(0) scale(1)}.hero{text-align:center;margin-bottom:5rem;padding:3rem 0}.hero-frame{position:relative;padding:3rem 2rem;background:linear-gradient(135deg,rgba(255,255,255,.02) 0%,transparent 50%,rgba(255,255,255,.01) 100%);border:1px solid rgba(255,255,255,.06);border-radius:12px;animation:heroFrameReveal 1.5s ease-out .2s both;transition:transform 1.2s cubic-bezier(.22,1,.36,1),opacity 1s cubic-bezier(.22,1,.36,1);will-change:transform,opacity}#hero-section[data-scroll-reveal] .hero-frame{transform:scale(.9) translateY(40px);opacity:0}#hero-section[data-scroll-reveal].scroll-revealed .hero-frame{transform:scale(1) translateY(0);opacity:1}.hero-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;height:80%;background:radial-gradient(ellipse,rgba(255,255,255,.03) 0%,transparent 70%);pointer-events:none;animation:heroGlowPulse 4s ease-in-out infinite}@keyframes heroGlowPulse{0%,to{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.05)}}@keyframes heroFrameReveal{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.ornament{font-size:.9rem;color:#ffffff4d;letter-spacing:.5em;animation:fadeInUp 1s ease-out .4s both}.ornament-top{margin-bottom:1rem}.ornament-bottom{margin-top:1rem}.decorative-line{width:100px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);margin:1.2rem auto;animation:lineExpand 1.5s ease-out .5s both}@keyframes lineExpand{0%{width:0;opacity:0}to{width:100px;opacity:1}}.title{display:flex;flex-direction:column;gap:.5rem;animation:titleReveal 1.8s ease-out .6s both}.title-main{font-family:var(--font-elegant);font-size:clamp(1.4rem,4vw,2.2rem);font-weight:300;color:#ffffffd9;letter-spacing:.08em}.title-name{font-family:var(--font-elegant);font-size:clamp(2rem,7vw,4rem);font-weight:500;color:#fff;letter-spacing:.02em;text-shadow:0 0 40px rgba(255,255,255,.2);animation:titleNameGlow 3s ease-in-out infinite}.clickable-name{cursor:pointer;transition:all .4s cubic-bezier(.22,1,.36,1);position:relative;display:inline-block;padding:.2rem .5rem;border-radius:8px}.clickable-name:before{content:"";position:absolute;inset:-5px;border-radius:12px;background:linear-gradient(135deg,#ffb6c126,#ff69b41a,#ffb6c126);opacity:0;transition:opacity .4s ease;z-index:-1}.clickable-name:after{content:"💝 Tap for a surprise 💝";position:absolute;bottom:-35px;left:50%;transform:translate(-50%);font-size:.75rem;font-style:normal;font-weight:400;letter-spacing:.15em;color:#ffb6c1cc;white-space:nowrap;padding:.4rem 1rem;background:#ffffff0d;border:1px solid rgba(255,182,193,.3);border-radius:20px;animation:clickHint 2.5s ease-in-out infinite}@keyframes clickHint{0%,to{opacity:.7;transform:translate(-50%) translateY(0) scale(1)}50%{opacity:1;transform:translate(-50%) translateY(-5px) scale(1.02)}}.clickable-name:hover{transform:scale(1.08);text-shadow:0 0 60px rgba(255,182,193,.5),0 0 100px rgba(255,105,180,.3)}.clickable-name:hover:before{opacity:1}.clickable-name:hover:after{background:#ffb6c126;border-color:#ffb6c180}.clickable-name:active{transform:scale(.98)}.clickable-name:focus{outline:2px solid rgba(255,182,193,.4);outline-offset:10px;border-radius:8px}@keyframes titleNameGlow{0%,to{text-shadow:0 0 40px rgba(255,255,255,.2)}50%{text-shadow:0 0 60px rgba(255,255,255,.35)}}@keyframes titleReveal{0%{opacity:0;transform:translateY(25px);letter-spacing:.15em}to{opacity:1;transform:translateY(0);letter-spacing:.02em}}.message-container{display:flex;flex-direction:column;gap:2.5rem}.glass-panel{position:relative;background:linear-gradient(135deg,#ffffff06,#ffffff03);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:2.2rem 2.5rem;animation:panelReveal 1s ease-out both;transition:transform 1s cubic-bezier(.22,1,.36,1),opacity .8s cubic-bezier(.22,1,.36,1),background .4s ease,border-color .4s ease;overflow:hidden;will-change:transform,opacity}.glass-panel[data-scroll-reveal]{transform:translateY(60px) scale(.96);opacity:0}.glass-panel[data-scroll-reveal].scroll-revealed{transform:translateY(0) scale(1);opacity:1}.panel-light-sweep{position:absolute;top:0;left:0;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.03),transparent);pointer-events:none;will-change:transform,opacity;animation:panelSweep 8s ease-in-out calc(var(--panel-index) * 2s) infinite;transform:translate(-100%) skew(-15deg)}@keyframes panelSweep{0%,to{transform:translate(-100%) skew(-15deg);opacity:0}10%{opacity:1}50%{transform:translate(400%) skew(-15deg);opacity:1}60%,to{opacity:0}}.panel-border-glow{position:absolute;inset:-1px;border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 30%,transparent 70%,rgba(255,255,255,.05) 100%);opacity:0;transition:opacity .5s ease;pointer-events:none}.glass-panel:hover .panel-border-glow{opacity:1}.glass-panel:hover{background:linear-gradient(135deg,#ffffff0a,#ffffff05);border-color:#ffffff1a}.panel-1{border-left:2px solid rgba(255,255,255,.08)}.panel-2{border-right:2px solid rgba(255,255,255,.08)}.panel-3{border-left:2px solid rgba(255,255,255,.08)}.panel-4{border-right:2px solid rgba(255,255,255,.08)}#panel-0[data-scroll-reveal].scroll-revealed{transition-delay:0s}#panel-1[data-scroll-reveal].scroll-revealed{transition-delay:.12s}#panel-2[data-scroll-reveal].scroll-revealed{transition-delay:.24s}#panel-3[data-scroll-reveal].scroll-revealed{transition-delay:.36s}@keyframes panelReveal{0%{opacity:0;transform:translateY(40px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.drop-cap{float:left;font-family:var(--font-elegant);font-size:4rem;font-weight:600;line-height:.8;margin-right:.5rem;margin-top:.1rem;color:#ffffffe6;text-shadow:0 0 20px rgba(255,255,255,.2)}.message-text{font-family:var(--font-lucida);font-size:clamp(1rem,2.5vw,1.15rem);line-height:2;color:#ffffffe6;text-align:justify;text-justify:inter-word}.closing-section{margin-top:4rem;text-align:center}.closing-section[data-scroll-reveal]{transform:translateY(50px) scale(.97);opacity:0}.closing-section[data-scroll-reveal].scroll-revealed{transform:translateY(0) scale(1);opacity:1;transition:opacity 1s cubic-bezier(.22,1,.36,1) .15s,transform 1.2s cubic-bezier(.22,1,.36,1) .15s}.closing-ornament{font-size:1rem;color:#ffffff4d;letter-spacing:.5em;margin-bottom:2rem;animation:fadeInUp 1s ease-out 1.3s both}.closing-panel{display:inline-block;padding:2rem 4rem;margin-bottom:2.5rem;position:relative}.closing-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;background:radial-gradient(ellipse,rgba(255,255,255,.04) 0%,transparent 70%);animation:closingGlowPulse 3s ease-in-out infinite;pointer-events:none}@keyframes closingGlowPulse{0%,to{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}.closing-text{font-family:var(--font-elegant);font-size:clamp(1.6rem,5vw,2.4rem);font-weight:500;color:#fff;letter-spacing:.03em;text-shadow:0 0 30px rgba(255,255,255,.25)}.signature-block{margin:3rem 0;animation:fadeInUp 1s ease-out both}.signature-line{width:60px;height:1px;background:#ffffff4d;margin:0 auto 1.5rem}.signature{font-family:var(--font-elegant);font-size:clamp(1.2rem,3.5vw,1.6rem);font-style:italic;color:#ffffffd9;line-height:2;display:flex;flex-direction:column;gap:.3rem}.signature-line-text{display:block;animation:signatureReveal 1s ease-out both}@keyframes signatureReveal{0%{opacity:0;transform:translate(-20px);filter:blur(4px)}to{opacity:1;transform:translate(0);filter:blur(0)}}.footer-badge{display:inline-block;padding:1.2rem 2.5rem;background:linear-gradient(135deg,#ffffff0a,#ffffff05);border:1px solid rgba(255,255,255,.1);border-radius:50px;margin-top:2rem;position:relative;overflow:hidden;transition:all .5s ease;animation:fadeInUp 1s ease-out both}.badge-shimmer{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);will-change:transform;animation:badgeShimmer 4s ease-in-out infinite;transform:translate(-100%)}@keyframes badgeShimmer{0%,to{transform:translate(-100%)}50%{transform:translate(100%)}}.footer-badge:hover{background:linear-gradient(135deg,#ffffff14,#ffffff0a);transform:scale(1.03);box-shadow:0 0 40px #ffffff0f}.footer-text{font-family:var(--font-elegant);font-size:clamp(1.1rem,3vw,1.4rem);font-weight:500;color:#fff;letter-spacing:.08em;text-shadow:0 0 15px rgba(255,255,255,.3)}.page-footer{margin-top:6rem;text-align:center;padding:3rem 0}.footer-ornament{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:2rem}.ornament-line{width:40px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent)}.ornament-star{color:#fff6;font-size:1rem;animation:starPulse 2s ease-in-out infinite}@keyframes starPulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}.decorative-dots{display:flex;justify-content:center;gap:2rem;color:#ffffff40;font-size:.7rem}.decorative-dots span{animation:dotPulse 2s ease-in-out infinite}.decorative-dots span:nth-child(2){animation-delay:.3s}.decorative-dots span:nth-child(3){animation-delay:.6s}@keyframes dotPulse{0%,to{opacity:.25;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}.lens-flares{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:998;overflow:hidden}.lens-flare{position:absolute;border-radius:50%;filter:blur(1px);will-change:transform,opacity;animation:flareFloat 20s ease-in-out infinite}.flare-1{top:10%;right:15%;width:120px;height:120px;background:radial-gradient(circle,rgba(255,255,255,.07) 0%,transparent 70%)}.flare-2{top:40%;left:5%;width:70px;height:70px;background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 70%);animation-delay:-7s}.flare-3{bottom:20%;right:25%;width:90px;height:90px;background:radial-gradient(circle,rgba(255,255,255,.06) 0%,transparent 70%);animation-delay:-14s}.flare-4{top:60%;left:15%;width:50px;height:50px;background:radial-gradient(circle,rgba(255,255,255,.04) 0%,transparent 70%);animation-delay:-3s}@keyframes flareFloat{0%,to{transform:translate(0) scale(1);opacity:.5}25%{transform:translate(25px,-35px) scale(1.15);opacity:.8}50%{transform:translate(-15px,25px) scale(.9);opacity:.4}75%{transform:translate(35px,15px) scale(1.1);opacity:.7}}@media(max-width:768px){.content-wrapper{padding:3rem 1.25rem 5rem}.hero-frame{padding:2rem 1.5rem}.glass-panel{padding:1.8rem}.message-text{text-align:left;line-height:1.9}.drop-cap{font-size:3rem}.enter-button{padding:2rem 3.5rem}.closing-panel{padding:1.5rem 2.5rem}.letterbox{height:10vh}.spotlight-circle{width:250px;height:250px}}@media(max-width:480px){.content-wrapper{padding:2rem 1rem 4rem}.hero{padding:2rem 0;margin-bottom:3rem}.hero-frame{padding:1.5rem 1rem}.glass-panel{padding:1.5rem;border-radius:8px}.message-container{gap:2rem}.drop-cap{font-size:2.5rem}.enter-button{padding:1.5rem 3rem}.enter-button-text{letter-spacing:.3em}.surprise-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2000;display:flex;align-items:center;justify-content:center;cursor:pointer;animation:surpriseOverlayFadeIn .5s ease-out}@keyframes surpriseOverlayFadeIn{0%{opacity:0}to{opacity:1}}.surprise-content{position:relative;max-width:700px;padding:3.5rem 3rem;background:linear-gradient(135deg,#ffb6c114,#ff69b40a,#ffffff08);border:2px solid rgba(255,182,193,.25);border-radius:24px;box-shadow:0 0 80px #ffb6c126,0 0 150px #ff69b414,inset 0 0 60px #ffb6c108;cursor:default;animation:surpriseContentReveal .8s cubic-bezier(.34,1.56,.64,1)}@keyframes surpriseContentReveal{0%{opacity:0;transform:scale(.5) rotateY(-20deg)}to{opacity:1;transform:scale(1) rotateY(0)}}.surprise-sparkles{display:flex;justify-content:center;gap:2rem;margin-bottom:1.5rem;font-size:2.5rem}.surprise-sparkles span{animation:sparkleFloat 2s ease-in-out infinite}.surprise-sparkles span:nth-child(1){animation-delay:0s}.surprise-sparkles span:nth-child(2){animation-delay:.3s}.surprise-sparkles span:nth-child(3){animation-delay:.6s}@keyframes sparkleFloat{0%,to{transform:translateY(0) rotate(0) scale(1)}25%{transform:translateY(-15px) rotate(10deg) scale(1.1)}50%{transform:translateY(-5px) rotate(-10deg) scale(.95)}75%{transform:translateY(-10px) rotate(5deg) scale(1.05)}}.surprise-title{font-family:var(--font-elegant);font-size:clamp(1.2rem,3vw,1.6rem);font-weight:400;letter-spacing:.3em;text-transform:uppercase;text-align:center;color:#ffb6c1e6;margin-bottom:1rem;animation:messageReveal .8s ease-out .2s both}.surprise-message{font-family:var(--font-elegant);font-size:clamp(1.6rem,4.5vw,2.6rem);font-weight:500;line-height:1.5;text-align:center;color:#fff;text-shadow:0 0 40px rgba(255,255,255,.3);margin:1.5rem 0;animation:messageReveal 1s ease-out .4s both}.surprise-submessage{font-family:var(--font-lucida);font-size:clamp(1rem,2.5vw,1.2rem);font-weight:400;line-height:1.8;text-align:center;color:#ffffffbf;margin:1rem 0 1.5rem;padding:0 1rem;animation:messageReveal 1s ease-out .6s both}@keyframes messageReveal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.surprise-hearts{display:flex;justify-content:center;gap:1.5rem;margin-top:1.5rem;font-size:2rem}.surprise-hearts span{animation:heartBeat 1.5s ease-in-out infinite}.surprise-hearts span:nth-child(1){animation-delay:0s}.surprise-hearts span:nth-child(2){animation-delay:.2s;font-size:2.2rem}.surprise-hearts span:nth-child(3){animation-delay:.4s}@keyframes heartBeat{0%,to{transform:scale(1)}10%,30%{transform:scale(1.3)}20%,40%{transform:scale(1.1)}}.surprise-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:#fff;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.surprise-close:hover{background:#fff3;transform:rotate(90deg)}@media(max-width:768px){.surprise-content{max-width:90%;padding:2.5rem 1.5rem}.surprise-title{font-size:clamp(1rem,2.5vw,1.3rem);letter-spacing:.2em}.surprise-message{font-size:clamp(1.3rem,4vw,1.8rem)}.surprise-submessage{font-size:clamp(.9rem,2vw,1rem)}.clickable-name:after{font-size:.65rem;bottom:-30px;padding:.3rem .8rem}}.surprise-content{padding:2rem 1.2rem}.surprise-sparkles{gap:1rem;font-size:1.8rem}.surprise-title{letter-spacing:.15em}.surprise-hearts{gap:1rem;font-size:1.5rem}.surprise-hearts span:nth-child(2){font-size:1.7rem}.clickable-name:after{font-size:.55rem;bottom:-28px;letter-spacing:.1em}.panel-1,.panel-2,.panel-3,.panel-4{border-left:none;border-right:none;border-top:2px solid rgba(255,255,255,.08)}}@media(prefers-reduced-motion:reduce){.film-grain,.lens-flare,.particle,.twinkle,.light-sweep,.panel-light-sweep,.badge-shimmer{animation:none!important}.entrance-overlay,.enter-button-container,.main-content,.glass-panel,.title,.hero-frame,.hero-glow,.closing-glow{animation:none!important;transition:opacity .3s ease!important}.letterbox{transition:none!important}.spotlight-circle,.entrance-icon,.enter-button-icon,.decorative-dots span,.ornament-star,.title-name{animation:none!important}}
