a[href=\#public-resume]:not(:focus){clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}a[href=\#public-resume]:focus{z-index:1;color:#10202a;background:#fff;border-radius:4px;outline:2px solid #10202a;padding:.5rem .75rem;font:600 14px/1.2 system-ui,sans-serif;position:absolute;top:.5rem;left:.5rem}body:has(>#public-resume){margin:0}.public-resume-page{box-sizing:border-box;background:var(--color-surface);min-height:100vh}.public-measure{box-sizing:border-box;max-width:calc(52em + 2 * var(--page-margin-x));font-size:var(--fs-body);margin-inline:auto}.public-resume-page[data-columns="2"] .public-measure{max-width:calc(70em + 2 * var(--page-margin-x))}.public-toolbar{padding:var(--page-margin-y) var(--page-margin-x) 0;font-family:var(--font-family);font-size:var(--fs-meta);justify-content:space-between;align-items:center;gap:1em;display:flex}.public-credit{color:var(--color-link);text-decoration:underline}.public-download{background:var(--color-link);min-height:2.75em;color:var(--color-surface);white-space:nowrap;border-radius:.4em;align-items:center;padding:.5em 1.1em;font-weight:600;text-decoration:none;display:inline-flex}.public-download:hover{filter:brightness(1.12)}.public-download:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}@media print{.public-toolbar{display:none}}.resume-document{box-sizing:border-box;font-variant-ligatures:no-common-ligatures;min-height:100%;padding:var(--page-margin-y) var(--page-margin-x);color:var(--color-body);background:var(--color-surface);font-family:var(--font-family);font-size:var(--fs-body);line-height:var(--lh-body);overflow-wrap:anywhere}.resume-document:not(.resume-page){container-type:inline-size}.resume-document *{box-sizing:border-box}.resume-document a{color:var(--color-link);text-decoration:underline}.resume-document .resume-header{padding:var(--header-padding);break-inside:avoid;grid-template-columns:minmax(0,1fr);margin-block-end:var(--gap-header);display:grid}.resume-document .resume-photo{justify-self:var(--header-align);width:var(--photo-size);height:var(--photo-size);border-radius:var(--photo-radius);margin-block-end:var(--header-photo-gap);display:block;position:relative;overflow:hidden}.resume-document .resume-header-text{min-width:0}.resume-document .resume-header[data-photo-position]{grid-template-columns:var(--photo-size) minmax(0, 1fr);column-gap:var(--header-photo-gap-side);align-items:center}.resume-document .resume-header[data-photo-position=right]{grid-template-columns:minmax(0, 1fr) var(--photo-size)}.resume-document .resume-header[data-photo-position] .resume-photo{justify-self:auto;margin:0}.resume-document .resume-header[data-photo-position=right] .resume-photo{grid-area:1/2}@container (width<36em){.resume-document:not(.resume-page) .resume-header[data-photo-position]{grid-template-columns:minmax(0,1fr)}.resume-document:not(.resume-page) .resume-header[data-photo-position] .resume-photo{justify-self:var(--header-align);grid-area:auto;margin-block-end:var(--header-photo-gap)}}.resume-document .resume-photo-image{object-fit:cover;max-width:none;max-height:none;display:block;position:absolute}.resume-document .resume-name{color:var(--color-heading);font-size:var(--fs-name);font-weight:700;line-height:var(--lh-heading);margin:0}.resume-document .resume-headline{margin:var(--header-name-gap) 0 0;color:var(--color-body);font-size:var(--fs-headline)}.resume-document .resume-details{gap:var(--details-row-gap) var(--details-column-gap);margin-block-start:var(--header-details-gap);display:flex}.resume-document .details-inline{justify-content:var(--header-align);flex-flow:wrap}.resume-document .details-stacked{justify-items:var(--header-align);display:grid}.resume-document .contact-chip{color:var(--color-body);display:inline-block}.resume-document .contact-chip:has(>.resume-icon){text-indent:calc(-1 * (var(--icon-size) + var(--chip-icon-gap)));padding-inline-start:calc(var(--icon-size) + var(--chip-icon-gap))}.resume-document .contact-chip .resume-icon{vertical-align:-.15em;margin-inline-end:var(--chip-icon-gap)}.resume-document .contact-label{white-space:nowrap}.resume-document .contact-label:after{content:" ";white-space:normal}.resume-document .resume-icon{width:var(--icon-size);height:var(--icon-size);color:var(--color-meta);flex:none}.resume-document .resume-header a{text-underline-offset:.18em;text-decoration-thickness:.06em}.resume-document .layout-two-columns{grid-template-columns:minmax(0, 1fr) var(--sidebar-ratio);gap:var(--column-gutter);display:grid}.resume-document .resume-sidebar{background:var(--color-surface);min-width:0}@container (width<36em){.resume-document:not(.resume-page) .layout-two-columns{grid-template-columns:minmax(0,1fr)}}.resume-document .resume-section{break-inside:auto;margin-block-end:var(--gap-section)}.resume-document .section-heading{color:var(--color-heading);border-block-end:var(--rule-width) solid var(--color-rule);break-after:avoid;align-items:center;gap:.35em;margin-block-end:var(--gap-heading);padding-block-end:var(--rule-gap);display:flex}.resume-document .section-heading h2{font-size:var(--fs-heading);line-height:var(--lh-heading);letter-spacing:var(--heading-letter-spacing);text-transform:var(--heading-transform);margin:0}.resume-document .entry{break-inside:auto;margin-block-end:var(--gap-entry)}.resume-document .entry-header{break-inside:avoid}.resume-document .entry-header:not(:last-child){break-after:avoid}.resume-document .layout-two-columns{break-before:avoid}.resume-document .entry-title{color:var(--color-heading);font-size:var(--fs-title);font-weight:700}.resume-document .entry-subtitle{font-size:var(--fs-subtitle)}.resume-document .entry-meta{color:var(--color-meta);font-size:var(--fs-meta)}.resume-document .entry-header+.entry-body{margin-block-start:var(--gap-block)}.resume-document .entry-body p{margin:0 0 .5em}.resume-document .entry-body ul,.resume-document .entry-body ol{margin:.35em 0;padding-inline-start:1.25em}.resume-document .entry-body li>p,.resume-document .entry-body li>ul,.resume-document .entry-body li>ol{margin:0}.resume-document .entry-body li+li{margin-block-start:.25em}.resume-document .entry-body>:first-child{margin-block-start:0}.resume-document .entry-body>:last-child{margin-block-end:0}.resume-document .entry-body p,.resume-document .entry-body li{orphans:2;widows:2;text-align:var(--body-align);hyphens:var(--body-hyphens)}.resume-document .entry-body li,.resume-document .level-widget{break-inside:avoid}.resume-document .level-tag{padding:var(--tag-padding);color:var(--color-on-accent);background:var(--color-accent-solid);border-radius:var(--tag-radius);display:inline-block}.resume-document .level-track{width:100%;height:var(--bar-height);background:var(--color-track);border-radius:var(--bar-radius);display:block;overflow:hidden}.resume-document .level-fill{background:var(--color-accent-solid);height:100%;display:block}.resume-document .level-dots{gap:var(--dot-gap);display:inline-flex}.resume-document .level-dot{width:var(--dot-size);height:var(--dot-size);background:var(--color-track);border-radius:50%}.resume-document .level-dot.filled{background:var(--color-accent-solid)}@media print{body.resume-print{margin:0;padding:0}body.resume-print .resume-document{padding:0}}
/*$vite$:1*/