@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}*{box-sizing:border-box}[hidden]{display:none!important}html{background:var(--bg);scroll-padding-top:env(safe-area-inset-top,0px)}body{background:var(--bg);color:var(--fg);font:400 15px/1.6 var(--font-body);-webkit-font-smoothing:antialiased;margin:0;transition:background-color .6s,color .6s}body:before{content:"";height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg);transition:background-color .6s;position:fixed;inset:0 0 auto}img{max-width:100%}a{color:inherit;text-decoration:none;transition:color .2s}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}::selection{background:var(--pop);color:#1b1a12}.label{font:500 10.5px/1.3 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.wrap{max-width:1080px;padding-left:max(24px, env(safe-area-inset-left,0px));padding-right:max(24px, env(safe-area-inset-right,0px));margin:0 auto}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.chip{border:1px solid var(--accent);font:500 9.5px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border-radius:4px;flex:none;padding:3px 6px;display:inline-block}.chip-soft{border-color:var(--line);color:var(--muted)}h1{font:800 clamp(50px, 7.2vw, 86px) / .9 var(--font-display);letter-spacing:-.035em;margin:0}.dot{color:var(--accent);transition:transform .4s cubic-bezier(.3,1.6,.5,1);display:inline-block}h1:hover .dot{transform:translateY(-.18em)scale(1.25)}h1 .dot{cursor:pointer;transform-origin:.11em .7em;position:relative}h1 .dot.out{opacity:0}.brand i:before,h1 .dot:before{content:"";background:radial-gradient(circle at 32% 46%, var(--ink) 0 12%, transparent 13%), radial-gradient(circle at 68% 46%, var(--ink) 0 12%, transparent 13%);opacity:0;pointer-events:none;border-radius:50%;position:absolute}.brand i:before{inset:0}h1 .dot:before{width:.186em;height:.186em;top:.61em;left:.021em}.brand i.peek{animation:.9s ease-in-out peek-grow}h1 .dot.peek{animation:.9s ease-in-out peek-wiggle}.peek:before{animation:.9s ease-in-out peek-eyes}@keyframes peek-grow{0%,to{rotate:0deg;scale:1}20%,70%{scale:2.2}30%{rotate:-14deg}45%{rotate:12deg}60%{rotate:0deg}}@keyframes peek-wiggle{0%,to{rotate:0deg}25%{rotate:-12deg}45%{rotate:10deg}65%{rotate:0deg}}@keyframes peek-eyes{0%,to{opacity:0}20%,80%{opacity:1;transform:none}50%{transform:none}55%{transform:scaleY(.15)}62%{transform:none}}.lede{font:400 19px/1.45 var(--font-display);text-wrap:balance;max-width:30ch;margin:0}.lede em{color:var(--accent);font-style:normal}.facts{--cols:4;grid-template-columns:repeat(var(--cols), minmax(0, 1fr));gap:20px 28px;margin:0;display:grid}.facts>div{border-top:1px solid var(--line);flex-direction:column;gap:8px;min-width:0;padding-top:12px;transition:border-color .6s;display:flex}.facts dt{margin:0}.facts dd{font:500 12px/1.55 var(--font-mono);letter-spacing:.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0}.facts dd a{border-bottom:1px solid var(--accent)}.facts dd a:hover{color:var(--accent)}.facts dd a+a{margin-left:14px}.l{gap:14px;display:flex}.l a{z-index:1;color:var(--muted);white-space:nowrap;position:relative}.l a:hover{color:var(--accent)}.hdr{top:env(safe-area-inset-top,0px);z-index:9;background:var(--bg);border-bottom:1px solid var(--line);transition:background-color .6s,border-color .6s;position:sticky}.hdr .wrap{height:var(--hdr);justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{font:600 14px/1 var(--font-display);letter-spacing:-.01em;align-items:center;gap:10px;display:flex}.brand i{background:var(--pet);cursor:pointer;border-radius:50%;width:8px;height:8px;transition:opacity .2s;position:relative}.brand i:after{content:"";position:absolute;inset:-10px}.brand i:hover{animation:.6s wig}.brand i.out{opacity:0;animation:none}.nav{align-items:center;gap:20px;display:flex}.switch{border:1px solid var(--line);font:500 11.5px/1 var(--font-mono);letter-spacing:.04em;border-radius:999px;gap:2px;padding:3px;transition:border-color .6s;display:inline-flex}.switch a{color:var(--muted);border-radius:999px;padding:7px 13px}.switch a:hover{color:var(--fg)}.switch a.switch-under{background:var(--line);color:var(--fg);transition:background-color .6s,color .6s}.switch a[aria-current=page]{background:var(--fg);color:var(--bg);transition:background-color .6s,color .6s}.gh{font:500 11.5px/1 var(--font-mono);color:var(--muted)}.gh:hover{color:var(--accent)}@keyframes wig{0%,to{transform:none}30%{transform:translateY(-3px)scale(1.25)}60%{transform:translateY(1px)scale(.85,1.15)}}.contact{font:500 11.5px/1 var(--font-mono);flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;list-style:none;display:flex}.contact a,.copy{border-bottom:1px solid var(--line);align-items:center;gap:6px;min-height:26px;transition:color .2s,border-color .2s;display:inline-flex}.contact a:hover,.copy:hover{color:var(--accent);border-color:var(--accent)}.copy{color:inherit;font:inherit;cursor:pointer;background:0 0;border-top:0;border-left:0;border-right:0;padding:0}.copy .ok{color:var(--accent)}.copy .ok:empty{display:none}.contact-f{font:400 11.5px/1 var(--font-mono);align-items:center;gap:8px}.contact-f .contact-icon,.contact-f .copy{border:1px solid var(--line);border-radius:999px;height:34px}.contact-f .contact-icon{justify-content:center;width:34px}.contact-f .copy{gap:8px;padding:0 14px 0 12px}.contact-f svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.signup-send{left:var(--from-x);top:var(--from-y);pointer-events:none;position:absolute}.signup-plane,.signup-trail{opacity:0;animation:1s cubic-bezier(.45,0,.35,1) forwards signup-fly;position:absolute;top:0;left:0}.signup-plane{fill:none;width:18px;height:18px;stroke:var(--accent);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;margin:-9px 0 0 -9px}.signup-trail{background:var(--accent);border-radius:50%;width:3px;height:3px;margin:-1.5px 0 0 -1.5px}.signup-trail:first-child{animation-delay:.18s}.signup-trail:nth-child(2){animation-delay:.12s}.signup-trail:nth-child(3){animation-delay:60ms}.signup-thanks{animation:.45s ease-out .9s both signup-thanks-in}.signup-heart{color:var(--blush);animation:.5s cubic-bezier(.3,1.8,.5,1) 1.25s both signup-heart-pop}@keyframes signup-fly{0%{opacity:0;transform:translate(0)scale(.5)}15%{opacity:1;transform:translate(-6px,4px)scale(1)}to{opacity:0;transform:translate(26px,-72px)rotate(-8deg)scale(.9)}}@keyframes signup-thanks-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes signup-heart-pop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}footer{border-top:1px solid var(--line);transition:border-color .6s}footer .wrap{font:400 11.5px/1 var(--font-mono);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding-block:22px;display:flex}footer a:hover{color:var(--accent)}.footer-start{flex-wrap:wrap;align-items:center;gap:8px 18px;display:flex}.footer-reviews{border:1px solid var(--line);height:34px;color:var(--fg);border-radius:999px;align-items:center;gap:8px;padding:0 14px;transition:color .2s,border-color .2s;display:inline-flex}.footer-reviews:hover{border-color:var(--accent)}.footer-reviews i{background:var(--accent);border-radius:50%;width:6px;height:6px}@media (width<=860px){.facts{--cols:2}}@media (width<=560px){.wrap{padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px))}}@media (width<=520px){.gh{display:none}footer .wrap{justify-content:center;gap:16px 8px}.footer-start{display:contents}.footer-copyright{text-align:center;flex-basis:100%;order:1}.contact-f .copy{justify-content:center;width:34px;padding:0}.contact-f .copy .em,.contact-f .copy:has(.ok:not(:empty)) .contact-mail{display:none}}::view-transition-old(root),::view-transition-new(root){animation-duration:.5s;animation-timing-function:ease}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.pet{z-index:50;cursor:pointer;touch-action:manipulation;width:32px;height:32px;position:fixed;top:0;left:0}.pet>svg:first-child{width:32px;height:32px;display:block;overflow:visible}.pet-shadow{z-index:49;pointer-events:none;background:radial-gradient(closest-side,#0006,#0000);border-radius:50%;width:24px;height:6px;position:fixed;top:0;left:0}:root[data-mode=lab] .pet-shadow{background:radial-gradient(closest-side,#0003,#0000)}.pet-trail{z-index:48;pointer-events:none;font-style:normal;line-height:1;position:fixed;top:0;left:0}.pet-trail-dots{background:var(--pet);border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px;animation:.9s ease-out forwards trail-shrink}.pet-trail-flight{background:var(--pet-shade);border-radius:50%;width:3px;height:3px;margin:-1.5px 0 0 -1.5px;animation:1.6s ease-in forwards trail-fade}.pet-trail-prints{background:var(--muted);width:5px;height:3.5px;transform:translateY(var(--side));border-radius:50%;margin:-1.75px 0 0 -2.5px;animation:1.8s ease-in forwards trail-print}.pet-trail-leaves{background:var(--pet-leaf);border-radius:0 100%;width:8px;height:5px;margin:-2.5px 0 0 -4px;animation:1.6s ease-in forwards trail-fall}.pet-trail-wisps{background:color-mix(in oklab, var(--pet) 55%, var(--pet-light));filter:blur(3px);border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;animation:1.2s ease-out forwards trail-rise}.pet-trail-snow{background:#fff;border-radius:50%;width:4px;height:4px;margin:-2px 0 0 -2px;animation:1.6s ease-in forwards trail-fall}:root[data-mode=lab] .pet-trail-snow{background:var(--pet-light);box-shadow:0 0 0 .5px color-mix(in srgb, var(--ink) 25%, transparent)}.pet-trail-hearts:before{content:"♥";color:var(--blush);margin:-5px 0 0 -4px;font-size:9px;animation:1.3s ease-out forwards trail-rise;display:block}.pet-trail-hearts{animation:1.3s forwards trail-hold}.pet-trail-confetti{background:var(--c);border-radius:1px;width:5px;height:3px;margin:-1.5px 0 0 -2.5px;animation:1.3s ease-in forwards trail-fall}.pet-trail-sparkles:before{content:"✦";color:var(--pet);margin:-5px 0 0 -4px;font-size:9px;animation:1s ease-in-out forwards trail-twinkle;display:block}.pet-trail-sparkles{animation:1s forwards trail-hold}@keyframes trail-shrink{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(.3)}}@keyframes trail-fade{0%{opacity:.8}to{opacity:0}}@keyframes trail-print{0%{opacity:.5}to{opacity:0}}@keyframes trail-fall{0%{opacity:.85;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(18px) rotate(var(--turn,0deg))}}@keyframes trail-rise{0%{opacity:.6;transform:translateY(0)scale(.8)}to{opacity:0;transform:translateY(-16px)scale(1.4)}}@keyframes trail-twinkle{0%{opacity:0;transform:scale(.2)}35%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.2)rotate(45deg)}}@keyframes trail-hold{to{opacity:1}}.pet-z{font:500 10px var(--font-mono);color:var(--muted);opacity:0;pointer-events:none;position:absolute;top:-2px;left:24px}.pet-z+.pet-z{left:30px}.pet.sleep .pet-z{animation:2.4s ease-in-out infinite pet-zz}.pet.sleep .pet-z+.pet-z{animation-delay:1.2s}.pet-heart{opacity:0;pointer-events:none;width:10px;height:10px;position:absolute;top:-5px;left:11px}.pet.hop .pet-heart{animation:.9s ease-out pet-heart}.pet .sleep-only,.pet .hop-only,.pet .born-only{display:none}.pet.sleep .sleep-only{display:inline}.pet.sleep .awake-only{display:none}.pet.hop .hop-only{opacity:0;transform-box:fill-box;transform-origin:50%;animation:.9s ease-out forwards pet-extra;display:inline}.pet.born .born-only{transform-box:fill-box;transform-origin:50% 100%;animation:.6s ease-in forwards pet-born;display:inline}.pet .pet-cap{transform-box:fill-box;transform-origin:50% 100%;transition:transform .4s}.pet.hop .pet-cap{animation:.56s ease-out pet-cap}.pet[data-pet=acorn].sleep .pet-cap{transform:translateY(2.6px)rotate(-7deg)}.pet[data-pet=snowball].sleep .pet-cap{transform:translateY(3.4px)rotate(-6deg)}.pet .pet-wing-l,.pet .pet-wing-r,.pet .pet-flap-l,.pet .pet-flap-r{transform-box:fill-box;animation:.5s ease-in-out infinite pet-flutter-l}.pet .pet-wing-l,.pet .pet-flap-l{transform-origin:100% 100%}.pet .pet-wing-r,.pet .pet-flap-r{transform-origin:0 100%;animation-name:pet-flutter-r}.pet .pet-flap-l,.pet .pet-flap-r{animation-duration:.25s}.pet .pet-sway{transform-box:fill-box;transform-origin:50% 100%;animation:2.2s ease-in-out infinite pet-sway}.pet .pet-ghost{transition:fill-opacity .6s}.pet.sleep .pet-ghost{fill-opacity:.55}.pet[data-pet=ghost]>svg:first-child{animation:2.2s ease-in-out infinite pet-float}.pet[data-pet=heart]>svg:first-child{animation:1.2s ease-in-out infinite pet-beat}.pet[data-pet=mochi]>svg:first-child{transform-origin:50% 81%;transition:transform .6s}.pet[data-pet=mochi].sleep>svg:first-child{transform:scale(1.35,.62)}.pet[data-pet=party].sleep .pet-cap{transform:translate(-3px,6px)rotate(-38deg)}.pet[data-pet=pumpkin].sleep .pet-cap{transform:rotate(-38deg)}.pet[data-pet=pumpkin].hop .f path{animation:.9s ease-out pet-glow}.pet .pet-lights circle{transform-box:fill-box;transform-origin:50%;animation:1.8s ease-in-out infinite pet-twinkle}.pet .pet-lights circle:nth-child(2n){animation-delay:-.9s}.pet .pet-lights circle:nth-child(3n){animation-delay:-.5s}.pet.sleep .pet-lights,.pet.sleep .pet-star{opacity:.4;transition:opacity .6s}.pet.sleep .pet-lights circle{animation:none}.pet .pet-star,.pet .pet-sparkle{transform-box:fill-box;transform-origin:50%}.pet.hop .pet-star{animation:.7s ease-out pet-spin}.pet.hop .pet-lights circle{animation:.25s ease-in-out 3 pet-flash}.pet .pet-sparkle{animation:2.4s ease-in-out infinite pet-twinkle}.pet .pet-lantern{transform-box:fill-box;transform-origin:27% 0;animation:2.6s ease-in-out infinite pet-swing}.pet .pet-lantern-light{transform-box:fill-box;transform-origin:50%;transition:opacity .6s}.pet.sleep .pet-lantern-light{opacity:.35}.pet.sleep .pet-lantern{animation:none}.pet.hop .pet-lantern-light{animation:.9s ease-out pet-lantern}.pet .pet-flame{transform-box:fill-box;transform-origin:50% 100%}.pet.hop .pet-flame{animation:.9s ease-out pet-flare}.pet[data-pet=lantern]>svg:first-child{transform-origin:50% 6%;animation:2.6s ease-in-out infinite pet-swing}.pet[data-pet=lantern].sleep>svg:first-child{animation:none}.pet.hop .pet-lantern-body{animation:.9s ease-out pet-glow-red}@keyframes pet-flare{30%,60%{transform:scale(1.5)}}@keyframes pet-glow-red{30%,60%{fill:#ff8a6a}}@keyframes pet-twinkle{50%{opacity:.45;transform:scale(.8)}}@keyframes pet-flash{50%{opacity:.2}}@keyframes pet-spin{to{transform:rotate(144deg)scale(1)}40%{transform:rotate(80deg)scale(1.35)}}@keyframes pet-swing{0%,to{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}@keyframes pet-lantern{30%,70%{fill:#fff;transform:scale(1.25)}}.pet[data-pet=owl]>svg:first-child{transform-origin:50% 70%;animation:3.4s ease-in-out infinite pet-tilt}.pet[data-pet=penguin]>svg:first-child{transform-origin:50% 85%;animation:1s ease-in-out infinite pet-waddle}.pet[data-pet=owl].sleep>svg:first-child,.pet[data-pet=penguin].sleep>svg:first-child{animation:none}.pet.hop .pet-tongue{transform-origin:0 100%;animation:.6s ease-out forwards pet-tongue}.pet .pet-flicker{transform-box:fill-box;transform-origin:50% 100%;animation:.7s ease-in-out infinite pet-flicker}.pet .pet-smoke{animation:2.2s ease-out infinite pet-smoke}@keyframes pet-glow{15%,60%{fill:#f5c451}}@keyframes pet-tilt{0%,30%,to{transform:none}40%,55%{transform:rotate(-9deg)}65%,85%{transform:rotate(7deg)}}@keyframes pet-waddle{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}@keyframes pet-tongue{0%{opacity:1;transform:scale(0)}30%,60%{opacity:1;transform:scale(1)}to{opacity:1;transform:scale(0)}}@keyframes pet-flicker{0%,to{transform:scale(1)rotate(-3deg)}50%{transform:scale(.9,1.12)rotate(3deg)}}@keyframes pet-smoke{0%{opacity:0;transform:translateY(1px)}30%{opacity:.9}to{opacity:0;transform:translateY(-4px)}}@keyframes pet-extra{0%{opacity:0;transform:scale(.3)}18%{opacity:1;transform:scale(1.1)}30%,75%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1)}}@keyframes pet-born{0%{opacity:1;transform:none}to{opacity:0;transform:translate(3px,-12px)rotate(25deg)}}@keyframes pet-cap{40%{transform:translateY(-3.5px)rotate(-10deg)}}@keyframes pet-flutter-l{50%{transform:rotate(-18deg)}}@keyframes pet-flutter-r{50%{transform:rotate(18deg)}}@keyframes pet-sway{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}@keyframes pet-float{50%{transform:translateY(-2px)}}@keyframes pet-beat{12%{transform:scale(1.07)}24%{transform:scale(.98)}34%{transform:scale(1.04)}45%{transform:none}}@keyframes pet-zz{0%{opacity:0;transform:none}25%{opacity:1}to{opacity:0;transform:translate(8px,-14px)}}@keyframes pet-heart{0%{opacity:0;transform:translateY(4px)scale(.6)}25%{opacity:1}to{opacity:0;transform:translateY(-16px)scale(1)}}
