@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Jost:wght@300;400;500&display=swap";:root{--space: #0b0510;--fg: #f3ece4;--dim: rgba(243,236,228,.55);--amber: #f7c59f;--flame: #ff7aa2;--rose: #ff9ec0;--ice: #c9a7ff;--skew: 0deg;--ease: cubic-bezier(.2,.7,.2,1);--expo: cubic-bezier(.16,1,.3,1);--serif: "Cormorant Garamond", Georgia, serif;font-family:Jost,Arial,sans-serif;font-synthesis:none;color:var(--fg);background:var(--space)}*{box-sizing:border-box}html,body{margin:0;background:var(--space);overscroll-behavior:none}html,body{height:100%;overflow:hidden}body{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}::selection{background:var(--flame);color:#fff}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.gl{position:fixed;inset:0;z-index:0;display:block;width:100%;height:100%;touch-action:none;outline:none}.fx{position:fixed;inset:0;z-index:6;width:100%;height:100%;pointer-events:none}.vignette{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at center,transparent 55%,rgba(8,2,10,.6))}.progress{position:fixed;z-index:7;top:22vh;bottom:22vh;right:max(10px,1.4vw);width:14px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;pointer-events:none}.progress i{font-style:normal;font-size:7px;height:8px;line-height:8px;color:var(--fg);opacity:.18;transform:scale(.8);transition:opacity .5s,color .5s,transform .6s var(--expo),text-shadow .5s}.progress i.on{opacity:.9;color:var(--flame);transform:none;text-shadow:0 0 8px var(--flame)}.progress b{position:absolute;left:50%;top:0;translate:-50% -50%;font-weight:400;font-size:18px;line-height:1;color:var(--rose);text-shadow:0 0 12px var(--flame),0 0 24px var(--flame);animation:beat 1.2s ease-in-out infinite}@keyframes beat{0%,40%,to{transform:scale(1)}15%{transform:scale(1.3)}28%{transform:scale(1.1)}}.eyebrow{margin:0 0 22px;display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.44em;text-transform:uppercase;color:var(--amber);font-weight:500}.eyebrow i{width:42px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 1.2s var(--expo) .1s}.eyebrow i:last-child{transform-origin:right}.on .eyebrow i,.ready .eyebrow i,.show .eyebrow i{transform:none}.wd,.mask{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .05em .16em;margin:0 -.05em -.16em}.ch,.w{display:inline-block;transform:translate3d(0,115%,0) rotate(7deg);transform-origin:left bottom;transition:transform 1.2s var(--expo)}.ch{transition-delay:calc(var(--i) * 45ms + .15s)}.w{transition-delay:calc(var(--i) * 45ms + .2s)}.on .ch,.on .w,.greet-line.on .w{transform:none}.gate{position:fixed;inset:0;z-index:20;display:grid;place-items:center;text-align:center;background:var(--space);transition:background 1.6s}.gate.ready{background:transparent}.gate-inner{display:flex;flex-direction:column;align-items:center;transform:translateY(-3vh)}.gate .eyebrow,.gate-note,.touch-light .label{opacity:0;transition:opacity 1.2s .9s}.gate.ready .eyebrow,.gate.ready .touch-light .label{opacity:1}.gate.ready .gate-note{opacity:.45}.gate .eyebrow{margin-bottom:9vh}.touch-light{position:relative;width:150px;height:150px;border-radius:50%;border:0;background:none;cursor:pointer;display:grid;place-items:center;pointer-events:none}.gate.ready .touch-light{pointer-events:auto}.touch-light .halo{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(247,197,159,.5);opacity:0}.gate.ready .halo{animation:halo 2.6s var(--ease) infinite 1s}@keyframes halo{0%{transform:scale(.3);opacity:0}30%{opacity:1}to{transform:scale(1.25);opacity:0}}.touch-light .label{position:absolute;top:calc(100% + 22px);white-space:nowrap;font-size:12px;letter-spacing:.36em;text-transform:uppercase}.touch-light:hover .halo,.touch-light:focus-visible .halo{border-color:var(--amber)}.gate-note{margin:70px 0 0;font-size:10px;letter-spacing:.3em;text-transform:uppercase}.gate.leaving{pointer-events:none}.touch-light:focus{outline:none}.story,.progress,.audio{transition:opacity 1.4s .4s}body:not(.started) :is(.story,.progress,.audio){opacity:0}.loader{position:absolute;left:max(24px,5vw);right:max(24px,5vw);bottom:max(28px,5vh);display:flex;align-items:flex-end;gap:24px;transition:opacity .8s,transform 1s var(--expo)}.gate.ready .loader{opacity:0;transform:translateY(30px)}.load-num{font-family:var(--serif);font-size:clamp(64px,12vw,160px);line-height:.8;font-style:italic;color:var(--amber);min-width:3.2ch;text-shadow:0 0 40px rgba(255,122,162,.5)}.load-num b{font-weight:400}.loader i{flex:1;height:1px;background:#f3ece41f;margin-bottom:14px;position:relative}.loader i b{position:absolute;inset:0;background:linear-gradient(90deg,var(--flame),var(--ice));transform-origin:left;transform:scaleX(0)}.load-note{position:absolute;right:0;bottom:28px;font-size:10px;letter-spacing:.3em;text-transform:uppercase;opacity:.45}.pill{position:relative;border:1px solid rgba(247,197,159,.5);border-radius:999px;padding:17px 34px;background:#ff7aa214;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:12px;letter-spacing:.28em;text-transform:uppercase;cursor:pointer;overflow:hidden}.pill:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,var(--flame),var(--rose));transform:translateY(101%);transition:transform .6s var(--expo)}.pill:hover:before,.pill:focus-visible:before{transform:none}.pill:active{scale:.96}.pill span{position:relative}.top{position:fixed;z-index:5;top:0;left:0;right:0;display:flex;justify-content:flex-end;align-items:center;padding:max(22px,env(safe-area-inset-top)) max(24px,4vw) 0;pointer-events:none}.audio{pointer-events:auto;width:44px;height:44px;border-radius:50%;padding:0;display:grid;place-items:center;cursor:pointer;background:#ffffff08;border:1px solid rgba(243,236,228,.35)}.audio:hover{border-color:var(--amber)}.bars{display:flex;align-items:center;gap:3px;height:14px}.bars i{width:2px;height:100%;background:currentColor;border-radius:1px;animation:eq 1s ease-in-out infinite}.bars i:nth-child(2){animation-delay:-.3s}.bars i:nth-child(3){animation-delay:-.6s}.bars i:nth-child(4){animation-delay:-.15s}@keyframes eq{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.audio.muted .bars i{animation:none;transform:scaleY(.15)}.story{position:fixed;top:0;left:0;right:0;z-index:2;pointer-events:none;will-change:transform}.panel{height:100vh;height:100svh;display:flex;align-items:center;padding:0 max(28px,7vw);position:relative;overflow:hidden}.panel.right{justify-content:flex-end}.panel.center{justify-content:center;align-items:flex-end;padding-bottom:15vh;text-align:center}.panel.center .eyebrow{justify-content:center}.copy{position:relative;max-width:min(440px,34vw);transform:translate3d(0,calc(var(--d, 0) * -90px),0) skewY(var(--skew));opacity:calc(1 - var(--a, 0) * 1.6);will-change:transform,opacity}.center .copy{max-width:none}.copy button{pointer-events:auto}.title{margin:0 0 18px;font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(80px,11vw,180px);line-height:.9;letter-spacing:-.02em;white-space:nowrap;text-shadow:0 0 60px rgba(255,122,162,.35)}.sub{margin:0 auto;max-width:400px;font-size:14px;line-height:1.7;color:var(--dim)}.line{margin:0;font-family:var(--serif);font-size:clamp(30px,3.2vw,50px);line-height:1.14;font-weight:400;text-wrap:balance;text-shadow:0 2px 30px rgba(0,0,0,.8)}.big-num{position:absolute;bottom:-5vh;z-index:-1;font-family:var(--serif);font-style:italic;font-size:clamp(200px,42vh,460px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(247,197,159,.18);transform:translate3d(0,calc(var(--d, 0) * -45vh),0);opacity:calc(1 - var(--a, 0));pointer-events:none}.left .big-num{left:max(16px,3vw)}.right .big-num{right:max(16px,6vw)}.cue{position:absolute;left:50%;bottom:26px;translate:-50% 0;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:10px;letter-spacing:.4em;text-transform:uppercase;opacity:calc(.6 - var(--a, 0))}.cue span{width:1px;height:46px;background:linear-gradient(transparent,var(--fg));animation:cue 2.2s var(--ease) infinite}@keyframes cue{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform:scaleY(1);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.wish{justify-content:center;align-items:stretch;padding-top:14vh;padding-bottom:8vh;text-align:center}.wish .copy{max-width:560px;display:flex;flex-direction:column;align-items:center}.wish .eyebrow{justify-content:center}.wish .line{font-size:clamp(26px,2.6vw,38px)}.blow{position:relative;margin-top:auto;width:118px;height:118px;border-radius:50%;border:0;padding:0;cursor:pointer;--p: 0;display:grid;place-items:center;font-size:10px;line-height:1.6;letter-spacing:.24em;text-transform:uppercase;color:var(--fg);background:#1e0a1e8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 0 calc(14px + var(--p) * 60px) rgba(255,122,162,calc(.25 + var(--p) * .6));user-select:none;-webkit-user-select:none;touch-action:none}.blow svg{position:absolute;inset:0;width:100%;height:100%;rotate:-90deg;fill:none;stroke-width:2}.blow circle{stroke:#ffffff26}.blow circle.fill{stroke:var(--amber);stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--p));stroke-linecap:round}.blow:after{content:"";position:absolute;inset:-10px;border-radius:50%;border:1px solid rgba(247,197,159,.5);animation:ping 2.2s var(--ease) infinite}@keyframes ping{0%{transform:scale(.85);opacity:1}to{transform:scale(1.35);opacity:0}}.blow.holding{scale:.92}.blow.holding span{animation:shiver .07s linear infinite}@keyframes shiver{50%{translate:1px 0}}.celebrate .wish .copy{opacity:0;transition:opacity .6s}.greeting{position:fixed;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:15vh 24px max(8vh,40px);text-align:center;pointer-events:none;visibility:hidden}.greeting.show{visibility:visible}.greeting.show button{pointer-events:auto}.greeting .eyebrow{justify-content:center;color:var(--rose);opacity:0;transition:opacity 1s}.greeting.show .eyebrow{opacity:1}.greeting>div,.greeting .bottom{display:flex;flex-direction:column;align-items:center}.greet-line{min-height:3em;max-width:560px;margin:auto 0 30px;font-family:var(--serif);font-size:clamp(20px,2.2vw,28px);line-height:1.35;text-shadow:0 2px 20px #000}.greeting .pill{opacity:0;transform:translateY(20px);transition:opacity 1s 2.5s,transform 1.2s var(--expo) 2.5s}.greeting.show .pill{opacity:1;transform:none}@media(max-aspect-ratio:9/10){.panel,.panel.right{justify-content:flex-start;align-items:flex-end;padding-bottom:max(64px,10vh)}.panel.center{justify-content:center;padding-bottom:12vh}.copy{max-width:none}.title{font-size:clamp(76px,23vw,124px)}.line{font-size:clamp(25px,7vw,34px)}.big-num{left:auto!important;right:-2vw!important;bottom:auto;top:6vh;font-size:22vh;-webkit-text-stroke-color:rgba(247,197,159,.1)}.wish{justify-content:center;padding-top:12vh;padding-bottom:7vh}.wish .line{font-size:clamp(22px,6vw,28px)}.blow{width:104px;height:104px}}@media(prefers-reduced-motion:reduce){.ch,.w{transition-duration:.3s;transition-delay:0s}.cue span,.bars i,.blow:after,.gate.ready .halo{animation:none}.copy,.big-num{transform:none}}
