@import "https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;600;700;900&family=Montserrat:wght@400;500;600&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#fff;background:#05030b;font-family:Montserrat,Noto Serif SC,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#05030b;margin:0;overflow-x:hidden}button,a{font:inherit;-webkit-tap-highlight-color:transparent}button{color:inherit;appearance:none}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible{outline-offset:4px;outline:2px solid #ff72b6}.experience{--pink:#ff4fa3;--violet:#8c5dff;background:radial-gradient(circle at 50% 25%,#241247 0,#0b0718 28%,#05030b 62%);min-height:100vh;position:relative;overflow:hidden}.noise{z-index:20;pointer-events:none;opacity:.06;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='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");position:fixed;inset:0}.cursor-glow{z-index:2;pointer-events:none;background:radial-gradient(circle,#9e58ff29,#0000 66%);border-radius:50%;width:360px;height:360px;margin:-180px;transition:transform 80ms linear;position:fixed;top:-200px;left:-200px}.stars{pointer-events:none;z-index:1;position:fixed;inset:0}.stars i{background:#fff;border-radius:50%;animation:8s ease-in-out infinite twinkle,12s ease-in-out infinite float;position:absolute;box-shadow:0 0 8px #a987ff}@keyframes twinkle{0%,to{opacity:.15;transform:scale(.7)}50%{opacity:.9;transform:scale(1.35)}}@keyframes float{50%{margin-top:-18px}}.reading-progress{z-index:30;transform-origin:0;background:linear-gradient(90deg,#6de8ff,#b76cff,#ff4fa3);width:100%;height:2px;animation:linear readProgress;animation-timeline:scroll(root);position:fixed;top:0;left:0;transform:scaleX(0);box-shadow:0 0 14px #ff4fa3}@keyframes readProgress{to{transform:scaleX(1)}}.aurora{z-index:0;pointer-events:none;opacity:.35;position:fixed;inset:0;overflow:hidden}.aurora i{filter:blur(80px);mix-blend-mode:screen;border-radius:50%;width:75vw;height:28vw;animation:16s ease-in-out infinite alternate auroraFlow;position:absolute}.aurora i:first-child{background:#663aff3d;top:18%;left:-18vw}.aurora i:nth-child(2){background:#ff2f9c33;animation-delay:-6s;top:48%;right:-20vw}.aurora i:nth-child(3){background:#1dd2ff24;animation-delay:-11s;bottom:-15%;left:20vw}@keyframes auroraFlow{to{transform:translate(16vw,12vh)rotate(14deg)scale(1.2)}}.meteors{z-index:2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.meteors i{filter:drop-shadow(0 0 5px #fff);opacity:0;background:linear-gradient(90deg,#fffffff2,#b37bff59,#0000);width:120px;height:1px;animation:linear infinite meteor;position:absolute;transform:rotate(-32deg)translate(-160px)}@keyframes meteor{0%,72%{opacity:0;transform:rotate(-32deg)translate(-180px)}74%{opacity:1}to{opacity:0;transform:rotate(-32deg)translate(70vw)}}.click-heart{z-index:45;pointer-events:none;color:#ff73b6;text-shadow:0 0 14px #ff3f9e;font-size:20px;animation:1.2s ease-out forwards heartBloom;position:fixed;transform:translate(-50%,-50%)}@keyframes heartBloom{to{opacity:0;transform:translate(calc(-50% + var(--drift)), -110px) rotate(24deg) scale(1.8)}}.click-heart-enter-active{transition:all .15s}.click-heart-enter-from{opacity:0;transform:scale(.2)}.nav{z-index:8;color:#c9bedf;letter-spacing:.18em;align-items:center;gap:20px;padding:26px clamp(24px,5vw,74px);font-size:10px;display:flex;position:absolute;top:0;left:0;right:0}.monogram{color:#fff;letter-spacing:.08em;font:700 18px Noto Serif SC;text-decoration:none}.monogram span{color:var(--pink)}.nav-line{background:linear-gradient(90deg,#9c88c8,#0000);flex:1;max-width:90px;height:1px}.nav p{margin:0}.sound-wave{align-items:center;gap:3px;height:18px;margin-left:auto;display:flex}.sound-wave i{background:var(--pink);border-radius:2px;width:2px;height:6px;animation:1s ease-in-out infinite alternate wave}.sound-wave i:nth-child(2){animation-delay:.2s}.sound-wave i:nth-child(3){animation-delay:.4s}.sound-wave i:nth-child(4){animation-delay:.6s}@keyframes wave{to{height:18px}}.hero{text-align:center;isolation:isolate;flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:110px 20px 80px;display:flex;position:relative}.hero:after{content:"";z-index:-1;background:linear-gradient(#0000,#08040f);height:28%;position:absolute;inset:auto 0 0}.hero-image{z-index:-3;filter:saturate(.82);background:linear-gradient(#05030b61,#05030b94),url(/cosmic-heart.png) 50%/cover;animation:10s ease-in-out infinite alternate breathe;position:absolute;inset:0}@keyframes breathe{to{filter:saturate(1.05)brightness(1.08);transform:scale(1.06)}}.hero:before{content:"";z-index:-2;background:radial-gradient(circle,#0000 8%,#05030b1a 45%,#05030bd1 100%);position:absolute;inset:0}.heart-canvas{z-index:-1;pointer-events:auto;mix-blend-mode:screen;opacity:.92;filter:saturate(1.2);width:100%;height:100%;position:absolute;inset:0}.eyebrow{letter-spacing:.4em;color:#e6d9ff;align-items:center;gap:13px;margin-bottom:25px;font-size:10px;animation:1s both fadeDown;display:flex}.eyebrow span{background:linear-gradient(90deg,transparent,var(--pink));width:34px;height:1px}.eyebrow span:last-child{transform:scaleX(-1)}.hero h1{text-shadow:0 0 50px #ba74ff66;margin:0;font-family:Noto Serif SC,serif;line-height:.92}.hero .small{letter-spacing:.6em;color:#f4dfff;margin-bottom:14px;font-size:clamp(16px,2vw,22px);font-weight:400;display:block}.name{letter-spacing:.06em;background:linear-gradient(110deg,#fff 10%,#f8c9ff 36%,#a989ff 58%,#fff 82%) 0 0/200%;color:#0000;-webkit-background-clip:text;font-size:clamp(70px,14vw,170px);font-weight:900;animation:4.5s linear infinite shine,1.2s cubic-bezier(.2,.8,.2,1) .15s both nameIn;display:block;position:relative}.name:after{content:attr(data-text);z-index:-1;color:#0000;-webkit-text-stroke:16px #ba5eff0f;filter:blur(12px);position:absolute;inset:0}@keyframes shine{to{background-position:-200%}}@keyframes nameIn{0%{opacity:0;filter:blur(18px);transform:translateY(40px)scale(.92)}}.hero-copy{color:#dfd7ed;letter-spacing:.18em;margin:28px 0 34px;font:400 clamp(14px,1.5vw,18px)/2 Noto Serif SC;animation:1s .5s both fadeDown}@keyframes fadeDown{0%{opacity:0;transform:translateY(-18px)}}.start-button{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);cursor:pointer;background:#140a2685;border:1px solid #ffffff4d;border-radius:999px;align-items:center;gap:26px;padding:8px 8px 8px 28px;transition:all .4s;animation:1s .8s both fadeDown,2.5s 2s infinite pulseRing;display:flex;position:relative}.start-button:hover{border-color:var(--pink);transform:translateY(-4px);box-shadow:0 10px 40px #ff4fa347}.start-button span{letter-spacing:.2em;font-size:12px}.start-button b{background:linear-gradient(135deg,var(--pink),var(--violet));border-radius:50%;place-items:center;width:43px;height:43px;font-size:18px;display:grid}@keyframes pulseRing{50%{box-shadow:0 0 0 11px #0000}}.scroll-cue{color:#877d9c;letter-spacing:.28em;flex-direction:column;align-items:center;gap:10px;font-size:8px;display:flex;position:absolute;bottom:28px}.scroll-cue i{background:linear-gradient(var(--pink),transparent);width:1px;height:34px;animation:1.6s infinite scroll}@keyframes scroll{0%{transform-origin:top;transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom}to{transform-origin:bottom;transform:scaleY(0)}}.orbit{border:1px solid #b18fff33;border-radius:50%;animation:16s linear infinite rotate;position:absolute}.orbit-one{width:min(76vw,850px);height:min(32vw,360px);transform:rotate(-12deg)}.orbit-two{width:min(59vw,680px);height:min(48vw,530px);animation-duration:23s;animation-direction:reverse}.orbit i{width:8px;height:8px;box-shadow:0 0 18px 5px var(--pink);background:#fff;border-radius:50%;position:absolute;top:-4px;left:50%}@keyframes rotate{to{transform:rotate(348deg)}}.letter-section,.moments,.promise{z-index:3;padding:130px clamp(22px,7vw,110px);position:relative}.letter-section{background:radial-gradient(circle,#241047 0,#090412 53%);grid-template-columns:80px minmax(0,850px);justify-content:center;gap:36px;display:grid}.section-index{color:#766b8d;letter-spacing:.28em;font-size:9px}.letter-card{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:linear-gradient(135deg,#ffffff14,#ffffff06);border:1px solid #ffffff21;border-radius:3px;min-height:500px;padding:clamp(36px,7vw,88px);position:relative;overflow:hidden;box-shadow:0 40px 100px #00000061}.letter-card:before,.letter-card:after{content:"";border-color:#ff7bc1b3;width:50px;height:50px;position:absolute}.letter-card:before{border-top:1px solid;border-left:1px solid;top:18px;left:18px}.letter-card:after{border-bottom:1px solid;border-right:1px solid;bottom:18px;right:18px}.card-glow{filter:blur(70px);background:#a151ff3d;border-radius:50%;width:320px;height:320px;position:absolute;top:-120px;right:-120px}.label{color:#c79bff;letter-spacing:.4em;font-size:9px}.letter-card h2{letter-spacing:.05em;max-width:690px;margin:28px 0;font:600 clamp(28px,4.3vw,50px)/1.55 Noto Serif SC}.body-copy{color:#bdb4cc;letter-spacing:.08em;max-width:680px;font:400 14px/2.2 Noto Serif SC}.seal{cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;margin-top:36px;display:flex}.seal span{background:linear-gradient(145deg,#ff72ae,#7a3ce4);border-radius:50%;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 0 26px #ff4fa373}.seal small{color:#dbd4e5;letter-spacing:.12em}.letter-card blockquote{border-left:2px solid var(--pink);color:#f8e9ff;background:#ffffff0a;margin:26px 0 0;padding:18px 24px;font:16px/2 Noto Serif SC}.letter-enter-active,.letter-leave-active{transition:all .5s}.letter-enter-from,.letter-leave-to{opacity:0;transform:translateY(-15px)}.moments{background:#08050f}.section-heading{justify-content:space-between;align-items:flex-start;max-width:1180px;margin:0 auto 70px;display:flex}.section-heading p{color:#9b79d2;letter-spacing:.35em;font-size:9px}.section-heading h2,.promise h2{margin:18px 0 0;font:600 clamp(38px,6vw,76px)/1.25 Noto Serif SC}.section-heading em,.promise em{color:#bca0ef;font-weight:400}.section-heading>span{color:#766b8d;letter-spacing:.28em;font-size:9px}.moment-grid{grid-template-columns:repeat(3,1fr);gap:18px;max-width:1180px;margin:auto;display:grid}.moment-grid article{background:linear-gradient(145deg,#8048cd1f,#ffffff05);border:1px solid #ffffff1a;min-height:350px;padding:30px;transition:all .5s;position:relative;overflow:hidden}.moment-grid article:hover{background:linear-gradient(145deg,#cf409a2e,#5a39b417);border-color:#ff5ca98c;transform:translateY(-12px);box-shadow:0 30px 70px #00000059}.moment-grid article>span{color:#725b96;font-size:10px}.moment-grid h3{margin:62px 0 18px;font:600 25px Noto Serif SC}.moment-grid p{color:#9e95ad;font:13px/2 Noto Serif SC}.moment-grid b{color:#594f6b;letter-spacing:.25em;font-size:7px;position:absolute;bottom:25px}.mini-orbit{border:1px solid #b278ff38;border-radius:50%;width:140px;height:70px;position:absolute;top:25px;right:-35px;transform:rotate(-28deg)}.mini-orbit i{background:var(--pink);width:5px;height:5px;box-shadow:0 0 13px var(--pink);border-radius:50%;position:absolute;top:-3px;left:60%}.promise{text-align:center;background:radial-gradient(circle at 50% 48%,#37134b 0,#13081f 26%,#05030b 63%);flex-direction:column;justify-content:center;align-items:center;min-height:850px;display:flex}.promise>.section-index{position:absolute;top:100px;right:8vw}.heart-stage{width:140px;height:115px;margin-bottom:30px;position:relative}.heart-stage span{z-index:2;color:#ff62ad;filter:drop-shadow(0 0 18px #ff3d9b);font-size:72px;animation:1.5s infinite heartBeat;position:relative}.heart-stage i{border:1px solid #ff5baa5c;border-radius:50%;animation:2.6s infinite halo;position:absolute;inset:10px}.heart-stage i:nth-child(3){animation-delay:.8s}.heart-stage i:nth-child(4){animation-delay:1.6s}@keyframes heartBeat{15%{transform:scale(1.15)}30%{transform:scale(1)}45%{transform:scale(1.12)}}@keyframes halo{to{opacity:0;transform:scale(2)}}.promise h2{max-width:920px}.promise-copy{color:#a99fb7;letter-spacing:.12em;margin:26px 0 35px;font:14px/2 Noto Serif SC}.choices{align-items:center;gap:18px;min-height:90px;display:flex}.choices button{cursor:pointer;border-radius:999px;transition:all .35s}.yes{background:linear-gradient(120deg,#f0449b,#8841df);border:0;align-items:center;gap:30px;padding:8px 8px 8px 34px;display:flex;box-shadow:0 15px 45px #f23e984d}.yes b{background:#ffffff2e;border-radius:50%;place-items:center;width:43px;height:43px;display:grid}.yes:hover{transform:scale(1.08);box-shadow:0 18px 60px #f23e9880}.no{color:#aca1b8;background:#ffffff0a;border:1px solid #fff3;min-width:126px;padding:17px 24px}.celebration{z-index:50;text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:radial-gradient(circle,#4f1875f0,#05030bfa 65%);flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.celebration>p{color:#d3a5ff;letter-spacing:.5em;font-size:10px}.celebration h2{margin:18px 0;font:700 clamp(48px,9vw,110px)/1.18 Noto Serif SC}.celebration h2 em{color:#f4b9ff;font-weight:400}.big-heart{color:var(--pink);filter:drop-shadow(0 0 25px var(--pink));font-size:55px;animation:1.5s infinite heartBeat}.celebration small{color:#b7abc5;letter-spacing:.15em;margin-top:20px}.close{cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:50%;width:42px;height:42px;font-size:24px;position:absolute;top:30px;right:35px}.celebrate-enter-active,.celebrate-leave-active{transition:all .7s}.celebrate-enter-from,.celebrate-leave-to{opacity:0;filter:blur(20px);transform:scale(1.08)}.burst{pointer-events:none;position:absolute;inset:50%}.burst i{--a:calc(var(--i)*9deg);background:hsl(calc(var(--i)*11deg) 90% 70%);width:6px;height:14px;animation:burst 2.5s calc((var(--i)%8)*60ms) infinite;transform:rotate(var(--a)) translateY(-10px);border-radius:5px;position:absolute}@keyframes burst{to{transform:rotate(var(--a)) translateY(-65vh) rotate(320deg);opacity:0}}footer{z-index:4;color:#665d73;letter-spacing:.2em;border-top:1px solid #ffffff14;align-items:center;gap:24px;padding:30px clamp(22px,6vw,80px);font-size:9px;display:flex;position:relative}footer p{text-align:center;flex:1}footer b{color:#9c78d6;font-size:20px}@media (width<=760px){.nav{padding:22px}.nav p,.nav-line{display:none}.hero{min-height:94svh}.hero .name{font-size:clamp(64px,22vw,100px)}.orbit-one{width:95vw;height:45vw}.orbit-two{width:85vw;height:70vw}.letter-section{grid-template-columns:1fr;padding:90px 20px}.letter-section>.section-index{margin-bottom:-10px}.letter-card{padding:42px 28px}.moment-grid{grid-template-columns:1fr}.moment-grid article{min-height:290px}.section-heading{margin-bottom:42px}.promise{min-height:740px;padding-inline:22px}.promise h2{font-size:40px}.choices{flex-direction:column}.no{position:relative}.cursor-glow{display:none}footer p{text-align:left;line-height:1.8}}.star-fragments{z-index:2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.star-fragments i{color:#ffaadc8c;text-shadow:0 0 12px #ff5aa9;font-size:12px;font-style:normal;animation:linear infinite fragmentFall;position:absolute;top:-8vh}@keyframes fragmentFall{to{opacity:.05;transform:translate(9vw,112vh)rotate(280deg)}}.moments{overflow:hidden}.constellation{opacity:.35;width:300px;height:180px;animation:4s ease-in-out infinite alternate constellationPulse;position:absolute;top:7%;right:4%;transform:rotate(-8deg)}.constellation i{background:#fff;border-radius:50%;width:6px;height:6px;position:absolute;box-shadow:0 0 15px 4px #a66cff}.constellation i:first-child{top:60%;left:5%}.constellation i:nth-child(2){top:28%;left:27%}.constellation i:nth-child(3){top:45%;left:51%}.constellation i:nth-child(4){top:12%;left:72%}.constellation i:nth-child(5){top:50%;left:94%}.constellation span{transform-origin:0;background:linear-gradient(90deg,#b994ff,#b994ff1f);height:1px;position:absolute}.constellation span:first-of-type{width:83px;top:61%;left:6%;transform:rotate(-34deg)}.constellation span:nth-of-type(2){width:78px;top:30%;left:28%;transform:rotate(17deg)}.constellation span:nth-of-type(3){width:86px;top:46%;left:52%;transform:rotate(-38deg)}.constellation span:nth-of-type(4){width:90px;top:14%;left:73%;transform:rotate(39deg)}@keyframes constellationPulse{to{opacity:.7;filter:drop-shadow(0 0 10px #8f61ff)}}@media (width<=760px){.constellation{top:10%;right:-22%;transform:scale(.7)rotate(-8deg)}html,body{width:100%;max-width:100%;overflow-x:hidden}.experience{overflow:clip}.hero{min-height:100svh}.meteors i{width:76px}.star-fragments{opacity:.65}.reading-progress{height:1px}.letter-section:before{height:100px;top:-70px}}html{overscroll-behavior-y:none;scroll-behavior:auto!important}body:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(#0000,#08031029);height:12vh;position:fixed;inset:auto 0 0}.letter-section:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(#0000,#090412 76%);height:150px;position:absolute;top:-110px;left:0;right:0}.letter-section:after{content:"✦";z-index:1;color:#d895ff;text-shadow:0 0 18px #b154ff;opacity:.7;font-size:10px;position:absolute;top:26px;left:50%;transform:translate(-50%)}.letter-section>.section-index,.letter-section>.letter-card{z-index:2;position:relative}.celebration{isolation:isolate;background:radial-gradient(circle at 50% 42%,#521972eb,#090412fa 56%,#030207 100%)}.celebration:before{content:"";z-index:-2;background:conic-gradient(from 30deg at 50% 50%,transparent 0 18%,#ff58ab14 22%,transparent 28% 52%,#696dff17 58%,transparent 65%);animation:18s linear infinite finalGlow;position:absolute;inset:-20%}.celebration:after{content:"";z-index:-1;background-color:#0000;background-image:radial-gradient(circle at 20% 15%,#fffc 0 1px,#0000 2px),radial-gradient(circle at 76% 28%,#ffffffb3 0 1px,#0000 2px),radial-gradient(circle at 28% 78%,#d6b1ffcc 0 1px,#0000 2px),radial-gradient(circle at 83% 72%,#ff9fd6cc 0 1px,#0000 2px);background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:220px 220px;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;animation:20s linear infinite starDrift;position:absolute;inset:0}@keyframes finalGlow{to{transform:rotate(1turn)}}@keyframes starDrift{to{background-position:80px 120px,-100px 80px,60px -90px,-80px -60px}}.final-card{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:linear-gradient(145deg,#ffffff13,#ffffff05);border:1px solid #ffffff24;width:min(680px,100vw - 42px);padding:clamp(52px,8vh,82px) clamp(28px,7vw,78px);position:relative;overflow:hidden;box-shadow:0 50px 120px #0000007a,inset 0 1px #ffffff1f}.final-card:before,.final-card:after{content:"";border-color:#ff84c39e;width:56px;height:56px;position:absolute}.final-card:before{border-top:1px solid;border-left:1px solid;top:14px;left:14px}.final-card:after{border-bottom:1px solid;border-right:1px solid;bottom:14px;right:14px}.final-kicker{color:#d3b3ec;justify-content:center;align-items:center;gap:14px;margin:0 0 26px;display:flex;letter-spacing:.44em!important;font-size:8px!important}.final-kicker span{background:linear-gradient(90deg,#0000,#e07bbb);width:34px;height:1px}.final-kicker span:last-child{transform:scaleX(-1)}.heart-emblem{width:74px;height:68px;margin:0 auto 20px;position:relative}.heart-emblem:before,.heart-emblem:after{content:"";transform-origin:0 100%;background:linear-gradient(145deg,#ff8bc4,#d94798);border-radius:36px 36px 8px 8px;width:36px;height:56px;position:absolute;top:8px;left:36px;transform:rotate(-45deg);box-shadow:0 0 25px #ff469e80}.heart-emblem:after{transform-origin:100% 100%;background:linear-gradient(215deg,#ff9dce,#9652ef);left:0;transform:rotate(45deg)}.heart-emblem i{border:1px solid #ff7ec43d;border-radius:50%;animation:2.6s infinite halo;position:absolute;inset:-7px}.final-for{color:#947fa5!important;letter-spacing:.35em!important;margin:0 0 10px!important;font-size:8px!important}.final-card h2{margin:0!important;line-height:1!important}.final-card h2 strong{letter-spacing:.1em;background:linear-gradient(100deg,#fff,#f6caff 48%,#fff);color:#0000;text-shadow:none;-webkit-background-clip:text;font:700 clamp(42px,7vw,72px)/1.2 Noto Serif SC;display:block}.final-card h2 em{letter-spacing:.08em;margin-top:10px;display:block;color:#e8c8f8!important;font:400 clamp(24px,4.2vw,42px)/1.4 Noto Serif SC!important}.final-divider{color:#d995c4;align-items:center;gap:14px;width:min(300px,75%);margin:24px auto 17px;display:flex}.final-divider:before,.final-divider:after{content:"";background:linear-gradient(90deg,#0000,#de8fc38c);flex:1;height:1px}.final-divider:after{transform:scaleX(-1)}.final-divider span{font:20px Georgia}.final-note{color:#d4c7dc!important;letter-spacing:.12em!important;margin:0 0 13px!important;font:12px/1.8 Noto Serif SC!important}.final-card small{letter-spacing:.12em;font-size:9px;display:block;color:#817488!important;margin:0!important}.final-orbit{border:1px solid #ad73e224;border-radius:50%;width:min(84vw,860px);height:min(84vw,860px);animation:24s linear infinite rotate;position:absolute}.final-orbit:before{content:"";border:1px solid #ff69b61c;border-radius:50%;position:absolute;inset:12%;transform:rotate(35deg)}.final-orbit i{background:#fff;border-radius:50%;width:6px;height:6px;position:absolute;box-shadow:0 0 18px 5px #e566b1}.final-orbit i:first-child{top:-3px;left:50%}.final-orbit i:nth-child(2){background:#a486ff;top:25%;right:7%}.final-orbit i:nth-child(3){background:#75dcff;bottom:19%;left:12%}.celebration .close{z-index:5;color:#ddd2e5;background:#ffffff0a;border-color:#ffffff42;place-items:center;line-height:1;transition:all .3s;display:grid;top:clamp(18px,4vh,34px);right:clamp(18px,4vw,38px)}.celebration .close:hover{color:#fff;border-color:#ff7dbc;transform:rotate(90deg);box-shadow:0 0 25px #ff4ca44d}@media (width<=600px){.final-card{border-radius:2px;padding:48px 22px 42px}.final-kicker{white-space:nowrap;gap:8px}.final-kicker span{width:20px}.final-card h2 strong{font-size:44px}.final-card h2 em{margin-top:8px;font-size:27px}.final-note{font-size:11px!important}.final-orbit{width:145vw;height:145vw}.celebration .burst{opacity:.55}}.envelope-intro{z-index:100;perspective:1400px;background:radial-gradient(circle at 50% 48%,#351244 0,#13071e 32%,#05020b 72%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.envelope-intro:before{content:"";background:conic-gradient(from 10deg at 50% 50%,transparent 0 22%,#cf56ae1a 27%,transparent 34% 61%,#725ce61a 67%,transparent 73%);animation:16s linear infinite introAura;position:absolute;inset:-20%}.intro-stars{opacity:.55;background-image:radial-gradient(#fff 0 1px,#0000 1.6px),radial-gradient(#e9c2ff 0 1px,#0000 1.5px);background-position:10px 24px,69px 81px;background-size:107px 107px,173px 173px;animation:24s linear infinite introStarDrift;position:absolute;inset:0}.intro-stars:after{content:"";filter:drop-shadow(0 0 7px #c392ff);background:linear-gradient(90deg,#0000,#d2a5ff,#fff);width:190px;height:1px;animation:4.8s 1s infinite introMeteor;position:absolute;top:20%;left:-20%;transform:rotate(-24deg)}.intro-kicker{color:#d4addf;letter-spacing:.48em;margin:0 0 clamp(45px,8vh,85px);font-size:9px;position:relative}.intro-envelope-scene{width:min(680px,86vw);height:min(430px,57vw);transform-style:preserve-3d;filter:drop-shadow(0 45px 45px #00000094);animation:4s ease-in-out infinite introFloat;position:relative}.intro-envelope-back{background:linear-gradient(145deg,#c8a1cf,#754882);border:1px solid #ffffff52;position:absolute;inset:11% 0 0}.intro-letter{z-index:2;text-align:center;color:#4f3355;background:linear-gradient(145deg,#fffaff,#e9dbed);height:100%;padding:8%;transition:transform 1.25s cubic-bezier(.2,.85,.25,1) .65s,filter 1.2s;position:absolute;bottom:12%;left:10%;right:10%;box-shadow:0 10px 35px #0000004d}.intro-letter:before{content:"";border:1px solid #693f732b;position:absolute;inset:16px}.intro-letter p{color:#9c789f;letter-spacing:.4em;margin:0;font-size:8px;position:relative}.intro-letter h2{letter-spacing:.14em;margin:8% 0 3%;font:700 clamp(30px,6vw,58px) Noto Serif SC;position:relative}.intro-letter span{color:#917697;letter-spacing:.18em;font:400 clamp(13px,2vw,20px) Noto Serif SC;position:relative}.intro-letter i{background:#c37fab;width:50px;height:1px;margin:7% auto;display:block;position:relative}.intro-envelope-front{z-index:4;position:absolute;inset:11% 0 0;overflow:hidden}.intro-envelope-front:before,.intro-envelope-front:after{content:"";background:linear-gradient(145deg,#cba7d1,#82528f);border:1px solid #fff3;width:73%;height:139%;position:absolute;bottom:-53%}.intro-envelope-front:before{left:-3%;transform:rotate(35deg)}.intro-envelope-front:after{background:linear-gradient(215deg,#d3b0d7,#895895);right:-3%;transform:rotate(-35deg)}.intro-envelope-flap{z-index:5;transform-origin:top;height:62%;transform-style:preserve-3d;transition:transform 1s cubic-bezier(.45,.05,.2,1),z-index 0s .52s;position:absolute;top:11%;left:0;right:0;overflow:hidden}.intro-envelope-flap:before{content:"";background:linear-gradient(145deg,#ead3eb,#9966a5);border:1px solid #ffffff47;width:72%;height:194%;position:absolute;top:-120%;left:14%;transform:rotate(45deg);box-shadow:0 10px 25px #28113040}.intro-seal{z-index:8;cursor:pointer;background:radial-gradient(circle at 35% 27%,#ff94c8,#d23b8a 57%,#7b204e);border:6px double #ffd2e875;border-radius:50%;place-items:center;width:88px;height:88px;transition:transform .4s,opacity .5s,filter .5s;display:grid;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 20px #340a2573,0 0 40px #ff3b978a}.intro-seal:before{content:"";border:1px solid #ff71b847;border-radius:50%;animation:1.8s infinite sealPulse;position:absolute;inset:-15px}.intro-seal span{letter-spacing:.08em;color:#ffe8f3;text-shadow:0 2px 5px #821c50;font:700 19px Georgia}.intro-seal:hover{filter:brightness(1.12);transform:translate(-50%,-50%)scale(1.09)}.intro-instruction{color:#a999b1;letter-spacing:.24em;margin:clamp(55px,9vh,96px) 0 0;font-size:10px;transition:all .4s;position:relative}.envelope-intro.opening .intro-envelope-flap{z-index:1;transform:rotateX(180deg)}.envelope-intro.opening .intro-letter{filter:drop-shadow(0 25px 24px #0f051661);transform:translateY(-68%)rotate(-1deg)}.envelope-intro.opening .intro-seal{opacity:0;filter:blur(8px);transform:translate(-50%,-50%)scale(1.65)}.envelope-intro.opening .intro-envelope-scene{animation:1s cubic-bezier(.5,0,.8,.2) 1.45s forwards introExit}.envelope-intro.opening .intro-instruction{opacity:.35}.intro-fade-leave-active{transition:opacity .75s}.intro-fade-leave-to{opacity:0}.intro-fade-leave-to .intro-stars{transform:scale(1.3)}@keyframes introFloat{50%{transform:translateY(-12px)rotateX(1deg)}}@keyframes sealPulse{to{opacity:0;transform:scale(1.55)}}@keyframes introAura{to{transform:rotate(1turn)}}@keyframes introStarDrift{to{background-position:117px 80px,-100px 140px}}@keyframes introMeteor{0%,68%{opacity:0;transform:translate(0)rotate(-24deg)}72%{opacity:1}to{opacity:0;transform:translate(140vw)rotate(-24deg)}}@keyframes introExit{to{opacity:0;filter:blur(12px);transform:translateY(-40px)scale(1.12)}}@media (width<=600px){.intro-kicker{white-space:nowrap;margin-bottom:70px;font-size:7px}.intro-envelope-scene{width:90vw;height:64vw}.intro-letter{height:112%}.intro-seal{border-width:4px;width:68px;height:68px}.intro-seal span{font-size:15px}.intro-instruction{margin-top:75px;font-size:9px}.envelope-intro.opening .intro-letter{transform:translateY(-72%)rotate(-1deg)}}
