@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#15243a;background:#f3f5f9;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #e1e6ed}.brand{font-family:Manrope,sans-serif;letter-spacing:-1.8px;font-weight:800;font-size:30px}.brand span{color:#3268ef}.brand b{font-size:10px;vertical-align:top;letter-spacing:0;margin-left:5px}.edition,.eyebrow,.label,.scene-top,footer{font-size:11px;letter-spacing:1.8px;font-weight:600}.edition{color:#788698}.contact{font-size:13px;border:1px solid #d2dbe8;padding:13px 20px;border-radius:25px}.contact span{margin-left:20px}main{max-width:1600px;margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;min-height:690px;align-items:center;padding:12px 3vw 12px 5vw}.intro{position:relative;z-index:1;padding:40px 0}.eyebrow{display:flex;align-items:center;gap:9px;color:#68788e}.eyebrow span{height:6px;width:6px;background:#366df5;border-radius:50%}h1{font-family:Manrope,sans-serif;font-size:clamp(42px,4.6vw,76px);line-height:1.08;letter-spacing:-3.5px;font-weight:500;margin:30px 0 25px}h1 em{font-style:normal;color:#3268ef}.intro>p{color:#748197;line-height:1.8;font-size:15px}.action{display:flex;gap:20px;align-items:center;margin-top:32px}#grab{border:0;background:#265fe4;color:white;padding:17px 22px;border-radius:30px;font-weight:500;box-shadow:0 10px 25px #245cdb20;white-space:nowrap}#grab span{margin-left:20px}#grab:disabled{opacity:.6;cursor:wait}.tip{font-size:11px;line-height:1.7;color:#7b889a}.discovery{border-top:1px solid #dce3ed;max-width:385px;margin-top:42px;padding-top:20px;min-height:125px}.label{color:#7e8c9e;font-size:10px}.discovery h2{font-size:21px;font-weight:500;letter-spacing:-.5px;margin:10px 0 8px}.discovery p{color:#748197;font-size:13px;line-height:1.6;margin:0;max-width:330px}.stage{position:relative;height:650px;min-width:0;background:radial-gradient(ellipse at 55% 50%,#ffffff 0,#eef2f8 60%,#f3f5f9 78%);border-radius:40px}#scene{position:absolute;inset:0}#scene canvas{width:100%;height:100%;display:block;touch-action:pan-y}.scene-top{position:absolute;left:30px;right:30px;top:22px;display:flex;justify-content:space-between;color:#8c98ab;font-size:9px;pointer-events:none}#state{letter-spacing:1.2px}.scene-bottom{position:absolute;bottom:20px;left:30px;right:30px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#7b889d}.scene-bottom>div:first-child{display:flex;align-items:center;gap:9px}.live-dot{width:6px;height:6px;border-radius:50%;background:#3268ef}.steering{display:flex;gap:6px}.steering button{border:1px solid #d8e0ec;background:#ffffffb0;border-radius:50%;width:36px;height:36px;color:#607087}.steering button:disabled{opacity:.4}footer{margin:0 5vw;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #dfe5ed;height:75px;color:#8995a7;font-size:9px}footer b{color:#3268ef;font-size:19px;margin-left:8px}.fallback{position:absolute;inset:80px 20px;background:#f3f5f9;text-align:center;padding:70px 20px;z-index:5}.fallback[hidden]{display:none}.fallback button{padding:15px;border:0;background:#265fe4;color:white;border-radius:24px}:focus-visible{outline:3px solid #3268ef;outline-offset:5px}@media(min-width:1500px){.stage{height:750px}}@media(max-width:1050px){.edition{display:none}.action{align-items:flex-start;flex-direction:column;gap:12px}h1{letter-spacing:-2px}.stage{height:620px}.tip br{display:none}}@media(max-width:720px){header{height:75px;padding:0 6vw}.brand{font-size:25px}.contact{font-size:11px;padding:10px 12px}.contact span{margin-left:8px}main{grid-template-columns:1fr;padding:0 5vw;gap:0}.intro{padding:35px 3vw 0}.eyebrow{font-size:9px}h1{font-size:46px;margin:20px 0;letter-spacing:-2px}.intro>p{font-size:13px}.action{flex-direction:row;align-items:center;gap:15px;margin-top:22px}#grab{font-size:12px;padding:15px 17px}#grab span{margin-left:9px}.tip{font-size:10px}.discovery{margin-top:25px;padding-top:15px;min-height:105px;max-width:none}.discovery h2{font-size:18px}.stage{height:490px;margin:0 -4vw}.scene-top{top:18px;left:25px;right:25px}.scene-bottom{left:25px;right:25px;bottom:16px}footer{height:60px;font-size:8px;letter-spacing:1px}footer>span:last-child{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
/* Machine console: drag joystick, hold direction, press the arcade button. */
#scene{bottom:158px}.stage{height:760px}.arcade-console{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);width:min(400px,92%);border-radius:22px;background:linear-gradient(145deg,#fdfefe,#e2e9f4);border:1px solid #d2dcea;box-shadow:0 10px 0 #c4cfdf,0 16px 26px #24375213;padding:10px 20px 12px;color:#536580}.console-status{display:flex;justify-content:center;align-items:center;gap:8px;min-height:20px;font-size:11px;text-align:center}.console-row{display:flex;align-items:center;justify-content:space-around;gap:16px}.joystick-group,.drop-group{display:flex;flex-direction:column;align-items:center;gap:4px}.joystick{position:relative;touch-action:none;user-select:none;width:94px;height:88px;cursor:grab}.joystick:active{cursor:grabbing}.stick-base{position:absolute;width:50px;height:34px;left:22px;top:41px;border-radius:50%;background:radial-gradient(ellipse at 50% 40%,#617289,#243247 65%);box-shadow:0 4px 0 #152239,0 6px 8px #26354a30}.stick-shaft{position:absolute;width:11px;height:35px;left:41px;top:27px;border-radius:5px;background:linear-gradient(90deg,#8b9cb2,#ffffff 40%,#a4b2c4);transform-origin:50% 100%;pointer-events:none}.stick-ball{position:absolute;left:26px;top:15px;width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 30% 22%,#99c6ff,#418cf9 37%,#1652c7 76%);box-shadow:inset -3px -4px 6px #0e3fa650,0 5px 10px #1e467d35;pointer-events:none}.joystick-direction{position:absolute;font-size:9px;color:#8998ae}.joystick-direction.up{top:0;left:43px}.joystick-direction.down{bottom:0;left:43px}.joystick-direction.left{left:0;top:38px}.joystick-direction.right{right:0;top:38px}.console-label{font-size:8px;letter-spacing:1.3px;font-weight:600}.arcade-drop{width:66px;height:66px;border-radius:50%;border:5px solid #dee5ef;background:radial-gradient(circle at 35% 25%,#ffa79d,#f35d54 45%,#d0313b);box-shadow:0 5px 0 #9f2e36,0 7px 0 5px #ccd6e4,inset 0 2px 1px #ffc9bc;display:grid;place-items:center;color:white;margin:7px 0 10px}.arcade-drop span{font-size:24px}.arcade-drop:active{transform:translateY(4px);box-shadow:0 1px 0 #9f2e36,0 3px 0 5px #ccd6e4}.arcade-drop:disabled{opacity:.6;cursor:wait}.dpad{display:grid;grid-template-columns:32px 32px 32px;gap:3px}.dpad button{height:32px;border:1px solid #cbd6e7;border-radius:9px;background:#f9fbfe;color:#5f718b;touch-action:none;font-size:13px;padding:0}.dpad button:first-child{grid-column:2}.dpad button:nth-child(2){grid-column:1;grid-row:2}.dpad button:nth-child(3){grid-column:2;grid-row:2}.dpad button:nth-child(4){grid-column:3;grid-row:2}.dpad button.held,.dpad button:active{background:#cfdef4}.keyboard-hint{font-size:9px;text-align:center;color:#8290a5;margin-top:9px}.joystick[aria-disabled=true]{opacity:.5;cursor:wait}.drop-group{gap:0}.embed{background:#f9f8f5}.embed header,.embed .intro,.embed footer{display:none}.embed main{display:block;min-height:0;max-width:850px;margin:auto;padding:0}.embed .stage{height:650px;background:transparent;border-radius:0}.embed .scene-top{display:none}.embed .arcade-console{bottom:20px}.embed .stage #scene{bottom:162px}.embed .keyboard-hint{font-size:10px}@media(max-width:720px){.stage{height:700px;margin:0}.arcade-console{width:min(360px,94%);padding:9px 12px}.console-row{gap:8px}.console-status{font-size:10px}.embed .stage{height:610px}.embed .stage #scene{bottom:172px}.embed .arcade-console{bottom:20px}.keyboard-hint{font-size:8px}.dpad{grid-template-columns:30px 30px 30px}.dpad button{height:30px}}
.embed{min-height:100vh}.embed .stage{height:100vh;min-height:540px}

.embed .stage{min-height:440px}.embed .arcade-console{bottom:17px}.embed .stage #scene{bottom:157px}
