:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#fafaf7;--text:#22231f;--muted:#686a62;--line:#dedfd8;--link:#234c36}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.65}a{color:var(--link);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}.skip-link{z-index:10;background:var(--text);color:#fff;padding:8px 12px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header,main,footer{width:min(100% - 40px,900px);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:72px;display:flex}.site-header a{color:var(--text);text-decoration:none}.site-name{font-weight:650}nav{color:var(--muted);gap:22px;font-size:.875rem;display:flex}.intro-section{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:64px;padding:96px 0 112px;display:grid}h1,h2,h3,p{text-wrap:pretty}h1{letter-spacing:-.045em;margin:0;font-size:clamp(2.5rem,7vw,4rem);font-weight:650;line-height:1.05}.role{color:var(--muted);margin:10px 0 0;font-size:1.1rem}.introduction{max-width:660px;margin:32px 0 0;font-size:1.08rem}.intro-links{flex-wrap:wrap;gap:10px 24px;margin-top:28px;font-size:.95rem;display:flex}.portrait{object-fit:cover;background:#e1e4de;border-radius:50%;width:104px;height:104px}.content-section{border-top:1px solid var(--line);grid-template-columns:180px minmax(0,1fr);column-gap:48px;padding:72px 0 80px;display:grid}.content-section>h2{margin:2px 0 0;font-size:1rem;font-weight:650}.project-list,.experience-list,.narrow-copy{grid-column:2}.project+.project,.job+.job{border-top:1px solid var(--line);margin-top:38px;padding-top:38px}.project h3,.job h3{margin:0;font-size:1.12rem;font-weight:650;line-height:1.4}.project h3 a{color:var(--text)}.project p,.job p,.narrow-copy p{max-width:650px;margin:12px 0 0}.meta,.dates,.company{color:var(--muted);font-size:.875rem}.project .meta,.job .company{margin-top:4px}.job{grid-template-columns:110px minmax(0,1fr);gap:24px;display:grid}.job .dates{margin:2px 0 0}.toolkit,.section-link{grid-column:2}.toolkit{border-top:1px solid var(--line);max-width:650px;color:var(--muted);margin:48px 0 0;padding-top:28px;font-size:.925rem}.toolkit strong{color:var(--text)}.section-link{margin:26px 0 0;font-size:.925rem}.narrow-copy p:first-child{margin-top:0}footer{border-top:1px solid var(--line);min-height:100px;color:var(--muted);padding-top:28px;font-size:.8rem}@media (width<=680px){.site-header,main,footer{width:min(100% - 32px,900px)}.site-header nav{gap:14px}.site-header nav a:last-child{display:none}.intro-section{grid-template-columns:1fr;gap:32px;padding:64px 0 72px}.portrait{grid-row:1;width:80px;height:80px}.content-section{grid-template-columns:1fr;row-gap:30px;padding:54px 0 60px}.project-list,.experience-list,.narrow-copy,.toolkit,.section-link{grid-column:1}.job{grid-template-columns:1fr;gap:6px}.project+.project,.job+.job{margin-top:30px;padding-top:30px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
