/* Academic CV: long-form web document, independent print rules from one-page résumé. */
:root{color-scheme:light}
html{scroll-behavior:smooth}
body{background:#e9eaed;color:#18221e;font-family:Arial,Helvetica,sans-serif}
.site-header{background:#19251f;border:0;min-height:62px;position:relative}
.site-header nav a{color:#e4ede7}
.site-header .brand-copy{color:#e4ede7}
main.cv-layout{display:grid;grid-template-columns:minmax(0,900px) 194px;gap:18px;align-items:start;width:min(1160px,calc(100% - 32px));margin:18px auto 24px;overflow:visible}
.cv-paper{min-width:0;background:#fff;padding:48px 53px 55px;box-shadow:0 8px 34px rgba(23,27,32,.12)}
.cv-paper a{color:#125476;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;overflow-wrap:anywhere}
.cv-paper a:hover{color:#02709a}
.cv-heading{text-align:center;border-bottom:2px solid #253740;padding-bottom:16px}
.cv-kicker{color:#647168;text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:750;margin:0 0 11px}
.cv-heading h1{margin:0;color:#13271c;font-size:29px;letter-spacing:.015em;line-height:1.18}
.cv-heading h1 span{font-size:.63em;font-weight:400;color:#465448}
.cv-heading .cv-identity{margin:8px 0 10px;color:#2f4238;font-size:13px;line-height:1.5}
.cv-contact{display:flex;flex-wrap:wrap;justify-content:center;gap:5px 16px;font-size:12px}
.cv-updated{color:#68746d;font-size:10px;margin:10px 0 0}
.cv-section{padding-top:21px;scroll-margin-top:20px}
.cv-section h2{font-size:13px;text-transform:uppercase;letter-spacing:.12em;margin:0 0 10px;padding-bottom:5px;border-bottom:1px solid #b0bcb5;color:#1c3528}
.cv-section>p{font-size:12.5px;line-height:1.53;color:#2c3a33;margin:0 0 8px}
.cv-entry{padding:0 0 13px;break-inside:avoid;page-break-inside:avoid}
.cv-entry:last-child{padding-bottom:0}
.cv-entry-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.cv-entry h3,.cv-edu-item h3{font-size:13.3px;color:#20382c;margin:0 0 3px;line-height:1.32}
.cv-entry-head>h3{flex:1}
.cv-entry p{margin:3px 0 0;color:#2d3b34;font-size:12.4px;line-height:1.5}
.cv-entry ul{padding:0 0 0 18px;margin:5px 0 0}
.cv-entry li{padding-left:1px;color:#2d3b34;font-size:12px;line-height:1.46;margin-bottom:4px}
.cv-date,.cv-status{font-size:10.5px;color:#506457;font-weight:650;line-height:1.35;text-align:right}
.cv-status{max-width:235px}
.cv-place{margin:0!important;color:#5b6a61!important;font-size:11.5px!important}
.cv-edu-item{display:flex;justify-content:space-between;gap:16px;margin:0 0 12px;break-inside:avoid;page-break-inside:avoid}
.cv-edu-item:last-child{margin-bottom:0}
.cv-edu-item h3{margin:0 0 2px}
.cv-credential,.cv-note{margin:0;color:#34473a;font-size:12.5px;line-height:1.44}
.cv-note{font-size:11.2px;color:#617369}
.cv-edu-item time{font-size:11px;font-weight:700;white-space:nowrap;color:#52675a}
.cv-skills{list-style:none;padding:0;margin:0}
.cv-skills li{font-size:12.2px;color:#2e3c34;line-height:1.5;margin:0 0 10px}
.cv-skills strong{color:#1b3428}
.cv-document-footer{text-align:center;border-top:1px solid #bec9c2;margin-top:23px;padding-top:10px;color:#708076;font-size:10px}
.cv-sidebar{position:sticky;top:16px;display:flex;flex-direction:column;gap:11px;align-self:start;padding:8px 0;min-width:0}
.cv-aside-kicker{font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.13em;color:#536c5d;margin:0}
.cv-aside-help{font-size:12px;line-height:1.45;color:#4b6053;margin:0}
.cv-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px}
.cv-actions .button{background:white;color:#18382a;border:1px solid #bfcdc4;text-align:center;font-size:12px;line-height:1.33;padding:9px 10px;min-height:41px;height:auto;white-space:normal}
.cv-actions .button.primary{background:#203d32;color:#fff}
.cv-contents{display:flex;flex-direction:column;gap:2px;align-items:stretch;border-top:1px solid #bbc9bf;padding-top:10px}
.cv-contents a{color:#345e49;font-size:12px;line-height:1.38;padding:6px 4px;text-decoration:none}
.cv-contents a:hover,.cv-contents a:focus-visible{color:#112d1f;text-decoration:underline}
.cv-actions a:focus-visible,.cv-actions button:focus-visible,.cv-paper a:focus-visible{outline:3px solid #176b90;outline-offset:2px}
.cv-page-footer{font-size:12px;padding:0 20px 26px;text-align:center;color:#506657}
.cv-page-footer a{color:#236149}
@media(max-width:1050px){main.cv-layout{grid-template-columns:minmax(0,1fr) 172px;gap:13px}.cv-paper{padding:35px 29px}.cv-entry-head{flex-wrap:wrap}.cv-status{max-width:none;text-align:left}}
@media(max-width:720px){main.cv-layout{display:flex;flex-direction:column;margin:10px auto 22px;width:calc(100% - 20px);gap:12px}.cv-sidebar{position:static;order:-1;width:100%;gap:7px}.cv-aside-help,.cv-aside-kicker{display:none}.cv-actions{flex-direction:row;flex-wrap:wrap;gap:6px}.cv-actions .button{flex:1 1 auto;min-height:38px}.cv-contents{flex-direction:row;flex-wrap:wrap;gap:3px 8px;padding-top:6px}.cv-contents a{padding:5px 7px;border:1px solid #c0ccc5;border-radius:5px;background:#fff}.cv-paper{padding:28px 24px}.cv-entry-head{flex-direction:column;gap:2px}.cv-edu-item{gap:7px}}
@media(max-width:480px){.cv-paper{padding:26px 18px}.cv-heading h1{font-size:23px}.cv-heading .cv-identity{font-size:12px}.cv-edu-item{flex-direction:column;gap:2px}}
@page{size:letter;margin:0.68in 0.70in}
@media print{
 html,body{background:#fff!important;color:#111!important;scroll-behavior:auto!important;font-size:10pt;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .site-header,.cv-sidebar,.cv-page-footer{display:none!important}
 main.cv-layout{display:block!important;margin:0!important;padding:0!important;width:100%!important;max-width:none!important;overflow:visible!important}
 .cv-paper{display:block!important;width:100%!important;max-width:none!important;padding:0!important;margin:0!important;box-shadow:none!important}
 .cv-heading{padding-bottom:12px}
 .cv-heading h1{font-size:21pt}
 .cv-heading .cv-identity{font-size:10pt}
 .cv-contact{font-size:9pt}
 .cv-section{padding-top:16px}
 .cv-section h2{font-size:10.5pt;margin-bottom:9px;break-after:avoid}
 .cv-entry{padding-bottom:11px}
 .cv-entry h3,.cv-edu-item h3{font-size:10.2pt}
 .cv-entry li,.cv-section p,.cv-entry p,.cv-credential,.cv-skills li{font-size:9.4pt;line-height:1.42}
 .cv-entry-head{flex-wrap:nowrap}
 .cv-date,.cv-status{font-size:8.3pt}
 .cv-edu-item{margin-bottom:9px}
 .cv-edu-item time{font-size:8.6pt}
 .cv-document-footer{margin-top:16px}
 .cv-entry,.cv-edu-item{break-inside:avoid;page-break-inside:avoid}
 .cv-section h2{break-inside:avoid}
 a{color:#164f71!important;text-decoration:underline}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
