:root{color-scheme:dark;--bg:#101027;--bg-2:#16142f;--bg-3:#1c193b;--text:#faf8ff;--muted:#b9b4ce;--dim:#8680a3;--lavender:#c3a8ff;--lilac:#a994f0;--blue:#97c7ff;--pink:#f8b3e1;--border:#dbcfff2b;--glass:#ffffff0e;--ease:cubic-bezier(.22, 1, .36, 1);--sans:"DM Sans", "Segoe UI", sans-serif;--display:"DM Serif Display", Georgia, serif;--script:"Great Vibes", "Brush Script MT", cursive}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{background:var(--bg);color:var(--text);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;margin:0}body.overlay-open{overflow:hidden}body,button,input{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--blue);outline-offset:5px}button:disabled{cursor:not-allowed;opacity:.6}::selection{color:#15122e;background:#cbbaff}[hidden]{display:none!important}.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}.site-shell{isolation:isolate;min-height:100vh;position:relative;overflow:clip}.page-noise{pointer-events:none;z-index:10;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.15'/%3E%3C/svg%3E");position:fixed;inset:0}.cursor-glow{pointer-events:none;z-index:4;background:radial-gradient(500px circle at var(--pointer-x,50%) var(--pointer-y,50%), #af8cff0b, transparent 72%);position:fixed;inset:0}.progress-bar{z-index:120;background:linear-gradient(90deg, var(--pink), var(--lavender), var(--blue));width:0;height:2px;position:fixed;top:0;left:0;box-shadow:0 0 15px #c3a8ffcc}.container{width:min(1192px,100% - 100px);margin-inline:auto}.section{padding:144px 0;position:relative}.overline,.section-kicker{letter-spacing:.23em;text-transform:uppercase;font-size:11px;font-weight:700}.section-kicker{color:var(--lavender);margin:0 0 28px}.section-kicker span{color:var(--dim);margin-right:12px}.section-heading{font:400 clamp(43px, 4.7vw, 72px)/1.12 var(--display);letter-spacing:-.045em;margin:0}.section-heading em{color:var(--lavender);font-weight:400}.section-description{color:var(--muted);max-width:465px;margin:28px 0 0;font-size:16px;line-height:1.9}.button{min-height:58px;transition:transform .35s var(--ease), box-shadow .35s ease, background .35s ease, border-color .35s ease;white-space:nowrap;border:1px solid #0000;border-radius:100px;justify-content:center;align-items:center;gap:22px;padding:0 25px;font-size:13px;font-weight:700;display:inline-flex}.button>span{font-size:20px;font-weight:400;line-height:1}.button-primary{color:#181331;background:linear-gradient(112deg,#e0c6ff 0%,#c0adff 53%,#a8d9ff 100%);box-shadow:0 15px 45px #ab8cff2e,inset 0 1px #ffffffb3}.button-primary:hover{transform:translateY(-4px);box-shadow:0 21px 50px #ab8cff4d}.button-primary:active{transform:translateY(-1px)scale(.98)}.button-text{color:#e3d7ff;padding-inline:8px}.button-text:hover{transform:translate(5px)}.reveal{opacity:0;transition:opacity .85s var(--ease), transform .85s var(--ease);transform:translateY(35px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.welcome-overlay{z-index:200;text-align:center;overscroll-behavior:contain;background:radial-gradient(at 50% 35%,#34305e 0%,#18152f 42%,#100f25 85%);place-items:center;padding:24px;transition:opacity 1s,visibility 1s;display:grid;position:fixed;inset:0;overflow:hidden auto}.welcome-overlay.is-leaving{opacity:0;visibility:hidden;pointer-events:none}.welcome-overlay:before,.welcome-overlay:after{content:"";filter:blur(4px);pointer-events:none;border-radius:50%;width:650px;height:650px;position:absolute}.welcome-overlay:before{background:radial-gradient(circle,#a390fc1f,#0000 68%);bottom:-350px;left:-240px}.welcome-overlay:after{background:radial-gradient(circle,#82b5ff1a,#0000 68%);top:-350px;right:-260px}.welcome-inner{z-index:2;max-width:660px;animation:welcomeRise 1.25s var(--ease) both;position:relative}.welcome-seal{background:#ddcaff14;border:1px solid #eadbff54;border-radius:50%;place-items:center;width:87px;height:87px;margin:0 auto 42px;animation:3s ease-in-out infinite breathe;display:grid;box-shadow:0 0 0 12px #dac6ff06,0 0 60px #af8fff29}.welcome-seal span{font:48px/1 var(--display);color:#eacfff;margin-top:-3px}.welcome-inner .overline{color:#d4c6fb;margin-bottom:24px}.welcome-inner h1{font:400 clamp(49px, 7.2vw, 98px)/1.07 var(--display);letter-spacing:-.05em;margin:0}.welcome-inner h1 em{color:#e6c0ff;font-weight:400}.welcome-inner h1 span{color:#0000;background:linear-gradient(110deg,#e6ccff,#badbff) text}.welcome-copy{color:#cbc4df;max-width:410px;margin:27px auto 36px;font-size:15px;line-height:1.95}.welcome-button{min-width:225px}.welcome-note{color:#9790b5;letter-spacing:.02em;margin-top:23px;font-size:11px}.welcome-note span{color:#c8b0ff;margin-right:5px}.welcome-sparkle{color:#d6c0ff;opacity:.65;animation:7s ease-in-out infinite alternate starDrift;position:absolute}.s1{font-size:44px;top:17%;left:17%}.s2{font-size:29px;animation-delay:-2s;top:27%;right:16%}.s3{font-size:38px;animation-delay:-4s;bottom:17%;left:24%}.s4{font-size:54px;animation-delay:-1s;bottom:21%;right:19%}.nav-wrap{z-index:50;-webkit-backdrop-filter:blur(14px);width:100%;transition:background .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);background:#101027bf;position:sticky;top:0;left:0}.nav-wrap.is-scrolled{background:#101027e6;box-shadow:0 10px 30px #00000059}.navbar{min-height:84px;transition:min-height .3s var(--ease);border-bottom:1px solid #dbcfff1a;justify-content:space-between;align-items:center;gap:24px;display:flex}.nav-wrap.is-scrolled .navbar{min-height:70px}.brand{font:400 23px/1 var(--display);letter-spacing:-.04em;white-space:nowrap}.brand span{color:#cfbdff;font-style:italic}.brand b,.footer-brand b{font:400 16px/1 var(--sans);color:var(--pink);padding-left:5px}.nav-links{align-items:center;gap:clamp(18px,3vw,44px);display:flex}.nav-links a{color:#c8c3d9;font-size:12px;transition:color .3s}.nav-links a:hover{color:#fff}.sound-toggle{border:1px solid var(--border);color:#d9d3ed;background:#ffffff0b;border-radius:40px;justify-content:center;align-items:center;gap:8px;min-width:107px;min-height:41px;padding:0 12px;font-size:11px;transition:background .25s,border-color .25s;display:inline-flex}.sound-toggle:hover{background:#ffffff1a;border-color:#ddd2ff66}.sound-toggle svg{width:17px;height:17px}.sound-toggle .sound-waves{display:none}.sound-toggle .sound-slash,.sound-toggle[aria-pressed=true] .sound-waves{display:initial}.sound-toggle[aria-pressed=true] .sound-slash{display:none}.hero{grid-template-columns:1.05fr .95fr;align-items:center;min-height:clamp(620px,90svh,920px);padding-top:40px;padding-bottom:90px;display:grid;position:relative}.hero:before{content:"";pointer-events:none;background:radial-gradient(#7760d626,#0000 65%);width:850px;height:950px;position:absolute;top:-300px;right:-360px}.hero:after{content:"";pointer-events:none;background:radial-gradient(#6a9be814,#0000 65%);width:700px;height:400px;position:absolute;bottom:50px;left:-350px}.hero-copy{z-index:3;padding-top:40px;position:relative}.hero-eyebrow{color:#c3b6ef;letter-spacing:.19em;max-width:450px;font-size:10px;font-weight:700;line-height:1.6}.eyebrow-spark{color:var(--pink);margin-right:10px;font-size:16px}.hero-pretitle{color:#dad2ed;font-size:16px;font-family:var(--display);margin:46px 0 8px;font-style:italic}.hero h2{font:400 clamp(61px, 6vw, 102px)/.98 var(--display);letter-spacing:-.065em;white-space:nowrap;margin:0}.hero-name{background:linear-gradient(110deg,#e8cbff 8%,#c7b6ff 42%,#a4d1ff 80%);color:#0000;filter:drop-shadow(0 8px 30px #9180fd1a);-webkit-background-clip:text;background-clip:text;padding-bottom:7px;font-size:1.44em;font-style:italic;line-height:1.1;display:block}.hero-period{color:#e4c6ff;-webkit-text-fill-color:#e4c6ff}.hero-description{color:#bfb9d5;max-width:460px;margin:30px 0 35px;font-size:15px;line-height:1.95}.hero-actions{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.hero-footnote{color:#918bab;margin-top:70px;font-size:11px}.footnote-heart{color:#ffc0dd;margin-right:8px;font-size:15px}.hero-visual{z-index:2;aspect-ratio:1;justify-self:end;place-items:center;width:100%;max-width:590px;display:grid;position:relative}.orb-halo{pointer-events:none;border-radius:50%;position:absolute}.halo-outer{aspect-ratio:1;border:1px solid #ddcaff1a;width:108%;animation:75s linear infinite turnSlow;box-shadow:0 0 0 30px #dbc4ff04,0 0 0 70px #dbc4ff03}.halo-outer:before,.halo-outer:after{content:"✧";color:#dfcaff;font-size:28px;position:absolute}.halo-outer:before{top:13%;left:14%}.halo-outer:after{font-size:18px;bottom:4%;right:25%}.halo-inner{aspect-ratio:1;border:1px dashed #ddcaff24;width:84%;animation:90s linear infinite reverse turnSlow}.orb-main{aspect-ratio:1;text-align:center;background:radial-gradient(at 33% 21%,#998de0 0%,#645caa 33%,#423b80 63%,#24234a 94%);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:74%;animation:6s ease-in-out infinite orbFloat;display:flex;position:relative;overflow:hidden;box-shadow:inset 16px 22px 45px #ffffff1f,inset -28px -28px 45px #0b0a258c,0 30px 95px #6e5bd34d,0 0 90px #8070dd2b}.orb-main:before{content:"";border:1px solid #e6d4ff30;border-radius:50%;position:absolute;inset:7%}.orb-main:after{content:"";opacity:.33;background:linear-gradient(110deg,#0000 40%,#ffffff29 50%,#0000 56%);position:absolute;inset:-20%;transform:rotate(-12deg)}.orb-text-small{letter-spacing:.17em;color:#e5d9ff;z-index:1;font-size:clamp(9px,1.2vw,13px)}.orb-heart{color:#f2d7ff;font:400 clamp(95px, 12vw, 175px)/.85 var(--display);text-shadow:0 0 45px #f9caff59;z-index:1;margin:14px 0 -6px}.orb-name{font:italic 400 clamp(37px, 4vw, 59px)/1 var(--display);z-index:1}.orb-text-bottom{letter-spacing:.16em;color:#d4c8f7;z-index:1;margin-top:15px;font-size:11px}.visual-sticker{z-index:3;color:#f5efff;backdrop-filter:blur(14px);white-space:nowrap;background:#27244bc2;border:1px solid #ead4ff3d;border-radius:10px;align-items:center;gap:8px;padding:12px 17px;font-size:11px;display:flex;position:absolute;box-shadow:0 16px 50px #09071c4d}.visual-sticker span{color:#ffd5f2;font-size:19px;line-height:1}.sticker-1{animation:5s ease-in-out infinite stickerBob;top:18%;right:-1%;transform:rotate(8deg)}.sticker-2{animation:5.8s ease-in-out -2s infinite stickerBob;bottom:17%;left:-4%;transform:rotate(-8deg)}.float-symbol{pointer-events:none;color:#c9aeff;animation:5s ease-in-out infinite alternate starDrift;position:absolute}.float-1{font-size:26px;top:5%;left:20%}.float-2{font-size:29px;animation-delay:-3s;bottom:9%;right:4%}.float-3{font-size:15px;animation-delay:-1s;bottom:27%;left:9%}.hero-sky{pointer-events:none;position:absolute;inset:0;overflow:hidden}.star{opacity:var(--star-o,.7);width:var(--star-size,2px);height:var(--star-size,2px);animation:twinkle var(--star-dur,4s) ease-in-out infinite alternate;background:#f2e7ff;border-radius:50%;position:absolute}.scroll-cue{color:#8d85aa;letter-spacing:.2em;transform-origin:100% 100%;align-items:center;gap:15px;font-size:10px;font-weight:700;display:flex;position:absolute;bottom:40px;right:0;transform:rotate(-90deg)translate(100%)}.scroll-line{background:linear-gradient(90deg,#ccc0ed,#0000);width:60px;height:1px;display:block}.ticker{border-top:1px solid var(--border);border-bottom:1px solid var(--border);z-index:2;background:#ceafff0e;align-items:center;height:75px;display:flex;position:relative;overflow:hidden;transform:rotate(-1.35deg)scale(1.025)}.ticker-track{white-space:nowrap;width:max-content;animation:44s linear infinite marquee;display:flex}.ticker-track>span{color:#d2c4f6;letter-spacing:.22em;flex-shrink:0;padding-left:38px;font-size:12px;font-weight:700}.ticker-track b{color:var(--pink);padding:0 25px;font-size:20px;font-weight:400}.wish-section{background:linear-gradient(#121129 0%,#18152f 100%)}.wish-section:before{content:"";pointer-events:none;background:radial-gradient(at 75% 47%,#977af217,#0000 45%);position:absolute;inset:0}.wish-layout{grid-template-columns:.85fr 1.15fr;align-items:center;gap:70px;display:grid}.wish-info{z-index:2;position:relative}.wish-instructions{border-top:1px solid var(--border);border-bottom:1px solid var(--border);align-items:center;gap:17px;max-width:385px;margin:26px 0 28px;padding:22px 0;display:flex}.instruction-icon{color:#ddc3ff;background:#30274d;border-radius:50%;flex:0 0 49px;place-items:center;width:49px;height:49px;font-size:27px;display:grid}.wish-instructions p{color:#b7b1c9;margin:0;font-size:12px;line-height:1.8}.wish-instructions strong{color:#f2eefe;font-size:13px}.reset-link{color:#c8b4ff;background:0 0;border:0;margin:18px 0 0;padding:8px 0;font-size:12px;display:block}.reset-link:hover{text-decoration:underline}.cake-stage{background:radial-gradient(at 50% 43%,#9b7eef36,#57499717 39%,#25214b80 69%,#24204366 100%);border:1px solid #d4c7fe21;border-radius:240px 240px 20px 20px;place-items:center;min-height:585px;display:grid;position:relative;overflow:hidden}.cake-stage:before{content:"";border-radius:inherit;pointer-events:none;border:1px solid #e5cfff17;position:absolute;inset:21px}.cake-aura{filter:blur(25px);background:radial-gradient(#c192ff38,#0000 66%);border-radius:50%;width:70%;height:65%;position:absolute;top:19%;left:15%}.cake-stars{pointer-events:none;position:absolute;inset:0}.cake-stars i{color:#d9c5ff;font-style:normal;animation:4s infinite alternate twinkle;position:absolute}.cake-stars i:first-child{font-size:25px;top:18%;left:23%}.cake-stars i:nth-child(2){font-size:18px;animation-delay:-1s;top:30%;right:17%}.cake-stars i:nth-child(3){font-size:17px;animation-delay:-2s;bottom:35%;left:14%}.cake-stars i:nth-child(4){font-size:30px;animation-delay:-.5s;bottom:23%;right:24%}.cake-stars i:nth-child(5){font-size:15px;animation-delay:-3s;top:11%;right:33%}.cake-art{--cake-scale:1;--cake-y:32px;width:370px;height:385px;transform:translateY(var(--cake-y)) scale(var(--cake-scale));filter:drop-shadow(0 40px 25px #0c091f73);position:relative}.cake-shadow{z-index:0;filter:blur(17px);background:#161029;border-radius:50%;width:90%;height:40px;position:absolute;bottom:0;left:5%}.cake-plate{z-index:2;background:linear-gradient(#eff0ff,#adafd1 66%,#7475a7 100%);border-bottom:5px solid #a9a1d3;border-radius:50%;height:27px;position:absolute;bottom:25px;left:3%;right:3%;box-shadow:0 15px 30px #00000045}.cake-layer{border-radius:8px 8px 23px 23px;width:70%;position:absolute;left:15%;overflow:hidden;box-shadow:inset 15px 0 30px #ffffff21,inset -17px 0 25px #4a2c7840,0 6px #3d1f6f33}.cake-layer-top{z-index:5;background:linear-gradient(90deg,#7d67ca 0%,#b79aee 26%,#d5b0f5 50%,#9478d4 100%);height:95px;top:138px}.cake-layer-bottom{z-index:4;background:linear-gradient(90deg,#9773c9,#f1a8d6 32%,#ffbbdb 53%,#bc8bcd);border-radius:8px 8px 20px 20px;width:86%;height:115px;top:225px;left:7%}.cake-layer:after{content:"";opacity:.8;background:radial-gradient(#f7d1fa 36%,#0000 40%) 0 0/24px 9px repeat-x;width:84%;height:7px;position:absolute;bottom:12px;left:8%}.cake-highlight{filter:blur(19px);background:#ffffff24;border-radius:50%;width:17%;height:60%;position:absolute;top:33%;left:18%}.icing-drips{z-index:2;background:#ecd6ff;border-radius:0 0 48% 48%/0 0 25% 25%;height:39px;position:absolute;inset:0 0 auto;box-shadow:0 3px 5px #6b41a040}.icing-drips:before{content:"";background:#ecd6ff;border-radius:0 0 12px 12px;width:20px;height:31px;position:absolute;top:21px;left:6%;box-shadow:53px 12px 0 -2px #ecd6ff,112px -4px 0 1px #ecd6ff,170px 10px 0 -1px #ecd6ff,220px 0 0 -3px #ecd6ff}.bottom-drips{background:#ffdeef;height:39px}.bottom-drips:before{background:#ffdeef;box-shadow:53px 12px 0 -2px #ffdeef,112px -4px 0 1px #ffdeef,170px 10px 0 -1px #ffdeef,245px 0 0 -3px #ffdeef}.cake-top{z-index:6;background:linear-gradient(#f5e2ff,#dac0f7);border-radius:50%;width:70%;height:37px;position:absolute;top:123px;left:15%;box-shadow:0 3px 3px #75479d2b}.sprinkle{background:#e7a5d5;border-radius:8px;width:17px;height:4px;position:absolute;top:18px;transform:rotate(35deg)}.sp1{left:15%}.sp2{background:#a6baf8;top:9px;left:36%;transform:rotate(-30deg)}.sp3{top:13px;right:22%}.sp4{background:#baa9f0;top:21px;right:40%;transform:rotate(-20deg)}.sp5{background:#f1b6cf;top:15px;left:47%}.candles{z-index:10;justify-content:space-between;align-items:flex-end;width:56%;height:93px;padding:0 6px;display:flex;position:absolute;top:50px;left:22%}.candle{background:repeating-linear-gradient(-30deg,#a9c9fb 0 9px,#e0d1ff 9px 16px);border-radius:4px 4px 2px 2px;width:14px;height:65px;position:relative;box-shadow:inset -3px 0 3px #3c32753b}.candle:nth-child(2n){background:repeating-linear-gradient(-30deg,#ecabdc 0 9px,#fff2f8 9px 16px);height:74px}.candle:nth-child(3){height:80px}.wick{background:#373040;width:2px;height:7px;position:absolute;bottom:calc(100% - 2px);left:6px}.flame{filter:drop-shadow(0 0 7px #ffd28b);transform-origin:bottom;background:linear-gradient(135deg,#fff9d3 15%,#ffd37e 58%,#ff95ae 100%);border-radius:70% 20% 60% 30%;width:14px;height:24px;animation:1.3s ease-in-out infinite alternate candleFlicker;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%)rotate(45deg)}.candle:nth-child(2) .flame{animation-delay:-.4s}.candle:nth-child(3) .flame{animation-delay:-.8s}.candle:nth-child(4) .flame{animation-delay:-.25s}.candle:nth-child(5) .flame{animation-delay:-.7s}.cake-stage.candles-out .flame{opacity:0;transition:opacity .25s,transform .3s;transform:translate(-50%)scale(0)}.wick{position:relative}.cake-stage.candles-out .wick:after{content:"";background:radial-gradient(circle,#ebe1ffbf,#0000 70%);border-radius:50%;width:4px;height:12px;animation:2s ease-out forwards smokeDrift;position:absolute;top:-10px;left:50%;transform:translate(-50%)}.cake-stage.candles-out .cake-art{animation:cakeCelebrate 1s var(--ease) both}.wish-result{z-index:12;opacity:0;pointer-events:none;text-align:center;backdrop-filter:blur(15px);background:#271f4de8;border:1px solid #f2d8ff40;border-radius:20px;width:min(88%,340px);padding:16px 22px;transition:opacity .5s,transform .5s;position:absolute;top:13%;left:50%;transform:translate(-50%,-25px);box-shadow:0 17px 50px #00000040}.wish-result.show{opacity:1;transform:translate(-50%)}.wish-result span{font-size:29px;display:block}.wish-result strong{margin-top:4px;font-size:13px;display:block}.wish-result small{color:#cfc2e4;margin-top:5px;font-size:11px;line-height:1.5;display:block}.stage-caption{color:#8479a9;letter-spacing:.17em;font-size:9px;position:absolute;bottom:24px}.reasons-section{background:#121127}.reasons-section:before{content:"";background:linear-gradient(90deg,#0000,#ddc8ff26,#0000);width:100%;height:1px;position:absolute;top:0;left:0}.section-topline{justify-content:space-between;align-items:center;display:flex}.topline-deco{color:#9a8cc5;font-size:16px}.reasons-heading{justify-content:space-between;align-items:end;gap:50px;margin-bottom:60px;display:flex}.reasons-heading .section-description{max-width:315px;margin-bottom:5px}.reasons-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.reason-card{text-align:left;perspective:1200px;min-width:0;height:310px;color:var(--text);transition-delay:calc(var(--card-index) * 55ms);background:0 0;border:0;padding:0}.reason-card-inner{width:100%;height:100%;transition:transform .85s var(--ease);transform-style:preserve-3d;display:block;position:relative}.reason-card.is-flipped .reason-card-inner{transform:rotateY(180deg)}.reason-face{-webkit-backface-visibility:hidden;backface-visibility:hidden;border:1px solid #dbcfff24;border-radius:16px;flex-direction:column;padding:25px 28px;display:flex;position:absolute;inset:0;overflow:hidden}.reason-front{background:radial-gradient(at 80% 30%,#9878de1c,#0000 60%),linear-gradient(145deg,#24203e,#1b1936 70%);transition:border-color .4s,background .4s}.reason-card:hover .reason-front{border-color:#d5b7ff8c}.reason-top{color:#a99fcc;letter-spacing:.1em;justify-content:space-between;align-items:center;font-size:10px;display:flex}.reason-plus{color:#d8c8f8;border:1px solid #d6c6ff33;border-radius:50%;place-items:center;width:34px;height:34px;font-size:19px;transition:transform .4s;display:grid}.reason-card:hover .reason-plus{transform:rotate(45deg)}.reason-icon{font:400 80px/1 var(--display);color:#d0b1ff;text-shadow:0 0 45px #cdaeff4d;flex:1;align-self:center;place-items:center;display:grid}.reason-card:nth-child(2n) .reason-icon{color:#abd0ff}.reason-card:nth-child(3n) .reason-icon{color:#f2b8e0}.reason-bottom{flex-direction:column;gap:3px;display:flex}.reason-bottom strong{font:400 30px/1.25 var(--display)}.reason-bottom small{color:#a89fc1;font-size:12px}.reason-back{text-align:center;background:linear-gradient(143deg,#4c3c77,#2d2c5e 75%);border-color:#e8caff52;justify-content:space-between;align-items:center;transform:rotateY(180deg)}.back-label{letter-spacing:.14em;color:#d5c3f6;font-size:9px;font-weight:700}.reason-back-text{font:400 22px/1.4 var(--display)}.back-bottom{color:#d5c3f6;font-size:11px}.reasons-footer{text-align:center;color:#a69dc2;margin-top:42px;font-size:12px}.little-star{color:#dbbcff;padding-right:7px;font-size:20px}.sky-section{text-align:center;border-block:1px solid var(--border);background:radial-gradient(at 50% 65%,#4c45914d,#0000 65%),linear-gradient(#1a1737,#15132e);overflow:hidden}.sky-section:after{content:"";pointer-events:none;border:1px solid #d4c2ff1a;border-radius:50%;width:min(70vw,900px);height:500px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-16deg)}.sky-starfield{pointer-events:none;position:absolute;inset:0;overflow:hidden}.sky-content{z-index:2;position:relative}.sky-symbol{color:#e0c5ff;font:90px/1 var(--display);text-shadow:0 0 30px #d8adff80;margin-bottom:27px;animation:5s ease-in-out infinite alternate starDrift}.sky-content .section-description{margin:26px auto 32px}.sky-content .section-kicker{margin-bottom:22px}.wish-form{backdrop-filter:blur(14px);background:#ffffff13;border:1px solid #ddcdff42;border-radius:100px;max-width:610px;min-height:68px;margin:0 auto;padding:6px;display:flex;box-shadow:0 18px 50px #08071f26}.wish-form input{color:#fff;background:0 0;border:0;outline:0;flex:1;min-width:0;padding:0 22px;font-size:13px}.wish-form input::placeholder{color:#a69dbf}.wish-form .button{min-height:54px}.sky-hint{color:#a29bbf;margin-top:17px;font-size:11px}.wishes-list{flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;max-width:780px;margin:23px auto 0;display:flex}.wish-pill{color:#eedfff;animation:wishAppear .6s var(--ease) both;overflow-wrap:anywhere;backdrop-filter:blur(8px);background:#cfafff1f;border:1px solid #d8c3ff40;border-radius:999px;align-items:center;gap:7px;max-width:100%;padding:8px 16px;font-size:12px;display:inline-flex}.wish-pill [aria-hidden=true]{color:#f6c8e1;font-size:13px;line-height:1}.shooting-star{pointer-events:none;z-index:1;background:#fff;border-radius:50%;width:6px;height:6px;animation:1.25s ease-out forwards shooting;position:absolute;box-shadow:0 0 15px #ddc5ff,0 0 35px #a2bdff}.shooting-star:after{content:"";transform-origin:100%;background:linear-gradient(90deg,#0000,#d6caff);width:180px;height:2px;display:block;position:absolute;top:2px;right:0;transform:rotate(-20deg)}.letter-section{background:radial-gradient(at 88% 39%,#a676d017,#0000 45%),#121129}.letter-layout{grid-template-columns:1fr 1fr;align-items:center;gap:70px;display:grid}.letter-intro{padding-block:45px}.letter-mini-note{color:#968bad;letter-spacing:.03em;margin-top:48px;font-size:11px}.letter-mini-note span{color:var(--pink);margin-left:9px;font-size:21px}.letter-interaction{background:radial-gradient(at 50% 48%,#775ec63b,#352d6429 62%,#1b183a73);border:1px solid #dac9ff21;border-radius:220px 220px 18px 18px;flex-direction:column;align-items:center;min-height:484px;padding:85px 10px 35px;display:flex}.letter-envelope{filter:drop-shadow(0 30px 25px #06041b66);perspective:700px;width:280px;height:193px;transition:transform .8s var(--ease);margin:7px auto 48px;position:relative}.envelope-back{background:#b19add;border-radius:6px;position:absolute;inset:0}.envelope-front{z-index:3;clip-path:polygon(0 0,50% 57%,100% 0,100% 100%,0 100%);background:linear-gradient(145deg,#e1cafa,#b9a0e5);border-radius:5px;position:absolute;inset:0;box-shadow:inset 0 -7px 19px #825cb233}.envelope-flap{z-index:4;clip-path:polygon(0 0,100% 0,50% 61%);transform-origin:top;transition:transform 1s var(--ease), z-index 0s .3s;background:linear-gradient(#f0dcff,#c5aae9);position:absolute;inset:0}.envelope-letter{z-index:2;text-align:center;color:#6e5089;width:88%;height:80%;transition:transform 1s var(--ease);background:#fff9ff;border-radius:5px;flex-direction:column;justify-content:center;display:flex;position:absolute;top:7%;left:6%;box-shadow:0 0 12px #00000014}.envelope-letter span{font:italic 27px var(--display)}.envelope-letter b{font:400 24px var(--script);color:#af76bf}.envelope-seal{z-index:5;width:46px;height:46px;font:26px/1 var(--display);background:linear-gradient(140deg,#bb87d9,#805eac);border-radius:50%;place-items:center;transition:opacity .4s;display:grid;position:absolute;top:56%;left:50%;transform:translate(-50%,-50%);box-shadow:0 3px 8px #4a297c4d,inset 0 0 0 4px #ffffff2b}.letter-interaction.is-open .envelope-flap{z-index:1;transform:rotateX(180deg)}.letter-interaction.is-open .envelope-letter{transform:translateY(-97px)}.letter-interaction.is-open .envelope-seal{opacity:0}.envelope-button{min-height:53px}.envelope-hint{color:#9387b4;margin-top:14px;font-size:11px}.letter-paper-container{padding-top:75px}.letter-paper{color:#413451;max-width:820px;animation:letterReveal .8s var(--ease) both;background:linear-gradient(145deg,#fffdfd,#f9f2ff);border-radius:7px;margin:auto;padding:80px clamp(26px,8vw,100px);position:relative;box-shadow:0 30px 80px #05031033}.letter-paper:before{content:"";pointer-events:none;border:1px solid #7853961f;position:absolute;inset:17px}.letter-paper-decoration{font:46px/1 var(--display);color:#bb8ccb;text-align:center}.letter-date{color:#a187af;letter-spacing:.2em;text-align:center;margin:12px 0 26px;font-size:10px;font-weight:700}.letter-paper h3{font:italic 400 clamp(31px, 4vw, 50px)/1.2 var(--display);color:#754c93;margin:0 0 30px}.letter-paper p:not(.letter-date){margin:0 0 20px;font-size:15px;line-height:2}.letter-paper .letter-salutation{font-weight:700}.letter-paper .letter-signature{color:#a573ba;padding-top:18px;font:400 40px/1.2 var(--script)!important}.letter-corner{color:#b687c6;opacity:.45;pointer-events:none;font-size:26px;position:absolute;bottom:24px;right:28px}.letter-close{color:#775590;cursor:pointer;transition:all .25s var(--ease);background:#ac8dbe1a;border:1px solid #ac8dbe59;border-radius:999px;justify-content:center;align-items:center;gap:6px;margin:32px auto 0;padding:10px 24px;font-size:12px;font-weight:600;display:inline-flex}.letter-close:hover{color:#553470;background:#ac8dbe38;transform:translateY(-2px)}.final-section{text-align:center;border-top:1px solid var(--border);background:radial-gradient(at 50% 38%,#312c61 0%,#1b1939 44%,#121128 100%);padding:130px 0 150px;position:relative;overflow:hidden}.final-glow{pointer-events:none;background:radial-gradient(at 50% 45%,#ae8df526,#0000 50%);position:absolute;inset:0}.final-inner{z-index:1;position:relative}.final-inner .section-kicker{color:#c9b5fc;margin-bottom:20px}.final-inner .section-heading{font-size:clamp(45px,5vw,69px)}.final-copy{color:#bfb6da;margin:20px auto 28px;font-size:14px}.gift-wrap{filter:drop-shadow(0 18px 15px #07051c66);width:190px;height:190px;margin:0 auto 22px;animation:4s ease-in-out infinite giftHover;position:relative}.gift-body{background:linear-gradient(100deg,#9e7ee2,#d4b5ff 47%,#9375d4);border-radius:5px 5px 12px 12px;width:148px;height:113px;position:absolute;bottom:6px;left:21px;box-shadow:inset -9px 0 14px #3e28831f}.gift-ribbon{background:linear-gradient(90deg,#cfe5ff,#f2f0ff,#b2d5ff);width:27px;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.gift-lid{z-index:3;width:170px;height:35px;transition:transform 1.2s var(--ease), opacity 1s;background:linear-gradient(90deg,#d5bbff,#f0dfff,#ad91e3);border-radius:5px;position:absolute;top:53px;left:10px;box-shadow:0 7px 10px #4f3b7e40}.gift-lid:before{content:"";background:linear-gradient(90deg,#b7d7ff,#e9f2ff,#b5d8ff);width:29px;position:absolute;inset:0 auto 0 50%;transform:translate(-50%)}.gift-bow{border:11px solid #cde4ff;border-radius:50% 50% 14%;width:53px;height:34px;position:absolute;top:-27px}.bow-left{right:50%;transform:rotate(27deg)}.bow-right{left:50%;transform:rotate(-27deg)scaleX(-1)}.gift-knot{background:#f3f9ff;border-radius:50%;width:22px;height:22px;position:absolute;top:-17px;left:50%;transform:translate(-50%)}.gift-sparkles{color:#f0d1ff;letter-spacing:35px;opacity:.6;pointer-events:none;font-size:20px;animation:2s infinite alternate twinkle;position:absolute;inset:-28px}.gift-wrap.is-open{animation:none}.gift-wrap.is-open .gift-lid{opacity:.45;transform:translateY(-100px)rotate(-20deg)translate(24px)}.gift-message{backdrop-filter:blur(10px);max-width:590px;animation:letterReveal 1s var(--ease) both;background:#ddc3ff12;border:1px solid #dec6ff40;border-radius:18px;margin:40px auto 0;padding:38px 28px}.gift-message-star{color:#f4caef;font-size:34px}.gift-message h3{font:italic 400 clamp(28px, 3.6vw, 45px)/1.3 var(--display);margin:15px 0}.gift-message p{color:#c7bddc;font-size:14px;line-height:1.8}.gift-message strong{font:400 45px var(--script);color:#ebc7fb;margin-top:8px;display:block}.footer{color:#9991b5;justify-content:space-between;align-items:center;gap:20px;min-height:100px;padding-block:24px;font-size:11px;display:flex}.footer-brand{color:#f1eafa;font:400 22px var(--display);white-space:nowrap}.footer a{transition:color .3s}.footer a:hover{color:#ddc5ff}.confetti-layer{z-index:150;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti{top:-30px;left:var(--x);width:var(--size);height:calc(var(--size) * 1.6);background:var(--color);opacity:.95;animation:confettiFall var(--duration) var(--delay) linear forwards;transform:rotate(var(--rotate));border-radius:2px;position:absolute}.toast{z-index:151;color:#fcf8ff;text-align:center;backdrop-filter:blur(20px);opacity:0;pointer-events:none;background:#342b5fed;border:1px solid #ecccff4d;border-radius:12px;max-width:calc(100vw - 32px);padding:12px 22px;font-size:13px;transition:opacity .35s,transform .35s;position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px);box-shadow:0 12px 36px #0000004d}.toast.is-visible{opacity:1;transform:translate(-50%)}@keyframes welcomeRise{0%{opacity:0;transform:translateY(28px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes breathe{50%{transform:scale(1.04);box-shadow:0 0 0 20px #dac6ff08,0 0 75px #af8fff45}}@keyframes starDrift{0%{transform:translate(-5px,5px)rotate(-9deg)}to{transform:translate(8px,-13px)rotate(10deg)}}@keyframes twinkle{0%{opacity:.16;transform:scale(.65)}to{opacity:.94;transform:scale(1.4)}}@keyframes orbFloat{50%{transform:translateY(-17px)rotate(2deg)}}@keyframes turnSlow{to{transform:rotate(360deg)}}@keyframes stickerBob{50%{translate:0 -12px}}@keyframes marquee{to{transform:translate(-50%)}}@keyframes candleFlicker{0%{opacity:.9;transform:translate(-50%)rotate(38deg)scale(.9)}to{opacity:1;transform:translate(-50%)rotate(53deg)scale(1.13)}}@keyframes cakeCelebrate{20%{transform:translateY(calc(var(--cake-y,32px) - 8px)) scale(var(--cake-scale,1)) rotate(-2deg)}40%{transform:translateY(calc(var(--cake-y,32px) - 14px)) scale(var(--cake-scale,1)) rotate(2deg)}70%{transform:translateY(calc(var(--cake-y,32px) - 6px)) scale(var(--cake-scale,1)) rotate(-1deg)}to{transform:translateY(var(--cake-y,32px)) scale(var(--cake-scale,1))}}@keyframes smokeDrift{0%{opacity:.85;transform:translate(-50%)scale(1)translateY(0)}50%{opacity:.45;transform:translate(calc(5px - 50%))scale(2)translateY(-14px)}to{opacity:0;transform:translate(calc(-50% - 6px))scale(3.5)translateY(-28px)}}@keyframes wishAppear{0%{opacity:0;transform:translateY(13px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes shooting{0%{opacity:0;transform:translate(-230px,120px)rotate(-20deg)}10%{opacity:1}to{opacity:0;transform:translate(250px,-220px)rotate(-20deg)}}@keyframes letterReveal{0%{opacity:0;transform:translateY(35px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes giftHover{50%{transform:translateY(-12px)rotate(3deg)}}@keyframes confettiFall{0%{transform:translate3d(0, -10px, 0) rotate(var(--rotate));opacity:1}to{transform:translate3d(var(--drift), 110vh, 0) rotate(900deg);opacity:.1}}@media (width<=1150px){.hero h2{font-size:clamp(50px,5.6vw,82px)}.hero-visual{max-width:500px}.visual-sticker{padding:9px 11px;font-size:10px}.wish-layout{gap:35px}.reasons-heading .section-description{max-width:290px}}@media (width<=900px){.container{width:min(100% - 64px,720px)}.section{padding:105px 0}.hero{text-align:center;grid-template-columns:1fr;min-height:auto;padding-top:48px;padding-bottom:90px}.hero-copy{padding-top:0}.hero-eyebrow,.hero-description{margin-inline:auto}.hero h2{font-size:clamp(65px,9vw,95px)}.hero-actions{justify-content:center}.hero-footnote{margin-top:35px}.hero-visual{justify-self:center;width:min(100%,480px);margin-top:40px}.scroll-cue{display:none}.wish-layout{grid-template-columns:1fr;gap:55px}.wish-info{text-align:center}.wish-info .section-description,.wish-instructions,.wish-info .reset-link{margin-inline:auto}.cake-stage{width:100%;max-width:600px;margin-inline:auto}.reasons-heading{flex-direction:column;align-items:start;gap:5px}.reasons-heading .section-description{max-width:500px}.reasons-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.letter-layout{grid-template-columns:1fr;gap:28px}.letter-intro{text-align:center;padding:0}.letter-intro .section-description{margin-inline:auto}.letter-mini-note{margin-top:20px}.letter-interaction{width:100%;max-width:540px;margin:0 auto}.letter-paper-container{padding-top:45px}}@media (width<=620px){html{scroll-padding-top:65px}.container{width:calc(100% - 42px)}.section{padding:85px 0}.section-heading{letter-spacing:-.035em;font-size:clamp(39px,10vw,55px)}.section-description{font-size:14px;line-height:1.85}.section-kicker{letter-spacing:.17em;margin-bottom:18px;font-size:10px}.navbar{min-height:64px}.brand{font-size:21px}.nav-links{display:none}.sound-toggle{min-width:94px;min-height:38px}.hero{padding-top:35px;padding-bottom:70px}.hero-eyebrow{max-width:300px;font-size:9px;line-height:1.8}.hero-pretitle{margin-top:26px;font-size:15px}.hero h2{font-size:clamp(48px,12vw,80px);line-height:1.07}.hero-name{font-size:1.53em}.hero-description{max-width:385px;margin-top:18px;font-size:13px}.hero-actions{gap:8px 15px}.button{gap:12px;min-height:50px;padding-inline:19px;font-size:12px}.hero-actions .button-text{min-height:44px}.hero-footnote{margin-top:25px}.hero-visual{width:min(100%,390px);margin-top:35px}.sticker-1{top:12%;right:4px}.sticker-2{bottom:14%;left:4px}.visual-sticker{padding:8px;font-size:9px}.visual-sticker span{font-size:16px}.orb-heart{font-size:clamp(82px,25vw,125px)}.orb-name{font-size:clamp(32px,9vw,49px)}.orb-text-small{font-size:9px}.orb-text-bottom{margin-top:8px;font-size:9px}.ticker{height:61px}.ticker-track>span{font-size:10px}.ticker-track b{padding-inline:12px;font-size:15px}.cake-stage{border-radius:190px 190px 16px 16px;min-height:430px}.cake-art{--cake-scale:.78;--cake-y:20px;transform-origin:50%;margin-block:-25px}.cake-stage.candles-out .cake-art{animation:cakeCelebrate 1s var(--ease) both}.wish-result{top:9%}.stage-caption{font-size:8px;bottom:18px}.reasons-heading{margin-bottom:35px}.reasons-grid{gap:12px}.reason-card{height:246px}.reason-face{padding:17px}.reason-icon{font-size:64px}.reason-bottom strong{font-size:22px}.reason-bottom small{font-size:10px}.reason-top{font-size:9px}.reason-plus{width:28px;height:28px}.reason-back-text{font-size:17px}.back-label,.back-bottom{font-size:8px}.sky-symbol{font-size:74px}.wish-form{border-radius:24px;flex-direction:column;align-items:stretch;gap:10px;padding:9px}.wish-form input{text-align:center;height:48px}.wish-form .button{width:100%}.sky-section:after{width:120vw}.letter-interaction{min-height:440px;padding-top:75px}.letter-paper{text-align:center;padding:60px 24px}.letter-paper h3{font-size:30px}.letter-paper p:not(.letter-date){font-size:13.5px;line-height:1.85}.letter-corner{bottom:16px;right:20px}.final-section{padding:90px 0 100px}.footer{text-align:center;flex-direction:column;align-items:center;gap:8px;padding-block:26px}.welcome-seal{width:74px;height:74px;margin-bottom:32px}.welcome-seal span{font-size:40px}.welcome-inner h1{font-size:clamp(46px,11vw,70px)}.welcome-copy{font-size:13px}.welcome-sparkle.s1{left:6%}.welcome-sparkle.s2{right:7%}.welcome-sparkle.s4{right:5%}}@media (width<=520px){.reasons-grid{grid-template-columns:1fr;gap:16px;max-width:380px;margin-inline:auto}.reason-card{height:200px}.reason-face{padding:20px 24px}.reason-icon{font-size:56px}.reason-bottom strong{font-size:24px}.reason-back-text{font-size:17.5px;line-height:1.45}}@media (width<=380px){.container{width:calc(100% - 26px)}.hero h2{font-size:44px}.hero-name{font-size:1.54em}.reason-card{height:195px}.reason-face{padding:16px 20px}.reason-icon{font-size:50px}.reason-bottom strong{font-size:22px}.reason-back-text{font-size:15.5px;line-height:1.4}.cake-art{--cake-scale:.69;--cake-y:18px}.cake-stage.candles-out .cake-art{animation:cakeCelebrate 1s var(--ease) both}.cake-stage{min-height:380px}.letter-interaction{min-height:400px;padding-top:65px}.letter-envelope{margin:0 auto 32px;transform:scale(.85)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal,.welcome-inner{opacity:1;transform:none}}
