.hero-stage{--bld1:#fff;--bld2:#e4f1fe;--cap:#a9cdf0;--win:#d4eaff;--win-lit:#d4eaff;--door:#8dbbe8;--aw1:#ffc83d;--aw2:#fff;--ground:#dceefc;--road:#fff;--cable:#b3d3f1;--flow:#2b8cf0;--leaf:#3dbe84;--trunk:#9c7a55;--cloud:#fff;--sun:#ffc83d;--moon:#f2f6ff;--pin:#0e1b2c;--pin-dot:#ffc83d;--bubble:#2b8cf0;--bubble-ink:#fff;--neon:#8dbbe8;--van:#2b8cf0;--van-win:#d4eaff;--chip:#fff;--chip-ink:#0b63c4;--accent:#2b8cf0;--sky-top:#bfe2ff;--sky-bot:#f5faff;--surface:#fff;--sun-cta:#ffc83d;--sun-cta-ink:#0e1b2c;--shadow:0 22px 60px #1e508c24;--lamp:0;--stars:0;--sun-y:0px;--moon-y:900px;--ease-out:cubic-bezier(.16, 1, .3, 1);--town-h:clamp(240px, 30.7vw, 470px);padding-bottom:calc(var(--town-h) * .72);background:linear-gradient(180deg, var(--sky-top) 0%, var(--sky-bot) 78%);position:relative;overflow:hidden}[data-theme=dark] .hero-stage{--bld1:#13233d;--bld2:#182b49;--cap:#24395c;--win:#1c2f4d;--win-lit:#ffd45c;--door:#0c182b;--aw1:#c99a1e;--aw2:#1b2d49;--ground:#0c1a2f;--road:#2a3e5c;--cable:#22385a;--flow:#7cc2ff;--leaf:#1f4a3d;--trunk:#2b2620;--cloud:#15263f;--pin:#ffc83d;--pin-dot:#081325;--bubble:#4da3ff;--bubble-ink:#081325;--neon:#ffd45c;--van:#4da3ff;--van-win:#ffd45c;--chip:#4da3ff;--chip-ink:#081325;--accent:#4da3ff;--sky-top:#030a18;--sky-bot:#0b1a33;--surface:#0b1729;--shadow:0 22px 70px #00000073;--lamp:1;--stars:1;--sun-y:900px;--moon-y:0px}.hero-stage .hero-copy{z-index:2;position:relative}.hero-cta{background:var(--sun-cta);color:var(--sun-cta-ink);box-shadow:0 10px 30px color-mix(in srgb, var(--sun-cta) 45%, transparent)}.hero-cta:hover{background:#ffd666}.hero-ghost{border:1.5px solid color-mix(in srgb, var(--accent) 35%, transparent);background:color-mix(in srgb, var(--surface) 55%, transparent)}.hero-ghost:hover{border-color:var(--accent)}.hero-stage:has(.hero-cta:hover,.hero-cta:focus-visible) .flow{animation-duration:.5s}.hero-stage:has(.hero-cta:hover,.hero-cta:focus-visible) .radar{animation-duration:1.2s}.hero-sky{z-index:0;pointer-events:none;position:absolute;inset:0}.hero-sky .star{width:3px;height:3px;opacity:calc(var(--stars) * .85);background:#fff6d0;border-radius:50%;transition:opacity .8s;position:absolute;box-shadow:0 0 6px #fff6d0}.hero-sky .meteor{opacity:0;background:linear-gradient(90deg,#fff6d0,#0000);border-radius:2px;width:120px;height:2px;position:absolute;top:6%;left:70%;transform:rotate(-24deg)}.hero-sky .cloud{width:130px;fill:var(--cloud);opacity:.95;position:absolute;left:0}.hero-sky .cloud.c1{top:12%}.hero-sky .cloud.c2{width:90px;top:30%}.hero-sky .cloud.c3{width:160px;top:50%}.hero-sky .kite{width:84px;position:absolute;top:15%;left:6%;overflow:visible}.hero-sky .kite-face{fill:var(--accent)}.hero-sky .kite-line{fill:none;stroke:var(--surface);stroke-width:2px}.hero-sky .kite-tail{fill:none;stroke:var(--sun);stroke-width:3px;stroke-linecap:round}.hero-sky .kite-string{fill:none;stroke:var(--color-ink-500);stroke-width:1px;opacity:.5}.hero-sky .search{width:250px;position:absolute;top:44%;left:5%}.hero-sky .search-bar{background:var(--surface);height:42px;box-shadow:var(--shadow);color:var(--color-ink-300);border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:.875rem;display:flex}.hero-sky .search-bar svg{fill:none;width:16px;height:16px;stroke:var(--color-ink-500);stroke-width:2.4px;stroke-linecap:round;flex:none}.hero-sky .typed{white-space:nowrap;overflow:hidden}.hero-sky .caret{background:var(--accent);width:2px;height:16px}.hero-sky .result{background:var(--surface);box-shadow:var(--shadow);color:var(--color-ink-500);border-radius:14px;align-items:center;gap:8px;margin-top:8px;padding:10px 14px;font-size:.8125rem;display:flex}.hero-sky .result svg{width:18px;height:18px;fill:var(--accent);flex:none}.hero-sky .result svg circle{fill:var(--surface)}.hero-sky .result b{color:var(--color-ink-100)}.hero-sun{z-index:1;cursor:pointer;background:0 0;border:0;border-radius:50%;width:104px;height:104px;padding:0;position:absolute;top:96px;right:7%}.hero-sun:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.hero-sun svg{width:100%;height:100%;overflow:visible}.hero-sun .sky-sun,.hero-sun .sky-moon{transform-box:view-box;transition:transform 1.2s var(--ease-out), opacity .9s}.hero-sun .sky-sun{transform:translateY(var(--sun-y));opacity:calc(1 - var(--stars))}.hero-sun .sky-moon{transform:translateY(var(--moon-y));opacity:var(--stars)}.hero-sun .rays path{fill:none;stroke:var(--sun);stroke-width:6px;stroke-linecap:round}.hero-sun .sky-sun circle{fill:var(--sun)}.hero-sun .disc{fill:var(--moon)}.hero-sun .cut{fill:var(--sky-top)}.hero-town{z-index:1;height:var(--town-h);position:absolute;bottom:0;left:0;right:0}.hero-town svg{width:100%;height:100%;display:block}.hero-town svg *{transform-box:fill-box}.hero-town .b1{fill:var(--bld1)}.hero-town .b2{fill:var(--bld2)}.hero-town .cap{fill:var(--cap)}.hero-town .door{fill:var(--door)}.hero-town .w{fill:var(--win)}.hero-town .w.on{fill:var(--win-lit)}.hero-town .aw1{fill:var(--aw1)}.hero-town .aw2{fill:var(--aw2)}.hero-town .ground{fill:var(--ground)}.hero-town .road{fill:var(--road)}.hero-town .cable{fill:none;stroke:var(--cable);stroke-width:1.5px}.hero-town .flow{fill:none;stroke:var(--flow);stroke-width:2px;stroke-linecap:round;stroke-dasharray:2 14;opacity:.9}.hero-town .leaf{fill:var(--leaf)}.hero-town .trunk{fill:var(--trunk)}.hero-town .pin path{fill:var(--pin)}.hero-town .pin circle{fill:var(--pin-dot)}.hero-town .ripple{fill:none;stroke:var(--accent);stroke-width:1.5px;opacity:0}.hero-town .bubble rect,.hero-town .bubble path.tail{fill:var(--bubble)}.hero-town .bubble .dots circle{fill:var(--bubble-ink)}.hero-town .bubble .tick{fill:none;stroke:var(--bubble-ink);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;opacity:0}.hero-town .board{fill:var(--surface);stroke:var(--cap);stroke-width:2px}.hero-town .bar{fill:var(--sun)}.hero-town .neon rect{fill:none;stroke:var(--neon);stroke-width:2px}.hero-town .neon text{fill:var(--neon);font:700 12px var(--font-sans,system-ui), sans-serif;letter-spacing:2px}.hero-town .lamp-head{fill:var(--cap)}.hero-town .lamp-glow{fill:#facc15;opacity:calc(var(--lamp) * .14);transition:opacity .8s}.hero-town .radar{fill:none;stroke:var(--accent);stroke-width:1.5px;opacity:0}.hero-town .plane{fill:var(--surface);stroke:var(--accent);stroke-width:1.5px;stroke-linejoin:round;offset-rotate:auto;offset-distance:0%;opacity:0}.hero-town .plus{opacity:0}.hero-town .plus rect{fill:var(--chip)}.hero-town .plus text{fill:var(--chip-ink);font:700 11px var(--font-sans,system-ui), sans-serif}.hero-town .rate{transform-origin:50%}.hero-town .rate path{fill:var(--sun);stroke:#0e1b2c;stroke-width:.6px}.hero-town .van{transform:translate(-200px)}.hero-town .van.l{transform:translate(1400px,14px)}.hero-town .van text{fill:#fff;font:700 10px var(--font-sans,system-ui), sans-serif}.hero-town .van-body{fill:var(--van)}.hero-town .van-win{fill:var(--van-win)}.hero-town .wheel{transform-origin:50%}.hero-town .wheel circle{fill:#0e1b2c}.hero-town .wheel line{stroke:#fff;stroke-width:2px}.hero-town .beam{fill:#ffe9a8;opacity:calc(var(--lamp) * .35)}.hero-ticker{scrollbar-width:none;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.hero-ticker::-webkit-scrollbar{display:none}.hero-track{gap:16px;width:max-content;margin:0;padding:8px 16px;list-style:none;display:flex}@media (prefers-reduced-motion:no-preference){.is-live .cloud{animation:ht-cloud var(--d,70s) linear infinite;animation-delay:var(--delay,0s)}.is-live .cloud.c1{--d:75s;--delay:-10s}.is-live .cloud.c2{--d:95s;--delay:-60s}.is-live .cloud.c3{--d:120s;--delay:-35s}.is-live .kite-body{transform-origin:60px 92px;transform-box:view-box;animation:4.6s ease-in-out infinite alternate ht-kite}.is-live .kite-tail{transform-origin:60px 92px;transform-box:view-box;animation:1.6s ease-in-out infinite alternate ht-tail}.is-live .typed{animation:7s steps(18,end) infinite ht-typing}.is-live .caret{animation:1s step-end infinite ht-caret}.is-live .result{animation:ht-result 7s var(--ease-out) infinite}.is-live .rays{transform-origin:60px 60px;transform-box:view-box;animation:40s linear infinite ht-spin}[data-theme=dark] .is-live .star{animation:ht-twinkle var(--t,3s) ease-in-out infinite;animation-delay:var(--delay,0s)}[data-theme=dark] .is-live .meteor{animation:9s ease-in infinite ht-meteor}.is-live .flow{animation:1.6s linear infinite ht-flow}.is-live .sway{transform-origin:50% 100%;animation:ht-sway var(--d,5s) ease-in-out infinite alternate}.is-live .aw{transform-origin:50% 0;animation:3.4s ease-in-out infinite alternate ht-awning;animation-delay:var(--delay,0s)}.is-live .pin{animation:ht-pin 6s var(--ease-out) infinite;animation-delay:var(--delay,0s)}.is-live .ripple{transform-origin:50%;animation:6s ease-out infinite ht-ripple;animation-delay:var(--delay,0s)}.is-live .bubble{transform-origin:50% 100%;animation:ht-bubble 5.5s var(--ease-out) infinite;animation-delay:var(--delay,0s)}.is-live .bubble .dots{animation:5.5s step-end infinite ht-dots-out;animation-delay:var(--delay,0s)}.is-live .bubble .dots circle{animation:.9s ease-in-out infinite ht-dot}.is-live .bubble .dots circle:nth-child(2){animation-delay:.15s}.is-live .bubble .dots circle:nth-child(3){animation-delay:.3s}.is-live .bubble .tick{animation:ht-tick 5.5s var(--ease-out) infinite;animation-delay:var(--delay,0s)}.is-live .bar{transform-origin:50% 100%;animation:ht-bar 2.6s var(--ease-out) infinite alternate;animation-delay:var(--delay,0s)}.is-live .radar{transform-origin:50%;animation:2.8s ease-out infinite ht-radar;animation-delay:var(--delay,0s)}.is-live .grow{transform-origin:50% 100%;animation:ht-grow 7s var(--ease-out) infinite}.is-live .plane{animation:ht-plane var(--d,5s) var(--ease-out) infinite;animation-delay:var(--delay,0s)}.is-live .plus{animation:ht-plus 4.5s var(--ease-out) infinite;animation-delay:var(--delay,0s)}.is-live .rate{animation:ht-rate 5.5s var(--ease-out) infinite;animation-delay:calc(-3.5s + var(--i) * 90ms)}.is-live .van{animation:44s linear infinite ht-van;animation-delay:var(--delay,0s)}.is-live .van.l{animation-name:ht-van-l;animation-duration:48s}.is-live .wheel{animation:.6s linear infinite ht-spin}[data-theme=dark] .is-live .w.on{animation:9s step-end infinite ht-lights;animation-delay:var(--delay,0s)}[data-theme=dark] .is-live .neon{animation:4s step-end infinite ht-neon}[data-theme=dark] .is-live .lamp-glow{animation:3s ease-in-out infinite alternate ht-lamp}.is-live .hero-ticker{overflow:hidden}.is-live .hero-track{animation:60s linear infinite ht-marquee}.is-live .hero-ticker:hover .hero-track,.is-live .hero-ticker:focus-within .hero-track{animation-play-state:paused}}@media (prefers-reduced-motion:reduce){.hero-sun .sky-sun,.hero-sun .sky-moon{transition:none}}@keyframes ht-cloud{0%{transform:translate(-200px)}to{transform:translate(calc(100vw + 40px))}}@keyframes ht-kite{0%{transform:rotate(-7deg)translate(-4px,4px)}to{transform:rotate(6deg)translate(6px,-8px)}}@keyframes ht-tail{0%{transform:skew(-8deg)}to{transform:skew(8deg)}}@keyframes ht-typing{0%{clip-path:inset(0 100% 0 0)}35%,92%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes ht-caret{50%{opacity:0}}@keyframes ht-result{0%,38%{opacity:0;transform:translateY(-6px)scale(.96)}46%,88%{opacity:1;transform:none}96%,to{opacity:0;transform:translateY(-6px)scale(.96)}}@keyframes ht-spin{to{transform:rotate(360deg)}}@keyframes ht-twinkle{0%,to{opacity:.15;transform:scale(.7)}50%{opacity:.9;transform:scale(1.15)}}@keyframes ht-meteor{0%,82%{opacity:0;transform:rotate(-24deg)translate(0)}84%{opacity:1}92%,to{opacity:0;transform:rotate(-24deg)translate(-320px)}}@keyframes ht-flow{to{stroke-dashoffset:-32px}}@keyframes ht-sway{0%{transform:rotate(-3deg)}to{transform:rotate(3deg)}}@keyframes ht-awning{0%{transform:scaleY(1)}to{transform:scaleY(.86)}}@keyframes ht-pin{0%{opacity:0;transform:translateY(-70px)}8%{opacity:1}18%{transform:translateY(0)}23%{transform:translateY(-10px)}28%,80%{opacity:1;transform:translateY(0)}90%,to{opacity:0;transform:translateY(0)}}@keyframes ht-ripple{0%,17%{opacity:0;transform:scale(.2)}20%{opacity:.9}50%,to{opacity:0;transform:scale(2.6)}}@keyframes ht-bubble{0%{transform:scale(0)}8%,88%{transform:scale(1)}96%,to{transform:scale(0)}}@keyframes ht-dot{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes ht-dots-out{0%{opacity:1}50%{opacity:0}}@keyframes ht-tick{0%,50%{opacity:0;stroke-dashoffset:24px}52%{opacity:1}64%,to{opacity:1;stroke-dashoffset:0}}@keyframes ht-bar{0%{transform:scaleY(.35)}to{transform:scaleY(1)}}@keyframes ht-radar{0%{opacity:.9;transform:scale(.3)}to{opacity:0;transform:scale(3.2)}}@keyframes ht-grow{0%{transform:scale(.4)}30%,to{transform:scale(1)}}@keyframes ht-plane{0%{offset-distance:0%;opacity:0}10%{opacity:1}80%{offset-distance:100%;opacity:1}90%,to{offset-distance:100%;opacity:0}}@keyframes ht-plus{0%{opacity:0;transform:translateY(8px)}15%{opacity:1;transform:translateY(0)}70%{opacity:1;transform:translateY(-34px)}to{opacity:0;transform:translateY(-46px)}}@keyframes ht-rate{0%,64%{transform:scale(0)}70%,90%{transform:scale(1)}96%,to{transform:scale(0)}}@keyframes ht-van{0%{transform:translate(-200px)}30%,to{transform:translate(1400px)}}@keyframes ht-van-l{0%{transform:translate(1400px,14px)}30%,to{transform:translate(-200px,14px)}}@keyframes ht-lights{0%,62%{opacity:1}63%{opacity:.25}66%,to{opacity:1}}@keyframes ht-neon{0%,70%{opacity:1}72%{opacity:.3}74%{opacity:1}76%{opacity:.4}78%,to{opacity:1}}@keyframes ht-lamp{0%{opacity:calc(var(--lamp) * .1)}to{opacity:calc(var(--lamp) * .2)}}@keyframes ht-marquee{to{transform:translate(-50%)}}@media (max-width:1280px){.hero-sky .search{display:none}}@media (max-width:900px){.hero-sky .kite{display:none}.hero-sun{width:72px;height:72px;top:88px;right:5%}}@media (max-width:767px){.hero-sun{width:52px;height:52px;top:84px}.hero-stage{padding-bottom:calc(var(--town-h) * .82)}}
.spot{--mx:50%;--my:50%}.spot:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(22rem circle at var(--mx) var(--my), color-mix(in srgb, var(--color-gold-400) 14%, transparent), transparent 60%);transition:opacity .3s;position:absolute;inset:0}.spot:hover:after{opacity:1}.tilt{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .45s cubic-bezier(.16,1,.3,1),translate .3s,border-color .3s,background-color .3s,box-shadow .3s}.mini{width:100%;max-width:168px;height:auto;margin-bottom:20px;display:block;overflow:visible}.mini *{transform-box:fill-box}.mini .frame{fill:var(--color-ink-900);stroke:var(--color-ink-700);stroke-width:2px}.mini .ink{fill:var(--color-ink-300)}.mini .soft{fill:var(--color-ink-700)}.mini .g{fill:var(--color-gold-400)}.mini .gs{fill:none;stroke:var(--color-gold-400);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.mini .ls{fill:none;stroke:var(--color-ink-500);stroke-width:2px;stroke-linecap:round}.mini .gear{fill:none;stroke:var(--color-ink-300);stroke-width:7px;stroke-dasharray:5 4}.mini .gear.gold{stroke:var(--color-gold-400)}.icon.mini{flex:none;width:34px;height:34px;margin:0}@media (prefers-reduced-motion:no-preference){.home-motion [data-words] .word{opacity:0;filter:blur(6px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1),filter .6s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--i) * 40ms);display:inline-block;transform:translateY(.45em)}.home-motion [data-words].in .word{opacity:1;filter:none;transform:none}.home-motion [data-reveal]{opacity:0;transition:opacity .45s cubic-bezier(0,0,.2,1),transform .6s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--i,0) * 80ms);transform:translateY(24px)}.home-motion [data-reveal].in{opacity:1;transform:none}.home-motion .outcome-bar{transform-origin:top;transition:transform .6s cubic-bezier(.16,1,.3,1),opacity .3s;transform:scaleY(0)}.home-motion .in .outcome-bar{transform:scaleY(1)}.home-motion .meter-bar{transform-origin:0;transition:transform 1s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--i,0) * .18s + .2s);transform:scaleX(0)}.home-motion .meter.in .meter-bar{transform:scaleX(1)}.home-motion .cta-shine{animation:14s ease-in-out infinite alternate home-shine}.home-motion .play .m-build{transform-origin:0;animation:5s cubic-bezier(.16,1,.3,1) infinite m-build;animation-delay:var(--delay,0s)}.home-motion .play .m-fade{animation:5s infinite m-fade;animation-delay:var(--delay,0s)}.home-motion .play .m-caret{animation:1s step-end infinite m-caret}.home-motion .play .m-scan{animation:3.6s ease-in-out infinite alternate m-scan}.home-motion .play .m-line{stroke-dasharray:160;animation:4s cubic-bezier(.16,1,.3,1) infinite m-draw}.home-motion .play .m-cw{transform-origin:50%;animation:6s linear infinite m-spin}.home-motion .play .m-ccw{transform-origin:50%;animation:4.5s linear infinite reverse m-spin}.home-motion .play .m-slide{animation:3s cubic-bezier(.16,1,.3,1) infinite alternate m-slide;animation-delay:var(--delay,0s)}.home-motion .play .m-pulse{stroke-dasharray:3 9;animation:1.2s linear infinite m-flow}.home-motion .play .m-twinkle{transform-origin:50%;animation:2.4s ease-in-out infinite m-sparkle;animation-delay:var(--delay,0s)}.home-motion .play .m-pin{animation:4s cubic-bezier(.16,1,.3,1) infinite m-pin}.home-motion .play .m-tick{stroke-dasharray:30;animation:4s cubic-bezier(.16,1,.3,1) .6s infinite m-tick}.home-motion .play .m-sprout{transform-origin:50% 100%;animation:4s cubic-bezier(.16,1,.3,1) 1.2s infinite m-sprout}}@keyframes home-shine{to{transform:translate(8%,6%)}}@keyframes m-build{0%{transform:scaleX(0)}20%,85%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes m-fade{0%,25%{opacity:0}40%,85%{opacity:1}to{opacity:0}}@keyframes m-caret{50%{opacity:0}}@keyframes m-scan{0%{transform:translate(0)}to{transform:translate(64px,8px)}}@keyframes m-draw{0%{stroke-dashoffset:160px}45%,85%{stroke-dashoffset:0}to{stroke-dashoffset:-160px}}@keyframes m-spin{to{transform:rotate(360deg)}}@keyframes m-slide{0%{transform:translate(0)}to{transform:translate(14px)}}@keyframes m-flow{to{stroke-dashoffset:-32px}}@keyframes m-sparkle{0%,to{opacity:.2;transform:scale(.3)rotate(0)}50%{opacity:1;transform:scale(1)rotate(45deg)}}@keyframes m-pin{0%{opacity:0;transform:translateY(-70px)}8%{opacity:1}18%{transform:translateY(0)}23%{transform:translateY(-10px)}28%,80%{opacity:1;transform:translateY(0)}90%,to{opacity:0;transform:translateY(0)}}@keyframes m-tick{0%{stroke-dashoffset:30px}30%,85%{stroke-dashoffset:0}to{stroke-dashoffset:30px}}@keyframes m-sprout{0%{transform:scale(.2)}35%,85%{transform:scale(1)}to{transform:scale(.2)}}
