/* The complete CV follows the site's existing editorial typography. */
.cv-web-page .page-intro .artifact-links{gap:10px 20px;margin-top:15px}
.cv-web-page .page-intro .artifact-links a{display:inline-flex;align-items:center;min-height:24px}
.cv-web-navigation{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:4px 0 35px;font-size:14px}
.cv-web-navigation ul{display:flex;flex-wrap:wrap;gap:9px 24px;list-style:none;margin:0;padding:0}
.cv-web-navigation a,.cv-web-content a{text-decoration:underline;text-underline-offset:3px}
.cv-web-content{max-width:940px;margin:0 auto 70px;font-size:15px;overflow-wrap:anywhere}
.cv-web-content h2{font-family:Georgia,"Times New Roman",serif;font-size:31px;line-height:1.3;letter-spacing:-.4px;padding-top:30px;margin:45px 0 24px;border-top:1px solid var(--line)}
.cv-web-content h3{font-size:20px;line-height:1.4;margin:30px 0 20px}
.cv-web-content p{margin:0 0 12px;line-height:1.75}
.cv-web-content .cv-entry{display:grid;grid-template-columns:145px minmax(0,1fr);gap:26px;padding:18px 0;border-bottom:1px solid var(--line)}
.cv-web-content .cv-entry-date{font-size:14px;color:var(--muted);line-height:1.65;font-variant-numeric:tabular-nums}
.cv-web-content .cv-entry p:last-child{margin-bottom:0}
.cv-web-content .cv-entry-content{min-width:0}
.cv-web-content .cv-entry-list{list-style:none;margin:0;padding:0}
.cv-web-content .cv-entry h4{font:inherit;font-weight:600;line-height:1.65;margin:0 0 10px}
.cv-web-content .cv-lab-marker{font-size:.75em;vertical-align:super}
@media(max-width:650px){
  .cv-web-navigation{font-size:13px}
  .cv-web-content{font-size:15px}
  .cv-web-content h2{font-size:27px;margin-top:35px}
  .cv-web-content .cv-entry{grid-template-columns:minmax(0,1fr);gap:7px;padding:20px 0}
}
