.resume{max-width:760px;margin:4rem auto;padding:0 1.5rem 6rem;font-family:var(--sans),system-ui,sans-serif;color:var(--ink,#1a1814);line-height:1.55;font-size:16px}.resume h1{font-family:var(--serif),Georgia,serif;font-weight:400;font-size:2.4rem;letter-spacing:-.01em;margin:0 0 .25rem}.resume-role{font-size:1.1rem;color:#6b6358;margin:0 0 1rem}.resume-contact{list-style:none;padding:0;margin:0 0 .5rem;display:flex;flex-wrap:wrap;gap:0 1.25rem;font-size:.92rem}.resume-contact a{color:inherit;text-decoration:underline;text-underline-offset:2px}.resume-locations{font-size:.92rem;color:#6b6358;margin:0 0 2rem}.resume h2{font-family:var(--serif),Georgia,serif;font-weight:400;font-size:1.4rem;margin:2.25rem 0 .75rem;border-bottom:1px solid #d8d1c4;padding-bottom:.25rem}.resume h3{font-weight:600;font-size:1.02rem;margin:1.25rem 0 .15rem}.resume-entry-meta{font-size:.88rem;color:#6b6358;margin:0 0 .5rem}.resume section p,.resume ul{margin:0 0 .5rem}.resume ul{padding-left:1.25rem}.resume-footer{margin-top:3rem;padding-top:1rem;border-top:1px solid #d8d1c4;font-size:.85rem;color:#6b6358}.resume-footer a{color:inherit}@media (prefers-color-scheme:dark){.resume{color:#ece8df}.resume-entry-meta,.resume-footer,.resume-locations,.resume-role{color:#9d9588}.resume h2,.resume-footer{border-color:#2a2722}}@media print{@page{margin:18mm}body{background:white!important}.resume{max-width:none;margin:0;padding:0;font-size:10.5pt;color:black}.resume h1{font-size:22pt}.resume h2{font-size:13pt;margin-top:14pt;border-color:#999}.resume h3{font-size:10.5pt}.resume-footer{display:none}.resume a{color:black;text-decoration:none}.resume-entry{page-break-inside:avoid;break-inside:avoid}}