:root{
  --ink:#152a2c; --dim:#586a6b; --paper:#fdfdfb; --tint:#eef3f1; --deep:#17494d; --on-deep:#f3f8f6; --on-deep-dim:#b5cccb;
  --acc:#a86a12; --line:#d6dedb; --card:#ffffff;
  --serif:"Literata",Georgia,serif; --sans:"Albert Sans",system-ui,sans-serif;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--sans)}
h1,h2,h3,p,ul,dl,dd{margin:0}
ul{padding:0;list-style:none}
h1,h2{font-family:var(--serif);font-weight:500;text-wrap:balance}
h2{font-size:28px;letter-spacing:-.01em}
img{max-width:100%;height:auto}
a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--acc)}
a:focus-visible,button:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.in{max-width:1120px;margin:0 auto;padding-inline:clamp(16px,4vw,32px)}
.eyebrow{font-weight:700;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--acc)}
.screen-reader-text{position:absolute;left:-9999px}

.top .in{display:flex;justify-content:space-between;align-items:center;gap:8px 24px;flex-wrap:wrap;padding-block:18px;border-bottom:1px solid var(--line);font-size:15px;font-weight:500}
.top a{text-decoration:none}
.top ul{display:flex;gap:6px 22px;flex-wrap:wrap;color:var(--dim)}

.id{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:36px 64px;padding-block:56px 48px;align-items:start}
.id h1{font-size:clamp(40px,6.4vw,64px);line-height:1.05;letter-spacing:-.02em;margin-block:12px 14px}
.id .role{font:italic 400 20px/1.4 var(--serif);color:var(--dim);max-width:30em}
.id .fields{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.id .fields li{font-size:14px;font-weight:500;background:var(--tint);color:var(--deep);padding:5px 12px;border-radius:4px}
.card{background:var(--card);border:1px solid var(--line);display:grid}
.photo{aspect-ratio:4/5;background:var(--tint);display:grid;place-items:center;font-size:13px;color:var(--dim);overflow:hidden}
.photo img{width:100%;height:100%;object-fit:cover;display:block}
.card dl{padding:20px 22px;display:grid;gap:12px;font-size:15px}
.card dt{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--dim)}
.card dd{overflow-wrap:anywhere}
.cv{display:block;background:var(--deep);color:var(--on-deep);text-align:center;font-weight:600;padding:13px;text-decoration:none}
.cv:hover{background:var(--acc);color:var(--on-deep)}

.tabs{position:sticky;top:0;z-index:5;background:var(--paper);border-block:1px solid var(--line)}
.tabs ul{display:flex;gap:0 28px;overflow-x:auto;font-size:15px;font-weight:600}
.tabs a{display:block;padding-block:14px;text-decoration:none;white-space:nowrap;border-bottom:3px solid transparent;margin-bottom:-1px}
.tabs a:hover{border-color:var(--acc)}

.sec{padding-block:56px}
.feat{background:var(--deep);color:var(--on-deep)}
.feat .eyebrow{color:var(--on-deep-dim)}
.feat h2{margin-block:6px 26px}
.feat li{display:grid;grid-template-columns:84px minmax(0,1fr) auto;gap:8px 28px;align-items:baseline;padding-block:20px;border-top:1px solid color-mix(in srgb,var(--on-deep) 22%,transparent)}
.feat b{font:500 26px var(--serif);font-variant-numeric:tabular-nums;color:var(--on-deep-dim)}
.feat h3{font:500 21px/1.3 var(--serif)}
.feat h3 a{text-decoration:none}
.feat h3 a:hover{color:var(--on-deep);text-decoration:underline}
.feat small{display:block;font-size:14px;color:var(--on-deep-dim);margin-top:5px}
.feat .kind{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--on-deep-dim);padding:3px 9px;border-radius:4px}

.about{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:36px 64px}
.about .text{display:grid;gap:16px;font:400 18px/1.7 var(--serif)}
.about h2{margin-bottom:6px}
.years{margin-top:10px}
.years li{display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;padding-block:11px;border-top:1px solid var(--line);font-size:15px}
.years b{font-variant-numeric:tabular-nums;color:var(--acc)}
.years span{display:block;color:var(--dim);font-size:14px}

.pubs{background:var(--tint)}
.head{display:flex;flex-wrap:wrap;gap:14px 32px;justify-content:space-between;align-items:end;margin-bottom:22px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips button,.more button{font:600 14px var(--sans);color:var(--deep);background:transparent;border:1px solid var(--deep);border-radius:4px;padding:6px 12px;cursor:pointer}
.chips button[aria-pressed="true"]{background:var(--deep);color:var(--on-deep)}
.list li{background:var(--card);border:1px solid var(--line);padding:18px 22px;display:grid;grid-template-columns:58px minmax(0,1fr);gap:4px 18px;margin-top:-1px}
.list b{font-variant-numeric:tabular-nums;color:var(--dim);font-weight:600}
.list h3{font:600 17px/1.4 var(--sans)}
.list p{font-size:14px;color:var(--dim);margin-top:3px}
.list p i{color:var(--ink)}
.list em{font-style:normal;font-weight:600;color:var(--acc)}
.more{margin-top:20px}

.three{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:44px 48px}
.three h2{font-size:22px;margin-bottom:14px}
.plain li{padding-block:11px;border-top:1px solid var(--line);font-size:16px}
.plain time,.plain small{display:block;font-size:13px;color:var(--dim)}
.all{display:inline-block;margin-top:14px;font-size:15px;font-weight:600}
.foot .in{display:flex;flex-wrap:wrap;gap:8px 28px;justify-content:space-between;padding-block:26px;border-top:1px solid var(--line);font-size:14px;color:var(--dim)}

/* Blog */
.narrow{max-width:760px}
.pagehead{padding-block:48px 8px}
.pagehead h1{font-size:clamp(32px,5vw,46px);line-height:1.1;letter-spacing:-.02em;margin-top:8px}
.posts{padding-block:16px 56px}
.posts article{padding-block:26px;border-top:1px solid var(--line)}
.posts time,.entry-meta{font-size:13px;color:var(--dim)}
.posts h2{font-size:26px;line-height:1.2;margin-block:4px 8px}
.posts h2 a{text-decoration:none}
.posts h2 a:hover{text-decoration:underline}
.posts p{color:var(--dim)}
.pager{display:flex;justify-content:space-between;gap:16px;padding-top:24px;border-top:1px solid var(--line);font-weight:600;font-size:15px}
.entry{padding-block:8px 56px;font:400 19px/1.75 var(--serif);overflow-wrap:break-word}
.entry > * + *{margin-top:1.1em}
.entry h2,.entry h3{font-family:var(--serif);font-weight:500;line-height:1.25;margin-top:1.6em}
.entry h3{font-size:22px}
.entry ul,.entry ol{padding-left:1.3em;list-style:revert}
.entry a{color:var(--deep)}
.entry blockquote{margin-inline:0;padding-left:20px;border-left:3px solid var(--acc);font-style:italic}
.entry figure{margin-inline:0}
.entry figcaption{font:400 13px var(--sans);color:var(--dim)}
.entry pre,.entry table{overflow-x:auto;display:block;max-width:100%}
.alignleft{float:left;margin:0 20px 12px 0}.alignright{float:right;margin:0 0 12px 20px}.aligncenter{display:block;margin-inline:auto}

@media (max-width:760px){.id,.about{grid-template-columns:minmax(0,1fr)}.feat li{grid-template-columns:minmax(0,1fr)}.feat .kind{justify-self:start}}
