:root{color:#292824;font-synthesis:none;--secondary:#66635b;--accent:#87513c;--line:#dcd9d1;--paper:#f5f0e5;background:#f5f0e5;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{isolation:isolate;background-color:var(--paper);background-image:radial-gradient(at 25% 0,#ffffff8c,#0000 75%);margin:0;font-size:18px;line-height:1.7;position:relative}body:before,body:after{content:"";z-index:-1;pointer-events:none;mix-blend-mode:multiply;position:fixed;inset:0}body:before{opacity:.2;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240' viewBox='0 0 240 240'%3E%3Cfilter id='paper' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.48' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)'/%3E%3C/svg%3E");background-size:240px 240px}body:after{opacity:.08;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='360' viewBox='0 0 360 360'%3E%3Cfilter id='fibre' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.025 .32' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23fibre)'/%3E%3C/svg%3E");background-size:360px 360px}h1,h2,h3,p,ul{margin:0}a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a:hover{color:var(--accent)}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:#e8d9c8}.page{max-width:1192px;margin:auto;padding:0 56px}.skip-link{z-index:20;color:#fff;background:#292824;padding:12px 18px;position:fixed;top:-80px;left:20px}.skip-link:focus{top:10px}.header{border-top:4px solid var(--accent);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:30px 0 25px;font-size:16px;display:flex}.resume-label{font-weight:500;text-decoration:none}.header nav{align-items:center;gap:29px;display:flex}.header nav a{color:var(--secondary);text-decoration:none}.header nav a:hover{color:var(--accent);text-decoration:underline}.header button{text-underline-offset:5px;background:0 0;border:0;padding:0;text-decoration:underline;text-decoration-thickness:1px}.header button:hover{color:var(--accent)}.intro{grid-template-columns:minmax(0,1fr) 275px;column-gap:70px;padding:65px 0 66px;display:grid}h1{letter-spacing:-2.2px;font-family:Georgia,Times New Roman,serif;font-size:clamp(42px,4.8vw,65px);font-weight:400;line-height:1.14}.professional-title{color:var(--accent);margin-top:12px;font-size:21px;line-height:1.5}.introduction{letter-spacing:-.3px;max-width:620px;margin-top:30px;font-size:23px;line-height:1.6}.about-copy{color:var(--secondary);max-width:635px;margin-top:19px;font-size:18px;line-height:1.8}.contact-details{color:var(--secondary);background:#f0eae1;border-bottom:2px solid #c8a68f;align-self:start;padding:25px 24px 27px;font-size:16px;line-height:1.65}.monogram{width:91px;height:91px;color:var(--accent);letter-spacing:-2px;flex-direction:column;justify-content:center;margin-bottom:25px;font-family:Georgia,Times New Roman,serif;font-size:42px;line-height:1;display:flex}.monogram span{letter-spacing:0;margin-top:5px;font-family:inherit;font-size:28px;line-height:.8}.contact-details p{margin-bottom:23px}.contact-details a{overflow-wrap:anywhere;width:fit-content;margin-top:9px;display:block}.resume-section{border-top:1px solid var(--line);grid-template-columns:250px minmax(0,1fr);gap:70px;padding:48px 0 58px;display:grid}.section-aside h2{letter-spacing:-.5px;font-family:Georgia,Times New Roman,serif;font-size:27px;font-weight:400;line-height:1.3}.section-aside>p{color:var(--secondary);margin-top:14px;font-size:17px;line-height:1.6}.experience-section .section-aside{align-self:start;position:sticky;top:40px}.experience-index{flex-direction:column;align-items:flex-start;gap:12px;margin-top:33px;display:flex}.experience-index a{color:var(--secondary);font-size:16px;line-height:1.5;text-decoration:none}.experience-index a:hover{color:var(--accent);text-decoration:underline}.experience-list{border-left:1px solid #d6c2b1}.experience-entry{border-top:1px solid var(--line);padding:38px 0 40px 31px;scroll-margin-top:40px;position:relative}.experience-entry:before{content:"";background:var(--paper);border:2px solid #a47c62;border-radius:50%;width:11px;height:11px;position:absolute;top:46px;left:-6px}.experience-entry:first-child:before{background:var(--accent);border-color:var(--accent);top:7px}.job-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.job-mark{color:var(--accent);flex:0 0 43px;width:43px;height:43px}.job-mark svg{width:100%;height:100%}.experience-entry:first-child{border-top:0;padding-top:0}.experience-entry:last-child{padding-bottom:0}.job-date{color:var(--secondary);font-variant-numeric:tabular-nums;margin-bottom:8px;font-size:16px;line-height:1.5}.experience-entry h3{letter-spacing:-.7px;font-size:29px;font-weight:500;line-height:1.4}.job-role{color:var(--accent);margin-top:3px;font-size:19px;line-height:1.5}.job-summary{margin-top:22px;font-size:18px;line-height:1.8}.experience-entry ul{color:var(--secondary);margin-top:17px;padding-left:21px}.experience-entry li{margin-top:9px;padding-left:4px;font-size:17px;line-height:1.8}.experience-entry li::marker{color:#9b9385;font-size:.75em}.skills-list{background:#f2efe8;border-left:2px solid #c8a68f;grid-template-columns:1fr 1fr;gap:32px 35px;padding:28px 31px 30px;display:grid}.skill-group h3{align-items:center;gap:11px;margin-bottom:10px;font-size:19px;font-weight:500;display:flex}.skill-group h3 svg{width:26px;height:26px;color:var(--accent)}.skill-group ul{padding:0;list-style:none}.skill-group li{color:var(--secondary);margin-top:7px;font-size:17px;line-height:1.6}.contact-section{padding-top:43px;padding-bottom:60px}.contact-note p{max-width:610px;font-size:18px;line-height:1.8}.contact-actions{flex-wrap:wrap;align-items:center;gap:27px;margin-top:23px;font-size:17px;display:flex}.contact-actions a{color:var(--accent)}.contact-actions a span{margin-left:6px;transition:transform .2s;display:inline-block}.contact-actions a:hover span{transform:translate(2px,-2px)}.contact-actions button{color:var(--secondary);background:0 0;border:0;padding:8px 0;font-size:16px}.contact-actions button:hover{color:var(--accent);text-underline-offset:5px;text-decoration:underline}footer{color:var(--secondary);border-top:1px solid var(--line);justify-content:space-between;gap:20px;padding:24px 0 32px;font-size:16px;display:flex}footer a{text-decoration:none}footer a:hover{text-decoration:underline}footer a span{margin-left:8px}@media (width<=1000px){.page{padding:0 40px}.intro{grid-template-columns:minmax(0,1fr) 250px;column-gap:40px;padding-top:50px}h1{font-size:55px}.resume-section{grid-template-columns:200px minmax(0,1fr);gap:40px}.section-aside h2{font-size:25px}.experience-entry h3{font-size:27px}.skills-list{column-gap:25px}}@media (width<=760px){html{scroll-padding-top:26px}.page{padding:0 26px}.header{align-items:flex-start;padding:24px 0;font-size:16px}.header nav{flex-wrap:wrap;justify-content:flex-end;gap:20px}.header nav>a:nth-child(2){display:none}.intro{grid-template-columns:1fr;gap:27px;padding:43px 0}h1{letter-spacing:-1.6px;font-size:clamp(40px,8vw,56px)}.professional-title{margin-top:10px;font-size:20px}.introduction{margin-top:25px;font-size:22px}.about-copy{font-size:18px}.contact-details{grid-template-columns:69px minmax(0,1fr);column-gap:20px;padding:21px 23px;font-size:16px;display:grid}.monogram{grid-area:1/1/4;width:69px;height:80px;margin:0;font-size:36px}.contact-details p,.contact-details>a{grid-column:2}.contact-details p{margin-bottom:14px}.resume-section{grid-template-columns:1fr;gap:30px;padding:35px 0 40px}.section-aside h2{font-size:29px}.experience-section .section-aside{position:static}.section-aside>p{margin-top:8px}.experience-index{display:none}.experience-entry h3{font-size:27px}.job-role{font-size:19px}.job-summary{margin-top:17px}.experience-entry{padding:30px 0 30px 23px;scroll-margin-top:26px}.experience-entry:before{top:37px}.job-mark{flex-basis:35px;width:35px;height:35px}.job-heading{align-items:flex-start;gap:12px}.skills-list{gap:28px;padding:23px}.contact-note p{font-size:18px}.contact-actions{gap:12px 24px}}@media (width<=400px){.page{padding:0 22px}.header nav{gap:17px}.header nav>a{display:none}h1{font-size:43px}.skills-list{grid-template-columns:1fr}.experience-entry h3{font-size:26px}.contact-details{grid-template-columns:1fr}.contact-details p,.contact-details>a{grid-column:1}.monogram{grid-row:auto;height:auto;margin-bottom:20px}footer{font-size:16px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@media print{:root{color:#111;--secondary:#333;--accent:#111;--line:#bbb;background:#fff}@page{margin:16mm}body{background:#fff;font-size:10pt;line-height:1.5}body:before,body:after{display:none}.page{max-width:none;padding:0}.header,.skip-link,.experience-index,.contact-section,footer{display:none}.intro{grid-template-columns:1fr 215px;gap:25px;padding:0 0 20px}h1{letter-spacing:-1px;font-size:32pt}.professional-title{margin-top:7px;font-size:13pt}.introduction{margin-top:15px;font-size:12pt;line-height:1.5}.about-copy{margin-top:10px;font-size:10pt;line-height:1.6}.contact-details{background:#fff;border:0;padding:5px 0 0;font-size:9pt;display:block}.monogram,.job-mark{display:none}.contact-details p{margin-bottom:12px}.resume-section{grid-template-columns:145px minmax(0,1fr);gap:25px;padding:22px 0}.experience-section .section-aside{position:static}.section-aside h2{font-size:16pt}.section-aside>p{margin-top:8px;font-size:10pt}.experience-list{border:0}.experience-entry{break-inside:avoid;padding:20px 0}.experience-entry:before{display:none}.job-date{margin-bottom:4px;font-size:9pt}.experience-entry h3{font-size:16pt}.job-role{font-size:11pt}.job-summary{margin-top:10px;font-size:10pt;line-height:1.6}.experience-entry ul{margin-top:8px}.experience-entry li{margin-top:4px;font-size:10pt;line-height:1.6}.skills-list{background:#fff;border:0;grid-template-columns:repeat(3,1fr);gap:20px;padding:0}.skill-group h3 svg{display:none}.skill-group h3{font-size:11pt}.skill-group li{font-size:9pt}}
