:root{color-scheme:dark;--void:#06090f;--midnight:#0b1f3a;--midnight-soft:#09182c;--core-blue:#2563eb;--blue-hover:#1d4ed8;--cursor-cyan:#38bdf8;--comment-gray:#64748b;--whitespace:#e7eefb;--body-muted:#c2ccdc;--border:#1e3a5f;--tile-correct:#1e40af;--tile-present:#38bdf8;--tile-absent:#64748b;--font-mono:var(--font-jetbrains-mono), "SFMono-Regular", Consolas, "Liberation Mono", monospace;--font-sans:var(--font-inter), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--page-gutter:clamp(1.5rem, 4.3vw, 4.65rem);--content-width:82rem}*{box-sizing:border-box}html{background:var(--void);scroll-behavior:smooth;min-width:20rem}body{background:radial-gradient(circle at 56% 64%, #0b1f3a40, transparent 36rem), var(--void);min-height:100vh;color:var(--whitespace);font-family:var(--font-sans);text-rendering:optimizelegibility;margin:0}a{color:inherit}img,svg{display:block}.site-header{border-bottom:1px solid var(--border);min-height:7.75rem;padding:1.5rem var(--page-gutter);align-items:center;display:flex}.brand-home{border-radius:1.25rem;width:5.25rem;transition:transform .16s,filter .16s;display:block}.brand-home img{width:100%;height:auto}.brand-home:hover{filter:brightness(1.08);transform:translateY(-2px)}.brand-home:focus-visible,.button:focus-visible{outline:3px solid var(--cursor-cyan);outline-offset:5px}.home-main{width:min(100%, calc(var(--content-width) + (var(--page-gutter) * 2)));padding:5rem var(--page-gutter) 8rem;margin:0 auto}.hero{max-width:49rem}.hero h1,.not-found-copy h1,.error-code,.project-copy h2{font-family:var(--font-mono);margin:0}.hero h1{letter-spacing:-.055em;font-size:clamp(3rem,5.2vw,4.75rem);font-weight:500;line-height:1.08}.hero>p{color:var(--body-muted);margin:2rem 0 0;font-size:clamp(1.125rem,1.7vw,1.55rem);line-height:1.65}.button{border:1px solid var(--cursor-cyan);min-height:4.25rem;font-family:var(--font-mono);letter-spacing:.01em;border-radius:.5rem;justify-content:center;align-items:center;gap:1.4rem;font-size:1.3rem;font-weight:500;line-height:1;text-decoration:none;transition:background-color .16s,border-color .16s,color .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--primary{background:var(--core-blue);color:#fff;margin-top:2rem;padding:.9rem 1.75rem .9rem 2rem}.button--primary:hover{background:var(--blue-hover)}.button--secondary{min-height:3.75rem;color:var(--cursor-cyan);background:0 0;margin-top:1.7rem;padding:.8rem 1.4rem .8rem 1.65rem}.button--secondary:hover{color:#7dd3fc;background:#2563eb1f;border-color:#7dd3fc}.arrow-icon{flex:none}.project-showcase{border:1px solid var(--border);background:linear-gradient(90deg, #06090f59, #0b1f3a4d), var(--midnight-soft);border-radius:1rem;grid-template-columns:minmax(15rem,20rem) minmax(17rem,1fr) minmax(16rem,20.5rem);align-items:center;gap:clamp(2rem,4vw,4.7rem);min-height:25.5rem;margin-top:3.7rem;padding:2.4rem 2.7rem;display:grid;overflow:hidden}.project-art{aspect-ratio:1;background:linear-gradient(145deg,#101b2f,#172234);border:1px solid #94a3b81f;border-radius:1.5rem;place-items:center;width:100%;display:grid;overflow:hidden}.project-art img{width:100%;height:100%}.project-copy h2{color:#fff;letter-spacing:-.04em;font-size:clamp(2rem,3.2vw,2.8rem);font-weight:500;line-height:1.1}.project-copy p{max-width:23rem;color:var(--body-muted);margin:1.2rem 0 0;font-size:1.12rem;line-height:1.65}.wordle-grid{grid-template-columns:repeat(5,1fr);gap:.65rem;width:100%;display:grid}.wordle-tile,.route-tile{aspect-ratio:1;border-radius:.32rem}.wordle-tile{border:1px solid var(--border)}.wordle-tile--correct,.route-tile--correct{border-color:var(--tile-correct);background:var(--tile-correct)}.wordle-tile--present,.route-tile--present{border-color:var(--tile-present);background:var(--tile-present)}.wordle-tile--absent,.route-tile--absent{border-color:var(--tile-absent);background:var(--tile-absent)}.wordle-tile--empty,.route-tile--empty{background:#06090f80}.not-found-page{background:var(--void)}.not-found-main{width:min(100%, calc(var(--content-width) + (var(--page-gutter) * 2)));min-height:calc(100vh - 7.75rem);padding:5rem var(--page-gutter) 8rem;grid-template-columns:minmax(48rem,1.55fr) minmax(24rem,.75fr);align-items:center;gap:clamp(3rem,4vw,4.5rem);margin:0 auto;display:grid}.error-code{color:#fff;letter-spacing:-.06em;font-size:clamp(5rem,9vw,8.5rem);font-weight:700;line-height:.95}.not-found-copy h1{color:#fff;letter-spacing:-.045em;white-space:nowrap;margin-top:3.6rem;font-size:clamp(2.4rem,3.4vw,3.15rem);font-weight:500;line-height:1.15}.not-found-description{color:var(--body-muted);margin:2rem 0 0;font-size:1.25rem;line-height:1.6}.route-comment{color:#8292aa;font-family:var(--font-mono);margin:3.7rem 0 0;font-size:1rem}.missing-route{grid-template-columns:repeat(7,3.75rem);align-items:center;gap:1.15rem;display:grid;position:relative}.route-tile{border:1px solid var(--border)}.route-tile--missing{background:0 0;border:2px dashed #68809e}.route-path{border-top:3px dashed #68809e;border-right:3px dashed #68809e;width:13rem;height:5.2rem;position:absolute;top:50%;left:calc(100% - 3.75rem);transform:translateY(1.8rem)}.route-path:after{content:"";border-bottom:3px dashed #68809e;width:4rem;position:absolute;bottom:0;right:-.2rem}@media (width<=64rem){.project-showcase{grid-template-columns:15rem minmax(16rem,1fr);gap:2rem}.wordle-grid{grid-column:1/-1;width:min(100%,28rem);margin:0 auto}.not-found-main{grid-template-columns:1fr}.not-found-copy h1{white-space:normal}.missing-route{width:fit-content;margin-top:1rem}}@media (width<=42rem){.site-header{min-height:6rem;padding-block:1rem}.brand-home{border-radius:1rem;width:4rem}.home-main{padding-top:3.25rem;padding-bottom:5rem}.desktop-break{display:none}.hero h1{font-size:clamp(2.6rem,13vw,3.6rem)}.hero>p{font-size:1.08rem}.button{gap:1rem;min-height:3.65rem;font-size:1rem}.project-showcase{grid-template-columns:1fr;padding:1.2rem}.project-art{width:min(100%,19rem);margin:0 auto}.project-copy{padding:.5rem .4rem}.project-copy h2{font-size:2rem}.project-copy p{font-size:1rem}.wordle-grid{gap:.45rem}.not-found-main{min-height:calc(100vh - 6rem);padding-top:3.25rem;padding-bottom:5rem}.not-found-copy h1{margin-top:2.5rem;font-size:clamp(2.1rem,10vw,3rem)}.not-found-description{font-size:1.05rem}.route-comment{margin-top:3rem}.missing-route{grid-template-columns:repeat(7,minmax(1.7rem,2.7rem));gap:.55rem}.route-path{width:2.6rem;height:3.7rem;left:calc(100% - 2.7rem);transform:translateY(1.2rem)}.route-path:after{width:2rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
