.resume_page__aqTFU{--resume-ink:var(--color-text);--resume-muted:var(--color-secondary-700);--resume-paper:var(--color-background);--resume-shadow:var(--color-secondary);--resume-page-padding:clamp(1rem,4vw,2.5rem);--resume-document-padding:clamp(1.25rem,5vw,4rem);min-height:100vh;background:transparent;color:var(--resume-ink);font-family:var(--font-geist-sans),"Helvetica Neue",sans-serif;padding:var(--resume-page-padding) 1rem;transition:padding .3s ease-in-out}.dark .resume_page__aqTFU{--resume-muted:var(--color-secondary-300)}.resume_document__GfNqS{width:min(100%,64rem);margin:0 auto;background:transparent;padding:var(--resume-document-padding);box-shadow:0 .75rem 2rem color-mix(in srgb,var(--resume-shadow) 12%,transparent);transition:padding .3s ease-in-out}.resume_headerBox__LL0rB{margin-bottom:2rem}.resume_header__lQ9A8{align-items:flex-start;display:flex;gap:2rem;padding:1.1rem}.resume_desktopHeader__3C78w{justify-content:space-between}.resume_mobileHeader__9W2yE{cursor:pointer;flex-direction:column;gap:0}.resume_headerToggle__D1rOd{background:transparent;border:0;color:inherit;font:inherit;min-width:0;padding:0;text-align:left}.resume_mobileHeader__9W2yE .resume_headerToggle__D1rOd{align-items:center;display:flex;justify-content:space-between;cursor:pointer;width:100%}.resume_kicker__j1Und,.resume_name__9wv44{display:block}.resume_mobileHeader__9W2yE .resume_name__9wv44{font-size:2.75rem}.resume_mobileHeader__9W2yE .resume_headerToggle__D1rOd:focus-visible{outline:2px solid var(--color-accent-600);outline-offset:.35rem}.resume_kicker__j1Und{color:var(--color-secondary-700);font-size:.8rem;font-weight:700;letter-spacing:.14em;margin:0 0 .35rem;text-indent:.35em;text-transform:uppercase;transition:color .5s ease-out}.dark .resume_kicker__j1Und{color:var(--color-secondary-300)}.resume_header__lQ9A8 h1,.resume_name__9wv44{font-size:clamp(2.75rem,5.5vw,3.25rem);font-weight:700;letter-spacing:-.04em;line-height:.95;margin:0;transition:font-size .22s ease-out}.resume_expandIcon__d0NFX{color:var(--resume-muted);display:block;font-size:1.8rem;line-height:1;margin-right:.35rem;transform-origin:center}.resume_desktopHeader__3C78w .resume_expandIcon__d0NFX{display:none}.resume_contactPanel__y6Kdx{display:block}.resume_mobileHeader__9W2yE .resume_contactPanel__y6Kdx{display:grid;grid-template-rows:0fr;margin-top:0;opacity:0;overflow:hidden;transition:grid-template-rows .3s ease-in-out,margin-top .3s ease-in-out,opacity .3s ease-in-out;width:100%}.resume_mobileHeader__9W2yE[data-expanded=true] .resume_contactPanel__y6Kdx{grid-template-rows:1fr;margin-top:1rem;opacity:1}.resume_mobileHeader__9W2yE .resume_contactPanel__y6Kdx>.resume_contact__RWV9j{min-height:0}.resume_mobileHeader__9W2yE[data-breakpoint-transitioning=true] .resume_contactPanel__y6Kdx{transition:none}@media (prefers-reduced-motion:reduce){.resume_mobileHeader__9W2yE .resume_contactPanel__y6Kdx{transition:none}}.resume_contact__RWV9j{align-items:flex-end;color:var(--resume-muted);display:flex;flex-direction:column;font-style:normal;gap:.3rem;font-size:.78rem;line-height:1.35;text-align:right}.resume_contact__RWV9j a,.resume_project__kXgG2 a{color:inherit;overflow-wrap:anywhere;text-decoration-thickness:.08em;text-underline-offset:.16em}.resume_section__NuQpy{break-inside:avoid;margin-top:2rem}.resume_sectionHeading__mQrIj{border-left:5px solid var(--color-text-600);font-size:1.2rem;font-weight:700;letter-spacing:.09em;line-height:1.1;margin:0 0 .85rem;padding:.65rem 0 .65rem .75rem;text-transform:uppercase;transition:color .5s ease-out,border-color .5s ease-out}.resume_skills__dI08i{padding-top:.05rem}.resume_project__kXgG2 p,.resume_skills__dI08i p{font-size:.86rem;line-height:1.55;margin:.38rem 0}.resume_skills__dI08i strong{color:var(--resume-muted);font-weight:700}.resume_entries__ZTRa1{display:grid;gap:1.55rem}.resume_entry__kzzhS,.resume_project__kXgG2{break-inside:avoid}.resume_entryHeader__WpOwg{align-items:start;display:flex;gap:1rem;justify-content:space-between;min-width:0}.resume_entry__kzzhS h3,.resume_project__kXgG2 h3{font-size:1rem;line-height:1.25;margin:0}.resume_entry__kzzhS .resume_meta__i3jwe p:last-child,.resume_entry__kzzhS .resume_role__4e4LB{color:var(--color-secondary-700)}.dark .resume_entry__kzzhS .resume_meta__i3jwe p:last-child,.dark .resume_entry__kzzhS .resume_role__4e4LB{color:var(--color-secondary-300)}.resume_meta__i3jwe p,.resume_role__4e4LB{color:var(--resume-muted);font-size:.82rem;line-height:1.35;margin:.2rem 0 0}.resume_meta__i3jwe{flex:0 0 auto;text-align:right}.resume_meta__i3jwe p:first-child{color:var(--resume-ink);font-weight:600}.resume_entry__kzzhS ul,.resume_project__kXgG2 ul{list-style:none;margin:.7rem 0 0;padding-left:1.2rem}.resume_entry__kzzhS li,.resume_project__kXgG2 li{font-size:.86rem;line-height:1.5;margin:.32rem 0;padding-left:.2rem;position:relative}.resume_entry__kzzhS li:before,.resume_project__kXgG2 li:before{background:var(--resume-accent);content:"";height:.38rem;left:-1.05rem;position:absolute;top:.55rem;width:.38rem}.resume_project__kXgG2 .resume_role__4e4LB{font-size:.82rem;line-height:1.35;margin:.2rem 0 0}.resume_project__kXgG2 .resume_meta__i3jwe a{color:var(--resume-muted);overflow-wrap:anywhere;text-decoration-thickness:.08em;text-underline-offset:.16em}.resume_contact__RWV9j,.resume_entry__kzzhS li:before,.resume_meta__i3jwe p,.resume_project__kXgG2 .resume_meta__i3jwe a,.resume_role__4e4LB,.resume_skills__dI08i strong{transition:color .5s ease-out,background-color .5s ease-out,border-color .5s ease-out}@media (max-width:30rem){.resume_page__aqTFU{padding:0}.resume_document__GfNqS{box-shadow:none;padding:1.5rem clamp(1rem,5vw,1.5rem) 3rem}.resume_entryHeader__WpOwg{flex-direction:column}.resume_contact__RWV9j,.resume_meta__i3jwe{align-items:flex-start;text-align:left}.resume_section__NuQpy{margin-top:1.5rem}.resume_sectionHeading__mQrIj{font-size:1.05rem;margin-bottom:.7rem;padding-block:.5rem}.resume_entries__ZTRa1{gap:1.25rem}.resume_entryHeader__WpOwg{gap:.35rem}.resume_meta__i3jwe{display:flex;flex-wrap:wrap;gap:0 .75rem}.resume_meta__i3jwe p{margin-top:0}}@media (max-width:22rem){.resume_mobileHeader__9W2yE .resume_name__9wv44{font-size:2.5rem}}@media print{.resume_page__aqTFU{background:white;padding:0}.resume_document__GfNqS{box-shadow:none;margin:0;max-width:none;padding:0}@page{margin:.55in;size:letter}}