html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:clip}.landing-backdrop{z-index:0;filter:blur(18px)saturate(1.1);background:radial-gradient(60% 50% at 50% 78%,#f6b8ca 0%,#0000 70%),radial-gradient(40% 40% at 18% 30%,#fbdce6 0%,#0000 70%),radial-gradient(40% 40% at 82% 26%,#fde4ec 0%,#0000 70%),linear-gradient(#fff 0%,#fbeff3 40%,#f7c9d7 100%);animation:0s 2.4s forwards landing-backdrop-out;position:fixed;inset:-40px;transform:scale(1.15)}@keyframes landing-backdrop-out{to{visibility:hidden}}.landing-app{z-index:1;transform-origin:50% 50vh;animation:landing-intro 1.4s var(--ease-in-out) .25s both;background:#fff;position:relative;overflow-x:clip}@keyframes landing-intro{0%{border-radius:28px;transform:scale(.9)}to{border-radius:0;transform:none}}.hero-nav{animation:hero-drop .8s var(--ease-out) 1.05s both}@keyframes hero-drop{0%{opacity:0;transform:translateY(-16px)}}.hero-word{animation:hero-word 1s var(--ease-out) both;animation-delay:calc(.95s + var(--w,0) * 80ms);will-change:transform, filter, opacity;display:inline-block}@keyframes hero-word{0%{opacity:0;filter:blur(10px);transform:translateY(24px)}}.hero-fade{animation:hero-rise .9s var(--ease-out) 1.45s both}@keyframes hero-rise{0%{opacity:0;transform:translateY(14px)}}.hero-cloud-l{animation:cloud-in-l 1.6s var(--ease-out) .4s both}.hero-cloud-r{animation:cloud-in-r 1.6s var(--ease-out) .4s both}@keyframes cloud-in-l{0%{opacity:0;transform:translate(-120px)}}@keyframes cloud-in-r{0%{opacity:0;transform:translate(120px)}}.hero-pop{animation:hero-pop .7s var(--ease-out) both;animation-delay:calc(1.2s + var(--d,0) * 1s)}@keyframes hero-pop{0%{opacity:0;transform:scale(.6)}}.hero-phone-in{animation:hero-phone 1.3s var(--ease-out) 1.1s both}@keyframes hero-phone{0%{opacity:0;transform:translateY(18%)}}.drift-a{animation:14s ease-in-out infinite alternate drift-a}.drift-b{animation:17s ease-in-out infinite alternate drift-b}@keyframes drift-a{to{transform:translate(26px,4px)}}@keyframes drift-b{to{transform:translate(-30px,6px)}}.float{animation:float var(--t,6s) ease-in-out infinite;animation-delay:var(--delay,0s);transform:rotate(var(--r,0deg))}@keyframes float{0%,to{transform:translateY(0) rotate(var(--r,0deg))}50%{transform:translateY(-14px) rotate(calc(var(--r,0deg) + 5deg))}}.twinkle{animation:twinkle var(--t,3s) ease-in-out infinite;animation-delay:var(--delay,0s)}@keyframes twinkle{0%,to{opacity:.25;transform:scale(.6)}50%{opacity:1;transform:scale(1)}}.spin-slow{transform-box:fill-box;transform-origin:50%;animation:90s linear infinite spin-slow}@keyframes spin-slow{to{transform:rotate(360deg)}}.bite-glass{aspect-ratio:1;-webkit-backdrop-filter:blur(10px)saturate(1.2);backdrop-filter:blur(10px)saturate(1.2);-webkit-mask-composite:source-in;background:#ffffff2e;border:1px solid #fff9;border-radius:12px;position:absolute;box-shadow:inset 0 1px #ffffff73;-webkit-mask-image:radial-gradient(circle at 100% 30%,#0000 18%,#000 19%),radial-gradient(circle at 70% 0,#0000 18%,#000 19%);mask-image:radial-gradient(circle at 100% 30%,#0000 18%,#000 19%),radial-gradient(circle at 70% 0,#0000 18%,#000 19%);-webkit-mask-composite:source-in;mask-composite:intersect}.flicker{animation:flicker var(--t,5s) ease-in-out infinite;animation-delay:var(--delay,0s)}@keyframes flicker{0%,to{opacity:1}50%{opacity:.2}}.sq{opacity:0;width:46px;height:46px;animation:sq-blink var(--t,4s) ease-in-out infinite;animation-delay:var(--delay,0s);border:1px solid #f6e3ea;border-radius:10px;position:absolute}@keyframes sq-blink{0%,to{opacity:0}40%,60%{opacity:1}}.fall{opacity:.9;animation:fall var(--t,12s) linear infinite;animation-delay:var(--delay,0s);position:absolute;top:-24px}.fall.petal{background:#fbdce6;border-radius:80% 0;width:11px;height:9px}.fall.sprinkle{border-radius:2px;width:4px;height:12px}@keyframes fall{to{transform:translate(var(--dx,0px), 115vh) rotate(540deg)}}.ticket{-webkit-mask:radial-gradient(15px at 0 58%,#0000 97%,#000) 0/51% 100% no-repeat,radial-gradient(15px at 100% 58%,#0000 97%,#000) 100%/51% 100% no-repeat;mask:radial-gradient(15px at 0 58%,#0000 97%,#000) 0/51% 100% no-repeat,radial-gradient(15px at 100% 58%,#0000 97%,#000) 100%/51% 100% no-repeat}.acc-track{display:flex;position:absolute;inset:0}.acc-panel{border-right:1px solid var(--color-line-soft);cursor:pointer;height:100%;transition:flex-grow .9s var(--ease-in-out);outline:none;flex:0 0 clamp(96px,11vw,170px);position:relative;overflow:hidden}.acc-panel:last-child{border-right:0}.acc-panel[data-active=true]{cursor:default;flex-grow:1}.acc-panel:focus-visible{box-shadow:inset 0 0 0 3px var(--color-pink)}.acc-in{align-items:flex-end;gap:clamp(16px,2vw,30px);width:max-content;display:flex;position:absolute;bottom:9vh;left:clamp(14px,1.8vw,28px)}.acc-num{letter-spacing:-.07em;font-size:clamp(170px,36vh,380px);font-weight:900;line-height:.74}.acc-step{opacity:0;filter:blur(6px);width:min(380px,30vw);padding-bottom:4px;transition:opacity .4s,transform .5s,filter .4s;position:relative;transform:translate(-24px)}.acc-panel[data-active=true] .acc-step{opacity:1;filter:none;transition:opacity .7s .4s, transform .9s .35s var(--ease-out), filter .7s .4s;transform:none}.acc-art{width:min(19vw,250px);position:absolute;bottom:calc(100% + clamp(40px,8vh,110px));left:-6%}@media (max-width:760px){.acc-track{flex-direction:column;margin-top:36px;position:relative;inset:auto}.acc-panel{border-right:0;border-top:1px solid var(--color-line-soft);cursor:auto;flex:none;height:auto;overflow:visible}.acc-panel:last-child{border-right:0}.acc-in{gap:18px;width:auto;padding:28px 20px;position:relative;bottom:auto;left:auto}.acc-num{font-size:132px}.acc-step,.acc-panel[data-active=true] .acc-step{opacity:1;filter:none;width:auto;transform:none}.acc-art{display:none}}.install-step{animation:hero-rise .55s var(--ease-out) both;animation-delay:calc(var(--i,0) * 90ms)}.install-ping{animation:2.2s ease-out infinite install-ping}@keyframes install-ping{0%{box-shadow:0 0 #a82f6159}70%,to{box-shadow:0 0 0 14px #a82f6100}}.install-ping-row{animation:2.2s ease-in-out infinite install-row}@keyframes install-row{50%{background-color:#f9cad8}}.install-icon{animation:install-icon 2.6s var(--ease-in-out) infinite}@keyframes install-icon{0%,60%,to{transform:none}70%{transform:translateY(-5px)}80%{transform:none}}@media (prefers-reduced-motion:reduce){.drift-a,.drift-b,.float,.twinkle,.spin-slow,.flicker,.fall{animation:none!important}.fall{display:none}.install-ping,.install-ping-row,.install-icon{animation:none!important}.sq{opacity:.6;animation:none!important}.hero-word{filter:none}}
