:root{--ink:#1c1a17;--mut:#7a746b;--acc:#8a4b2d;--bg:#faf7f2;--rule:#e3ddd2}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 Inter,sans-serif}
.wrap{max-width:760px;margin:0 auto;padding:4.5rem 1.5rem}
h1{font:700 3.9rem/1.05 "Space Grotesk",sans-serif;margin:0;letter-spacing:-.02em}
.tag{font:400 1.15rem Inter,sans-serif;color:var(--mut);margin:.8rem 0 1.2rem}
.contact a{color:var(--acc);text-decoration:none;margin-right:1.4rem;font-weight:500;border-bottom:1px solid var(--rule)}
h2{font:600 .85rem Inter;letter-spacing:.22em;text-transform:uppercase;color:var(--acc);margin:3.2rem 0 1rem;display:flex;align-items:center;gap:1rem}
h2:after{content:"";flex:1;height:1px;background:var(--rule)}
.about{font:400 1.15rem/1.7 Inter,sans-serif}
.hob{color:var(--mut);font-size:.95rem}
.pill{display:inline-block;border:1px solid var(--rule);border-radius:999px;padding:.25rem .8rem;margin:0 .4rem .5rem 0;font-size:.85rem;color:#4c463e;background:#fff}
.job{margin-bottom:2.2rem}.jobhead{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.job h3{font:700 1.25rem "Space Grotesk",sans-serif;margin:0}
.dates{color:var(--mut);font-size:.85rem;white-space:nowrap}
.jobmeta{margin:.15rem 0 0;font-weight:600;font-size:.9rem}
.jobdesc{margin:.15rem 0 .5rem;color:var(--mut);font-style:italic;font-size:.95rem}
ul{padding-left:1.2rem;margin:.4rem 0}li{margin-bottom:.55rem}li::marker{color:var(--acc)}
li b{color:var(--acc);font-weight:600}
a{color:var(--acc)}
.talks li{margin-bottom:.7rem}.venue{color:var(--mut);font-size:.85rem}
.cert,.edu p{margin:.2rem 0}footer{margin-top:4rem;color:var(--mut);font-size:.85rem;text-align:center}

.certrow{display:flex;flex-wrap:wrap;gap:.5rem .6rem}
.certpill{display:inline-block;border:1px solid var(--rule);border-radius:999px;padding:.25rem .8rem;font-size:.85rem;font-weight:500;color:var(--acc);background:#fff;text-decoration:none;border-bottom:1px solid var(--rule)}
.certpill:hover{border-color:var(--acc)}
@media (max-width:560px){h1{font-size:2.5rem}}

/* print */
@media print{
 body{background:#fff;color:#000;font-size:11pt}
 .wrap{padding:0;max-width:none}
 .contact a,.certpill,a{color:#000;border:none;text-decoration:underline}
 h1,h2,.job h3,li b{color:#000}
 .pill,.certpill{border:1px solid #999;background:#fff}
 .job{break-inside:avoid}
 footer{display:none}
}
