/* Motion and Byte's playground */
.hero-stage{background:#294cff;isolation:isolate;height:490px}.hero-webgl{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y;cursor:grab;z-index:1}.hero-webgl:active{cursor:grabbing}.hero-webgl:focus-visible{outline:3px solid #daff65;outline-offset:-5px}.hero-stage.webgl-ready>img{display:none}.hero-stage.webgl-ready:after{display:none}.stage-label{z-index:2;pointer-events:none}.stage-label a{pointer-events:auto}.stage-sticker{z-index:2}.stage-bottom{pointer-events:none;bottom:28px}.play-controls{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:3}.play-controls button{border:1px solid #aab8ff;background:#1839bf;color:#fff;border-radius:24px;padding:11px 18px;min-height:44px;cursor:pointer;font-size:.875rem;transition:background .2s,transform .2s}.play-controls button:hover{background:#daff65;color:#17191c;transform:translateY(-3px)}.play-hint{position:absolute;left:28px;top:118px;color:#f0f2ff;font-size:.8125rem;z-index:2;pointer-events:none;max-width:170px;line-height:1.6}.hero-stage:not(.webgl-ready) .play-controls,.hero-stage:not(.webgl-ready) .play-hint{display:none}.webgl-ready .stage-bottom span:first-child{font-size:1.1rem}.webgl-ready .stage-bottom span:last-child{font-size:.75rem}.webgl-ready .stage-label{background:#daff65}.webgl-ready .stage-sticker{background:#fff;box-shadow:5px 7px 0 #142d9a}.arrival{transition:opacity .75s ease,translate .8s cubic-bezier(.2,.75,.2,1);transition-delay:var(--delay,0ms)}.arrival:not(.entered){opacity:0;translate:0 36px}.arrival.entered{opacity:1;translate:0 0}.statement h1{animation:headline-in .95s cubic-bezier(.16,1,.3,1) both}.statement h1 em{display:inline-block;animation:word-in 1.15s .16s cubic-bezier(.16,1,.3,1) both}.statement-side{animation:headline-in 1s .18s both}.btn{position:relative;overflow:hidden;isolation:isolate;transition:transform .25s,box-shadow .25s,background .25s}.btn:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at var(--px,50%) var(--py,50%),#ffffff38,transparent 60%);opacity:0;pointer-events:none;transition:opacity .25s}.btn:hover:after{opacity:1}.btn:hover{transform:translateY(-4px);box-shadow:4px 5px 0 #17191c!important}.btn:active{transform:translateY(0);box-shadow:1px 1px 0 #17191c!important}.btn span{transition:transform .3s}.btn:hover span{transform:translate(3px,-3px)}.path-card{transition:transform .4s,box-shadow .4s}.path-card:hover{transform:translateY(-9px);box-shadow:9px 10px 0 #294cff}.path-body h3 span{transition:transform .35s}.path-card:hover .path-body h3 span{transform:rotate(45deg)}.text-link{transition:color .2s,gap .3s}.text-link:hover{gap:30px}.image-chip{transition:translate .35s}.path-card:hover .image-chip{translate:0 4px}.nav__links a:not(.btn){transition:color .2s,translate .2s}.nav__links a:not(.btn):hover{translate:0 -2px}.byte-pet{position:fixed;top:0;left:0;width:96px;height:96px;background:transparent;border:0;padding:0;cursor:pointer;z-index:1050;will-change:transform;overflow:visible;filter:drop-shadow(0 7px 5px #141b4528)}.byte-pet canvas{width:96px;height:96px;display:block;pointer-events:none}.byte-fallback{font-size:3rem;display:block}.byte-pet.has-model .byte-fallback{display:none}.byte-label{position:absolute;bottom:-11px;left:50%;translate:-50% 0;background:#17191c;color:white;border:1px solid #fff;padding:5px 9px;border-radius:20px;font-size:.75rem;white-space:nowrap;line-height:1.1}.byte-pet:hover .byte-label,.byte-pet:focus-visible .byte-label{background:#294cff}.byte-chat{position:fixed;bottom:32px;right:132px;width:370px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 115px);background:#fafaf7;box-shadow:10px 12px 0 #17191c22,0 18px 65px #17191c25;border:1px solid #17191c;z-index:1100;display:flex;flex-direction:column;animation:chat-in .2s ease-out}.byte-chat[hidden]{display:none}.byte-chat header{padding:20px;background:#294cff;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px}.byte-chat header strong{display:block;font-family:var(--font-head);font-size:1.125rem;letter-spacing:-.03em}.byte-chat header span{font-size:.8125rem;color:#e2e8ff;display:block;margin-top:3px}.byte-close{border:0;background:transparent;color:#fff;font-size:1.75rem;cursor:pointer;min-width:44px;min-height:44px}.byte-log{overflow:auto;overscroll-behavior:contain;padding:18px;display:flex;flex-direction:column;gap:14px;min-height:120px;max-height:320px}.byte-message{background:#e9edff;border-radius:0 14px 14px;padding:13px 14px;font-size:.875rem;line-height:1.6;color:#202437;margin-right:16px;overflow-wrap:anywhere}.byte-message p{margin:0}.byte-message.user{background:#e4f3bf;margin-right:0;margin-left:24px;border-radius:14px 0 14px}.byte-message a{display:block;margin-top:10px;color:#203bcb;font-weight:600;min-height:28px}.byte-choices{display:flex;flex-wrap:wrap;gap:7px;padding:0 18px 14px}.byte-choices button{cursor:pointer;background:transparent;color:#203bcb;border:1px solid #a4afd9;border-radius:24px;font-size:.8125rem;padding:9px 12px;min-height:40px}.byte-choices button:hover{background:#daff65;border-color:#809648}.byte-form{display:flex;border-top:1px solid #d0d2d9;margin:0;padding:12px;gap:8px}.byte-form input{width:0;flex:1;min-width:0;background:#fff;border:1px solid #a7abb6;padding:12px;font-family:inherit;color:#17191c}.byte-form button{background:#294cff;color:white;border:0;width:46px;min-height:46px;font-size:1.5rem;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.motion-toggle{position:fixed;bottom:12px;left:12px;z-index:1040;cursor:pointer;font-family:inherit;font-size:.75rem;color:#17191c;background:#fafaf7eF;border:1px solid #c6c7c2;border-radius:20px;padding:9px 13px;min-height:36px}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-paused .arrival{opacity:1!important;translate:none!important}.motion-paused .btn:hover,.motion-paused .path-card:hover{transform:none!important}.motion-paused .stage-sticker{transform:none!important}
@keyframes headline-in{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes word-in{from{opacity:0;transform:translateY(55px) rotate(7deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes chat-in{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@media(max-width:900px){.webgl-ready .stage-bottom{bottom:80px}.webgl-ready .stage-bottom span:last-child{display:none}.hero-stage{height:490px}.play-hint{top:110px;max-width:130px}.stage-sticker{width:144px;height:155px}.byte-chat{right:118px;width:350px}}
@media(max-width:600px){.hero-stage{height:470px}.stage-sticker{display:none}.play-hint{top:77px;left:16px;max-width:none;font-size:.75rem}.stage-label{top:16px;font-size:.75rem}.stage-bottom{left:16px}.webgl-ready .stage-bottom{bottom:85px}.play-controls{bottom:22px;width:max-content;gap:6px}.play-controls button{padding:10px 15px;font-size:.8125rem}.byte-chat{right:16px;bottom:135px;width:calc(100vw - 32px);max-height:calc(100dvh - 220px)}.byte-log{max-height:220px}.byte-chat header{padding:14px 16px}.byte-choices{gap:5px}.byte-choices button{font-size:.75rem;padding:8px 10px}.path-card:hover{transform:none;box-shadow:none}.motion-toggle{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.arrival{opacity:1!important;translate:none!important}*{animation:none!important;transition:none!important}}
.play-controls[hidden]{display:none}
.byte-pet:before{content:'';position:absolute;width:30px;height:5px;border-radius:50%;background:#141b45;opacity:var(--air-shadow,.3);left:33px;top:88px;z-index:-1;pointer-events:none}.byte-label{bottom:auto;top:8px;left:50%;opacity:0;transition:opacity .2s;translate:-50% -100%}.byte-pet:hover .byte-label,.byte-pet:focus-visible .byte-label{opacity:1}.byte-pet[data-movement=land]:before{animation:byte-contact .28s ease-out}.motion-paused .byte-label{opacity:1}@keyframes byte-contact{0%{scale:.7 1}45%{scale:1.45 .7}100%{scale:1 1}}
