html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}*,:before,:after{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Plus Jakarta Sans,sans-serif}.font-noto-serif{font-family:Noto Serif,serif}.touch-target{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}[class*=overflow-x-auto]{-ms-overflow-style:none;scrollbar-width:none}[class*=overflow-x-auto]::-webkit-scrollbar{display:none}.ambient-shadow{box-shadow:0 20px 40px #1b1c170d}.inner-glow{box-shadow:inset 0 1px 2px #ffffff4d}.card-stack{transition:transform .5s cubic-bezier(.175,.885,.32,1.275);position:relative}@media (hover:hover){.card-stack:hover{transform:scale(1.02)rotate(-1deg)}}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;-webkit-user-select:none;user-select:none}.scrapbook-card{transition:transform .35s ease-out,box-shadow .35s ease-out;box-shadow:0 10px 30px -5px #0000001a}@media (hover:hover) and (pointer:fine){.scrapbook-card:hover{z-index:20;box-shadow:0 24px 48px -8px #00000026;transform:scale(1.03)rotate(0)!important}}@media (width<=639px){.scrapbook-card[class*=rotate-]{--tw-rotate:0deg!important;transform:none!important}}.tape-effect{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fff6;border:1px solid #0000000d;border-radius:2px;width:60px;height:24px;position:absolute;top:-12px;left:50%;transform:translate(-50%)}@media (width>=640px){.tape-effect{width:80px;height:30px;top:-15px}}.duration-400{transition-duration:.4s}.bg-velvet{background:radial-gradient(circle,#d3322c 0%,#af1517 100%)}.floating-motif{pointer-events:none;position:absolute}@keyframes floatHeart{0%,to{transform:translateY(0)rotate(0)}33%{transform:translateY(-8px)rotate(4deg)}66%{transform:translateY(4px)rotate(-4deg)}}.floating-motif{animation:5s ease-in-out infinite floatHeart}.floating-motif:nth-child(2){animation-duration:6.5s;animation-delay:.8s}.floating-motif:nth-child(3){animation-duration:4.8s;animation-delay:1.6s}.floating-motif:nth-child(4){animation-duration:7s;animation-delay:.4s}.floating-motif:nth-child(5){animation-duration:5.5s;animation-delay:2s}@media (hover:hover) and (pointer:fine){.shake-animation:hover{animation:.5s cubic-bezier(.36,.07,.19,.97) both shake}}.is-shaking{animation:.5s cubic-bezier(.36,.07,.19,.97) both shake}@keyframes shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-4px)}40%,60%{transform:translate(4px)}}@keyframes glow-pulse{0%{box-shadow:0 20px 40px #af151740}50%{box-shadow:0 0 40px #ff969699,0 0 80px #af151780}to{box-shadow:0 20px 40px #af151740}}.animate-glow{animation:.6s cubic-bezier(.4,0,.2,1) glow-pulse}.section-screen-shake{animation:.45s cubic-bezier(.36,.07,.19,.97) both sectionShake}@keyframes sectionShake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(3px,1px)}30%,50%,70%{transform:translate(-4px,-1px)}40%,60%{transform:translate(4px,1px)}}.ripple-ring{pointer-events:none;z-index:999;border:2px solid #af151773;border-radius:50%;width:0;height:0;animation:.65s ease-out forwards rippleExpand;position:fixed;transform:translate(-50%,-50%)}@keyframes rippleExpand{0%{opacity:.7;width:0;height:0}50%{opacity:.35;width:80px;height:80px}to{opacity:0;width:140px;height:140px}}.ghost-trail-button{pointer-events:none;filter:blur(1.5px);position:absolute;top:0;left:0}.no-spin-inner{animation:2.2s linear infinite innerSpin;display:inline-block}@keyframes innerSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.crying-emoji-container{pointer-events:none;justify-content:space-around;width:120px;display:flex;position:absolute;top:-60px;left:50%;overflow:visible;transform:translate(-50%)}.crying-emoji{animation:1.1s ease-in infinite emojiRain;animation-delay:var(--delay,0s);opacity:0;font-size:16px;display:inline-block}@keyframes emojiRain{0%{opacity:0;transform:translateY(0)}15%{opacity:1}85%{opacity:.7}to{opacity:0;transform:translateY(50px)}}.no-button-glitch{animation:.15s infinite alternate glitchFlicker}@keyframes glitchFlicker{0%,80%,84%,to{opacity:1}82%{opacity:.6;filter:hue-rotate(30deg)}86%{opacity:.7}}.glitch-text{display:inline-block;position:relative}.glitch-text:before,.glitch-text:after{content:attr(data-text);width:100%;height:100%;position:absolute;top:0;left:0}.glitch-text:before{color:#af1517;opacity:.8;clip-path:polygon(0 30%,100% 30%,100% 50%,0 50%);animation:.35s step-end infinite glitchSliceA}.glitch-text:after{color:#805062;opacity:.8;clip-path:polygon(0 55%,100% 55%,100% 75%,0 75%);animation:.45s step-end infinite glitchSliceB}@keyframes glitchSliceA{0%{transform:translate(0)}20%{transform:translate(-3px,1px)}40%{transform:translate(3px,-1px)}60%{transform:translate(0)}80%{transform:translate(2px,2px)}to{transform:translate(0)}}@keyframes glitchSliceB{0%{transform:translate(0)}25%{transform:translate(3px,-1px)}50%{transform:translate(-2px,1px)}75%{transform:translate(0)}to{transform:translate(2px,-2px)}}.yes-sparkle-ring{overflow:visible}.yes-sparkle-ring:before{content:"✦ ✦ ✦ ✦ ✦ ✦";color:gold;letter-spacing:6px;border-radius:inherit;pointer-events:none;z-index:1;justify-content:center;align-items:center;font-size:10px;animation:1s linear infinite sparkleOrbit;display:flex;position:absolute;inset:-12px}@keyframes sparkleOrbit{0%{opacity:1;transform:rotate(0)}50%{opacity:.6}to{opacity:1;transform:rotate(360deg)}}.yes-persistent-pulse{animation:1.4s ease-in-out infinite yesPersistentGlow}@keyframes yesPersistentGlow{0%,to{box-shadow:0 20px 40px #af151740}50%{box-shadow:0 0 30px #ff64648c,0 0 60px #af151773,0 20px 40px #af15174d}}.heart-tier-2 .floating-motif{animation-duration:3.2s!important}.heart-tier-2 .floating-motif:nth-child(2){animation-duration:4s!important}.heart-tier-2 .floating-motif:nth-child(3){animation-duration:3s!important}.heart-tier-3 .floating-motif{animation-duration:2.2s!important}.heart-tier-3 .floating-motif:nth-child(2){animation-duration:2.8s!important}.heart-tier-4 .floating-motif{animation-duration:1.4s!important}.tooltip-bounce-in{animation:.4s cubic-bezier(.175,.885,.32,1.275) both tooltipBounce}@keyframes tooltipBounce{0%{opacity:0;transform:translate(-50%)translateY(8px)scale(.85)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.love-is-card{background:#fff;border:1px solid #0000000d;position:relative;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d,inset 0 0 100px #af151705}.love-is-card:after{content:"";pointer-events:none;border:1px solid #af15171a;position:absolute;inset:.4rem}section{scroll-margin-top:64px}@media (width>=640px){section{scroll-margin-top:72px}}.backdrop-blur-xl,.backdrop-blur-sm{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.backdrop-blur-sm{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@supports (padding:max(0px)){.fixed.bottom-6{bottom:max(1.5rem, env(safe-area-inset-bottom))}footer{padding-bottom:max(2.5rem, env(safe-area-inset-bottom))}}.intro-envelope-perspective{perspective:1280px;perspective-origin:50% 42%}.intro-envelope-grain{opacity:.28;background-image:radial-gradient(#78624229 .5px,#0000 .8px);background-size:3px 3px}.intro-envelope-sheen{background:linear-gradient(165deg,#ffffff73 0%,#ffffff1f 28%,#0000000f 100%)}.intro-envelope-address{opacity:.48;flex-direction:column;gap:6px;width:44%;display:flex;position:absolute;bottom:22%;left:16%}.intro-envelope-address--flap{opacity:.62;width:42%;top:22%;bottom:auto;left:14%}.intro-envelope-address-line{background:linear-gradient(90deg,#735c0094,#735c0047);border-radius:999px;height:2px;display:block}.intro-envelope-address-line--short{width:54%}.intro-envelope-address-line--long{width:88%}.intro-envelope-postmark{color:#7a0a0cb3;background:linear-gradient(145deg,#fff8ebb3,#e8dbbfa6);border:1px dashed #7a0a0c66;border-radius:12px;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:14%;right:12%;transform:rotate(-6deg);box-shadow:inset 0 1px #ffffff80}.intro-envelope-postmark--flap{opacity:.9;top:10%;right:14%}.intro-envelope-crease{opacity:.62;background:linear-gradient(90deg,#735c0000,#735c003d,#735c0000);width:30%;height:1px;position:absolute;top:52%}.intro-envelope-crease--left{left:20%;transform:rotate(19deg)}.intro-envelope-crease--right{right:20%;transform:rotate(-19deg)}.intro-envelope-flap-wrap{transform-style:preserve-3d;transform-origin:50% 0;will-change:transform, filter;transition:transform 1.9s cubic-bezier(.22,1,.36,1),filter .55s,z-index 0s linear .35s}.intro-envelope-flap-wrap.is-open{filter:none;transform:rotateX(178deg)}.intro-envelope-flap-face{transform-origin:50% 0;backface-visibility:hidden}.intro-envelope-seal-blob{transition:transform .5s cubic-bezier(.34,1.25,.64,1),opacity .4s cubic-bezier(.4,0,.2,1),filter .35s}.intro-envelope-seal{background:radial-gradient(circle at 30% 28%,#ff8f8f 0%,#ec2d31 22%,#b8151b 56%,#76090d 100%);border:1px solid #7a0a0c9e;border-radius:45% 55% 48% 52%/50% 45% 55% 50%;position:relative;overflow:hidden;box-shadow:0 7px 16px #00000061,inset 0 2px #ffd6d647,inset 0 -9px 12px #5400006b,inset 0 0 0 2px #ff787829}.intro-envelope-seal:before{content:"";filter:blur(.4px);opacity:.9;background:radial-gradient(circle at 40% 35%,#ffffffd1,#ffffff1a 70%,#0000 72%);border-radius:50%;width:54%;height:44%;position:absolute;top:10%;left:16%;transform:rotate(-16deg)}.intro-envelope-seal:after{content:"";border-radius:inherit;opacity:.8;mix-blend-mode:multiply;border:1px solid #69000666;position:absolute;inset:1px}.intro-envelope-seal-core{background:linear-gradient(140deg,#8d0f13 0%,#bc161d 75%);border-radius:48% 52% 50% 50%/50% 48% 52% 50%;box-shadow:inset 0 2px 6px #00000047,inset 0 -1px #ffa8a85c}.intro-envelope-seal-icon{color:#fff9f2f5;filter:drop-shadow(0 -1px 1px #49000085)}.intro-envelope-seal-blob.is-gone{opacity:0;filter:blur(5px);transform:scale(.06)rotate(-22deg)}.intro-envelope-shell{backface-visibility:hidden;will-change:transform, filter, opacity;transition:transform 1.1s cubic-bezier(.16,1,.3,1),filter .8s,opacity .9s cubic-bezier(.4,0,.2,1);transform:translateZ(0)}.intro-envelope-shell.is-receding{filter:brightness(.94)blur(2px);opacity:.5;transform:translateY(8vh)scale(.9)}.intro-envelope-bottom{transform-origin:50% 100%;will-change:transform;transition:transform .82s cubic-bezier(.22,1,.36,1)}.intro-envelope-bottom.is-open{transform:rotateX(28deg)}.intro-envelope-side{will-change:transform;transition:transform .86s cubic-bezier(.22,1,.36,1)}.intro-envelope-side--l{transform-origin:0}.intro-envelope-side--r{transform-origin:100%}.intro-envelope-sides-open .intro-envelope-side--l{transform:rotateY(10deg)}.intro-envelope-sides-open .intro-envelope-side--r{transform:rotateY(-10deg)}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes celebCardPop{0%{opacity:0;transform:scale(.3)translateY(80px)}65%{opacity:1;transform:scale(1.05)translateY(-6px)}80%{transform:scale(.97)translateY(2px)}to{opacity:1;transform:scale(1)translateY(0)}}.cel-orbit-container{justify-content:center;align-items:center;width:90px;height:90px;display:flex;position:relative}.cel-orbit-arm{width:100%;height:100%;transform:rotate(var(--rot));animation:4s linear infinite orbitSpin;position:absolute;top:0;left:0}@keyframes orbitSpin{0%{transform:rotate(var(--rot))}to{transform:rotate(calc(var(--rot) + 360deg))}}.cel-orbit-dot{color:#ff6b9d;opacity:.85;font-size:14px;position:absolute;top:-7px;left:calc(50% - 7px)}@keyframes counterOrbit{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.cel-main-heart{z-index:2;font-size:72px;animation:1.3s ease-in-out infinite celHeartBeat;display:block;position:relative}@keyframes celHeartBeat{0%,to{transform:scale(1)}15%{transform:scale(1.22)}30%{transform:scale(1)}45%{transform:scale(1.1)}}.cel-yes-heading{background:linear-gradient(90deg,#af1517,gold,#ff6b9d,#af1517,gold) 0 0/300%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(3.5rem,15vw,5rem);animation:1.8s linear infinite shimmerText}@keyframes shimmerText{0%{background-position:0%}to{background-position:300%}}.cel-emoji{animation:.5s cubic-bezier(.175,.885,.32,1.275) both emojiPop}@keyframes emojiPop{0%{opacity:0;transform:scale(0)rotate(-20deg)}to{opacity:1;transform:scale(1)rotate(0)}}.cel-name-tag{color:#1b1c17;background:#fbf9f1;border:1px solid #af151726;border-radius:999px;padding:.2rem .7rem;font-family:Noto Serif,serif;font-size:.95rem;font-style:italic;font-weight:600}.cel-card-glow{filter:blur(24px);background:radial-gradient(circle,#ff6b9d80 0%,#0000 70%);animation:2.2s ease-in-out infinite alternate cardGlowPulse}@keyframes cardGlowPulse{0%{opacity:.5;transform:scale(1.1)}to{opacity:1;transform:scale(1.35)}}.cel-center-glow{filter:blur(70px);background:radial-gradient(circle,#af151773 0%,#0000 70%);border-radius:50%;width:650px;height:650px;animation:3s ease-in-out infinite alternate centerGlow}@keyframes centerGlow{0%{opacity:.3;transform:scale(1)}to{opacity:.8;transform:scale(1.25)}}.cel-close-btn{background:radial-gradient(at top,#d3322c,#af1517);box-shadow:0 8px 28px #af151773}.cel-close-btn:hover{transform:scale(1.02);box-shadow:0 12px 36px #af1517a6}.already-yes-card{position:relative}.already-yes-ring{z-index:0;background:linear-gradient(135deg,#af1517,gold,#ff6b9d,#af1517,gold) 0 0/300% 300%;border-radius:18px;animation:3s linear infinite ringShimmer;position:absolute;inset:-2px}@keyframes ringShimmer{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.already-yes-card>div:last-child{z-index:1;position:relative}.yes-heart-badge{animation:1.4s ease-in-out infinite yesHeartPulse;display:inline-block}@keyframes yesHeartPulse{0%,to{transform:scale(1)}40%{transform:scale(1.25)}60%{transform:scale(1.1)}}.animate-ken-burns{animation:20s ease-out forwards kenBurns}@keyframes kenBurns{0%{transform:scale(1)}to{transform:scale(1.1)}}.scroll-reveal{opacity:0;will-change:opacity, transform;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(30px)}.scroll-reveal.is-revealed{opacity:1;transform:translateY(0)}@keyframes floatingDust{0%{opacity:0;filter:blur(1px);transform:translateY(0)translate(0)scale(.8)}20%{opacity:1;filter:blur();transform:translateY(-20px)translate(5px)scale(1.2)}80%{opacity:1;filter:blur();transform:translateY(-80px)translate(15px)scale(1.1)}to{opacity:0;filter:blur(1px);transform:translateY(-100px)translate(20px)scale(.8)}}.animate-floating-dust{animation-name:floatingDust;animation-timing-function:linear;animation-iteration-count:infinite}.animate-fade-in-up{opacity:0;animation:1s cubic-bezier(.16,1,.3,1) forwards fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ping-heart{pointer-events:none;z-index:999;opacity:0;animation:3s ease-out forwards pingHeartFloat;position:fixed;bottom:10%}@keyframes pingHeartFloat{0%{opacity:0;transform:translateY(0)scale(.5)rotate(-10deg)}15%{opacity:1;transform:translateY(-20px)scale(1.2)rotate(5deg)}80%{opacity:.8;transform:translateY(-160px)scale(.9)rotate(-5deg)}to{opacity:0;transform:translateY(-210px)scale(.6)}}.ping-banner{opacity:0;z-index:200;pointer-events:none;color:#af1517;white-space:nowrap;background:#fff;border:1px solid #af151726;border-radius:999px;align-items:center;gap:.5rem;padding:.6rem 1.4rem;font-family:Noto Serif,serif;font-size:.9rem;font-style:italic;transition:opacity .4s,transform .4s cubic-bezier(.34,1.56,.64,1);display:flex;position:fixed;top:80px;left:50%;transform:translate(-50%)translateY(-20px);box-shadow:0 12px 40px #af151726}.ping-banner--visible{opacity:1;transform:translate(-50%)translateY(0)}.typewriter-cursor{vertical-align:text-bottom;background:currentColor;width:2px;height:1.1em;margin-left:2px;animation:1s step-end infinite cursorBlink;display:inline-block}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.cursor-trail-heart{pointer-events:none;z-index:9999;color:#af1517;-webkit-user-select:none;user-select:none;font-size:14px;line-height:1;animation:.8s ease-out forwards trailFade;position:fixed;transform:translate(-50%,-50%)}@keyframes trailFade{0%{opacity:.8;transform:translate(-50%,-50%)scale(1)rotate(-10deg)}to{opacity:0;transform:translate(-50%,calc(-50% - 28px))scale(.4)rotate(10deg)}}.intro-envelope-postmark{animation:2s ease-out forwards postmarkInk}@keyframes postmarkInk{0%{opacity:0;transform:rotate(-6deg)scale(1.3)}40%{opacity:1;transform:rotate(-6deg)scale(.92)}60%{transform:rotate(-6deg)scale(1.04)}to{transform:rotate(-6deg)scale(1)}}.secret-word{cursor:default;border-bottom:1px dashed #af15174d;transition:border-color .2s}.secret-word:hover,.secret-word:focus{border-color:#af1517a6;outline:none}.secret-word-fixed-tooltip{pointer-events:none;width:220px;font-family:Plus Jakarta Sans,sans-serif;font-style:bold;letter-spacing:0;text-transform:none;font-variant:normal;color:#af1517;white-space:normal;word-break:break-word;text-align:left;z-index:9998;background:#fff;border:1px solid #af15172e;border-radius:12px;padding:9px 14px;font-size:13px;font-weight:500;line-height:1.5;animation:.22s cubic-bezier(.34,1.56,.64,1) both secretWordIn;position:relative;box-shadow:0 8px 32px #af151724,0 2px 8px #0000000f}@keyframes secretWordIn{0%{opacity:0;transform:translateY(6px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.secret-word-arrow{top:100%;left:var(--arrow-left,50%);filter:drop-shadow(0 1px #af151714);border:7px solid #0000;border-top-color:#fff;width:0;height:0;position:absolute;transform:translate(-50%)}.secret-word-arrow-up{bottom:100%;left:var(--arrow-left,50%);filter:drop-shadow(0 -1px #af151714);border:7px solid #0000;border-bottom-color:#fff;width:0;height:0;position:absolute;transform:translate(-50%)}.countdown-unit{flex-direction:column;align-items:center;gap:2px;display:flex}.countdown-digit{color:#af1517;font-family:Noto Serif,serif;font-size:1.6rem;font-weight:700;line-height:1}.countdown-label{text-transform:uppercase;letter-spacing:.12em;color:#1b1c1766;font-size:.6rem;font-weight:600}.countdown-divider{color:#af15174d;align-self:flex-start;margin-top:2px;font-size:1.4rem;line-height:1}.daily-thought-enter{animation:.7s cubic-bezier(.34,1.56,.64,1) both dailyThoughtIn}@keyframes dailyThoughtIn{0%{opacity:0;transform:translateY(16px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.book-page-in{animation:.65s cubic-bezier(.22,1,.36,1) both bookPageIn}@keyframes bookPageIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.book-ghost-in{animation:1s both bookGhostIn}@keyframes bookGhostIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.97)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.book-keep-pop{animation:.45s cubic-bezier(.175,.885,.32,1.275) bookKeepPop}@keyframes bookKeepPop{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}.book-heart-beat{animation:1.6s ease-in-out infinite bookHeartBeat}@keyframes bookHeartBeat{0%,to{transform:scale(1)}12%{transform:scale(1.14)}24%{transform:scale(1)}36%{transform:scale(1.08)}48%{transform:scale(1)}}.book-hint-fade{animation:1.6s 1.4s both bookHintFade}@keyframes bookHintFade{0%{opacity:0}to{opacity:1}}.book-caret{vertical-align:-.18em;width:2px;height:1.05em;margin-right:-2px;animation:.9s step-end infinite bookCaretBlink;display:inline-block}@keyframes bookCaretBlink{0%,to{opacity:1}50%{opacity:0}}.book-grain:before{content:"";opacity:.045;pointer-events:none;z-index:1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.book-page-in,.book-ghost-in,.book-keep-pop,.book-heart-beat,.book-hint-fade{animation:none}}.reveal-vignette{filter:sepia(.6)brightness(.8)contrast(1.1);will-change:filter, transform;transition:filter 1.5s cubic-bezier(.25,1,.5,1),transform 1.5s cubic-bezier(.25,1,.5,1);transform:scale(1.05)}.is-revealed .reveal-vignette,.reveal-vignette.is-developed{filter:sepia(0)brightness()contrast();transform:scale(1)}@keyframes heartbeatRipple{0%{transform:scale(1);box-shadow:0 0 #af151766}30%{transform:scale(1.05);box-shadow:0 0 0 15px #af151700}50%{transform:scale(1);box-shadow:0 0 #af151700}to{transform:scale(1);box-shadow:0 0 #af151700}}.animate-heartbeat-ripple{animation:1.2s cubic-bezier(.4,0,.6,1) infinite heartbeatRipple}.glass-elegant{-webkit-backdrop-filter:blur(12px);background:#fbf9f1d9}.border-gold-hairline{border:1px solid #cca73066}.fade-breath{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(4px)}.fade-breath.active{opacity:1;transform:translateY(0)}.u-word{letter-spacing:.04em;color:#1b1c17;white-space:nowrap;cursor:pointer;background:0 0;border:none;padding:.1em .15em;font-family:Noto Serif,serif;font-size:clamp(2.1rem,7vw,3.4rem);font-weight:700;transition:transform .35s cubic-bezier(.34,1.56,.64,1),color .3s;display:inline-block;position:relative}@media (hover:hover) and (pointer:fine){.u-word:not(.u-word-complete):hover{transform:scale(1.07)rotate(0)!important}}.u-word:not(.u-word-complete):active{transform:scale(.94)!important}.u-word-complete{cursor:default;animation:1.1s .25s uWordGlow}@keyframes uWordGlow{0%{text-shadow:0 0 #ffd70000}40%{text-shadow:0 0 18px #ffd7008c,0 0 34px #af151740}to{text-shadow:0 0 #ffd70000}}.u-tile{display:inline-block}.u-slot{width:.82em;height:.74em;margin:0 .06em;display:inline-block;position:relative;overflow:visible}.u-slot-filled{width:auto;height:auto;margin:0}.u-blank{background:#af15170d;border:2px dashed #af151773;border-radius:.14em;animation:1.7s ease-in-out infinite uSlotPulse;position:absolute;inset:0}@keyframes uSlotPulse{0%,to{background:#af15170a;border-color:#af151759;transform:scale(1)}50%{background:#af15171a;border-color:#af1517bf;transform:scale(1.07)}}.u-fill{color:#af1517;animation:.55s cubic-bezier(.34,1.56,.64,1) both uDropIn;display:inline-block}@keyframes uDropIn{0%{opacity:0;transform:translateY(-.7em)scale(1.6)rotate(-8deg)}60%{opacity:1;transform:translateY(.06em)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}.u-heart-pop{color:#af1517;pointer-events:none;font-size:.38em;animation:1.1s ease-out .3s both uHeartPop;position:absolute;top:-.5em;left:50%}@keyframes uHeartPop{0%{opacity:0;transform:translate(-50%)scale(0)}30%{opacity:1;transform:translate(-50%,-.6em)scale(1.25)}to{opacity:0;transform:translate(-50%,-1.7em)scale(.8)}}.u-payoff>*{opacity:0;animation:.9s cubic-bezier(.16,1,.3,1) forwards fadeInUp}.u-payoff>:first-child{animation-delay:.2s}.u-payoff>:nth-child(2){animation-delay:.65s}.u-payoff>:nth-child(3){animation-delay:1.2s}.u-payoff-u{color:#af1517;animation:1.4s ease-in-out infinite yesHeartPulse;display:inline-block}.hero-cinema{--hero-out:0;--outline-in:0;--fill-in:0;--name-scale:1.6;--tagline-in:0;--wash:0;--drift:0}.cinema-sky{background:linear-gradient(#cfe2f3 0%,#e7f0f7 36%,#fdf4e9 74%,#fbf9f1 100%)}.cinema-bg{object-fit:cover;width:100%;height:100%;transform:scale(calc(1 + var(--hero-out) * .12)) translateY(calc(var(--hero-out) * -4vh));will-change:transform, opacity;position:absolute;inset:0}.cinema-bg--soft{opacity:calc(.2 * (1 - var(--hero-out)));filter:blur(4px)}.cinema-bg--sharp{opacity:calc(var(--hero-out) * (.55 - .35 * var(--fill-in)) * (1 - var(--wash)))}.cinema-stage-a{opacity:calc(1 - var(--hero-out));transform:translateY(calc(var(--hero-out) * -12vh));will-change:transform, opacity}[data-hero-gone] .cinema-stage-a{visibility:hidden}.cinema-name-stage{opacity:calc(1 - var(--wash) * .65)}.cinema-name-wrap{transform:scale(var(--name-scale));will-change:transform;position:relative}.cinema-name,.cinema-name-svg text{letter-spacing:.01em;white-space:nowrap;text-align:center;font-family:Shojumaru,Noto Serif,system-ui,sans-serif;font-size:min(clamp(3rem,12vw,11rem),20svh);font-style:normal;font-weight:400;line-height:1.15}.cinema-name{background-size:cover;background-position:50% calc(62% - var(--drift) * 26%);color:#0000;opacity:var(--fill-in);-webkit-background-clip:text;background-clip:text;padding:.08em .12em}.cinema-name-svg{width:100%;height:100%;opacity:calc(clamp(0, var(--outline-in) * 8, 1) * (1 - var(--fill-in)));position:absolute;inset:0;overflow:visible}.cinema-name-svg text{fill:none;stroke:#ffffffeb;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:5em}.cinema-name-svg text:first-of-type{stroke-dashoffset:calc(5em * (1 - clamp(0, var(--outline-in,0) / .55, 1)))}.cinema-name-svg text:last-of-type{stroke-dashoffset:calc(5em * (1 - clamp(0, (var(--outline-in,0) - .45) / .55, 1)))}.cinema-tagline{color:#af1517;opacity:var(--tagline-in);transform:translateY(calc((1 - var(--tagline-in)) * 16px));will-change:transform, opacity;margin-top:clamp(.8rem,2.5vw,1.8rem);font-size:clamp(.85rem,2vw,1.25rem)}.cinema-clouds{pointer-events:none;will-change:transform;position:absolute;inset:-20%}.cinema-clouds--back{transform:translate3d(calc(var(--drift) * -6%), calc(var(--drift) * -4%), 0);background-image:radial-gradient(38% 20% at 18% 80%,#ffffffd9,#0000 70%),radial-gradient(46% 24% at 78% 86%,#ffffffb3,#0000 70%),radial-gradient(30% 15% at 48% 94%,#ffffffe6,#0000 70%)}.cinema-clouds--front{transform:translate3d(calc(var(--drift) * 9%), calc(var(--drift) * -9%), 0) scale(calc(1 + var(--drift) * .25));background-image:radial-gradient(52% 24% at 28% 102%,#fffffff2,#0000 72%),radial-gradient(44% 20% at 84% 98%,#fdfaf4e6,#0000 70%),radial-gradient(28% 14% at 6% 94%,#ffffffd9,#0000 70%)}.cinema-wash{opacity:var(--wash);pointer-events:none;background:radial-gradient(120% 85% at 50% 105%,#fff 28%,#ffffffe6 52%,#fbf9f166 74%,#0000 100%),linear-gradient(#fbf9f100 0%,#fbf9f1d9 68%,#f5f4ec 100%)}.cinema-hint{opacity:clamp(0, calc(1 - var(--hero-out,0) * 2.5), 1);pointer-events:none}
