:root{--background: #ffffff;--text: #111111;--muted: #555555;--link: #0645ad;--link-hover: #003e80;--rule: #d8d8d8;--soft-rule: #ececec;--focus: #005fcc;--serif: "Source Serif 4", Georgia, Cambria, serif;--sans: Inter, "Segoe UI", Arial, sans-serif;--page-width: 1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--background);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%}a{color:var(--link);text-decoration-thickness:1px;text-underline-offset:.17em}a:hover{color:var(--link-hover)}a:focus-visible,button:focus-visible{outline:2px solid var(--focus);outline-offset:4px}p,h1,h2,h3,ul,dl,figure{margin-top:0}h1,h2,h3{font-family:var(--serif);line-height:1.18}h1{margin-bottom:12px;font-size:clamp(2.4rem,4.5vw,3.25rem);font-weight:600;letter-spacing:-.035em}h2{font-size:1.58rem;font-weight:600}h3{margin-bottom:4px;font-size:1.12rem;font-weight:600}.page-shell{width:min(calc(100% - 64px),var(--page-width));margin-inline:auto}.skip-link{position:fixed;z-index:100;top:12px;left:12px;padding:9px 13px;background:var(--background);border:1px solid var(--text);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;z-index:20;top:0;background:#fffffff7;border-bottom:1px solid var(--rule)}.site-header__inner{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:28px}.site-name{flex:0 0 auto;color:var(--text);font-family:var(--serif);font-size:1.28rem;font-weight:600;text-decoration:none}.primary-nav{display:flex;align-items:center;justify-content:flex-end;gap:16px;font-size:.88rem}.primary-nav a{padding-block:5px;color:var(--text);text-decoration:none;border-bottom:1px solid transparent}.primary-nav a:hover,.primary-nav a[aria-current=page]{color:var(--link);border-color:currentColor}.hero{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:clamp(36px,5vw,62px);align-items:center;padding-block:48px 42px}.hero__copy{max-width:675px}.kicker{margin-bottom:8px;color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.hero__role{max-width:650px;margin-bottom:2px;font-family:var(--serif);font-size:1.22rem;line-height:1.35}.hero__institution{margin-bottom:18px;color:var(--muted)}.hero__summary{max-width:640px;margin-bottom:0;font-size:1rem}.profile-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:18px}.portrait{width:230px;height:230px;margin-bottom:0;overflow:hidden;justify-self:end;border-radius:2px}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center}.focus-band{display:grid;grid-template-columns:150px 1fr;gap:28px;padding-block:12px;border-block:1px solid var(--rule);font-size:.94rem}.focus-band strong{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.editorial-section{display:grid;grid-template-columns:150px minmax(0,760px);gap:30px;padding-block:36px;border-bottom:1px solid var(--rule)}.section-label{display:block}.section-label h2{margin-bottom:0;font-size:1.35rem}.section-content{min-width:0}.prose{max-width:720px}.prose p:last-child,.section-content>:last-child{margin-bottom:0}.stacked-list article,.entry-list article,.writing-list article{padding-block:14px;border-top:1px solid var(--soft-rule)}.stacked-list article:first-child,.entry-list article:first-child,.writing-list article:first-child{padding-top:0;border-top:0}.stacked-list article:last-child,.entry-list article:last-child,.writing-list article:last-of-type{padding-bottom:0}.stacked-list p,.entry-list p,.education-list p,.writing-list p{margin-bottom:0;color:var(--muted)}.bibliography article{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;padding-block:15px;border-top:1px solid var(--soft-rule)}.bibliography article:first-child{padding-top:0;border-top:0}.bibliography article:last-child{padding-bottom:0}.bibliography time,.entry-heading time,.education-list time{color:var(--muted);font-size:.88rem;white-space:nowrap}.bibliography p{margin-bottom:0}.entry-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:7px}.entry-heading h3,.entry-heading p{margin-bottom:2px}.education-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding-block:14px;border-top:1px solid var(--soft-rule)}.education-list article:first-child{padding-top:0;border-top:0}.education-list article:last-child{padding-bottom:0}.education-list h3{margin-bottom:4px}.education-list small{display:block;margin-top:5px;color:var(--muted)}.post-meta{margin-bottom:8px!important;color:var(--muted);font-size:.84rem}.writing-list h3 a,.post-preview h2 a{color:var(--text);text-decoration-color:var(--rule)}.writing-list h3 a:hover,.post-preview h2 a:hover{color:var(--link);text-decoration-color:currentColor}.writing-list .text-link{display:inline-block;margin-top:18px}.text-link{font-weight:600}.contact-section{border-bottom:0}.site-footer{margin-top:18px;border-top:1px solid var(--rule)}.site-footer__inner{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;padding-block:22px 32px;color:var(--muted);font-size:.84rem}.site-footer__inner a{justify-self:center}.site-footer__inner span:last-child{justify-self:end}.interior-page{min-height:70vh;padding-block:46px 60px}.interior-header{max-width:760px;padding-bottom:30px;border-bottom:1px solid var(--rule)}.interior-header h1{margin-bottom:16px}.interior-header>p:last-child{max-width:680px;margin-bottom:0;color:var(--muted);font-family:var(--serif);font-size:1.24rem}.post-index{max-width:780px}.post-preview{padding-block:24px;border-bottom:1px solid var(--rule)}.post-preview h2{max-width:710px;margin-bottom:12px;font-size:1.65rem}.post-preview>p:not(.post-meta){max-width:680px;margin-bottom:16px;color:var(--muted)}.article-page{max-width:1120px;padding-block:38px 60px}.back-link{display:inline-block;margin-bottom:28px}.article-header{max-width:850px;padding-bottom:30px;border-bottom:1px solid var(--rule)}.article-header h1{max-width:850px;font-size:clamp(2.35rem,5vw,3.4rem)}.article-deck{max-width:760px;margin-bottom:22px;color:var(--muted);font-family:var(--serif);font-size:1.25rem}.article-meta{display:flex;gap:9px;margin-bottom:0;color:var(--muted);font-size:.88rem}.article-body{max-width:720px;padding-top:32px}.article-body .lead{margin-bottom:26px;font-family:var(--serif);font-size:1.28rem;line-height:1.55}.article-body h2{margin-top:30px;margin-bottom:10px;font-size:1.55rem}.article-body p,.article-body ul{margin-bottom:14px}.article-body li+li{margin-top:8px}.cv-header{display:flex;max-width:none;align-items:flex-end;justify-content:space-between;gap:36px}.cv-header>div{max-width:760px}.cv-section{display:grid;grid-template-columns:150px minmax(0,760px);gap:30px;padding-block:34px;border-bottom:1px solid var(--rule)}.cv-section h2{font-size:1.4rem}.cv-section .entry-list li+li{margin-top:6px}.skill-list{margin-bottom:0}.skill-list>div{padding-block:13px;border-top:1px solid var(--soft-rule)}.skill-list>div:first-child{padding-top:0;border-top:0}.skill-list dt{margin-bottom:4px;font-family:var(--serif);font-weight:600}.skill-list dd{margin-left:0;color:var(--muted)}@media(max-width:980px){.site-header__inner{align-items:flex-start;flex-direction:column;gap:8px;padding-block:13px}.primary-nav{justify-content:flex-start;flex-wrap:wrap;gap:6px 16px}.hero{grid-template-columns:minmax(0,1fr) 210px;gap:32px}.portrait{width:210px;height:210px}}@media(max-width:760px){body{font-size:16px}.page-shell{width:min(calc(100% - 40px),var(--page-width))}.site-header{position:static}.hero{grid-template-columns:1fr;gap:26px;padding-block:36px 32px}.portrait{order:2;width:190px;height:190px;justify-self:start}.focus-band,.editorial-section,.cv-section{grid-template-columns:1fr;gap:18px}.focus-band{gap:8px}.editorial-section{padding-block:32px}.section-label h2{font-size:1.55rem}.entry-heading,.cv-header{align-items:flex-start;flex-direction:column;gap:8px}.education-list article,.bibliography article{grid-template-columns:1fr;gap:8px}.bibliography time{font-weight:700}.site-footer__inner{grid-template-columns:1fr;gap:8px}.site-footer__inner a,.site-footer__inner span:last-child{justify-self:start}.interior-page{padding-block:36px 52px}.interior-header{padding-bottom:26px}.article-page{padding-block:30px 52px}.article-header{padding-bottom:26px}.article-body{padding-top:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
