:root{color-scheme:light;--ink:#292d27;--muted:#666d63;--green:#2d7637;--green-hover:#225e2b;--green-pressed:#194b22;--focus:#173e21;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#fff;color:var(--ink)}
.error-page{width:min(100%,44rem);min-height:100svh;margin:auto;padding:2rem 1.25rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
h1{margin:0;font-size:clamp(4rem,8vw,6rem);font-weight:800;letter-spacing:-.065em;line-height:1}
.caveman-scene{position:relative;flex:none;width:min(100%,35rem);aspect-ratio:56/33;margin:.25rem 0 .375rem}
.static-art,.animated-art{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.static-art{color:transparent}
.caveman-scene.is-ready .static-art{visibility:hidden}
.caveman-scene.is-ready .animated-art{display:block}
h2{font-size:clamp(1.5rem,3vw,1.875rem);line-height:1.25;font-weight:750;letter-spacing:-.04em;margin:0 0 .625rem;text-wrap:balance}
p{font-size:1rem;line-height:1.6;color:var(--muted);margin:0 0 1.5rem;max-width:30rem;text-wrap:balance}
.home-link{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;min-width:min(9.75rem,100%);max-width:100%;padding:.75rem 1.5rem;border-radius:.625rem;background:var(--green);color:#fff;font-size:1rem;font-weight:650;line-height:1.4;text-decoration:none;cursor:pointer;transition:background-color 160ms ease}
.home-link:hover{background:var(--green-hover)}
.home-link:active{background:var(--green-pressed)}
.home-link:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.motion-control{margin-top:.5rem;min-height:44px;padding:.5rem .75rem;border:0;border-radius:.5rem;background:transparent;color:var(--muted);font:inherit;font-size:.8125rem;cursor:pointer}
.motion-control[hidden]{display:none}
.motion-control:hover{background:#f0f3e9;color:var(--ink)}
.motion-control:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
@media(max-width:40rem){.caveman-scene{width:80%;margin:.75rem 0 1rem}.error-page{padding:2rem 1.25rem}}
@media(prefers-reduced-motion:reduce){.home-link{transition:none}.motion-control{display:none}.caveman-scene .animated-art{display:none!important}.caveman-scene .static-art{visibility:visible!important}}
