:root{--ink:#111;--ink-soft:#4a4a4a;--line:#d8d8d8;--wash:#f4f4f4;--paper:#fff}*{box-sizing:border-box}body{background-color:var(--paper);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}a,body{color:var(--ink)}a:hover{color:var(--ink-soft)}.nav-bar{border-bottom:1px solid var(--line);background-color:var(--paper);position:-webkit-sticky;position:sticky;top:0;z-index:100}.nav-link-plain{color:var(--ink-soft);text-decoration:none;font-size:.9rem;margin-left:1.25rem}.nav-link-plain:hover{color:var(--ink);text-decoration:underline}.brand-mark{font-weight:700;letter-spacing:-.02em;text-decoration:none;font-size:1.05rem}.headshot{width:140px;height:140px;border-radius:50%;object-fit:cover;border:1px solid var(--line)}.section{padding-top:3.5rem;padding-bottom:3.5rem;border-top:1px solid var(--line)}.section-label{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:1.5rem}.display-name{font-weight:700;letter-spacing:-.03em;font-size:clamp(2.25rem,6vw,3.5rem);margin-bottom:.5rem}.lead-copy{color:var(--ink-soft);font-size:1.05rem;max-width:44rem;line-height:1.7}.entry{border-top:1px solid var(--line);padding:1.5rem 0}.entry:first-of-type{border-top:none;padding-top:0}.entry-title{font-weight:600;font-size:1.05rem;margin-bottom:.15rem}.entry-meta{color:var(--ink-soft);font-size:.875rem;margin-bottom:.6rem}.entry-body{color:var(--ink-soft);font-size:.95rem;line-height:1.65;margin-bottom:0}.entry-body li{margin-bottom:.35rem}.skill-group{border:1px solid var(--line);padding:1rem 1.15rem;height:100%;background-color:var(--paper)}.skill-group h3{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.6rem}.chip{display:inline-block;border:1px solid var(--line);background-color:var(--wash);color:var(--ink);font-size:.8rem;padding:.15rem .5rem;margin:0 .3rem .4rem 0}.award-note{font-size:.9rem;color:var(--ink-soft)}.site-footer{border-top:1px solid var(--line);padding:2rem 0;color:var(--ink-soft);font-size:.85rem}.btn-dark,.btn-outline-dark{border-radius:.25rem}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}html{scroll-behavior:smooth}