@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Space+Grotesk:wght@300;400;500;600&family=Syne:wght@400;500;600;700;800&display=swap";.edit-toolbar[data-astro-cid-fwnduiiv]{position:fixed;top:0;left:0;right:0;z-index:10001;background:#141414f2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.1);padding:.6rem 1rem;transition:transform .4s cubic-bezier(.16,1,.3,1)}.edit-toolbar[data-astro-cid-fwnduiiv].hidden{transform:translateY(-100%)}.edit-toolbar-inner[data-astro-cid-fwnduiiv]{display:flex;align-items:center;gap:.6rem;max-width:800px;margin:0 auto;flex-wrap:wrap}.edit-badge[data-astro-cid-fwnduiiv]{font-family:Space Grotesk,sans-serif;font-size:.6rem;font-weight:600;letter-spacing:.15em;color:#e50914;background:#e509141a;border:1px solid rgba(229,9,20,.3);padding:.3rem .6rem;border-radius:4px;margin-right:auto}.edit-btn[data-astro-cid-fwnduiiv]{font-family:Space Grotesk,sans-serif;font-size:.7rem;font-weight:500;padding:.4rem .8rem;border:none;border-radius:6px;cursor:pointer;transition:all .2s;letter-spacing:.02em}.edit-btn-save[data-astro-cid-fwnduiiv]{background:#d4a0b9;color:#0a0a0a}.edit-btn-save[data-astro-cid-fwnduiiv]:hover{background:#e0b3ca}.edit-btn-export[data-astro-cid-fwnduiiv]{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.15)}.edit-btn-export[data-astro-cid-fwnduiiv]:hover{background:#fff3}.edit-btn-exit[data-astro-cid-fwnduiiv]{background:transparent;color:#fff6}.edit-btn-exit[data-astro-cid-fwnduiiv]:hover{color:#fff}.edit-toast[data-astro-cid-fwnduiiv]{position:fixed;bottom:2rem;left:50%;transform:translate(-50%) translateY(20px);background:#1a1a1a;color:#fff;padding:.6rem 1.2rem;border-radius:8px;font-size:.75rem;font-family:Space Grotesk,sans-serif;opacity:0;transition:all .3s;pointer-events:none;border:1px solid rgba(255,255,255,.1);z-index:10002}.edit-toast[data-astro-cid-fwnduiiv].show{opacity:1;transform:translate(-50%) translateY(0)}[contenteditable=true]{outline:none;position:relative}[contenteditable=true]:hover{outline:1px dashed rgba(212,160,185,.4);outline-offset:4px}[contenteditable=true]:focus{outline:2px solid rgba(212,160,185,.6);outline-offset:4px}.edit-mode .reel-item,.edit-mode .netflix-card{cursor:grab}.edit-mode .reel-item:active,.edit-mode .netflix-card:active{cursor:grabbing}.dragging{opacity:.4!important}.drag-over{outline:2px dashed #d4a0b9!important;outline-offset:2px}.netflix-slider.drag-over{background:#d4a0b914!important;outline:2px dashed rgba(212,160,185,.4)!important;outline-offset:-2px;border-radius:8px;transition:background .2s}.edit-mode .reel-item:after{content:"⋮⋮";position:absolute;top:8px;right:8px;background:#000000b3;color:#fff;width:24px;height:24px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.7rem;z-index:5;pointer-events:none}.edit-mode .section-text,.edit-mode .netflix-row{opacity:1!important;transform:none!important}.edit-mode .reel-item img,.edit-mode .netflix-card-img img{cursor:pointer}.edit-mode .reel-item img:hover,.edit-mode .netflix-card-img img:hover{outline:2px dashed #c8a87d;outline-offset:2px}.edit-mode .celebration{display:block!important;position:relative!important;opacity:1!important}.edit-mode .netflix-card-img:after{content:"⋮⋮";position:absolute;top:6px;right:6px;background:#000000b3;color:#fff;width:20px;height:20px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:.6rem;z-index:5}.netflix-section[data-astro-cid-6bj7d6qm]{background:#0d0d0d;padding:4rem 0 5rem;position:relative;overflow:hidden}.netflix-header[data-astro-cid-6bj7d6qm]{display:flex;align-items:baseline;gap:1.5rem;padding:0 2rem 2.5rem}.netflix-logo[data-astro-cid-6bj7d6qm]{font-family:var(--font-heading);font-size:clamp(1.8rem,5vw,2.5rem);font-weight:700;color:#e50914;letter-spacing:.05em;text-shadow:0 2px 20px rgba(229,9,20,.2)}.netflix-for[data-astro-cid-6bj7d6qm]{font-family:var(--font-body);font-size:.7rem;color:#ffffff59;font-weight:300;letter-spacing:.15em;text-transform:uppercase}.netflix-row[data-astro-cid-6bj7d6qm]{margin-bottom:2.5rem;opacity:0;transform:translateY(40px);transition:all 1s var(--ease-out-expo)}.netflix-row[data-astro-cid-6bj7d6qm].visible{opacity:1;transform:translateY(0)}.netflix-row-title[data-astro-cid-6bj7d6qm]{font-family:var(--font-body);font-size:clamp(.85rem,2vw,1rem);font-weight:400;color:#e5e5e5;padding:0 2rem;margin-bottom:.8rem;letter-spacing:.02em}.netflix-slider[data-astro-cid-6bj7d6qm]{display:flex;gap:.6rem;overflow-x:auto;padding:.5rem 2rem 1rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.netflix-slider[data-astro-cid-6bj7d6qm]::-webkit-scrollbar{display:none}.netflix-card[data-astro-cid-6bj7d6qm]{flex:0 0 auto;width:clamp(120px,28vw,160px);scroll-snap-align:start;cursor:pointer;transition:transform .5s var(--ease-out-expo);position:relative}.netflix-card[data-astro-cid-6bj7d6qm]:hover{transform:scale(1.06);z-index:2}.netflix-card--final[data-astro-cid-6bj7d6qm]{border:1.5px solid var(--color-accent);border-radius:6px;animation:glowPulse 3s ease-in-out infinite}@keyframes glowPulse{0%,to{box-shadow:0 0 8px #d4a0b933}50%{box-shadow:0 0 25px #d4a0b966}}.netflix-card-img[data-astro-cid-6bj7d6qm]{position:relative;aspect-ratio:2/3;overflow:hidden;border-radius:4px;background:#1a1a1a}.netflix-card-img[data-astro-cid-6bj7d6qm] img[data-astro-cid-6bj7d6qm]{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out-expo)}.netflix-card[data-astro-cid-6bj7d6qm]:hover .netflix-card-img[data-astro-cid-6bj7d6qm] img[data-astro-cid-6bj7d6qm]{transform:scale(1.08)}.netflix-card-overlay[data-astro-cid-6bj7d6qm]{position:absolute;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .4s}.netflix-card[data-astro-cid-6bj7d6qm]:hover .netflix-card-overlay[data-astro-cid-6bj7d6qm]{opacity:1}.netflix-play[data-astro-cid-6bj7d6qm]{width:36px;height:36px;background:#ffffffe6;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:#141414;padding-left:2px}.netflix-card-info[data-astro-cid-6bj7d6qm]{padding:.5rem .15rem;display:flex;flex-direction:column;gap:.15rem}.netflix-card-title[data-astro-cid-6bj7d6qm]{font-family:var(--font-body);font-size:.7rem;font-weight:400;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.netflix-card-sub[data-astro-cid-6bj7d6qm]{font-family:var(--font-body);font-size:.6rem;color:#ffffff59;font-weight:300}.netflix-modal[data-astro-cid-6bj7d6qm]{display:none;position:fixed;inset:0;z-index:200;background:#000000e0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);align-items:center;justify-content:center;padding:2rem}.netflix-modal[data-astro-cid-6bj7d6qm].active{display:flex;animation:modalIn .5s var(--ease-out-expo)}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.netflix-modal-content[data-astro-cid-6bj7d6qm]{background:#141414;border-radius:10px;max-width:380px;width:100%;overflow:hidden;position:relative;box-shadow:0 30px 80px #000c}.netflix-modal-img[data-astro-cid-6bj7d6qm]{width:100%;aspect-ratio:4/3;object-fit:cover}.netflix-modal-body[data-astro-cid-6bj7d6qm]{padding:1.5rem;text-align:center}.netflix-modal-body[data-astro-cid-6bj7d6qm] h3[data-astro-cid-6bj7d6qm]{font-family:var(--font-display);font-size:1.3rem;font-weight:400;color:#fff;margin-bottom:.4rem}.netflix-modal-body[data-astro-cid-6bj7d6qm] p[data-astro-cid-6bj7d6qm]{font-size:.85rem;color:#ffffff80;font-weight:300;line-height:1.5}.netflix-modal-close[data-astro-cid-6bj7d6qm]{position:absolute;top:.8rem;right:.8rem;width:32px;height:32px;background:#00000080;backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.1);border-radius:50%;color:#fff;font-size:.9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:5;transition:background .3s}.netflix-modal-close[data-astro-cid-6bj7d6qm]:hover{background:#ffffff26}:root{--color-bg: #080808;--color-text: #f0ece6;--color-accent: #d4a0b9;--color-accent-2: #b86d8a;--color-gold: #c8a87d;--color-cream: #f5f0e8;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Space Grotesk", system-ui, sans-serif;--font-heading: "Syne", sans-serif;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1)}*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:hidden;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);overflow-x:hidden;cursor:default}::selection{background:var(--color-accent);color:var(--color-bg)}.loader{position:fixed;inset:0;z-index:9999;background:var(--color-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity .8s var(--ease-out-expo),visibility .8s}.loader.hidden{opacity:0;visibility:hidden;pointer-events:none}.loader-text{font-family:var(--font-display);font-size:clamp(1.5rem,4vw,2.5rem);font-weight:300;font-style:italic;color:var(--color-accent);opacity:0;animation:loaderFade 2s ease forwards}.loader-line{width:60px;height:1px;background:var(--color-accent);margin-top:1.5rem;transform:scaleX(0);animation:loaderLine 2s var(--ease-out-expo) forwards .3s}@keyframes loaderFade{0%{opacity:0;transform:translateY(10px)}50%{opacity:1;transform:translateY(0)}to{opacity:1}}@keyframes loaderLine{to{transform:scaleX(1)}}@media(hover:hover)and (pointer:fine){body{cursor:none}.cursor-dot{position:fixed;width:8px;height:8px;background:var(--color-accent);border-radius:50%;pointer-events:none;z-index:10000;transform:translate(-50%,-50%);transition:transform .15s ease,opacity .3s;mix-blend-mode:difference}.cursor-ring{position:fixed;width:40px;height:40px;border:1px solid rgba(212,160,185,.4);border-radius:50%;pointer-events:none;z-index:10000;transform:translate(-50%,-50%);transition:width .4s var(--ease-out-expo),height .4s var(--ease-out-expo),border-color .3s}.cursor-ring.hovering{width:60px;height:60px;border-color:var(--color-accent)}}@media(hover:none){.cursor-dot,.cursor-ring{display:none!important}}.grain{position:fixed;inset:0;pointer-events:none;z-index:9998;opacity:.03;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");background-repeat:repeat;background-size:256px}.nav-dots{position:fixed;right:1.2rem;top:50%;transform:translateY(-50%);z-index:100;display:flex;flex-direction:column;gap:.8rem;opacity:0;transition:opacity .6s ease}.nav-dots.visible{opacity:1}.nav-dot{width:8px;height:8px;border-radius:50%;background:#ffffff26;border:none;cursor:pointer;transition:all .4s var(--ease-out-expo);padding:0}.nav-dot.active{background:var(--color-accent);transform:scale(1.4)}.hero{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;position:relative}.hero h1{font-family:var(--font-display);font-size:clamp(3.5rem,12vw,8rem);font-weight:300;letter-spacing:-.02em;line-height:1;opacity:0;animation:heroReveal 1.8s var(--ease-out-expo) forwards 2.5s}.hero h1 .char{display:inline-block;opacity:0;transform:translateY(60px) rotate(5deg);animation:charReveal 1s var(--ease-out-expo) forwards}.hero .subtitle{font-family:var(--font-display);font-style:italic;font-size:clamp(1rem,3vw,1.6rem);font-weight:300;color:var(--color-accent);margin-top:.8rem;opacity:0;animation:fadeUp 1.5s var(--ease-out-expo) forwards 3.2s}.hero .line-divider{width:40px;height:1px;background:var(--color-gold);margin:1.5rem auto 0;opacity:0;transform:scaleX(0);animation:lineGrow 1.2s var(--ease-out-expo) forwards 3.5s}.scroll-hint{position:absolute;bottom:2.5rem;opacity:0;animation:fadeUp 1.2s var(--ease-out-expo) forwards 4s;font-size:.7rem;color:#ffffff4d;letter-spacing:.25em;text-transform:uppercase;font-family:var(--font-body);font-weight:300}.scroll-hint .arrow{display:block;margin-top:.8rem;animation:scrollBounce 2.5s ease infinite;font-size:1rem}.story-section{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:6rem 2rem;position:relative;overflow:hidden}.story-section:before{content:"";position:absolute;top:0;left:50%;width:1px;height:100%;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.05) 50%,transparent)}.story-section .section-text{max-width:580px;opacity:0;transform:translateY(60px);transition:all 1.2s var(--ease-out-expo)}.story-section .section-text.visible{opacity:1;transform:translateY(0)}.story-section .section-number{font-family:var(--font-heading);font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent);margin-bottom:1.5rem;font-weight:500}.story-section h2{font-family:var(--font-display);font-size:clamp(2rem,6vw,3.5rem);font-weight:300;margin-bottom:1.5rem;color:var(--color-cream);line-height:1.15}.story-section p{font-family:var(--font-body);font-size:clamp(.95rem,2vw,1.05rem);line-height:1.9;font-weight:300;color:#f0ece699}.letter-section{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:6rem 1.5rem;position:relative}.letter-section:before{content:'"';position:absolute;font-family:var(--font-display);font-size:20rem;color:#d4a0b908;top:10%;left:5%;pointer-events:none}.envelope{position:relative;width:min(90vw,480px);cursor:pointer;transition:transform .6s var(--ease-out-expo)}.envelope:hover{transform:translateY(-4px)}.envelope-body{background:linear-gradient(155deg,#c4a072,#b08d5f);border-radius:6px;padding:3rem 2rem;position:relative;box-shadow:0 30px 80px #00000080,inset 0 1px #ffffff1a}.envelope-flap{position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(155deg,#d4b88c,#c4a072);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top center;transition:transform 1s var(--ease-out-expo);z-index:3;border-radius:6px 6px 0 0}.envelope.open .envelope-flap{transform:rotateX(180deg)}.letter-paper{background:var(--color-cream);color:#1a1a1a;border-radius:3px;padding:2.5rem 2rem;font-family:var(--font-display);font-size:clamp(.95rem,2.5vw,1.1rem);line-height:2;font-weight:300;transform:translateY(0);transition:transform 1s var(--ease-out-expo) .2s;position:relative;z-index:1}.envelope.open .letter-paper{transform:translateY(-35px)}.letter-paper .dear{font-weight:400;color:var(--color-accent-2);margin-bottom:1.2rem;display:block;font-size:1.1em}.letter-paper .signature{text-align:right;margin-top:2rem;color:var(--color-accent-2);font-style:italic;font-weight:400}.tap-hint{text-align:center;margin-top:1.2rem;font-size:.7rem;color:#ffffff40;letter-spacing:.15em;text-transform:uppercase;font-family:var(--font-body);opacity:0;animation:fadeUp 1s ease forwards 1s}.gallery-section{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;overflow:hidden;position:relative}.gallery-section .section-label{font-family:var(--font-heading);font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent);margin-bottom:.8rem;font-weight:500}.gallery-section h2{font-family:var(--font-display);font-size:clamp(2rem,6vw,3.2rem);font-weight:300;color:var(--color-cream);margin-bottom:2.5rem;opacity:0;transform:translateY(30px);transition:all 1.2s var(--ease-out-expo)}.gallery-section h2.visible{opacity:1;transform:translateY(0)}.reel-container{position:relative;width:min(85vw,380px);aspect-ratio:3/4;border-radius:8px;overflow:hidden;box-shadow:0 30px 80px #0009}.reel-item{position:absolute;inset:0;opacity:0;transform:scale(1.05);transition:opacity .5s ease,transform .8s var(--ease-out-expo)}.reel-item.active{opacity:1;transform:scale(1)}.reel-item img,.reel-item video{width:100%;height:100%;object-fit:cover}.reel-progress{width:min(85vw,380px);height:2px;background:#ffffff0f;border-radius:2px;margin-top:1.5rem;overflow:hidden}.reel-progress-bar{height:100%;background:linear-gradient(90deg,var(--color-accent),var(--color-gold));border-radius:2px;width:0%;transition:width .3s linear}.reel-counter{margin-top:.6rem;font-size:.7rem;color:#ffffff4d;font-variant-numeric:tabular-nums;letter-spacing:.1em;font-family:var(--font-body)}.question-section{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;position:relative}.question-section:before{content:"";position:absolute;width:300px;height:300px;background:radial-gradient(circle,rgba(212,160,185,.08) 0%,transparent 70%);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.question-section .q-label{font-family:var(--font-heading);font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--color-gold);margin-bottom:1.5rem;font-weight:500;opacity:0;transform:translateY(20px);transition:all 1s var(--ease-out-expo)}.question-section .q-label.visible{opacity:1;transform:translateY(0)}.question-section h2{font-family:var(--font-display);font-size:clamp(2.2rem,7vw,4rem);font-weight:300;line-height:1.15;margin-bottom:2.5rem;opacity:0;transform:translateY(40px);transition:all 1.2s var(--ease-out-expo)}.question-section h2.visible{opacity:1;transform:translateY(0)}.buttons{display:flex;gap:1.5rem;flex-wrap:wrap;justify-content:center;opacity:0;transform:translateY(20px);transition:all 1s var(--ease-out-expo) .5s}.buttons.visible{opacity:1;transform:translateY(0)}.btn-yes{padding:1.1rem 3.5rem;font-family:var(--font-body);font-size:.85rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;border:none;border-radius:60px;cursor:pointer;background:linear-gradient(135deg,var(--color-accent),var(--color-accent-2));color:#fff;box-shadow:0 10px 40px #d4a0b940;transition:transform .4s var(--ease-out-expo),box-shadow .4s;position:relative;overflow:hidden}.btn-yes:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.2),transparent);opacity:0;transition:opacity .3s}.btn-yes:hover{transform:scale(1.05) translateY(-2px);box-shadow:0 15px 50px #d4a0b966}.btn-yes:hover:before{opacity:1}.btn-no{padding:1.1rem 2.2rem;font-family:var(--font-body);font-size:.8rem;font-weight:400;letter-spacing:.1em;border:1px solid rgba(255,255,255,.12);border-radius:60px;cursor:pointer;background:transparent;color:#ffffff59;transition:all .3s;position:relative}.celebration{display:none;position:fixed;inset:0;z-index:9000;background:var(--color-bg);flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem}.celebration.active{display:flex;animation:celebrationIn 1s var(--ease-out-expo)}@keyframes celebrationIn{0%{opacity:0}to{opacity:1}}.celebration h2{font-family:var(--font-display);font-size:clamp(2.5rem,10vw,5rem);font-weight:300;color:var(--color-accent);animation:celebPulse 3s ease infinite}.celebration p{font-family:var(--font-body);font-size:1rem;font-weight:300;margin-top:1rem;color:#ffffff80;letter-spacing:.05em}.hearts-container{position:fixed;inset:0;pointer-events:none;z-index:9001;overflow:hidden}.heart{position:absolute;animation:floatHeart 5s ease forwards}@keyframes heroReveal{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes charReveal{to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes lineGrow{to{opacity:1;transform:scaleX(1)}}@keyframes scrollBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes celebPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.03);opacity:.9}}@keyframes floatHeart{0%{transform:translateY(100vh) rotate(0) scale(.5);opacity:1}to{transform:translateY(-20vh) rotate(30deg) scale(1);opacity:0}}.particles{position:fixed;inset:0;pointer-events:none;z-index:-1}.particle{position:absolute;width:1.5px;height:1.5px;background:#d4a0b933;border-radius:50%;animation:floatParticle 20s infinite linear}@keyframes floatParticle{0%{transform:translateY(100vh) scale(0);opacity:0}10%{opacity:.8}90%{opacity:.8}to{transform:translateY(-10vh) scale(1);opacity:0}}.marquee-section{padding:3rem 0;overflow:hidden;border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.04)}.marquee-track{display:flex;gap:3rem;animation:marqueeScroll 25s linear infinite;width:max-content}.marquee-track span{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:300;font-style:italic;white-space:nowrap;color:#d4a0b91f}.marquee-track .dot{color:var(--color-gold);opacity:.3;font-style:normal}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(max-width:480px){.nav-dots{right:.5rem;gap:.55rem}.nav-dot{width:5px;height:5px}.hero{padding:2rem 1.5rem;padding-top:env(safe-area-inset-top,2rem)}.scroll-hint{bottom:calc(2rem + env(safe-area-inset-bottom,0px))}.story-section{padding:4rem 1.8rem;text-align:center}.story-section .section-text{display:flex;flex-direction:column;align-items:center}.story-section .section-number{text-align:center}.story-section h2{text-align:center;font-size:clamp(1.8rem,7vw,2.8rem)}.story-section p{text-align:center;font-size:.95rem;line-height:1.8}.story-section:before{display:none}.letter-section{padding:4rem 1.2rem}.envelope{width:min(92vw,400px)}.envelope-body{padding:2.5rem 1.5rem}.envelope-flap{height:40%}.letter-paper{padding:1.8rem 1.4rem;font-size:.92rem;line-height:1.85}.letter-section:before{font-size:12rem}.gallery-section{padding:3rem 1rem}.gallery-section h2{font-size:clamp(1.6rem,6vw,2.5rem);margin-bottom:1.5rem}.reel-container,.reel-progress{width:min(90vw,360px)}.marquee-section{padding:2rem 0}.marquee-track span{font-size:1.5rem}.marquee-track{gap:1.5rem}.question-section{padding:3rem 1.5rem;padding-bottom:calc(3rem + env(safe-area-inset-bottom,0px))}.question-section h2{font-size:clamp(1.8rem,8vw,3rem);margin-bottom:2rem}.btn-yes{padding:1rem 2.8rem;font-size:.8rem}.btn-no{padding:1rem 1.8rem;font-size:.75rem}.celebration h2{font-size:clamp(2rem,10vw,3.5rem)}.celebration p{font-size:.9rem;padding:0 1rem}}
