@import url(https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Jost:wght@300;400;500&display=swap);:root{--text-xs:clamp(0.75rem,0.7rem + 0.25vw,0.875rem);--text-sm:clamp(0.875rem,0.8rem + 0.35vw,1rem);--text-base:clamp(1rem,0.95rem + 0.25vw,1.125rem);--text-lg:clamp(1.125rem,1rem + 0.75vw,1.5rem);--text-xl:clamp(1.5rem,1.2rem + 1.25vw,2.25rem);--text-2xl:clamp(2rem,1.2rem + 2.5vw,3.5rem);--text-hero:clamp(3rem,0.5rem + 7vw,8rem);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--color-bg:#1a0810;--color-surface:#220d14;--color-surface-2:#2a1019;--color-surface-offset:#31141e;--color-border:#ffb4c826;--color-text:#fce8ef;--color-text-muted:#d4a0b0;--color-text-faint:#9a6070;--color-primary-hover:#f07090;--color-accent:#ff9bb5;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--font-display:"Great Vibes",cursive;--font-body:"Nunito",sans-serif;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 16px #00000080;--shadow-lg:0 12px 40px #0009;--transition:180ms cubic-bezier(0.16,1,0.3,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:#1a0810;background-color:var(--color-bg);color:#fce8ef;color:var(--color-text);font-family:Nunito,sans-serif;font-family:var(--font-body);font-size:clamp(1rem,.95rem + .25vw,1.125rem);font-size:var(--text-base);line-height:1.6;min-height:100dvh}img{display:block;height:auto;max-width:100%}button{background:none;border:none;color:inherit;cursor:pointer;font:inherit}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}:root{--color-primary:#e8607a;--color-accent:#f5c2ce;--color-gold:#d4a855;--color-gold-light:#f0d07a;--color-bg:#0d080a;--color-surface:#fff0f50a;--color-text:#f5e8ec;--color-text-muted:#f5dce48c;--color-border:#d4a85540;--color-glow-rose:#e8607a73;--color-glow-gold:#d4a85559;--font-display:"Cormorant Garamond","Playfair Display",Georgia,serif;--font-body:"Jost","DM Sans",system-ui,sans-serif;--radius-sm:6px;--radius-md:12px;--radius-lg:18px;--radius-xl:22px;--radius-2xl:32px;--radius-full:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--text-xs:0.72rem;--text-sm:0.85rem;--text-base:1rem;--text-lg:1.15rem;--text-2xl:1.65rem;--text-3xl:2.2rem;--transition:0.45s cubic-bezier(0.34,1.56,0.64,1);--transition-slow:0.8s cubic-bezier(0.34,1.56,0.64,1)}.carousel-wrapper{align-items:center;-webkit-backdrop-filter:blur(.5px);backdrop-filter:blur(.5px);background:radial-gradient(ellipse 800px 400px at 50% 0,#e8607a14 0,#0000 70%),radial-gradient(ellipse 600px 300px at 50% 100%,#d4a8550f 0,#0000 70%);border-radius:30px;display:flex;flex-direction:column;font-family:Jost,DM Sans,system-ui,sans-serif;font-family:var(--font-body);gap:16px;gap:var(--space-4);max-width:960px;padding:24px 16px 32px;padding:var(--space-5) var(--space-4) var(--space-6);position:relative;width:100%;z-index:1}.carousel-wrapper:before{animation:gridShift 15s linear infinite;background-image:linear-gradient(0deg,#0000 24%,#e8607a0d 25%,#e8607a0d 26%,#0000 27%,#0000 74%,#e8607a0d 75%,#e8607a0d 76%,#0000 77%,#0000),linear-gradient(90deg,#0000 24%,#d4a8550d 25%,#d4a8550d 26%,#0000 27%,#0000 74%,#d4a8550d 75%,#d4a8550d 76%,#0000 77%,#0000);background-size:60px 60px;border-radius:30px;content:"";inset:0;pointer-events:none;position:absolute;z-index:0}@keyframes gridShift{0%{background-position:0 0,0 0}to{background-position:60px 60px,60px 60px}}.carousel-wrapper:after{animation:edgeGlowPulse 4s ease-in-out infinite;background:radial-gradient(ellipse 900px 500px at 50% -10%,#e8607a1a 0,#0000 60%),radial-gradient(ellipse 700px 400px at 50% 110%,#d4a85514 0,#0000 60%);border-radius:30px;content:"";inset:0;pointer-events:none;position:absolute;z-index:0}@keyframes edgeGlowPulse{0%,to{opacity:.8}50%{opacity:1}}.orb{animation:orbFloat 15s ease-in-out infinite alternate;border-radius:50%;filter:blur(120px);opacity:.15;pointer-events:none;position:absolute;z-index:0}.orb-a{animation-delay:0s;background:radial-gradient(circle,#e8607a,#0000 70%);box-shadow:0 0 200px #e8607a66;height:500px;left:-120px;top:-150px;width:500px}.orb-b{animation-delay:-7.5s;background:radial-gradient(circle,#d4a855,#0000 70%);bottom:-100px;box-shadow:0 0 150px #d4a8554d;height:400px;right:-100px;width:400px}.orb-c{animation:orbFloat 20s ease-in-out infinite alternate;animation-delay:-10s;background:radial-gradient(circle,#f5c2ce,#0000 70%);border-radius:50%;box-shadow:0 0 180px #f5c2ce40;filter:blur(100px);height:350px;left:50%;opacity:.08;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:350px;z-index:0}.film-strip{align-items:center;animation:filmStripGlow 3s ease-in-out infinite;display:flex;gap:8px;gap:var(--space-2);position:relative;z-index:2}@keyframes filmStripGlow{0%,to{filter:drop-shadow(0 0 0 rgba(212,168,85,.3))}50%{filter:drop-shadow(0 0 8px rgba(212,168,85,.6))}}.film-hole{animation:filmHoleTwinkle 4s ease-in-out infinite;background:#0000;border:1px solid #d4a85540;border:1px solid var(--color-border);border-radius:2px;flex-shrink:0;height:7px;transition:all .5s cubic-bezier(.34,1.56,.64,1);width:10px}@keyframes filmHoleTwinkle{0%,to{background:#0000;border-color:#d4a85540;border-color:var(--color-border)}50%{background:#d4a8550d;border-color:#d4a85580}}.carousel-wrapper:hover .film-hole{border-color:#d4a85580}.progress-bar{background:linear-gradient(90deg,#e8607a1a,#ffffff14 50%,#d4a8551a);box-shadow:inset 0 0 20px #0000004d,0 0 30px #e8607a33;height:2px;overflow:visible;position:relative;width:55%;z-index:2}.progress-bar,.progress-fill{border-radius:9999px;border-radius:var(--radius-full)}.progress-fill{background:linear-gradient(90deg,#e8607a,#d4a855);background:linear-gradient(90deg,var(--color-primary),var(--color-gold));box-shadow:0 0 15px #e8607a66;height:100%;transition:width .04s linear}.progress-glow{animation:progressGlow 2s ease-in-out infinite;background:#f0d07a;background:var(--color-gold-light);border-radius:50%;box-shadow:0 0 16px 6px #d4a85559,0 0 35px #e8607a4d,inset 0 0 8px #fff6;box-shadow:0 0 16px 6px var(--color-glow-gold),0 0 35px #e8607a4d,inset 0 0 8px #fff6;height:14px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);transition:left .04s linear;width:14px}@keyframes progressGlow{0%,to{box-shadow:0 0 16px 6px #d4a85559,0 0 35px #e8607a4d,inset 0 0 8px #fff6;box-shadow:0 0 16px 6px var(--color-glow-gold),0 0 35px #e8607a4d,inset 0 0 8px #fff6}50%{box-shadow:0 0 22px 8px #d4a85559,0 0 50px #e8607a80,inset 0 0 12px #fff9;box-shadow:0 0 22px 8px var(--color-glow-gold),0 0 50px #e8607a80,inset 0 0 12px #fff9}}.slide-counter{animation:counterGlow 3s ease-in-out infinite;color:#f5dce48c;color:var(--color-text-muted);font-family:Jost,DM Sans,system-ui,sans-serif;font-family:var(--font-body);font-size:.72rem;font-size:var(--text-xs);letter-spacing:.25em;position:relative;text-transform:uppercase;-webkit-user-select:none;user-select:none;z-index:2}@keyframes counterGlow{0%,to{filter:drop-shadow(0 0 2px rgba(212,168,85,.3));text-shadow:0 0 0 #d4a85500}50%{filter:drop-shadow(0 0 6px rgba(212,168,85,.5));text-shadow:0 0 8px #d4a85566}}.sc-current{color:#f0d07a;color:var(--color-gold-light);font-weight:500}.sc-sep{margin:0 4px;opacity:.4}.carousel-stage{align-items:center;background:radial-gradient(ellipse 600px 300px at 50% 50%,#e8607a0a 0,#0000 70%);border-radius:16px;box-shadow:inset 0 0 80px #e8607a14,inset 0 0 40px #d4a8550d;display:flex;height:340px;justify-content:center;perspective:1500px;perspective-origin:50% 45%;position:relative;width:100%;z-index:2}.carousel-slide{backface-visibility:hidden;border-radius:3px;height:240px;overflow:visible;position:absolute;transition:transform .8s cubic-bezier(.34,1.56,.64,1),filter .8s cubic-bezier(.34,1.56,.64,1),box-shadow .8s cubic-bezier(.34,1.56,.64,1),opacity .8s cubic-bezier(.34,1.56,.64,1);transition:transform var(--transition-slow),filter var(--transition-slow),box-shadow var(--transition-slow),opacity var(--transition-slow);width:300px;will-change:transform,filter,box-shadow}.carousel-slide.offset-0.transitioning{animation:slideExit .5s cubic-bezier(.34,1.56,.64,1) forwards;pointer-events:none}.carousel-slide.offset-0:not(.transitioning){animation:slideEnter .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes slideExit{0%{opacity:1;transform:scale(1) rotateY(0deg) rotateX(0deg)}50%{opacity:.7}to{opacity:0;transform:scale(.75) rotateY(35deg) rotateX(8deg) translateZ(-100px)}}@keyframes slideEnter{0%{opacity:0;transform:scale(.75) rotateY(-35deg) rotateX(-8deg) translateZ(-100px)}50%{opacity:.7}to{opacity:1;transform:scale(1) rotateY(0deg) rotateX(0deg) translateZ(0)}}.carousel-img-wrap{background:#1a1015;border-radius:3px;height:100%;overflow:hidden;position:relative;width:100%}.carousel-img{display:block;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.34,1.56,.64,1);width:100%}.offset-0:hover .carousel-img{transform:scale(1.05)}.center-vignette{background:radial-gradient(ellipse at center,#0000 50%,#0a050899 100%)}.center-vignette,.shine-sweep{border-radius:3px;inset:0;pointer-events:none;position:absolute}.shine-sweep{animation:shineSweep 5s ease-in-out infinite;background:linear-gradient(135deg,#0000 25%,#ffffff14 50%,#0000 75%)}.carousel-img-wrap:before{animation:neonPulse 2.5s ease-in-out infinite;border:2px solid #e8607a;border-radius:3px;box-shadow:inset 0 0 20px #e8607a26;content:"";inset:0;pointer-events:none;position:absolute;z-index:5}.carousel-slide.offset-0.transitioning .carousel-img-wrap:before{animation:neonGlowTransition .5s cubic-bezier(.34,1.56,.64,1) forwards}.carousel-slide.transitioning .carousel-img{animation:imageBlurOut .5s cubic-bezier(.34,1.56,.64,1) forwards}.carousel-slide:not(.transitioning).offset-0 .carousel-img{animation:imageBlurIn .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes imageBlurOut{0%{filter:blur(0) brightness(1) saturate(1);opacity:1}50%{filter:blur(4px) brightness(1.1) saturate(1.2)}to{filter:blur(12px) brightness(.8) saturate(.6);opacity:.3}}@keyframes imageBlurIn{0%{filter:blur(12px) brightness(.8) saturate(.6);opacity:.3}50%{filter:blur(4px) brightness(1.1) saturate(1.2)}to{filter:blur(0) brightness(1) saturate(1);opacity:1}}@keyframes shineSweep{0%{opacity:0;transform:translateX(-110%)}35%{opacity:1}65%{opacity:1}to{opacity:0;transform:translateX(110%)}}@keyframes neonPulse{0%,to{border-color:#e8607a;box-shadow:inset 0 0 20px #e8607a26,0 0 10px #e8607a66}50%{border-color:#ff7a8f;box-shadow:inset 0 0 30px #e8607a40,0 0 25px #e8607ab3}}@keyframes neonGlowTransition{0%{border-color:#e8607a;box-shadow:inset 0 0 20px #e8607a26,0 0 10px #e8607a66}50%{border-color:#ff5a7a;box-shadow:inset 0 0 40px #e8607a66,0 0 50px #e8607a,0 0 80px #e8607a99}to{border-color:#e8607a;box-shadow:inset 0 0 20px #e8607a26,0 0 10px #e8607a66}}.offset-0{animation:centerSlideGlow 3s ease-in-out infinite;border-radius:8px;box-shadow:0 0 0 2px #e8607a,0 0 20px 2px #e8607acc,0 0 40px 4px #e8607a66,inset 0 0 20px 1px #e8607a33,0 30px 80px #000000d9,0 0 60px #e8607a40;cursor:crosshair;filter:none;transform:translateX(0) translateZ(0) rotateY(0deg) scale(1);z-index:5}@keyframes centerSlideGlow{0%,to{box-shadow:0 0 0 2px #e8607a,0 0 20px 2px #e8607acc,0 0 40px 4px #e8607a66,inset 0 0 20px 1px #e8607a33,0 30px 80px #000000d9,0 0 60px #e8607a40}50%{box-shadow:0 0 0 2px #ff7a8f,0 0 25px 3px #e8607a,0 0 50px 5px #e8607a99,inset 0 0 30px 2px #e8607a4d,0 30px 80px #000000d9,0 0 80px #e8607a66}}.offset--1{transform:translateX(-235px) translateZ(-140px) rotateY(32deg) scale(.84)}.offset--1,.offset-1{box-shadow:0 15px 45px #000000b3;filter:brightness(.65) saturate(.75);z-index:4}.offset-1{transform:translateX(235px) translateZ(-140px) rotateY(-32deg) scale(.84)}.offset--2{transform:translateX(-405px) translateZ(-280px) rotateY(48deg) scale(.62)}.offset--2,.offset-2{box-shadow:0 10px 30px #0009;filter:brightness(.38) saturate(.55);z-index:3}.offset-2{transform:translateX(405px) translateZ(-280px) rotateY(-48deg) scale(.62)}.offset--1:hover,.offset-1:hover{box-shadow:0 20px 60px #000c,0 0 40px #e8607a4d;cursor:pointer;filter:brightness(.85) saturate(.95)}.offset--2:hover,.offset-2:hover{box-shadow:0 10px 40px #000000b3,0 0 25px #e8607a26;cursor:pointer;filter:brightness(.52) saturate(.7)}.carousel-slide.transitioning{pointer-events:none}.cf,.corner-frame{display:none}.nav-btn{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#0d080abf;border:1px solid #d4a85540;border:1px solid var(--color-border);border-radius:9999px;border-radius:var(--radius-full);color:#f0d07a;color:var(--color-gold-light);cursor:pointer;display:flex;height:44px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .45s cubic-bezier(.34,1.56,.64,1);width:44px;z-index:10}.nav-prev{left:4px}.nav-next{right:4px}.nav-btn:hover{background:#d4a85533;border-color:#f0d07a;border-color:var(--color-gold-light);box-shadow:0 0 25px #d4a85573,0 0 50px #e8607a40,inset 0 0 15px #d4a85526;transform:translateY(-50%) scale(1.12)}.nav-btn:active{transform:translateY(-50%) scale(.92)}.caption-area{animation:captionEntrance .7s cubic-bezier(.34,1.56,.64,1) both;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:radial-gradient(ellipse 400px 150px at 50% 50%,#e8607a0f 0,#0000 70%);border-radius:20px;box-shadow:0 0 25px #e8607a1f,inset 0 0 25px #e8607a0a;padding:16px 20px;position:relative;text-align:center;z-index:2}@keyframes captionEntrance{0%{filter:blur(8px);opacity:0;transform:translateY(25px) scale(.95)}50%{filter:blur(4px)}to{filter:blur(0);opacity:1;transform:translateY(0) scale(1)}}.caption-ornament{align-items:center;display:flex;gap:8px;gap:var(--space-2);justify-content:center;margin-bottom:12px;margin-bottom:var(--space-3)}.orn-line{animation:lineGlow 3s ease-in-out infinite;background:linear-gradient(90deg,#0000,#d4a855);background:linear-gradient(90deg,#0000,var(--color-gold));box-shadow:0 0 8px #d4a85566;height:1px;width:36px}@keyframes lineGlow{0%,to{box-shadow:0 0 8px #d4a85566;opacity:.6}50%{box-shadow:0 0 16px #d4a855cc;opacity:1}}.orn-line:last-child{background:linear-gradient(270deg,#0000,#d4a855);background:linear-gradient(270deg,#0000,var(--color-gold))}.orn-heart{animation:heartPulseGlow 2.8s cubic-bezier(.34,1.56,.64,1) infinite;color:#e8607a;color:var(--color-primary);display:inline-block;font-size:.85rem;font-size:var(--text-sm)}@keyframes heartPulseGlow{0%,to{filter:drop-shadow(0 0 0 rgba(232,96,122,.5));opacity:.7;transform:scale(1)}50%{filter:drop-shadow(0 0 12px rgba(232,96,122,.8));opacity:1;transform:scale(1.35)}}.caption-title{animation:titleGlow 3s ease-in-out infinite;color:#f5c2ce;color:var(--color-accent);font-family:Cormorant Garamond,Playfair Display,Georgia,serif;font-family:var(--font-display);font-size:2.2rem;font-size:var(--text-3xl);font-style:italic;font-weight:400;letter-spacing:.01em;line-height:1.2;margin:0 0 8px;margin:0 0 var(--space-2);text-shadow:0 0 30px #e8607a99,0 0 60px #e8607a4d,0 2px 8px #0006}@keyframes titleGlow{0%,to{text-shadow:0 0 30px #e8607a99,0 0 60px #e8607a4d,0 2px 8px #0006}50%{text-shadow:0 0 40px #e8607acc,0 0 80px #e8607a80,0 2px 8px #0006}}.caption-sub{color:#f5dce48c;color:var(--color-text-muted);font-family:Jost,DM Sans,system-ui,sans-serif;font-family:var(--font-body);font-size:.85rem;font-size:var(--text-sm);font-style:italic;font-weight:300;letter-spacing:.08em;margin:0}.dots{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:radial-gradient(ellipse 300px 100px at 50% 50%,#e8607a14 0,#0000 70%);border-radius:50px;box-shadow:0 0 30px #e8607a26,inset 0 0 30px #e8607a0d;display:flex;gap:7px;padding:12px 20px;position:relative;z-index:2}.dot{animation:dotTwinkle 3s ease-in-out infinite;background:#ffffff26;border:1px solid #d4a8554d;border-radius:9999px;border-radius:var(--radius-full);cursor:pointer;height:5px;padding:0;transition:all .45s cubic-bezier(.34,1.56,.64,1);width:5px}@keyframes dotTwinkle{0%,to{background:#ffffff26}50%{background:#ffffff4d}}.dot-active{animation:dotGlow 2.5s ease-in-out infinite;background:linear-gradient(90deg,#e8607a,#d4a855);background:linear-gradient(90deg,var(--color-primary),var(--color-gold));box-shadow:0 0 12px #d4a855b3,0 0 25px #e8607a80;width:28px}@keyframes dotGlow{0%,to{box-shadow:0 0 12px #d4a855b3,0 0 25px #e8607a80}50%{box-shadow:0 0 18px #d4a855e6,0 0 40px #e8607ab3}}.dot:hover:not(.dot-active){background:#ffffff59;border-color:#d4a85599;box-shadow:0 0 12px #d4a85566;transform:scale(1.5)}.heart-burst{height:0;pointer-events:none;width:0;z-index:20}.hb,.heart-burst{position:absolute}.hb{animation:hbFly 1.3s cubic-bezier(.25,.46,.45,.94) forwards;filter:drop-shadow(0 0 4px rgba(232,96,122,.6));font-size:16px;transform-origin:center}.hb-0{animation-name:hbFly0;color:#e8607a;color:var(--color-primary);filter:drop-shadow(0 0 6px rgba(232,96,122,.8))}.hb-1{animation-delay:.08s;animation-name:hbFly1;color:#f0d07a;color:var(--color-gold-light);filter:drop-shadow(0 0 5px rgba(240,208,122,.7))}.hb-2{animation-delay:.04s;animation-name:hbFly2;color:#f082a0;filter:drop-shadow(0 0 5px rgba(240,130,160,.6))}.hb-3{animation-delay:.12s;animation-name:hbFly3;color:#f5c2ce;color:var(--color-accent);filter:drop-shadow(0 0 6px rgba(245,194,206,.7))}@keyframes hbFly0{0%{opacity:1;transform:translate(0) scale(0) rotate(0deg)}65%{opacity:1}to{opacity:0;transform:translate(-32px,-62px) scale(1.2) rotate(-25deg)}}@keyframes hbFly1{0%{opacity:1;transform:translate(0) scale(0)}65%{opacity:1}to{opacity:0;transform:translate(36px,-55px) scale(1) rotate(20deg)}}@keyframes hbFly2{0%{opacity:1;transform:translate(0) scale(0)}65%{opacity:1}to{opacity:0;transform:translate(-16px,-75px) scale(.9) rotate(-10deg)}}@keyframes hbFly3{0%{opacity:1;transform:translate(0) scale(0)}65%{opacity:1}to{opacity:0;transform:translate(22px,-68px) scale(1.1) rotate(30deg)}}.empty-state{color:#f5dce48c;color:var(--color-text-muted);font-family:Jost,DM Sans,system-ui,sans-serif;font-family:var(--font-body);padding:32px;padding:var(--space-6);text-align:center}.empty-icon{font-size:3rem;margin-bottom:12px;margin-bottom:var(--space-3)}@media (max-width:760px){.carousel-stage{height:230px}.carousel-slide{height:170px;width:220px}.caption-title{font-size:1.65rem;font-size:var(--text-2xl)}.offset--1{transform:translateX(-160px) translateZ(-90px) rotateY(30deg) scale(.8)}.offset-1{transform:translateX(160px) translateZ(-90px) rotateY(-30deg) scale(.8)}.offset--2{transform:translateX(-270px) translateZ(-180px) rotateY(44deg) scale(.6)}.offset-2{transform:translateX(270px) translateZ(-180px) rotateY(-44deg) scale(.6)}.orb-a{height:280px;width:280px}.orb-b{height:220px;width:220px}.orb-c{height:250px;width:250px}.carousel-wrapper{border-radius:20px}.carousel-wrapper:before{background-size:50px 50px;border-radius:20px}.carousel-wrapper:after{border-radius:20px}}@media (max-width:520px){.offset--2,.offset-2{display:none}.carousel-stage{height:210px}.carousel-slide{height:155px;width:200px}.offset--1{transform:translateX(-140px) translateZ(-70px) rotateY(28deg) scale(.78)}.offset-1{transform:translateX(140px) translateZ(-70px) rotateY(-28deg) scale(.78)}.progress-bar{width:70%}.film-strip{display:none}.caption-title{font-size:1.65rem;font-size:var(--text-2xl)}.carousel-wrapper,.carousel-wrapper:after,.carousel-wrapper:before{border-radius:16px}}@media (max-width:360px){.carousel-slide{height:134px;width:170px}.offset--1{transform:translateX(-118px) translateZ(-60px) rotateY(28deg) scale(.76)}.offset-1{transform:translateX(118px) translateZ(-60px) rotateY(-28deg) scale(.76)}}@media (prefers-reduced-motion:reduce){.caption-area,.carousel-img,.carousel-slide,.orb,.shine-sweep{animation:none!important;transition-duration:.1s!important}}.ls-overlay{align-items:center;background:var(--color-bg);display:flex;flex-direction:column;font-family:var(--font-body);gap:28px;inset:0;justify-content:center;overflow:hidden;position:fixed;transition:opacity .8s ease,transform .8s ease;z-index:100}.ls-unlocking{opacity:0;pointer-events:none;transform:scale(1.04)}.ls-orb{animation:orbFloat 15s ease-in-out infinite alternate;border-radius:50%;filter:blur(100px);opacity:.18;pointer-events:none;position:absolute}.ls-orb-a{background:radial-gradient(circle,#e8607a,#0000 70%);height:400px;left:-100px;top:-120px;width:400px}.ls-orb-b{animation-delay:-7.5s;background:radial-gradient(circle,#d4a855,#0000 70%);bottom:-100px;height:320px;right:-80px;width:320px}@keyframes orbFloat{0%{transform:translate(0) scale(1)}to{transform:translate(30px,25px) scale(1.1)}}.ls-top{position:relative;text-align:center;z-index:2}.ls-icon{font-size:2rem;margin-bottom:8px}.ls-title{color:var(--color-accent);font-family:var(--font-display);font-size:clamp(1.8rem,5vw,2.6rem);font-style:italic;font-weight:400;line-height:1.2;margin:0 0 6px;text-shadow:0 0 30px #e8607a80}.ls-sub{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.2em;text-transform:uppercase}.ls-dots{display:flex;gap:14px;position:relative;z-index:2}.ls-dot{background:#0000;border:1.5px solid var(--color-border);border-radius:50%;height:14px;transition:all .25s cubic-bezier(.34,1.56,.64,1);width:14px}.ls-dot-filled{background:linear-gradient(135deg,var(--color-primary),var(--color-gold));border-color:var(--color-gold);box-shadow:0 0 12px #e8607ab3,0 0 24px #d4a8554d;transform:scale(1.1)}.ls-shake{animation:lsShake .4s ease}@keyframes lsShake{0%,to{transform:translateX(0)}20%{transform:translateX(-9px)}40%{transform:translateX(9px)}60%{transform:translateX(-6px)}80%{transform:translateX(6px)}}.ls-ornament{align-items:center;display:flex;gap:10px;position:relative;z-index:2}.ls-orn-line{background:linear-gradient(90deg,#0000,var(--color-gold));box-shadow:0 0 8px #d4a85566;display:block;height:1px;width:44px}.ls-orn-line-r{background:linear-gradient(270deg,#0000,var(--color-gold))}.ls-orn-heart{animation:heartPulse 2.8s ease-in-out infinite;color:var(--color-primary);font-size:13px}@keyframes heartPulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.4)}}.ls-keypad{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,72px);position:relative;z-index:2}.ls-key{-webkit-tap-highlight-color:transparent;align-items:center;background:#fff0f50a;border:1px solid var(--color-border);border-radius:50%;color:var(--color-text);cursor:pointer;display:flex;font-family:var(--font-body);font-size:1.25rem;font-weight:400;height:72px;justify-content:center;transition:all .2s cubic-bezier(.34,1.56,.64,1);width:72px}.ls-key:hover{background:#e8607a24;border-color:#e8607a80;box-shadow:0 0 20px #e8607a4d}.ls-key:active{transform:scale(.9)}.ls-key-empty{pointer-events:none;visibility:hidden}.ls-key-del{color:var(--color-text-muted);font-size:1rem}.ls-msg{color:var(--color-text-faint);font-size:var(--text-xs);letter-spacing:.15em;position:relative;text-transform:uppercase;transition:color .3s;z-index:2}.ls-msg-error{color:var(--color-primary)!important}.ls-msg-success{color:var(--color-gold)!important}@media (max-width:480px){.ls-keypad{gap:12px;grid-template-columns:repeat(3,64px)}.ls-key{font-size:1.1rem;height:64px;width:64px}}.app{align-items:center;background:radial-gradient(ellipse at 20% 20%,#e8607a14 0,#0000 50%),radial-gradient(ellipse at 80% 80%,#b432500f 0,#0000 50%),var(--color-bg);display:flex;flex-direction:column;min-height:100dvh;overflow:hidden;position:relative}.app-header{padding:var(--space-10) var(--space-8) var(--space-4);text-align:center}.app-title{color:var(--color-accent);font-family:var(--font-display);font-size:var(--text-hero);line-height:1.1;text-shadow:0 0 40px #e8607a80,0 2px 8px #0009}.app-subtitle{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:300;letter-spacing:.15em;margin-top:var(--space-2);text-transform:uppercase}.app-main{align-items:center;display:flex;flex:1 1;justify-content:center;padding:var(--space-6) var(--space-4);width:100%}.app-footer{color:var(--color-text-faint);font-size:var(--text-xs);letter-spacing:.1em;padding:var(--space-6) var(--space-8);text-transform:uppercase}.heart-icon{animation:heartbeat 1.4s ease-in-out infinite;color:var(--color-primary);display:inline-block}@keyframes heartbeat{0%,to{transform:scale(1)}14%{transform:scale(1.3)}28%{transform:scale(1)}42%{transform:scale(1.2)}70%{transform:scale(1)}}.hearts-bg{inset:0;overflow:hidden;pointer-events:none;position:fixed;z-index:0}.heart{animation:floatHeart linear infinite;color:var(--color-primary);opacity:0;position:absolute;-webkit-user-select:none;user-select:none}.heart-1{animation-delay:0s;animation-duration:14s;font-size:.8rem;left:5%}.heart-2{animation-delay:2s;animation-duration:18s;font-size:1.2rem;left:15%}.heart-3{animation-delay:4s;animation-duration:12s;font-size:.6rem;left:25%}.heart-4{animation-delay:1s;animation-duration:16s;font-size:1rem;left:35%}.heart-5{animation-delay:6s;animation-duration:20s;font-size:.7rem;left:45%}.heart-6{animation-delay:3s;animation-duration:15s;font-size:1.1rem;left:55%}.heart-7{animation-delay:5s;animation-duration:17s;font-size:.9rem;left:65%}.heart-8{animation-delay:7s;animation-duration:13s;font-size:.6rem;left:75%}.heart-9{animation-delay:2.5s;animation-duration:19s;font-size:1.3rem;left:82%}.heart-10{animation-delay:8s;animation-duration:11s;font-size:.8rem;left:90%}.heart-11{animation-delay:9s;animation-duration:22s;font-size:.5rem;left:10%}.heart-12{animation-delay:1.5s;animation-duration:16s;font-size:1.4rem;left:70%}@keyframes floatHeart{0%{opacity:0;transform:translateY(110vh) rotate(0deg)}10%{opacity:.4}90%{opacity:.2}to{opacity:0;transform:translateY(-10vh) rotate(1turn)}}@media (max-width:480px){.app-header{padding:var(--space-8) var(--space-4) var(--space-2)}}
/*# sourceMappingURL=main.074353b5.css.map*/