@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#12231c;--muted:#61706a;--paper:#f5f5ef;--lime:#d7ff4e;--line:#d5dbd3}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
a:focus-visible,button:focus-visible,.document-viewport:focus-visible{outline:3px solid #658b20;outline-offset:4px}
.wrap{max-width:1160px;margin:auto;padding:0 28px}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between}
.mark{font-weight:800;letter-spacing:-.06em;font-size:25px}.mark span{color:#5c7c24}
.nav-links{display:flex;gap:25px;align-items:center;font-size:13px;font-weight:700}
.contact-link{background:var(--ink);color:white;border-radius:40px;padding:11px 17px}
.resume-heading{padding:30px 0 40px;max-width:850px}
.back-link{font-size:12px;font-weight:700;color:var(--muted)}
.back-link:hover,.pdf-link:hover,.contact-details a:hover,.resume-bottom a:hover,.footer a:hover{text-decoration:underline;text-underline-offset:4px}
.eyebrow{font:500 11px 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:#52635a;margin:34px 0 14px}
h1{font-size:clamp(42px,6.5vw,72px);line-height:1;letter-spacing:-.065em;margin:0 0 20px;font-weight:800}
h1 span{color:#66873b;display:inline-block;margin-left:20px}
.intro{font-size:16px;max-width:650px;color:var(--muted);margin:0 0 20px}
.contact-details{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;font-size:12px;font-weight:700;overflow-wrap:anywhere}
.contact-details>span{color:var(--muted)}
.resume-shell{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 16px 48px #12231c08;scroll-margin-top:20px}
.viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 22px;border-bottom:1px solid var(--line)}
.view-switch{display:flex;padding:4px;background:#edf0e9;border-radius:8px;gap:3px}
.view-switch button{border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:12px;font-weight:800;min-height:38px;padding:8px 19px}
.view-switch button[aria-pressed=true]{background:var(--ink);color:white}
.pdf-link{font-size:12px;color:#465d50;font-weight:700;white-space:nowrap}.pdf-link span[aria-hidden]{margin-left:5px}
.document-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#edf0e9;padding:10px 22px;border-bottom:1px solid var(--line);min-height:61px}
.page-count{font:11px 'DM Mono',monospace;color:#52635a;white-space:nowrap}
.zoom-controls{display:flex;align-items:center;gap:7px}
.zoom-controls button{background:#fff;border:1px solid #c8d1c5;color:var(--ink);border-radius:4px;min-width:36px;min-height:36px;font-weight:700;font-size:16px}
.zoom-controls button:disabled{opacity:.4;cursor:default}
#zoom-value{font:11px 'DM Mono',monospace;min-width:43px;text-align:center}
#zoom-fit{font-size:11px;padding:0 10px;margin-left:6px}
.document-viewport{height:min(76vh,950px);min-height:380px;overflow:auto;background:#e5e9e1;overscroll-behavior:contain}
.document-stage{min-width:100%;width:max-content;padding:24px}
#resume-page{display:block;width:min(850px,calc(100vw - 108px));height:auto;max-width:none;margin:0 auto;box-shadow:0 2px 14px #12231c1c;background:white}
.viewer-hint{font-size:11px;color:var(--muted);padding:13px 22px;margin:0;border-top:1px solid var(--line)}
.resume-text{max-width:860px;margin:auto;padding:44px 48px 52px;font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.text-heading{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:28px}
.text-heading .eyebrow{margin-top:0}.text-heading h2{font-size:36px;line-height:1.1;letter-spacing:-.055em;margin:0 0 14px}
.text-heading p:last-child{font-size:12px;color:var(--muted)}
.resume-text a{text-decoration:underline;text-underline-offset:3px}
.resume-text h3{font:500 12px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.06em;color:#52635a;border-top:1px solid var(--line);padding-top:24px;margin:28px 0 14px}
.resume-text>.text-heading+section h3{border-top:0;padding-top:0}
.resume-text h4{font-size:17px;margin:0;line-height:1.4;letter-spacing:-.02em}
.resume-text p{margin:10px 0}
.resume-text ul{margin:12px 0;padding-left:20px}.resume-text li{padding-left:3px;margin:7px 0}
.resume-text .skill-list{list-style:none;padding-left:0}.skill-list li{padding-left:0}
.text-role{padding:7px 0 15px}.text-role+.text-role{border-top:1px solid #e5e9e1;padding-top:24px}
.text-role-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.text-role-heading p{font:11px 'DM Mono',monospace;color:var(--muted);margin:0}
.text-role-title{font-weight:700;font-size:13px}.text-role-title span{font-weight:400;color:var(--muted)}
.resume-bottom{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:20px 0 65px;font-size:12px;color:var(--muted)}
.resume-bottom a{font-weight:800;color:var(--ink)}
.footer{background:var(--ink);color:#c5d0c9;padding:25px 0;font:12px 'DM Mono',monospace}.footer .wrap{display:flex;justify-content:space-between;gap:20px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:20px;top:-100px;background:var(--ink);color:white;padding:10px 15px;z-index:10}.skip-link:focus{top:15px}
@media(max-width:600px){.wrap{padding:0 18px}.nav{height:72px}.nav-links{gap:15px;font-size:12px}.resume-heading{padding:24px 0 30px}h1 span{display:block;margin:6px 0 0}.intro{font-size:14px}.contact-details{gap:8px 12px}.contact-details>span[aria-hidden]{display:none}.contact-details>span:last-child{flex-basis:100%}.viewer-toolbar{gap:10px;padding:12px;flex-wrap:wrap}.view-switch button{padding:8px 14px}.pdf-link{font-size:11px}.document-controls{padding:10px 12px;flex-wrap:wrap}.document-stage{padding:12px}.document-viewport{height:64vh;min-height:350px}.zoom-controls{gap:4px}.zoom-controls button{min-width:32px}.viewer-hint{padding:12px;font-size:11px}.resume-text{padding:28px 20px;font-size:14px}.text-role-heading{display:block}.text-role-heading p{margin-top:7px}.text-role-title span{display:block}.resume-bottom{display:block;padding-bottom:45px}.footer{font-size:11px}.footer .wrap{flex-wrap:wrap}}
@media print{body{background:white}.nav,.resume-heading,.viewer-toolbar,#document-view,.resume-bottom,.footer,.skip-link{display:none!important}.wrap{padding:0;max-width:none}.resume-shell{border:0;box-shadow:none}.resume-text[hidden]{display:block!important}.resume-text{padding:0;max-width:none;font-size:10pt}.text-role{break-inside:avoid}}
