@font-face{font-family:Roundo;src:url(/vendor/fonts/Roundo-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Roundo;src:url(/vendor/fonts/Roundo-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Comico;src:url(/vendor/fonts/Comico-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Roundo fallback;src:local("Arial");size-adjust:102.5%;ascent-override:92%;descent-override:22%;line-gap-override:9%}@font-face{font-family:Comico fallback;src:local("Arial Bold"),local("Arial");size-adjust:113%;ascent-override:110%;descent-override:36%;line-gap-override:9%}:root{--sky: #54a4d7;--ink: #241a10;--accent: #e96b14;--dirt: #c3a04b;--grass: #55a543;--cream: #dbd2b6;--steel: #5c6b76;--cloud: #ffffff;--sky-lo: color-mix(in oklch, var(--sky), white 26%);--dirt-lo: color-mix(in oklch, var(--dirt), var(--ink) 14%);--dirt-hi: color-mix(in oklch, var(--dirt), white 16%);--grass-lo: color-mix(in oklch, var(--grass), var(--ink) 22%);--ink-2: color-mix(in oklch, var(--ink), var(--cream) 45%);--shade: color-mix(in oklch, var(--ink), transparent 74%);--t-hero: clamp(26px, 4.2vw, 62px);--t-head: clamp(16px, 1.45vw, 19px);--t-body: clamp(14px, 1.2vw, 16px);--t-label: clamp(12px, .98vw, 13px);--t-micro: clamp(10px, .8vw, 11px);--pad: 12px;--gap: 8px;--margin: 2.4vh;--radius: 10px;--radius-inner: max(0px, calc(var(--radius) - var(--pad)));--ease: cubic-bezier(.34, 1.3, .5, 1);--dur: .22s;--z-world: 1;--z-char: 2;--z-front: 3;--z-note: 8;--z-overlay: 40;--wu: 1vw;--world-w: calc(620 * var(--wu));--base: 14vh;--char-h: clamp(280px, 54vh, 620px);--char-w: calc(var(--char-h) * .38);--char-x: 20vw;--sign-h: 56vh;--sign-x: 52;--post-h: 40vh;--post-x: 1;--mark-h: 34vh;--dig-h: 40vh;--heap-h: 22vh;--heap-y: 15.4vh;--dig-dx: 48vh;--pipe-h: 30vh;--beam-h: 13vh;--beam-y: 55vh}*,*:before,*:after{box-sizing:border-box}html{background:var(--sky)}body{margin:0;background:var(--sky);color:var(--ink);font-family:Roundo,Roundo fallback,system-ui,sans-serif;font-weight:500;font-size:var(--t-body);font-synthesis:none;-webkit-text-size-adjust:100%;cursor:url(/art/cursor-hat.webp) 24 20,auto}h1,h2,.shout{text-wrap:balance;margin:0}p,li{text-wrap:pretty}img{display:block;-webkit-user-drag:none;user-select:none}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.stage{position:fixed;inset:0;overflow:hidden;z-index:var(--z-world)}.sky{position:absolute;inset:0;background:linear-gradient(to bottom,var(--sky) 0%,var(--sky) 52%,var(--sky-lo) 100%)}.hills{position:absolute;left:0;bottom:var(--base);width:400vw;height:30vh;background:url(/art/hills.webp) bottom left / auto 100% repeat-x}.clouds{position:absolute;left:0;top:4vh;width:400vw;height:26vh;background:url(/art/clouds.webp) top left / auto 100% repeat-x}.dirt{position:absolute;left:0;right:0;bottom:0;height:calc(var(--base) + 2vh);background:linear-gradient(to bottom,var(--dirt-hi) 0 6%,var(--dirt) 6% 100%)}.grit{position:absolute;left:0;bottom:0;width:var(--world-w);height:calc(var(--base) + 2vh);background-repeat:repeat-x;background-size:34vh 100%;background-image:radial-gradient(.5vh .28vh at 12% 46%,var(--dirt-lo) 0 99%,transparent 100%),radial-gradient(.34vh .2vh at 44% 72%,var(--dirt-lo) 0 99%,transparent 100%),radial-gradient(.62vh .3vh at 71% 34%,var(--dirt-lo) 0 99%,transparent 100%),radial-gradient(.4vh .22vh at 88% 62%,var(--dirt-hi) 0 99%,transparent 100%)}.cam{position:absolute;left:0;top:0;bottom:0;width:var(--world-w);will-change:translate}.cam.back{z-index:var(--z-world)}.cam.front{z-index:var(--z-front)}@keyframes drive{to{translate:calc(100vw - var(--world-w)) 0}}@keyframes drive-mid{to{translate:calc((100vw - var(--world-w)) * .42) 0}}@keyframes drive-slow{to{translate:calc((100vw - var(--world-w)) * .13) 0}}@keyframes drive-drift{to{translate:calc((100vw - var(--world-w)) * .06) 0}}.cam,.grit{animation:drive linear both;animation-timeline:scroll(root block)}.hills{animation:drive-slow linear both;animation-timeline:scroll(root block)}.clouds{animation:drive-drift linear both;animation-timeline:scroll(root block)}.prop{position:absolute;transform-origin:50% 100%}.prop img{height:100%;width:auto}.prop:after{content:"";position:absolute;left:4%;right:4%;bottom:-1.2vh;height:2.4vh;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,var(--shade) 0 60%,transparent 100%)}.prop.hangs:after{display:none}.hoist{position:absolute;bottom:92%;width:.55vh;height:60vh;background:var(--steel)}.beam-ca{position:absolute;left:32%;right:6%;top:37.7%;height:40.5%;padding-inline:5%;font-size:var(--t-head);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--cream);font-variant-numeric:tabular-nums;background:none;border:0;font-family:inherit;cursor:inherit;overflow:hidden}.beam-ca{display:flex;align-items:center;justify-content:center;gap:.7em}.beam-ca>*{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.92}.beam-ca .tick{flex:none;color:var(--accent)}.beam-ca:hover>*{opacity:1}.stamp{position:absolute;left:63%;top:-3.4vh;translate:-50% 0;font-size:var(--t-label);letter-spacing:.14em;color:var(--accent);opacity:0}.stamp.on{animation:stamped 1.4s var(--ease) both}@keyframes stamped{0%{opacity:0;scale:.7}14%{opacity:1;scale:1.08}24%{scale:1}74%{opacity:1}to{opacity:0}}.sign-line{position:absolute;inset:5.1% 3.4% 29.2% 4.9%;display:grid;place-items:center;text-align:center;font-weight:700;font-size:var(--t-hero);line-height:.98;letter-spacing:-.02em;text-transform:uppercase;color:var(--ink)}.char{position:absolute;left:var(--char-x);bottom:var(--base);width:var(--char-w);height:var(--char-h);z-index:var(--z-char)}.char:after{content:"";position:absolute;left:6%;right:6%;bottom:-1vh;height:2.6vh;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,var(--shade) 0 58%,transparent 100%)}.sway,.bob,.hit,.breathe{position:absolute;inset:0}.sway{transform-origin:50% 100%}.bob,.hit{transform-origin:50% 92%}.breathe{transform-origin:50% 100%}.char img.body{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:bottom center}.char img.body.sit{opacity:0}.char.rests img.body.sit{opacity:1}.walker{position:absolute;inset:0;overflow:hidden}.strip{position:absolute;top:0;left:0;bottom:0;width:800%;background:url(/art/walk.webp) 0 0 / 100% 100% no-repeat}@keyframes cycle{to{translate:-100% 0}}.strip{animation:cycle steps(8) 21 both;animation-timeline:scroll(root block)}.char.rests .walker{opacity:0}.char.rests .hat{top:-10.84%;width:93.6%}.hat{position:absolute;left:50%;top:-8.5%;width:88.6%;translate:-50% 0;transform-origin:50% 90%}.hat img{width:100%;height:auto}.hat img.worn{position:absolute;inset:0;opacity:0}.char[data-worn="1"] .hat img.new{opacity:0}.char[data-worn="1"] .hat img.worn{opacity:1}.bird{position:absolute;left:50%;top:-17.1%;height:10.1%;width:auto;aspect-ratio:206 / 200;margin-left:calc(var(--char-h) * -.0505)}.bird img{width:100%;height:auto}.bird img.fly{position:absolute;inset:0;opacity:0}.char.spooked .bird img.sit{opacity:0}.char.spooked .bird img.fly{opacity:1}@keyframes step{50%{translate:0 -2.2%}}@keyframes sway{0%{rotate:-2.6deg}50%{rotate:2.6deg}to{rotate:-2.6deg}}.bob{animation:step linear 44 both;animation-timeline:scroll(root block)}.sway{animation:sway linear 22 both;animation-timeline:scroll(root block)}@keyframes breathe{0%,to{rotate:-.55deg}50%{rotate:.55deg}}.breathe{animation:breathe 4.2s ease-in-out infinite}@keyframes hop{0%,to{translate:0 0;rotate:0deg}50%{translate:0 -7%;rotate:-2deg}}.bird{animation:hop 2.4s ease-in-out infinite}@keyframes squash{0%{scale:1 1;translate:0 0}12%{scale:1.09 .9;translate:-3% 0}34%{scale:.97 1.03;translate:-1% 0}62%{scale:1.02 .99}to{scale:1 1;translate:0 0}}.char.bonk .hit{animation:squash .64s var(--ease)}@keyframes hatpop{0%{translate:-50% 0;rotate:0deg}16%{translate:-56% 7%;rotate:-17deg}46%{translate:-47% 3%;rotate:7deg}to{translate:-50% 0;rotate:0deg}}.char.bonk .hat{animation:hatpop .76s var(--ease)}@keyframes flee{0%{translate:0 0;rotate:0deg}30%{translate:34% -70%;rotate:-14deg}60%{translate:46% -46%;rotate:6deg}to{translate:0 0;rotate:0deg}}.char.spooked .bird{animation:flee 1.2s var(--ease)}@keyframes shove{0%{rotate:0deg}16%{rotate:2.2deg}44%{rotate:-1.4deg}to{rotate:0deg}}.prop.knocked{animation:shove .7s var(--ease)}@keyframes shake{0%,to{translate:0 0}20%{translate:-.7vh .4vh}45%{translate:.6vh -.3vh}70%{translate:-.3vh .2vh}}.stage.rattled{animation:shake .26s ease-out}.pow{position:absolute;font-family:Comico,Comico fallback,system-ui,sans-serif;font-weight:700;font-size:var(--t-hero);line-height:1;letter-spacing:-.02em;color:var(--accent);-webkit-text-stroke:.42vh var(--ink);paint-order:stroke fill;translate:-50% -50%;opacity:0;pointer-events:none;white-space:nowrap}.pow.on{animation:popped .9s var(--ease)}@keyframes popped{0%{opacity:0;scale:.4;rotate:-12deg}18%{opacity:1;scale:1.18;rotate:6deg}34%{scale:1;rotate:2deg}70%{opacity:1;translate:-50% -84%}to{opacity:0;translate:-50% -128%;scale:.94}}.dust{position:absolute;width:2.2vh;height:2.2vh;border-radius:50%;background:var(--dirt-hi);opacity:0;pointer-events:none;translate:-50% -50%}.puffing .dust{animation:puff .78s ease-out}.dust:nth-child(2){animation-delay:60ms}.dust:nth-child(3){animation-delay:.12s}@keyframes puff{0%{opacity:.9;scale:.3}to{opacity:0;scale:2.4;translate:-50% -180%}}.wind{position:absolute;left:0;right:0;bottom:0;height:calc(var(--base) + 10vh);overflow:hidden;pointer-events:none}.wind i{position:absolute;bottom:0;width:.9vh;height:.9vh;border-radius:50%;background:var(--dirt-hi);opacity:0;animation:blow linear infinite}@keyframes blow{0%{translate:108vw 0;opacity:0;scale:.5}8%{opacity:.85}86%{opacity:.5}to{translate:-12vw -7vh;opacity:0;scale:1.7}}.wind i:nth-child(1){bottom:3vh;animation-duration:7s;animation-delay:-1s}.wind i:nth-child(2){bottom:6vh;animation-duration:9.5s;animation-delay:-4s;width:.6vh;height:.6vh}.wind i:nth-child(3){bottom:1.4vh;animation-duration:6s;animation-delay:-2.5s}.wind i:nth-child(4){bottom:8vh;animation-duration:12s;animation-delay:-8s;width:.5vh;height:.5vh}.wind i:nth-child(5){bottom:4.6vh;animation-duration:8.4s;animation-delay:-6s}.wind i:nth-child(6){bottom:.6vh;animation-duration:5.2s;animation-delay:-3.4s;width:1.2vh;height:1.2vh}.plank{position:absolute;display:flex;align-items:center;justify-content:center;gap:.45em;border:0;background:none;padding:0;font-family:inherit;font-weight:700;font-size:var(--t-body);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);cursor:inherit;transition:translate var(--dur) var(--ease)}.plank-1{left:12%;right:12%;top:11.2%;height:17.5%}.plank-2{left:15%;right:15%;top:35%;height:15%}.plank-3{left:16%;right:16%;top:57.2%;height:14%}.plank:hover{translate:0 -.4vh}.plank:active{translate:0 .2vh}.plank svg{width:1.35em;height:1.35em;display:block;flex:none}.plank img{width:1.6em;height:auto}.plank[aria-pressed=false] img{opacity:.4}.scroller{height:calc(180vh + calc(420 * var(--wu)));pointer-events:none}.canary{position:fixed;left:-9999px;top:0}.err{position:fixed;left:0;right:0;top:0;z-index:var(--z-overlay);padding:var(--pad);background:var(--accent);color:var(--cream);font-size:var(--t-micro);white-space:pre-wrap}.noscript{position:fixed;left:50%;bottom:3vh;translate:-50% 0;z-index:var(--z-note);padding:calc(var(--pad) * .6) var(--pad);border-radius:var(--radius);background:var(--cream);font-size:var(--t-label)}@media(max-width:860px){:root{--base: 15vh;--char-h: clamp(230px, 46vh, 420px);--sign-h: 22vh;--sign-x: 28;--char-x: 3vw;--wu: calc(1vw + .3vh) ;--mark-h: 24vh;--dig-h: 32vh;--heap-h: 18vh;--heap-y: 12.6vh;--dig-dx: 39.5vh;--pipe-h: 24vh;--beam-h: 10vh;--beam-y: 45vh;--post-h: 32vh;--post-x: 64;--t-hero: clamp(22px, 6.6vw, 34px)}.clouds{height:16vh}.hills{height:20vh}.beam-ca{left:8%;right:4%;font-size:var(--t-label);letter-spacing:.02em}.hills{height:24vh;background-size:46vh 24vh}.pow{-webkit-text-stroke:.32vh var(--ink)}}@media(prefers-reduced-motion:reduce){.breathe,.wind i,.bird,.stage.rattled,.char.bonk .hit,.char.bonk .hat,.char.spooked .bird,.prop.knocked,.puffing .dust{animation:none!important}.pow.on{animation:none;opacity:1}}
