*{box-sizing:border-box}
html{color-scheme:light}
body{margin:0;background:#f3f4f5;color:#20252b;font:15.5px/1.55 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:#243f56;text-underline-offset:3px}
a:hover{text-decoration-thickness:2px}
a:focus-visible,button:focus-visible{outline:3px solid #365b79;outline-offset:4px}
.resume-page{max-width:940px;margin:32px auto;padding:32px 44px 42px;background:#fff;border:1px solid #dde1e5}
.resume-tools{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:32px;font-size:14px}
.resume-actions{display:flex;flex-wrap:wrap;gap:10px}
.btn{display:inline-block;padding:10px 15px;border:1px solid #bec7cf;border-radius:5px;background:#fff;color:#20252b;font:600 14px/1.3 Arial,Helvetica,sans-serif;text-decoration:none;cursor:pointer}
.btn:hover{background:#f1f4f6}
.btn.primary{background:#243f56;border-color:#243f56;color:#fff}
.btn.primary:hover{background:#182e41}
h1,h2,h3,p,dl{margin:0}
.resume-header h1{font-size:34px;line-height:1.15;letter-spacing:-.5px}
.r-headline{margin:6px 0 9px;font-size:17px;font-weight:600}
.r-contact{font-size:13px;line-height:1.65;color:#46525f;overflow-wrap:anywhere}
.r-contact a{color:inherit}
.resume-section{margin-top:24px}
.resume-section h2{font-size:12px;line-height:1.4;letter-spacing:1.1px;text-transform:uppercase;color:#243f56;border-bottom:1px solid #bcc5ce;padding-bottom:5px;margin-bottom:10px}
.r-skills{font-size:14px}
.r-skills>div{display:flex;gap:12px;padding:2px 0}
.r-skills dt{flex:0 0 177px;font-weight:700}
.r-skills dd{margin:0;min-width:0}
.r-job{margin-top:19px;break-inside:avoid}
.r-job:first-of-type{margin-top:0}
.r-job-head{display:flex;justify-content:space-between;gap:4px 16px;flex-wrap:wrap;align-items:baseline}
.r-job-head h3{font-size:15px;line-height:1.45}
.r-role{font-weight:400}
.r-role::before{content:" | "}
.r-headline span{white-space:nowrap}
.r-dates{font-size:12px;line-height:1.5;color:#46525f}
.r-sub{font-size:12px;line-height:1.5;color:#46525f;font-style:italic;margin-top:1px}
.r-job ul{margin:6px 0 0;padding-left:18px;font-size:14px;line-height:1.5}
.r-job li{margin:3px 0;padding-left:1px}
@media(max-width:620px){
 body{background:#fff;font-size:15px}
 .resume-page{margin:0;padding:20px 20px 34px;border:0}
 .resume-tools{margin-bottom:26px}
 .resume-actions{gap:8px}
 .btn{font-size:12.5px;padding:10px 11px}
 .resume-header h1{font-size:29px}
 .r-headline{font-size:15px}
 .r-contact{font-size:12.5px}
 .r-skills>div{display:block;margin-bottom:5px}
 .r-skills dt{margin-bottom:1px}
 .r-job-head{display:block}
 .r-dates{margin-top:2px}
 .r-role{display:block}
 .r-role::before{content:none}
}
@page{size:Letter;margin:0.48in 0.55in}
@media print{
 body{background:#fff;color:#20252b;font-size:9.8pt;line-height:1.23}
 .resume-page{max-width:none;margin:0;padding:0;border:0}
 .resume-tools{display:none}
 a{color:inherit;text-decoration:none}
 .resume-header h1{font-size:24pt;letter-spacing:-.35pt}
 .r-headline{font-size:10.5pt;margin:3pt 0 4pt}
 .r-contact{font-size:8.6pt;line-height:1.35}
 .resume-section{margin-top:10pt}
 .resume-section h2{font-size:9pt;letter-spacing:.8pt;padding-bottom:3pt;margin-bottom:5pt;break-after:avoid}
 .r-skills{font-size:9.3pt;line-height:1.2}
 .r-skills>div{display:flex;gap:8pt;padding:1pt 0;margin:0}
 .r-skills dt{flex:0 0 132pt;margin:0}
 .r-skills dd{margin:0}
 .r-job{margin-top:8pt;break-inside:avoid}
 .r-job-head{display:flex;flex-wrap:nowrap;gap:8pt}
 .r-job-head h3{font-size:9.6pt;line-height:1.3}
 .r-role{display:inline}
 .r-role::before{content:" | "}
 .r-dates{font-size:8pt;line-height:1.3;white-space:nowrap;margin:0}
 .r-sub{font-size:8pt;line-height:1.2;margin-top:1pt}
 .r-job ul{font-size:9.3pt;line-height:1.25;margin:3pt 0 0;padding-left:11pt}
 .r-job li{margin:2pt 0;padding-left:0}
}
