@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&family=Sacramento&display=swap";:root{--ink:#0e0716;--cream:#fff6fa;--pink:#ff6bb5;--hot:#ea318d;--violet:#a77bff;--lav:#e2d2ff}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{background:var(--ink);color:var(--cream);margin:0;font-family:DM Sans,sans-serif;overflow-x:hidden}.app{isolation:isolate;background:radial-gradient(circle at 50% 22%,#321438 0,#150b20 35%,#0e0716 75%);min-height:100vh;position:relative}.noise{opacity:.24;pointer-events:none;z-index:8;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E");position:fixed;inset:0}.aurora{filter:blur(70px);pointer-events:none;opacity:.35;z-index:-1;border-radius:50%;position:fixed}.aurora-one{background:#dc3f9b;width:35vw;height:35vw;animation:13s ease-in-out infinite alternate drift;top:22vh;left:-16vw}.aurora-two{background:#7448d7;width:33vw;height:33vw;animation:16s ease-in-out infinite alternate-reverse drift;top:60vh;right:-13vw}.topbar{mix-blend-mode:screen;z-index:10;letter-spacing:.14em;text-transform:uppercase;color:#fae8f4;justify-content:space-between;align-items:center;height:74px;padding:0 5.5vw;font:500 10px DM Mono,monospace;display:flex;position:fixed;top:0;left:0;right:0}.mini-mark{color:inherit;letter-spacing:.09em;text-decoration:none}.mini-mark span{color:#ff71b5;vertical-align:-2px;margin-right:5px;font-size:16px}.scroll-meter{background:#ffffff2f;width:120px;height:1px;margin-left:auto;margin-right:25px}.scroll-meter i{background:linear-gradient(90deg,#ff75bd,#c49aff);height:100%;transition:width .55s;display:block}.scene{min-height:100svh;padding:110px 8vw 70px;display:flex;position:relative;overflow:hidden}.eyebrow{color:#f9acd0;letter-spacing:.2em;margin:0;font:500 10px DM Mono,monospace}.opening{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100svh}.opening:after{content:"";border:1px solid #fbc4dd24;border-radius:50%;position:absolute;inset:16% 18%;transform:rotate(-20deg);box-shadow:inset 0 0 90px #ff53aa10}.intro-title{letter-spacing:-.06em;z-index:1;margin:21px 0 24px;font:500 clamp(3.25rem,8vw,7.5rem)/.92 Playfair Display,serif;position:relative}.intro-title em{color:#ff8fc9;font-weight:500}.intro-copy{color:#e4c8dc;z-index:1;max-width:340px;margin:0;font-size:15px;line-height:1.55;position:relative}.scroll-hint{color:#e9afcf;text-transform:uppercase;letter-spacing:.14em;flex-direction:column;align-items:center;gap:7px;font:10px DM Mono,monospace;display:flex;position:absolute;bottom:38px}.scroll-hint svg{fill:none;stroke:currentColor;stroke-width:1.3px;width:17px;animation:1.8s ease-in-out infinite bob}.orbital{border:1px solid #fff2fa25;border-radius:50%;position:absolute}.orbital-a{width:85vw;height:32vw;transform:rotate(25deg)}.orbital-b{width:70vw;height:27vw;transform:rotate(-48deg)}.star{color:#ffd5ed;filter:drop-shadow(0 0 11px #ff7fc4);font-size:20px;animation:2.4s infinite alternate twinkle;position:absolute}.s1{top:25%;left:19%}.s2{font-size:14px;animation-delay:-1.3s;bottom:29%;right:19%}.s3{font-size:10px;animation-delay:-.4s;top:20%;right:27%}.scene-note{background:linear-gradient(155deg,#190c22 0%,#27102c 70%,#0e0716);justify-content:center;align-items:center}.ribbon{text-align:center;color:#351036;text-transform:uppercase;letter-spacing:.24em;white-space:nowrap;background:#ff83c4;padding:12px 0;font:500 10px DM Mono,monospace;position:absolute;top:24%;left:-7%;right:-7%;transform:rotate(-7deg);box-shadow:0 5px 20px #0004}.ribbon span{margin:0 22px}.note-card{z-index:1;color:#210b28;background:#fff0f7;width:min(440px,83vw);min-height:365px;padding:56px 44px 38px;position:relative;transform:rotate(3deg);box-shadow:15px 18px #8d3c7940,0 26px 45px #0007}.note-card:before{content:"";border:1px solid #db7eb155;position:absolute;inset:8px}.card-number{letter-spacing:.16em;color:#a24678;font:10px DM Mono,monospace;position:absolute;top:25px;left:30px}.handwritten{max-width:330px;margin:27px 0;font:clamp(2.6rem,5.8vw,4.5rem)/.85 Sacramento,cursive}.card-line{background:#e95d9d;width:52px;height:2px;margin:29px 0 17px}.tiny-copy{letter-spacing:.08em;color:#7f4769;font:500 9px/1.7 DM Mono,monospace}.star-sticker{color:#fff3f9;background:#e63d91;border-radius:50%;place-items:center;width:68px;height:68px;font:31px Playfair Display;display:grid;position:absolute;bottom:28px;right:-23px;transform:rotate(-11deg);box-shadow:5px 8px #42112833}.side-caption{color:#f5acd1;letter-spacing:.1em;text-transform:uppercase;font:500 11px/1.5 DM Mono,monospace;position:absolute;bottom:13%;right:10vw}.scene-wishes{background:radial-gradient(circle at 75%,#42225c 0,#170b23 43%,#0e0716 82%);justify-content:center;align-items:center;padding:100px 7vw 60px}.wishes-copy{z-index:2;position:relative}.wishes-copy h2{letter-spacing:-.05em;margin:18px 0 0;font:500 clamp(2.4rem,4.4vw,4.6rem)/1.02 Playfair Display,serif}.wishes-copy h2 span{color:#e4b8ff;font-style:italic}.floating-words{pointer-events:none;position:absolute;inset:0}.word{color:#f8cfef;letter-spacing:.07em;text-transform:uppercase;transform:rotate(var(--r));border:1px solid #f9d0ff5c;border-radius:50%;padding:10px 14px;font:10px DM Mono,monospace;position:absolute}.word-one{top:24%;right:13%;transform:rotate(11deg)}.word-two{bottom:18%;right:24%;transform:rotate(-8deg)}.word-three{bottom:10%;left:10%;transform:rotate(9deg)}.word-four{top:18%;left:15%;transform:rotate(-10deg)}.flower{opacity:.82;pointer-events:none;width:140px;height:140px;position:absolute}.flower i{transform-origin:18px 70px;background:linear-gradient(145deg,#ff91c8,#d650a2);border-radius:50% 50% 10px;width:37px;height:83px;position:absolute;top:0;left:52px}.flower i:first-child{transform:rotate(0)}.flower i:nth-child(2){transform:rotate(90deg)}.flower i:nth-child(3){transform:rotate(180deg)}.flower i:nth-child(4){transform:rotate(270deg)}.flower b{background:#ffd283;border-radius:50%;width:37px;height:37px;position:absolute;top:51px;left:51px;box-shadow:0 0 20px #ffd28399}.flower-one{top:12%;right:-35px;transform:rotate(22deg)}.flower-two{bottom:8%;left:-50px;transform:scale(.55)rotate(-20deg)}.scene3-layout-grid{z-index:2;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(24px,4vw,56px);width:100%;max-width:1240px;margin:0 auto;display:grid;position:relative}.scene3-layout-grid .wishes-copy{z-index:2;position:relative}.scene3-deck-column{z-index:3;perspective:1200px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.scene3-deck-stage{width:230px;height:308px;transform-style:preserve-3d;margin:0 auto;position:relative}.scene3-photo-card{transform-origin:50% 90%;cursor:pointer;-webkit-user-select:none;user-select:none;will-change:transform;touch-action:manipulation;background:linear-gradient(155deg,#241130f5 0%,#12091afa 100%);border:1px solid #ffafda61;border-radius:14px;outline:none;width:100%;height:100%;padding:6px 6px 8px;transition:transform .42s cubic-bezier(.22,1,.36,1),box-shadow .42s,opacity .42s;position:absolute;inset:0;box-shadow:0 14px 32px #00000094,0 0 0 1px #ff78c329}.scene3-photo-inner{background:#0d0615;border:1px solid #ffffff14;border-radius:10px;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.scene3-photo-img-wrap{background:#150920;flex:1;width:100%;min-height:0;position:relative;overflow:hidden}.scene3-photo-img{object-fit:cover;object-position:center 20%;pointer-events:none;width:100%;height:100%;transition:transform .45s;display:block}.scene3-photo-card-footer{letter-spacing:.12em;color:#ffb8df;background:#120819f5;border-top:1px solid #ffa0d738;justify-content:space-between;align-items:center;height:28px;padding:0 9px;font:500 9px DM Mono,monospace;display:flex}.scene3-photo-card-tag{color:#ffa4d4;font-size:8.5px}.scene3-photo-card-idx{color:#e2d2ff;font-weight:600}.scene3-card-rel-0{z-index:5;border-color:#ffbee6a6;transform:translate(0,0)rotate(-1.5deg)scale(1);box-shadow:0 20px 42px #000000ad,0 0 30px #ea318d4d,0 0 0 1.5px #ffbee680}.scene3-card-rel-1{z-index:4;opacity:.95;transform:translate3d(42px,-8px,-20px)rotate(8.5deg)scale(.95)}.scene3-card-rel-2{z-index:3;opacity:.92;transform:translate3d(-42px,-8px,-20px)rotate(-8.5deg)scale(.92)}.scene3-card-rel-3{z-index:2;opacity:.86;transform:translate3d(78px,-15px,-40px)rotate(16.5deg)scale(.86)}.scene3-card-rel-4{z-index:1;opacity:.82;transform:translate3d(-78px,-15px,-40px)rotate(-16.5deg)scale(.82)}@media (hover:hover){.scene3-photo-card.is-front:hover{transform:translate3d(0,-7px,10px)rotate(0)scale(1.02);box-shadow:0 24px 48px #000000b8,0 0 35px #ea318d73,0 0 0 2px #ffcdf0cc}.scene3-photo-card.is-front:hover .scene3-photo-img{transform:scale(1.03)}}.scene3-photo-card:focus-visible{outline:2px solid var(--pink);outline-offset:3px}.scene3-deck-controls{flex-direction:column;align-items:center;gap:8px;width:100%;margin-top:24px;display:flex}.scene3-photo-tap-btn{color:#fff4fa;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:linear-gradient(135deg,#ff6bb547,#a77bff47);border:1px solid #ffafdc99;border-radius:50px;outline:none;justify-content:center;align-items:center;gap:8px;min-width:140px;min-height:44px;padding:10px 24px;font:500 11px/1 DM Mono,monospace;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex;box-shadow:0 4px 18px #ea318d40,inset 0 1px #fff3}.scene3-photo-tap-btn:hover{background:linear-gradient(135deg,#ff6bb56b,#a77bff6b);transform:translateY(-2px);box-shadow:0 6px 22px #ea318d66}.scene3-photo-tap-btn:active{transform:translateY(1px)}.scene3-photo-tap-btn:focus-visible{outline:2px solid var(--pink);outline-offset:3px}.scene3-photo-status{align-items:center;gap:10px;font-family:DM Mono,monospace;display:flex}.scene3-photo-counter{letter-spacing:.16em;color:#ffb8df;font-size:11px;font-weight:500}.scene3-photo-hint{letter-spacing:.08em;color:#ffe1f299;font-size:9px}.scene-cake{text-align:center;background:radial-gradient(circle at 50% 60%,#582450 0,#1a0b23 49%,#0e0716 80%);flex-direction:column;justify-content:center;align-items:center}.wish-prompt{color:#ffe2f2;font:500 16px DM Sans}.make-a-wish{color:#f2a3ca;font:clamp(2.5rem,6vw,4.5rem)/.8 Sacramento,cursive;position:absolute;bottom:14%;right:12%;transform:rotate(-12deg)}.scene-countdown{text-align:center;flex-direction:column;justify-content:center;align-items:center}.single-count{color:#0000;-webkit-text-stroke:1px #f7aed0;text-shadow:0 0 35px #e8309f55;margin-top:20px;font:500 clamp(11rem,32vw,26rem)/.72 Playfair Display,serif}.count-two .single-count{color:#f37abb;-webkit-text-stroke:0;text-shadow:0 0 50px #ef5aa788}.count-one .single-count{color:#cbb4ff;-webkit-text-stroke:0;text-shadow:0 0 50px #a77bff88}.almost{color:#edc8df;margin-top:35px;font:italic clamp(1.35rem,3vw,2rem)/1.3 Playfair Display}.c-star{font-size:26px}.cs1{top:24%;left:18%}.cs2{font-size:15px;bottom:28%;right:18%}.cs3{font-size:10px;top:20%;right:22%}.finale{text-align:center;background:radial-gradient(circle at 50% 49%,#7d275e 0,#3a143d 27%,#160a21 67%,#0e0716);flex-direction:column;justify-content:center;align-items:center;min-height:110svh}.birthday{z-index:2;letter-spacing:-.075em;color:#fff6fb;text-shadow:0 0 34px #ff70b9a3;margin:23px 0 16px;font:500 clamp(4.8rem,14vw,11.7rem)/.74 Playfair Display;position:relative}.birthday span{color:#ffc0e0;font-style:italic}.final-message{z-index:2;color:#f6d5e6;font-size:15px;line-height:1.65;position:relative}.celebrate{z-index:2;color:#ffe7f4;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:#ff84c21c;border:1px solid #ffd2e84f;border-radius:50px;margin-top:23px;padding:12px 19px;font:500 10px DM Mono;transition:transform .2s,background .2s;position:relative}.celebrate:hover{background:#ff84c24a;transform:translateY(-3px)}.celebrate span{vertical-align:-2px;margin-right:4px;font-size:16px}.final-signoff{color:#e6a3c7;letter-spacing:.13em;text-transform:uppercase;font:10px DM Mono;position:absolute;bottom:32px}.final-ray{transform-origin:bottom;background:linear-gradient(#0000,#ffa0d880,#0000);width:1px;height:130vh;position:absolute}.ray-a{transform:rotate(38deg)}.ray-b{transform:rotate(-46deg)}.confetti-field{z-index:20;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti{background:#ff6cb4;width:10px;height:20px;animation:2.5s ease-in forwards confetti;position:absolute;top:-5vh}.confetti.h1{background:#b892ff;border-radius:50%}.confetti.h2{background:#ffe077;width:7px}.reveal{opacity:0;transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transform:translateY(20px)}.scene .reveal{animation:linear both reveal-on-scroll;animation-timeline:view();animation-range:entry 14% cover 38%}.delay-1{animation-delay:.12s}.delay-2{animation-delay:.24s}.delay-3{animation-delay:.36s}@keyframes reveal-on-scroll{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes drift{to{transform:translate(8vw,4vh)scale(1.15)}}@keyframes twinkle{to{opacity:.25;transform:scale(.55)rotate(45deg)}}@keyframes bob{50%{transform:translateY(6px)}}@keyframes flicker{to{transform:scale(.8,1.14)translate(2px)}}@keyframes confetti{0%{opacity:1;transform:translateY(-5vh)rotate(0)}to{opacity:0;transform:translateY(110vh)rotate(760deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.timeline{height:920vh;position:relative}.sticky-stage{isolation:isolate;background:#120819;height:100svh;position:sticky;top:0;overflow:hidden}.sticky-stage:before{content:"";background:radial-gradient(circle at calc(15% + var(--progress) * 65%) calc(30% + var(--progress) * 25%),#b9347f7a 0,transparent 24%),radial-gradient(circle at calc(75% - var(--progress) * 45%) 68%,#7350d65e 0,transparent 28%),#100716;position:absolute;inset:-20%}.timeline .scene{z-index:1;will-change:transform,opacity,filter;min-height:0;transform-style:preserve-3d;backface-visibility:hidden;position:absolute;inset:0;overflow:hidden}.timeline .scene .reveal{opacity:1;animation:none;transform:none}.timeline .opening{background:radial-gradient(circle at 50% 42%,#311337c4,#0000 48%)}.timeline .scene-note{background:linear-gradient(145deg,#150a20dd,#371536c9 60%,#160b1bd9)}.timeline .scene-wishes{background:radial-gradient(circle at 75%,#54276bd9 0,#0000 47%),linear-gradient(135deg,#180a21e8,#110716e6)}.timeline .scene-cake{background:radial-gradient(circle at 50% 58%,#6b2958e8 0,#0000 45%),linear-gradient(#170a20df,#110716e8)}.timeline .scene-countdown{background:radial-gradient(circle,#341744dd 0,#0000 43%),#100716e6}.timeline .count-two{background:radial-gradient(circle,#6b255ddd 0,#0000 44%),#100716e6}.timeline .count-one{background:radial-gradient(circle,#35357add 0,#0000 44%),#100716e6}.timeline .finale{background:radial-gradient(circle at 50% 49%,#8b305fd9 0,#3f1641dc 30%,#120719e9 70%)}.morph-blob{z-index:0;filter:blur(1px);mix-blend-mode:screen;opacity:.42;will-change:transform;border-radius:40% 60% 60% 40%/50% 42% 58% 50%;position:absolute}.blob-one{background:linear-gradient(135deg,#ff5fb4,#5e37db);width:52vw;height:52vw;animation:13s ease-in-out infinite alternate morph-a;bottom:-23vw;left:-19vw}.blob-two{background:#a176ff;width:35vw;height:35vw;animation:17s ease-in-out infinite alternate morph-b;top:-15vw;right:-9vw}.blob-three{opacity:.12;filter:blur(36px);background:#ff4da4;width:26vw;height:26vw;animation:9s ease-in-out infinite alternate-reverse morph-a;top:36%;left:37%}.timeline .ribbon{top:32%}@keyframes morph-a{0%{border-radius:40% 60% 60% 40%/50% 42% 58% 50%;transform:translate(0)rotate(0)}to{border-radius:62% 38% 42% 58%/35% 63% 37% 65%;transform:translate(11vw,-8vh)rotate(58deg)}}@keyframes morph-b{to{border-radius:48% 52% 25% 75%/66% 36% 64% 34%;transform:translate(-16vw,14vh)rotate(-75deg)}}.timeline .scene-cake .cake-wrap.cake-wrap.cake-wrap.cake-wrap--elegant{aspect-ratio:640/520!important;filter:drop-shadow(0 27px 25px #050208b8)!important;width:min(58vw,74vh,920px)!important;height:auto!important;margin:-5px 0 5px!important;transform:none!important}.elegant-cake{width:100%;height:auto;display:block;overflow:visible}.timeline .scene-cake .cake-wrap--elegant+.wish-prompt{z-index:9;position:relative;margin:8px 0 0!important}.timeline .scene-cake .make-a-wish{z-index:9;bottom:10%;right:9%}.flame-live{transform-box:fill-box;transform-origin:50% 100%;animation:1.1s ease-in-out infinite alternate flicker}@media (width<=1024px){.scene3-layout-grid{gap:3vw}.scene3-layout-grid .wishes-copy h2{font-size:clamp(2.2rem,4vw,3.8rem)}.scene3-deck-stage{width:200px;height:268px}.scene3-card-rel-1{transform:translate3d(34px,-6px,-18px)rotate(8deg)scale(.95)}.scene3-card-rel-2{transform:translate3d(-34px,-6px,-18px)rotate(-8deg)scale(.92)}.scene3-card-rel-3{transform:translate3d(64px,-12px,-36px)rotate(15deg)scale(.86)}.scene3-card-rel-4{transform:translate3d(-64px,-12px,-36px)rotate(-15deg)scale(.82)}}@media (width<=768px){.scene3-layout-grid{text-align:center;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:480px;display:flex}.scene3-layout-grid .wishes-copy h2{margin:8px 0 12px;font-size:clamp(1.9rem,6.8vw,3rem)}.scene3-deck-stage{width:175px;height:235px}.scene3-card-rel-1{transform:translate3d(26px,-5px,-15px)rotate(7deg)scale(.95)}.scene3-card-rel-2{transform:translate3d(-26px,-5px,-15px)rotate(-7deg)scale(.92)}.scene3-card-rel-3{transform:translate3d(50px,-10px,-30px)rotate(14deg)scale(.86)}.scene3-card-rel-4{transform:translate3d(-50px,-10px,-30px)rotate(-14deg)scale(.82)}.floating-words{display:none!important}}@media (width<=600px){.topbar{height:56px;padding:0 4.5vw}.mini-mark{font-size:9px}.mini-mark span{margin-right:4px;font-size:14px}.scroll-meter{width:64px;margin-left:auto;margin-right:12px}.chapter{letter-spacing:.08em;white-space:nowrap;font-size:8px}.scene{padding:72px 5vw 40px}.opening{min-height:100svh}.intro-title{letter-spacing:-.04em;margin:14px 0 16px;font-size:clamp(2.3rem,9.5vw,4rem)!important}.intro-copy{max-width:min(320px,86vw);font-size:clamp(13px,3.8vw,15px);line-height:1.5}.scroll-hint{font-size:8.5px;bottom:22px}.ribbon{padding:9px 0;font-size:8px;top:20%;left:-12%;right:-12%}.note-card{width:min(380px,86vw)!important;min-height:290px!important;padding:clamp(34px,8vw,48px) clamp(20px,6vw,36px) 26px!important}.card-number{font-size:9px;top:18px;left:20px}.handwritten{line-height:.9;margin:14px 0!important;font-size:clamp(1.85rem,6.2vw,3.2rem)!important}.card-line{width:44px;margin:18px 0 12px!important}.tiny-copy{line-height:1.6;font-size:clamp(7.5px,2.2vw,9px)!important}.star-sticker{width:52px!important;height:52px!important;font-size:24px!important;bottom:16px!important;right:-10px!important}.side-caption{font-size:9px!important;bottom:6%!important;right:5vw!important}.scene-wishes{padding:70px 4vw 35px!important}.flower-one{opacity:.45!important;top:6%!important;right:-65px!important;transform:scale(.55)rotate(22deg)!important}.flower-two{opacity:.45!important;bottom:4%!important;left:-65px!important;transform:scale(.45)rotate(-20deg)!important}.timeline .scene-cake .cake-wrap.cake-wrap.cake-wrap.cake-wrap--elegant{width:min(84vw,44vh,380px)!important;margin:0 0 6px!important}.timeline .scene-cake .cake-wrap--elegant+.wish-prompt{margin:6px 0 0!important;font-size:clamp(13px,3.6vw,15px)!important}.timeline .scene-cake .make-a-wish{font-size:clamp(2rem,7.5vw,2.8rem)!important;bottom:8%!important;right:6%!important}.single-count{margin-top:10px!important;font-size:clamp(7.5rem,26vw,13rem)!important}.almost{margin-top:20px!important;font-size:clamp(1.1rem,4vw,1.6rem)!important}.c-star.cs1{top:18%!important;left:10%!important}.c-star.cs2{bottom:20%!important;right:10%!important}.finale{min-height:100svh!important;padding:68px 5vw 35px!important}.birthday{letter-spacing:-.05em;margin:12px 0 10px!important;font-size:clamp(2.8rem,12vw,4.8rem)!important}.final-message{max-width:min(320px,86vw)!important;font-size:clamp(12px,3.5vw,14px)!important}.celebrate{min-height:44px;margin-top:18px!important;padding:10px 18px!important;font-size:9.5px!important}.final-signoff{font-size:8.5px!important;bottom:18px!important}}@media (width<=480px){.scene3-layout-grid .wishes-copy h2{margin:6px 0 8px;font-size:clamp(1.75rem,6.5vw,2.4rem)}.scene3-deck-stage{width:155px;height:208px}.scene3-card-rel-1{transform:translate3d(20px,-4px,-12px)rotate(6deg)scale(.95)}.scene3-card-rel-2{transform:translate3d(-20px,-4px,-12px)rotate(-6deg)scale(.92)}.scene3-card-rel-3{transform:translate3d(38px,-8px,-24px)rotate(12deg)scale(.86)}.scene3-card-rel-4{transform:translate3d(-38px,-8px,-24px)rotate(-12deg)scale(.82)}.scene3-deck-controls{gap:6px;margin-top:18px}.scene3-photo-tap-btn{min-height:42px;padding:9px 20px;font-size:10px}}@media (width<=360px){.scroll-meter{width:44px;margin-right:8px}.mini-mark{font-size:8.5px}.scene3-deck-stage{width:140px;height:188px}.scene3-card-rel-1{transform:translate3d(16px,-3px,-10px)rotate(5deg)scale(.95)}.scene3-card-rel-2{transform:translate3d(-16px,-3px,-10px)rotate(-5deg)scale(.92)}.scene3-card-rel-3{transform:translate3d(32px,-6px,-20px)rotate(10deg)scale(.86)}.scene3-card-rel-4{transform:translate3d(-32px,-6px,-20px)rotate(-10deg)scale(.82)}}.timeline>div>div[style*=perspective]{z-index:1;position:absolute;inset:0}.scene9{z-index:1;will-change:transform, opacity, filter;min-height:0;transform-style:preserve-3d;backface-visibility:hidden;text-align:center;background:radial-gradient(60% 40% at 50% 25%,#15041f 0%,#0000 70%),radial-gradient(45% 30% at 25% 75%,#0b0217 0%,#0000 60%),radial-gradient(40% 25% at 78% 68%,#080313 0%,#0000 55%),#030107;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.scene9-sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.scene9-atmosphere{pointer-events:none;z-index:0;position:absolute;inset:0}.scene9-ambient-star{filter:drop-shadow(0 0 2px #f9d);background:#fde8ff;border-radius:50%;animation:3.4s ease-in-out infinite alternate scene9-star-twinkle;position:absolute}@keyframes scene9-star-twinkle{0%{opacity:.12;transform:scale(.65)}to{opacity:.75;transform:scale(1.15)}}.scene9-shooting-star{opacity:0;transform-origin:0;background:linear-gradient(90deg,#0000 0%,#f8d 35%,#fff 60%,#0000 100%);border-radius:2px;width:160px;height:1.5px;animation:5.5s linear infinite scene9-shoot;position:absolute;left:-10%;transform:rotate(-16deg)}@keyframes scene9-shoot{0%{opacity:0;left:-20%}5%{opacity:.85}35%{opacity:.6}48%{opacity:0;left:120%}to{opacity:0;left:120%}}.scene9-canvas-wrap{z-index:2;width:88vw;max-width:1260px;position:relative}.scene9-writing-svg{filter:drop-shadow(0 0 32px #ff5ab452);width:100%;height:auto;display:block;overflow:visible}.scene9-hb-path{fill:none;stroke-width:6px;stroke-linecap:round;stroke-linejoin:round;opacity:.95}.scene9-name-path{fill:none;stroke-width:9.5px;stroke-linecap:round;stroke-linejoin:round;opacity:.98}.scene9-flourish-path{fill:none;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;opacity:.8}.scene9-text-glitter{opacity:0;pointer-events:none;animation:2.4s ease-in-out infinite alternate scene9-glitter-twinkle}.scene9-text-dot{fill:#fff;filter:drop-shadow(0 0 3px #ff99e2)}.scene9-text-sparkle{fill:#fff0fa;filter:drop-shadow(0 0 5px #ff77d2)}@keyframes scene9-glitter-twinkle{0%{opacity:.2;filter:drop-shadow(0 0 2px #f8c);transform:scale(.65)}50%{opacity:.95;filter:drop-shadow(0 0 6px #fff);transform:scale(1.2)}to{opacity:.35;filter:drop-shadow(0 0 3px #f9e);transform:scale(.8)}}@media (prefers-reduced-motion:reduce){.scene9-hb-path,.scene9-name-path,.scene9-flourish-path{stroke-dashoffset:0!important;opacity:1!important}.scene9-text-glitter{opacity:.85!important;animation:none!important}.scene9-pen-tip{opacity:0!important}.scene9-butterfly,.scene9-butterfly-wings{animation:none!important}.scene9-ambient-star{opacity:.45!important;animation:none!important}.scene9-shooting-star{display:none!important}}.scene9-butterflies{pointer-events:none;z-index:3;position:absolute;inset:0}.scene9-butterfly{filter:drop-shadow(0 0 8px #c8f6);width:clamp(38px,4.5vw,62px);height:auto;position:absolute}.scene9-butterfly.bf-0{animation:9s ease-in-out infinite alternate scene9-float-0;top:10%;left:4%}.scene9-butterfly.bf-1{animation:11s ease-in-out infinite alternate scene9-float-1;top:14%;right:5%}.scene9-butterfly.bf-2{animation:8s ease-in-out infinite alternate scene9-float-2;top:66%;left:3%}.scene9-butterfly.bf-3{animation:10s ease-in-out infinite alternate scene9-float-3;top:72%;right:4%}.scene9-butterfly.bf-4{animation:12s ease-in-out infinite alternate scene9-float-4;top:38%;left:1.5%}.scene9-butterfly.bf-5{animation:9.5s ease-in-out infinite alternate scene9-float-5;top:46%;right:2%}.scene9-butterfly-wings-0{transform-origin:40px 24px;animation:.55s ease-in-out infinite alternate scene9-flap}.scene9-butterfly-wings-1{transform-origin:40px 24px;animation:.7s ease-in-out infinite alternate scene9-flap}.scene9-butterfly-wings-2{transform-origin:40px 24px;animation:.48s ease-in-out infinite alternate scene9-flap}.scene9-butterfly-wings-3{transform-origin:40px 24px;animation:.62s ease-in-out infinite alternate scene9-flap}.scene9-butterfly-wings-4{transform-origin:40px 24px;animation:.58s ease-in-out infinite alternate scene9-flap}.scene9-butterfly-wings-5{transform-origin:40px 24px;animation:.66s ease-in-out infinite alternate scene9-flap}@keyframes scene9-flap{0%{transform:scaleX(1)}to{transform:scaleX(.22)}}@keyframes scene9-float-0{0%{transform:translate(0)rotate(-5deg)}33%{transform:translate(14px,-22px)rotate(3deg)}66%{transform:translate(8px,-12px)rotate(-2deg)}to{transform:translate(18px,-30px)rotate(5deg)}}@keyframes scene9-float-1{0%{transform:translate(0)rotate(4deg)}40%{transform:translate(-18px,-25px)rotate(-3deg)}to{transform:translate(-10px,-18px)rotate(6deg)}}@keyframes scene9-float-2{0%{transform:translate(0)rotate(3deg)}50%{transform:translate(20px,-28px)rotate(-4deg)}to{transform:translate(12px,-16px)rotate(2deg)}}@keyframes scene9-float-3{0%{transform:translate(0)rotate(-3deg)}45%{transform:translate(-15px,-20px)rotate(5deg)}to{transform:translate(-22px,-10px)rotate(-2deg)}}@keyframes scene9-float-4{0%{transform:translate(0)rotate(6deg)}35%{transform:translate(16px,-24px)rotate(-4deg)}to{transform:translate(8px,-32px)rotate(3deg)}}@keyframes scene9-float-5{0%{transform:translate(0)rotate(-4deg)}60%{transform:translate(-20px,-18px)rotate(5deg)}to{transform:translate(-12px,-28px)rotate(-1deg)}}.timeline .sticky-stage>div:last-child{z-index:1;position:absolute;inset:0}@media (width<=600px){.scene9-canvas-wrap{width:96vw}.scene9-hb-path{stroke-width:4.5px}.scene9-name-path{stroke-width:7.5px}.scene9-butterfly{width:clamp(26px,6vw,42px)}.scene9-butterfly.bf-0{top:6%;left:2%}.scene9-butterfly.bf-1{top:10%;right:2%}.scene9-butterfly.bf-2{top:70%;left:1%}.scene9-butterfly.bf-3{top:76%;right:2%}.scene9-butterfly.bf-4{top:36%;left:1%}.scene9-butterfly.bf-5{top:48%;right:1%}}@media (width<=380px){.scene9-canvas-wrap{width:99vw}}
