:root{color-scheme:dark;--background:#282c34;--surface:#2c313a;--border:#3e4451;--text:#abb2bf;--strong:#e5e9f0;--muted:#8b929e;--blue:#61afef;--cyan:#56b6c2;--green:#98c379;--purple:#c678dd;--yellow:#e5c07b;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);min-width:320px;color:var(--text);font:17px/1.7 var(--sans);text-rendering:optimizelegibility;margin:0}a{color:var(--blue);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover,a:focus-visible{color:var(--cyan)}:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.skip-link{z-index:10;background:var(--strong);color:var(--background);padding:.5rem .8rem;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-shell{width:min(820px,100% - 2.5rem);margin:0 auto}.site-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:2rem;padding:2rem 0;display:flex}.brand{color:var(--strong);font-weight:700;text-decoration:none}.site-nav{gap:1.25rem;font-size:.86rem;display:flex}.site-nav a{color:var(--muted);text-decoration:none}.site-nav a:hover,.site-nav a:focus-visible{color:var(--strong)}.hero{text-align:center;flex-direction:column;align-items:center;padding:clamp(4rem,10vw,7rem) 0;display:flex}.hero-copy{display:contents}.hero h1{color:var(--strong);letter-spacing:-.055em;order:1;margin:0;font-size:clamp(2.8rem,8vw,4.8rem);font-weight:750;line-height:1}.hero>div:last-child{order:2}.portrait-wrap{border:3px solid var(--border);background:var(--surface);border-radius:50%;width:176px;height:176px;margin:2.2rem auto 0;overflow:hidden}.portrait,.portrait-wrap picture{width:100%;height:100%;display:block}.portrait{object-fit:cover}.hero-role{max-width:620px;color:var(--text);order:3;margin:1.8rem 0 0;font-size:clamp(1.05rem,2.5vw,1.28rem)}.hero-actions{font:.88rem/1.5 var(--mono);order:4;gap:1.25rem;margin-top:1rem;display:flex}.section{border-top:1px solid var(--border);padding:clamp(3.5rem,8vw,5.5rem) 0;scroll-margin-top:1rem}.section-header{margin-bottom:2.4rem}.section-eyebrow{color:var(--green);font:.72rem/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .5rem}.section h1,.section h2{color:var(--strong);letter-spacing:-.04em;margin:0;font-size:clamp(2rem,5vw,2.7rem);line-height:1.1}.section-intro{max-width:620px;color:var(--muted);margin:.8rem 0 0}.repo-group+.repo-group{margin-top:2.5rem}.repo-group>h3{color:var(--yellow);font:500 .82rem/1.5 var(--mono);margin:0 0 .7rem}.card-grid,.card-grid.two{grid-template-columns:1fr;display:grid}.card{border-top:1px solid var(--border);grid-template-columns:minmax(110px,.3fr) minmax(0,1.2fr);gap:1rem;padding:1.15rem 2rem 1.15rem 0;display:grid;position:relative}.card:last-child{border-bottom:1px solid var(--border)}a.card{color:inherit;text-decoration:none}a.card:hover h3,a.card:hover h4,a.card:focus-visible h3,a.card:focus-visible h4{color:var(--blue)}.card-kicker{color:var(--purple);font:.7rem/1.5 var(--mono);letter-spacing:.04em;text-transform:uppercase;grid-row:1/span 2}.card h3,.card h4{color:var(--strong);margin:0;font-size:1rem;line-height:1.45;transition:color .14s}.card p{color:var(--muted);grid-column:2;margin:.2rem 0 0;font-size:.9rem;line-height:1.55}.card-arrow{color:var(--muted);font-family:var(--mono);position:absolute;top:1.1rem;right:0}.site-footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;gap:1rem;padding:2rem 0 3rem;font-size:.8rem;display:flex}.site-footer p{margin:0}.site-footer a{color:var(--muted)}.not-found{min-height:55vh}.not-found>p:not(.section-eyebrow){color:var(--muted)}@media (width<=600px){.site-shell{width:min(100% - 2rem,820px)}.site-header,.site-footer{flex-direction:column;align-items:flex-start}.site-header{gap:.8rem}.hero{padding:4rem 0}.portrait-wrap{width:150px;height:150px}.card{grid-template-columns:1fr;gap:.35rem;padding-right:1.5rem}.card-kicker,.card p{grid-area:auto/1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
