/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.resize{resize:both}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}:root{--ink:#fff6f0;--muted:#c8aeb4;--wine:#a71f43;--ruby:#f04464;--rose:#ff7890;--gold:#f4c78b;--night:#090307;--night-soft:#14060c}*{box-sizing:border-box}html{background:var(--night);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth}body{background:var(--night);min-width:320px;color:var(--ink);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif;overflow-x:hidden}body[data-opened=false]{overflow:hidden}button{color:inherit;font:inherit}.love-page{isolation:isolate;background:radial-gradient(circle at 50% 14%,#a71f4333,#0000 30%),radial-gradient(circle at 14% 54%,#66122e2e,#0000 24%),linear-gradient(#090307 0%,#14060c 48%,#080205 100%);min-height:100svh;position:relative;overflow:hidden}.love-page:before{z-index:-1;pointer-events:none;content:"";opacity:.17;mix-blend-mode:soft-light;background-image:repeating-linear-gradient(120deg,#ffffff06 0 1px,#0000 1px 5px),repeating-linear-gradient(30deg,#ffffff05 0 1px,#0000 1px 7px);position:fixed;inset:0}.cosmos{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.aurora{filter:blur(22px);opacity:.55;border:1px solid #ec3b621f;border-radius:50%;width:280px;height:680px;position:absolute}.aurora-one{top:20svh;right:-220px;transform:rotate(20deg);box-shadow:inset 36px 0 80px #cf294d1f}.aurora-two{top:126svh;left:-230px;transform:rotate(-24deg);box-shadow:inset -36px 0 80px #cf294d1a}.star{top:var(--y);left:var(--x);width:var(--size);height:var(--size);animation:twinkle 3s var(--delay) ease-in-out infinite;background:#ffe2ba;border-radius:999px;position:absolute;box-shadow:0 0 7px 1px #ffd59ba6}.hero{min-height:100svh;padding:max(28px, env(safe-area-inset-top)) 22px max(26px, env(safe-area-inset-bottom));text-align:center;flex-direction:column;align-items:center;display:flex;position:relative}.eyebrow,.section-label{color:var(--gold);letter-spacing:.32em;justify-content:center;align-items:center;gap:10px;font-family:Georgia,Times New Roman,serif;font-size:10px;display:flex}.eyebrow>span{background:linear-gradient(90deg,#0000,#f4c78bcc);width:28px;height:1px}.eyebrow>span:last-child{transform:rotate(180deg)}.hero-copy{margin-top:clamp(38px,7svh,64px)}.kicker,.promise-small{color:#f4c78b8c;letter-spacing:.32em;margin:0 0 10px;font-family:Georgia,Times New Roman,serif;font-size:9px}.hero h1{letter-spacing:.08em;text-shadow:0 10px 40px #ef4b6a38;margin:0;font-family:Songti SC,STSong,Noto Serif SC,serif;font-size:clamp(34px,10vw,48px);font-weight:400;line-height:1.18}.hero h1 em{color:#fff7f1;letter-spacing:.12em;font-size:1.18em;font-style:normal;display:block;position:relative}.hero h1 em:after{content:"";background:linear-gradient(90deg, transparent, var(--ruby), transparent);width:54px;height:1px;margin:13px auto 0;display:block;box-shadow:0 0 12px #f04464cc}.intro-line{color:var(--muted);letter-spacing:.12em;margin:14px 0 0;font-family:Songti SC,STSong,serif;font-size:13px;line-height:1.9}.heart-stage{aspect-ratio:1;place-items:center;width:min(66vw,268px);margin:clamp(20px,3.8svh,36px) auto 0;display:grid;position:relative}.heart-stage:before{content:"";filter:blur(28px);background:#cd234b26;border-radius:50%;width:70%;height:70%;animation:2s ease-in-out infinite halo;position:absolute}.orbit{border:1px solid #f4c78b47;border-radius:50%;width:94%;height:42%;animation:5s ease-in-out infinite orbitFloat;position:absolute;transform:rotate(-13deg);box-shadow:inset 0 0 10px #ffc9900d,0 0 10px #ffc9900d}.orbit:after{content:"";background:var(--gold);border-radius:50%;width:5px;height:5px;position:absolute;top:42%;right:-3px;box-shadow:0 0 12px 3px #f4c78bb3}.orbit-two{border-color:#f044641f;width:78%;height:78%;animation-delay:-2s;transform:rotate(52deg)}.pulse-ring{border:1px solid #ff6f8c47;border-radius:50%;width:48%;height:48%;animation:2.2s ease-out infinite ringPulse;position:absolute}.heart-button{z-index:3;cursor:pointer;filter:drop-shadow(0 24px 24px #5f041c85)drop-shadow(0 0 18px #f0446447);background:0 0;border:0;outline:none;width:148px;height:148px;padding:0;animation:1.65s ease-in-out infinite heartBeat;position:relative;transform:translateY(4px)}.heart-button:focus-visible{outline:2px solid var(--gold);outline-offset:8px;border-radius:50%}.heart-button:active{animation:none;transform:scale(.91)}.heart-core{color:#e72d55;text-align:center;text-shadow:0 -2px #ff7d95d9,0 5px 2px #76082ab3,0 13px 17px #3d001385;width:148px;height:148px;font-family:Arial,"Noto Sans Symbols 2",sans-serif;font-size:186px;font-weight:700;line-height:1;position:absolute;top:-22px;left:50%;transform:translate(-50%)scaleX(1.16)}.heart-glint{z-index:2;filter:blur(2px);background:linear-gradient(90deg,#ffffffd1,#ffe1e64d,#0000);border-radius:50%;width:34px;height:13px;position:absolute;top:34px;left:36px;transform:rotate(-32deg)}.burst-layer{z-index:5;pointer-events:none;width:1px;height:1px;position:absolute;top:50%;left:50%}.burst-heart{color:var(--rose);font-size:var(--heart-size);opacity:0;text-shadow:0 0 8px #ff5374cc;transform:rotate(var(--angle)) translateY(0) scale(.2);animation:burst 1s var(--delay) cubic-bezier(.18, .8, .3, 1) forwards;line-height:1;position:absolute;top:0;left:0}.wish-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#ffffff0e,#ffffff04);border:1px solid #ffffff12;border-radius:18px;width:min(88vw,360px);min-height:70px;margin-top:-2px;padding:14px 36px 12px;position:relative;box-shadow:0 18px 50px #0003}.wish-card p{letter-spacing:.08em;margin:0;font-family:Songti SC,STSong,serif;font-size:13px}.wish-mark{color:#f4c78b57;font-family:Georgia,serif;font-size:34px;position:absolute;top:5px;left:15px}.wish-tip{color:#c8aeb48c;letter-spacing:.12em;margin-top:7px;font-size:9px;display:block}.scroll-note{color:#c8aeb480;letter-spacing:.22em;flex-direction:column;align-items:center;gap:8px;margin-top:auto;font-size:9px;display:flex}.scroll-note i{background:#ffffff1f;width:1px;height:28px;position:relative;overflow:hidden}.scroll-note i:after{content:"";background:var(--gold);width:1px;height:10px;animation:2s ease-in-out infinite scrollLine;position:absolute;top:-10px;left:0}.letter-section,.reasons-section,.promise-section{width:100%;max-width:480px;margin:0 auto;padding:92px 22px;position:relative}.section-label{letter-spacing:.2em;justify-content:flex-start;gap:12px;margin-bottom:28px}.section-label span{border:1px solid #f4c78b47;border-radius:50%;place-items:center;width:30px;height:30px;font-size:9px;display:grid}.section-label p{color:#f4c78ba6;margin:0;font-size:9px}.glass-letter{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(145deg,#ffffff13,#ffffff05),radial-gradient(circle at 90% 0,#d62e5624,#0000 40%);border:1px solid #ffffff17;border-radius:28px 8px;padding:34px 26px 28px;position:relative;overflow:hidden;box-shadow:0 32px 70px #0000004d,inset 0 1px #ffffff14}.glass-letter:before{content:"";background:linear-gradient(90deg, var(--ruby), transparent);width:58px;height:2px;position:absolute;top:0;left:24px;box-shadow:0 0 16px #f04464bf}.letter-date{color:#f4c78b94;letter-spacing:.2em;font-size:9px}.glass-letter h2{letter-spacing:.06em;margin:20px 0 24px;font-family:Songti SC,STSong,serif;font-size:clamp(27px,8vw,36px);font-weight:400;line-height:1.42}.glass-letter>p{color:#d3bec2;letter-spacing:.06em;margin:0 0 18px;font-family:Songti SC,STSong,serif;font-size:14px;line-height:2.08}.glass-letter strong{color:#fff3eb;font-weight:500}.signature{color:var(--gold);letter-spacing:.12em;justify-content:flex-end;align-items:center;gap:10px;margin-top:28px;font-family:Songti SC,STSong,serif;font-size:11px;display:flex}.signature b{width:30px;height:30px;color:var(--ruby);border:1px solid #f4c78b52;border-radius:50%;place-items:center;font-size:11px;display:grid}.reasons-section>h2{letter-spacing:.05em;margin:0 0 32px;font-family:Songti SC,STSong,serif;font-size:clamp(29px,8vw,38px);font-weight:400;line-height:1.42}.reasons-section>h2 em{color:var(--gold);font-style:normal}.reason-list{gap:12px;display:grid}.reason-card{background:#ffffff09;border:1px solid #ffffff12;border-radius:20px;grid-template-columns:38px 1fr;align-items:start;gap:12px;min-height:124px;padding:21px 18px;display:grid;position:relative;overflow:hidden}.reason-card:after{content:"";border:1px solid #f044641a;border-radius:50%;width:110px;height:110px;position:absolute;bottom:-52px;right:-38px}.reason-number{color:#f4c78b94;padding-top:4px;font-family:Georgia,serif;font-size:10px}.reason-card h3{letter-spacing:.12em;margin:0 0 7px;font-family:Songti SC,STSong,serif;font-size:20px;font-weight:400}.reason-card p{color:#bca5aa;letter-spacing:.04em;margin:0;font-family:Songti SC,STSong,serif;font-size:12px;line-height:1.75}.reason-card>i{color:#f044644d;font-size:10px;font-style:normal;position:absolute;top:17px;right:18px}.promise-section{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:82svh;display:flex}.promise-orbit{border:1px solid #f4c78b24;border-radius:50%;width:128px;height:128px;margin-bottom:34px;position:relative}.promise-orbit:before,.promise-orbit:after{content:"";border:1px solid #f044641f;border-radius:50%;position:absolute}.promise-orbit:before{inset:17px}.promise-orbit:after{background:radial-gradient(circle,#f044644d,#0000 66%);inset:37px;box-shadow:0 0 30px #f044642e}.promise-orbit i{z-index:1;background:var(--ruby);width:5px;height:5px;box-shadow:0 0 10px var(--ruby);border-radius:50%;animation:5s linear infinite miniOrbit;position:absolute;top:50%;left:50%}.promise-orbit i:nth-child(2){animation-duration:7s;animation-delay:-2s}.promise-orbit i:nth-child(3){background:var(--gold);box-shadow:0 0 10px var(--gold);animation-duration:9s;animation-delay:-5s}.promise-section h2{margin:0;font-family:Songti SC,STSong,serif;font-size:clamp(30px,9vw,42px);font-weight:400;line-height:1.5}.promise-section h2 strong{color:#fff1e9;letter-spacing:.22em;text-indent:.22em;text-shadow:0 0 32px #f044646b;font-size:1.4em;font-weight:400;display:block}.promise-section>p:not(.promise-small){color:var(--muted);letter-spacing:.08em;margin:22px 0 30px;font-family:Songti SC,STSong,serif;font-size:13px;line-height:2}.final-heart{cursor:pointer;background:linear-gradient(135deg,#f54b6fe6,#840d2ee6);border:1px solid #ffffff29;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-width:190px;height:52px;padding:0 24px;text-decoration:none;display:inline-flex;box-shadow:0 16px 38px #7d0a2a61,inset 0 1px #ffffff47}.final-heart:active{transform:scale(.96)}.final-heart:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.final-heart span{font-size:14px}.final-heart b{letter-spacing:.16em;font-size:12px;font-weight:500}footer{max-width:480px;padding:32px 24px max(38px, env(safe-area-inset-bottom));color:#c8aeb46b;letter-spacing:.2em;border-top:1px solid #ffffff0f;justify-content:center;align-items:center;gap:12px;margin:0 auto;font-family:Georgia,serif;font-size:8px;display:flex}footer i{color:#f04464a6;font-size:9px;font-style:normal}.intro-screen{z-index:100;padding:max(46px, env(safe-area-inset-top)) 24px max(38px, env(safe-area-inset-bottom));opacity:1;visibility:visible;background:radial-gradient(circle at 50% 42%,#ad21433d,#0000 28%),linear-gradient(160deg,#12050b 0%,#070204 72%);flex-direction:column;justify-content:center;align-items:center;transition:opacity .7s .4s,visibility 0s linear 1.1s;display:flex;position:fixed;inset:0;overflow:hidden}.intro-screen--opened{opacity:0;visibility:hidden;pointer-events:none}.intro-glow{border:1px solid #f4c78b14;border-radius:50%;width:270px;height:270px;animation:3s ease-in-out infinite introHalo;position:absolute;top:50%;left:50%;transform:translate(-50%,-62%);box-shadow:0 0 80px #f0446421,inset 0 0 80px #f0446412}.intro-glow:before,.intro-glow:after{content:"";border:1px solid #f0446412;border-radius:50%;position:absolute}.intro-glow:before{inset:-44px}.intro-glow:after{inset:42px}.envelope{z-index:1;text-align:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(145deg,#ffffff14,#ffffff05);border:1px solid #ffffff17;border-radius:26px 8px;width:min(84vw,330px);padding:68px 24px 42px;position:relative;box-shadow:0 35px 90px #00000073,inset 0 1px #ffffff14}.envelope:before,.envelope:after{content:"";transform-origin:0;background:linear-gradient(90deg,#0000,#f4c78b57,#0000);height:1px;position:absolute;bottom:0;left:0;right:0;transform:rotate(23deg)}.envelope:after{transform-origin:100%;transform:rotate(-23deg)}.seal{color:#ffd8d9;text-shadow:0 2px 6px #5a001580;background:radial-gradient(circle at 34% 28%,#ef6b84,#a8173b 58%,#650c25);border:1px solid #ffafb959;border-radius:50%;place-items:center;width:58px;height:58px;font-size:18px;display:grid;position:absolute;top:-29px;left:calc(50% - 29px);box-shadow:0 12px 30px #59001880,inset 0 1px 3px #fff6}.envelope p{color:#f4c78b94;letter-spacing:.24em;margin:0 0 11px;font-family:Georgia,Times New Roman,serif;font-size:9px}.envelope h2{letter-spacing:.16em;text-indent:.16em;margin:0;font-family:Songti SC,STSong,serif;font-size:clamp(27px,8vw,34px);font-weight:400}.intro-screen>button{z-index:1;cursor:pointer;background:#110409a3;border:1px solid #f4c78b4d;border-radius:999px;align-items:center;gap:12px;height:52px;margin-top:52px;padding:0 24px;display:inline-flex;position:relative;box-shadow:0 14px 34px #0000004d}.intro-screen>button:before{border-radius:inherit;content:"";border:1px solid #f4c78b14;position:absolute;inset:-6px}.intro-screen>button:active{transform:scale(.96)}.intro-screen>button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.intro-screen>button span{letter-spacing:.16em;font-family:Songti SC,STSong,serif;font-size:12px}.intro-screen>button i{color:var(--ruby);font-size:12px;font-style:normal;animation:1.4s ease-in-out infinite tinyBeat}.intro-footnote{bottom:max(36px, env(safe-area-inset-bottom));color:#c8aeb461;letter-spacing:.22em;margin:0;font-family:Songti SC,STSong,serif;font-size:9px;position:absolute}body[data-particle-page=true]{background:#020002;overflow:hidden}.particle-page{z-index:200;color:#fff4f6;isolation:isolate;touch-action:none;background:radial-gradient(circle at 50% 36%,#53051f2e,#0000 35%),#020002;min-height:100svh;position:fixed;inset:0;overflow:hidden}.particle-canvas{z-index:0;width:100%;height:100%;display:block;position:absolute;inset:0}.particle-vignette{z-index:1;pointer-events:none;background:linear-gradient(#0000007a,#0000 18% 76%,#000000c2),radial-gradient(#0000 42%,#000000a3 100%);position:absolute;inset:0}.particle-topbar{z-index:10;min-height:72px;padding:max(19px, env(safe-area-inset-top)) 20px 12px;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:absolute;top:0;left:0;right:0}.particle-back{color:#fff0f4c7;letter-spacing:.12em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f03086b;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:4px;width:max-content;min-height:42px;padding:0 12px 0 7px;font-size:11px;text-decoration:none;display:inline-flex}.particle-back span{margin-top:-2px;font-family:Arial,sans-serif;font-size:26px;font-weight:200;line-height:1}.particle-back:focus-visible{outline-offset:4px;outline:2px solid #ff9db6}.particle-dedication{color:#ffc3d3b8;letter-spacing:.3em;text-indent:.3em;grid-column:2;font-family:Georgia,Times New Roman,serif;font-size:10px}.particle-message{z-index:10;right:20px;bottom:max(28px, env(safe-area-inset-bottom));text-align:center;pointer-events:none;position:absolute;left:20px}.particle-message p{color:#ffa9c17a;letter-spacing:.34em;margin:0 0 9px;font-family:Georgia,Times New Roman,serif;font-size:8px}.particle-message h1{letter-spacing:.12em;text-indent:.12em;text-shadow:0 0 28px #ff528457;margin:0;font-family:Songti SC,STSong,Noto Serif SC,serif;font-size:clamp(21px,6vw,29px);font-weight:400}.particle-message span{color:#dcb6c166;letter-spacing:.16em;margin-top:10px;font-size:9px;display:block}@media (height<=650px){.particle-message{bottom:max(16px, env(safe-area-inset-bottom))}.particle-message p{display:none}}@keyframes heartBeat{0%,to{transform:translateY(4px)scale(.96)}15%{transform:translateY(4px)scale(1.04)}28%{transform:translateY(4px)scale(.99)}42%{transform:translateY(4px)scale(1.03)}62%{transform:translateY(4px)scale(.96)}}@keyframes tinyBeat{0%,to{transform:scale(.9)}35%{transform:scale(1.25)}}@keyframes halo{0%,to{opacity:.46;transform:scale(.9)}50%{opacity:.9;transform:scale(1.06)}}@keyframes introHalo{0%,to{opacity:.46;transform:translate(-50%,-62%)scale(.9)}50%{opacity:.9;transform:translate(-50%,-62%)scale(1.06)}}@keyframes orbitFloat{0%,to{transform:rotate(-13deg)translateY(0)}50%{transform:rotate(-9deg)translateY(-4px)}}@keyframes ringPulse{0%{opacity:.5;transform:scale(.68)}75%,to{opacity:0;transform:scale(1.58)}}@keyframes burst{0%{opacity:0;transform:rotate(var(--angle)) translateY(0) scale(.2)}18%{opacity:1}to{opacity:0;transform:rotate(var(--angle)) translateY(calc(-1 * var(--distance))) scale(1.1)}}@keyframes twinkle{0%,to{opacity:.18;transform:scale(.6)}50%{opacity:.9;transform:scale(1.35)}}@keyframes scrollLine{0%{transform:translateY(0)}to{transform:translateY(38px)}}@keyframes miniOrbit{0%{transform:translate(-50%,-50%)rotate(0)translate(64px)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)translate(64px)rotate(-360deg)}}@media (width>=720px){.love-page{background:radial-gradient(circle at 50% 12%,#a71f433d,#0000 26%),linear-gradient(#090307 0%,#14060c 48%,#080205 100%)}.hero{max-width:560px;margin:0 auto}.reason-card{transition:border-color .3s,transform .3s}.reason-card:hover{border-color:#f0446440;transform:translateY(-3px)}}@media (height<=700px){.hero-copy{margin-top:24px}.heart-stage{width:222px;margin-top:12px}.wish-card{transform:translateY(-8px)}.scroll-note{display:none}}@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}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
