:root{--bg:#0a0f0c;--surface:#101613;--text:#d8e5dc;--text-dim:#8ba394;--accent:#4ade80;--border:#1e2a23;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box;margin:0}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg);color:var(--text);font-family:var(--font-mono);line-height:1.6}a{color:var(--accent)}.ascii-video{background:var(--bg);position:absolute;inset:0;overflow:hidden}.ascii-video canvas{width:100%;height:100%;display:block}.ascii-video__source{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.ascii-video__controls button,.hero__toggle{color:var(--text-dim);background:var(--bg);border:1px solid var(--border);padding:.25rem .5rem;font-size:.875rem}.ascii-video__controls{gap:.5rem;display:flex;position:absolute;bottom:.75rem;left:1rem}.ascii-video__controls button,.hero__toggle{font-family:var(--font-mono);cursor:pointer}.ascii-video__controls button:hover,.hero__toggle:hover{color:var(--accent)}.ascii-video__controls button:focus-visible,.hero__toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ascii-video__controls button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.hero{align-items:center;min-height:100vh;display:flex;position:relative}.hero__panel{width:100%;max-width:42rem;margin-inline:auto;position:relative}.hero__toggle{position:absolute;top:0;right:0}.hero__content{border:1px solid var(--border);background:#0a0f0ce6;padding:2rem}.hero__panel--hidden .hero__content{visibility:hidden}.hero__kicker{color:var(--text-dim)}.hero__name{font-size:clamp(2rem,6vw,3.5rem);line-height:1.1}.hero__title{color:var(--accent);margin-top:.5rem}.hero__tagline{color:var(--text-dim);margin-top:1rem}.hero__links{gap:1.5rem;margin-top:1.5rem;display:flex}main{max-width:42rem;margin-inline:auto;padding:4rem 2rem}.experience h2{color:var(--accent);margin-bottom:2rem;font-size:1.25rem}.experience h2 span{color:var(--text-dim)}.experience__list{gap:2rem;padding:0;list-style:none;display:grid}.job{border:1px solid var(--border);background:var(--surface);padding:1.5rem}.job__header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem;display:flex}.job__header h3{font-size:1rem}.job__period{color:var(--text-dim);font-size:.875rem}.job__team{color:var(--accent);margin-top:.25rem;font-size:.875rem}.job__bullets{color:var(--text-dim);gap:.5rem;margin-top:1rem;padding-left:1.25rem;display:grid}.footer{max-width:42rem;color:var(--text-dim);margin-inline:auto;padding:0 2rem 3rem;font-size:.875rem}
