@font-face{font-family:"Jersey 10";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/jersey10-regular.ttf) format("truetype")}@font-face{font-family:Tiny5;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/tiny5-regular.ttf) format("truetype")}:root{font-family:Tiny5,ui-monospace,monospace;color:#101115;background:#f8f3e8;font-synthesis:none;text-rendering:geometricPrecision;--paper: #f8f3e8;--ink: #101115;--gray: #b8b4aa;--orange: #ff5a1f;--blue: #2054f4}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;min-height:100%;margin:0}body{min-height:100vh;overflow:hidden;-webkit-font-smoothing:none;font-smooth:never}button,a{-webkit-tap-highlight-color:transparent}.page{position:relative;isolation:isolate;width:100vw;height:100dvh;min-height:620px;overflow:hidden;background-color:var(--paper);background-image:url(/assets/pixel-grid-tile.png);background-position:top left;background-repeat:repeat;background-size:512px 512px}.headline{position:relative;z-index:5;display:flex;flex-direction:column;align-items:flex-start;width:max-content;max-width:94vw;margin:0;padding:clamp(68px,10.7vh,110px) 0 0 clamp(30px,6.2vw,96px);color:var(--ink);font-family:"Jersey 10",Impact,sans-serif;font-size:clamp(104px,16.9vw,260px);font-weight:400;line-height:.72;letter-spacing:.008em;text-transform:uppercase;pointer-events:none}.headline span{display:block;white-space:nowrap}.game-stage{position:absolute;z-index:3;top:0;right:0;bottom:0;left:0;cursor:crosshair;touch-action:none}.route-path,.foundation-module,.blueprint-module,.loose-module,.rover-image,.carried-module,.direction-button img{image-rendering:pixelated;image-rendering:crisp-edges}.route-path{position:absolute;z-index:1;left:22%;bottom:4%;width:min(78vw,1200px);height:auto;opacity:.9;pointer-events:none}.blueprint{position:absolute;z-index:2;left:51%;top:43%;width:min(45vw,700px);height:min(31vw,360px);pointer-events:none}.foundation-module,.blueprint-module{position:absolute;z-index:var(--module-layer);left:var(--module-x);top:var(--module-y);width:clamp(78px,9.4vw,144px);height:auto;transform:translate(-50%,-50%) scale(var(--module-scale));transform-origin:50% 70%;filter:drop-shadow(5px 6px 0 rgb(16 17 21 / .13))}.foundation-module{opacity:.84;filter:drop-shadow(4px 5px 0 rgb(16 17 21 / .1));pointer-events:none}.blueprint-module.is-planned{opacity:.48;filter:grayscale(.75) drop-shadow(4px 5px 0 rgb(16 17 21 / .08))}.blueprint-module.is-built{animation:module-arrive .42s steps(4,end) both}.blueprint-module.is-next{z-index:20;opacity:1;animation:target-pulse 1.4s steps(2,end) infinite}.blueprint-module.is-ready{animation:target-ready .3s steps(2,end) infinite alternate}.loose-module{position:absolute;z-index:5;left:var(--piece-x);top:var(--piece-y);width:clamp(72px,8.2vw,126px);height:auto;transform:translate(-50%,-50%);filter:drop-shadow(5px 6px 0 rgb(16 17 21 / .13));pointer-events:none;animation:module-idle 1.6s steps(2,end) infinite}.rover{position:absolute;z-index:12;left:var(--rover-x);top:var(--rover-y);width:clamp(170px,15vw,232px);transform:translate(-50%,-55%);pointer-events:none;filter:drop-shadow(6px 7px 0 rgb(16 17 21 / .14))}.rover-image{display:block;width:100%;height:auto;object-fit:contain;animation:rover-idle 1.8s steps(2,end) infinite}.rover.is-moving .rover-image{animation:rover-drive .24s steps(2,end) infinite alternate}.carried-module{position:absolute;z-index:14;top:18%;right:-28%;width:46%;height:auto;filter:drop-shadow(3px 4px 0 rgb(16 17 21 / .12));animation:carried-bob .72s steps(2,end) infinite}.rover[data-facing=w] .carried-module,.rover[data-facing=nw] .carried-module,.rover[data-facing=sw] .carried-module,.rover[data-facing=n] .carried-module,.rover[data-facing=ne] .carried-module{right:auto;left:-28%}.rover[data-facing=n] .carried-module,.rover[data-facing=s] .carried-module{top:6%}.rover[data-facing=n] .carried-module{left:-24%}.rover[data-facing=s] .carried-module{right:-24%}.rover[data-facing=nw] .carried-module,.rover[data-facing=w] .carried-module{left:-34%}.direction-pad{position:absolute;z-index:30;left:clamp(30px,5.7vw,88px);bottom:clamp(108px,15.6vh,160px);display:grid;grid-template:repeat(2,56px) / repeat(3,56px);gap:6px;cursor:default}.direction-button{display:grid;place-items:center;width:56px;height:56px;padding:0;border:2px solid var(--ink);border-radius:0;color:var(--ink);background:#f8f3e8eb;box-shadow:4px 4px #10111529;cursor:pointer;transition:translate 80ms steps(1,end),box-shadow 80ms steps(1,end)}.direction-button:hover,.direction-button:focus-visible{background:#fffaf0;outline:3px solid var(--blue);outline-offset:3px}.direction-button:active{translate:3px 3px;box-shadow:1px 1px #1011152e}.direction-button img{width:24px;height:24px}.direction-button--up{grid-area:1 / 2}.direction-button--left{grid-area:2 / 1}.direction-button--down{grid-area:2 / 2}.direction-button--right{grid-area:2 / 3}.contact-link{position:absolute;z-index:40;left:clamp(30px,5.7vw,88px);bottom:clamp(34px,7.8vh,80px);color:var(--ink);font-family:"Jersey 10",Tiny5,ui-monospace,monospace;font-size:clamp(24px,2.1vw,32px);font-weight:400;line-height:1;letter-spacing:.025em;text-decoration-color:var(--orange);text-decoration-thickness:3px;text-underline-offset:9px}.contact-link:hover,.contact-link:focus-visible{color:var(--blue);outline:3px solid var(--orange);outline-offset:6px;text-decoration-color:var(--blue)}.page--celebrating .blueprint{animation:blueprint-finish .9s steps(4,end)}.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}@keyframes rover-idle{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes rover-drive{0%{transform:translateY(0)}to{transform:translateY(-4px)}}@keyframes module-idle{0%,to{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - 5px))}}@keyframes carried-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes module-arrive{0%{opacity:0;transform:translate(-50%,-75%) scale(.72)}to{opacity:1;transform:translate(-50%,-50%) scale(var(--module-scale))}}@keyframes target-pulse{0%,to{opacity:.62}50%{opacity:1}}@keyframes target-ready{0%{opacity:1;transform:translate(-50%,-50%) scale(var(--module-scale))}to{opacity:.7;transform:translate(-50%,-50%) scale(calc(var(--module-scale) + .08))}}@keyframes blueprint-finish{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media(max-width:760px){.page{min-height:560px;background-size:384px 384px}.headline{max-width:96vw;padding-top:max(32px,5.3vh);padding-left:5vw;font-size:19vw;line-height:.84}.blueprint{left:18%;top:33%;width:80vw;height:55vw}.blueprint-module,.foundation-module{width:clamp(64px,22vw,92px)}.route-path{left:-18%;bottom:5%;width:145vw}.rover{width:clamp(160px,48vw,190px)}.loose-module{width:clamp(64px,23vw,90px)}.direction-pad{left:7vw;bottom:64px;grid-template:repeat(2,48px) / repeat(3,48px);gap:5px}.direction-button{width:48px;height:48px;border-width:2px;box-shadow:3px 3px #10111529}.direction-button img{width:21px;height:21px}.contact-link{left:7vw;bottom:34px;font-size:26px}.foundation-module--spare{margin-top:-4vw;margin-left:12vw}}@media(max-height:700px)and (min-width:761px){.headline{padding-top:38px;font-size:min(21vh,148px)}.blueprint{top:38%}.direction-pad{bottom:94px}.contact-link{bottom:28px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
