.cv-page.cvt-luminar{--lm-band-height:150pt;--lm-ring:4pt;--lm-heading:color-mix(in srgb,var(--cv-primary) 72%,var(--cv-bg));--cv-heading-gap:calc(var(--cv-gap-y) * 1.2);--cv-level-on:var(--cv-primary)}.cvt-luminar .cv-header{padding:0}.cvt-luminar .lm-header{display:flex;flex-direction:column;align-items:center}.cvt-luminar .lm-band{position:relative;width:100%;height:var(--lm-band-height);overflow:hidden;background:var(--cv-secondary)}.cvt-luminar .lm-band:after{content:"";position:absolute;inset:0;background:color-mix(in srgb,var(--cv-on-secondary) 7%,transparent);clip-path:polygon(58% 0,100% 0,100% 100%,34% 100%)}.cvt-luminar .lm-photo{position:relative;z-index:1;display:flex;justify-content:center;margin-top:calc(var(--lm-band-height) * -.42)}.cvt-luminar .lm-photo__ring{display:block;padding:var(--lm-ring);background:var(--cv-bg)}.cvt-luminar .lm-identity{display:flex;flex-direction:column;align-items:center;width:100%;padding:calc(var(--cv-gap-y) * 1.6) var(--cv-margin-x) 0;text-align:center}.cvt-luminar .lm-header--no-photo .lm-identity{padding-top:calc(var(--cv-margin-y) * .8)}.cvt-luminar .lm-name{font-family:var(--cv-font-heading);font-size:calc(var(--cv-size-heading) * 3.4);font-weight:var(--cv-weight-heading);line-height:1.1;letter-spacing:.01em;text-wrap:balance;color:var(--cv-text)}.cvt-luminar .lm-headline{padding-top:.7em;font-size:.95em;letter-spacing:.14em;text-transform:uppercase;color:var(--cv-muted)}.cvt-luminar .lm-details{display:grid;grid-template-columns:fit-content(46%) minmax(0,1fr);gap:.55em 1em;align-items:baseline}.cvt-luminar .lm-details__row{display:contents}.cvt-luminar .lm-details__label{font-weight:var(--cv-weight-strong);color:var(--cv-text)}.cvt-luminar .lm-details__value{min-width:0;color:var(--cv-muted);overflow-wrap:anywhere}.cvt-luminar .lm-details__value--wide{grid-column:1/-1}.cvt-luminar .cv-sidebar-header{padding-bottom:calc(var(--cv-section-gap) * .4)}.cvt-luminar .lm-heading{gap:.9em;font-weight:var(--cv-weight-strong);letter-spacing:.18em;text-transform:uppercase;color:var(--lm-heading)}.cvt-luminar .lm-heading:after{content:"";flex:1 1 1em;min-width:1em;height:1px;background:var(--cv-divider)}.cvt-luminar .cv-main :is(.cv-section--experience,.cv-section--education,.cv-section--projects,.cv-section--volunteer,.cv-section--awards,.cv-section--certifications,.cv-section--publications,.cv-section--references){--cv-row-gap:calc(var(--cv-gap-y) * 1.7)}.cvt-luminar .lm-entry{display:flex;flex-direction:column}.cvt-luminar .lm-entry__head{display:flex;justify-content:space-between;align-items:baseline;gap:1em}.cvt-luminar .lm-entry__heading{min-width:0;font-size:1.08em;line-height:1.35}.cvt-luminar .lm-entry__title{font-weight:var(--cv-weight-strong)}.cvt-luminar .lm-entry__subtitle{color:var(--cv-muted)}.cvt-luminar .lm-entry__dates,.cvt-luminar .lm-side-entry__dates{flex:none;font-size:.9em;white-space:nowrap;color:var(--cv-subtle)}.cvt-luminar .lm-entry__meta,.cvt-luminar .lm-side-entry__meta{padding-top:.15em;color:var(--cv-subtle)}.cvt-luminar .lm-entry__extra,.cvt-luminar .lm-side-entry__extra{display:flex;flex-wrap:wrap;-moz-column-gap:1em;column-gap:1em;padding-top:.15em;color:var(--cv-muted);overflow-wrap:anywhere}.cvt-luminar .lm-entry__body,.cvt-luminar .lm-side-entry__body{padding-top:.45em;color:var(--cv-muted)}.cvt-luminar .lm-entry__link,.cvt-luminar .lm-side-entry__link{padding-top:.3em}.cvt-luminar .cv-role__position{color:var(--cv-text)}.cvt-luminar .lm-side-entry{display:flex;flex-direction:column}.cvt-luminar .lm-side-entry__title{font-size:1.04em;font-weight:var(--cv-weight-strong);line-height:1.35}.cvt-luminar .lm-side-entry__sub{padding-top:.25em;color:var(--cv-muted)}.cvt-luminar .lm-side-entry__dates{padding-top:.3em;text-align:right;white-space:normal}.cvt-luminar .lm-bullet{display:flex;flex-direction:column;align-items:stretch;gap:.3em}.cvt-luminar .lm-bullet__line{display:flex;align-items:baseline;gap:.6em;min-width:0}.cvt-luminar .lm-bullet .cv-skill__name{font-weight:500;color:var(--cv-muted)}.cvt-luminar .lm-bullet__mark{flex:none;width:.42em;height:.42em;background:var(--cv-primary);transform:translateY(-.12em) rotate(45deg)}.cvt-luminar .lm-bullet__words{flex:none;margin-left:auto;font-size:.9em;color:var(--cv-subtle)}.cvt-luminar .lm-bullet__level{padding:0 0 0 1.02em}.cvt-luminar .lm-bullet__keywords{padding-left:1.02em;color:var(--cv-subtle)}.cvt-luminar .lm-language{display:flex;justify-content:space-between;align-items:baseline;gap:.6em}.cvt-luminar .lm-language .cv-skill__name{font-weight:500}.cvt-luminar .lm-language__words{flex:none;font-size:.9em;color:var(--cv-subtle)}.cvt-luminar .lm-language__level{display:flex;flex:0 0 38%;justify-content:flex-end;align-self:center}.cvt-luminar .cv-inline,.cvt-luminar .cv-section--summary .cv-row--text{color:var(--cv-muted)}.cvt-luminar .cv-profile .cv-icon{color:var(--cv-primary)}.cvt-luminar .lm-jobsearch__note{padding-top:.6em;color:var(--cv-muted)}.cv-page.cvt-boxline{--bx-line:var(--cv-primary);--cv-level-on:var(--cv-primary);--cv-level-off:color-mix(in srgb,var(--cv-primary) 16%,var(--cv-bg));--cv-section-gap:calc(var(--cv-gap-y) * 2.4);--cv-heading-gap:calc(var(--cv-gap-y) * 1.5);--cv-row-gap:calc(var(--cv-gap-y) * 1.1)}.cvt-boxline .cv-main :is(.cv-section--experience,.cv-section--education,.cv-section--projects,.cv-section--volunteer,.cv-section--awards,.cv-section--certifications,.cv-section--publications,.cv-section--references){--cv-row-gap:calc(var(--cv-gap-y) * 1.8)}.cvt-boxline .cv-sidebar :is(.cv-section--skills,.cv-section--tools,.cv-section--languages,.cv-section--profiles){--cv-row-gap:calc(var(--cv-gap-y) * 0.75)}.cvt-boxline .bx-heading{display:inline-flex;justify-content:center;align-items:center;gap:.45em;width:-moz-max-content;width:max-content;min-width:min(100%,12em);max-width:100%;padding:.6em 1.4em .55em;border:1px solid var(--bx-line);text-align:center;letter-spacing:-.01em;color:var(--cv-primary)}.cvt-boxline .cv-sidebar .bx-heading{width:100%}.cvt-boxline .bx-heading .cv-heading__title{min-width:0;text-wrap:balance}.cvt-boxline .cv-sidebar-header:empty{display:none}.cvt-boxline .bx-side-header{display:flex;flex-direction:column;align-items:center;gap:calc(var(--cv-gap-y) * 1.7);text-align:center}.cvt-boxline .bx-side-header .cv-picture{margin:0 auto}.cvt-boxline .bx-identity{gap:.45em}.cvt-boxline .bx-identity,.cvt-boxline .bx-name{display:flex;flex-direction:column;align-items:center;width:100%}.cvt-boxline .bx-name{font-family:var(--cv-font-heading);font-weight:var(--cv-weight-heading);line-height:1.1;letter-spacing:-.01em;color:var(--cv-text)}.cvt-boxline .bx-name__first{display:flex;align-items:center;gap:.7em;width:100%;font-size:calc(var(--cv-size-heading) * 1.1)}.cvt-boxline .bx-name__first:after,.cvt-boxline .bx-name__first:before{content:"";flex:1 1 0;min-width:.8em;height:1px;background:var(--bx-line)}.cvt-boxline .bx-name__last{padding-top:.12em;font-size:calc(var(--cv-size-heading) * 2);overflow-wrap:anywhere}.cvt-boxline .bx-headline{font-size:.9em;line-height:1.4;letter-spacing:.09em;text-transform:uppercase;text-wrap:balance;color:var(--cv-muted)}.cvt-boxline .bx-contacts{display:flex;flex-direction:column;gap:var(--cv-heading-gap);width:100%;text-align:left}.cvt-boxline .bx-contacts__list{flex-direction:column;flex-wrap:nowrap;gap:.7em;font-weight:var(--cv-weight-strong)}.cvt-boxline .bx-contacts__list .cv-contacts__item{align-items:flex-start;gap:.6em}.cvt-boxline .bx-contacts__list .cv-contacts__icon{width:1.1em;height:1.1em;margin-top:calc((var(--cv-line-height) * 1em - 1.1em) / 2);color:var(--cv-primary)}.cvt-boxline .cv-sidebar-header--in-main .bx-side-header{flex-direction:row;align-items:center;gap:calc(var(--cv-gap-x) * 1.5);text-align:left}.cvt-boxline .cv-sidebar-header--in-main .bx-side-header .cv-picture{margin:0}.cvt-boxline .cv-sidebar-header--in-main .bx-identity{flex:1 1 auto;align-items:flex-start;width:auto}.cvt-boxline .cv-sidebar-header--in-main .bx-contacts{flex:1 1 auto;width:auto}.cvt-boxline .bx-entry{display:flex;flex-direction:column;min-width:0}.cvt-boxline .bx-entry__head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--cv-gap-x)}.cvt-boxline .bx-entry__title{min-width:0;font-family:var(--cv-font-heading);font-size:1.08em;font-weight:var(--cv-weight-heading);line-height:1.35}.cvt-boxline .bx-entry__dates{flex:none;font-size:.9em;white-space:nowrap;color:var(--cv-subtle)}.cvt-boxline .bx-entry__dates--side{padding-top:.2em;white-space:normal}.cvt-boxline .bx-entry__meta{padding-top:.3em;font-size:.88em;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;color:var(--cv-muted)}.cvt-boxline .bx-entry__meta-part+.bx-entry__meta-part:before{content:" · "}.cvt-boxline .bx-entry__extra{display:flex;flex-wrap:wrap;-moz-column-gap:.9em;column-gap:.9em;padding-top:.2em;color:var(--cv-muted)}.cvt-boxline .bx-entry__link{padding-top:.2em}.cvt-boxline .bx-entry__body{padding-top:.45em;color:var(--cv-muted)}.cvt-boxline .bx-entry--side{position:relative;padding-left:1.1em}.cvt-boxline .bx-entry--side:before{content:"";position:absolute;top:.42em;left:0;border-top:.3em solid transparent;border-bottom:.3em solid transparent;border-left:.5em solid var(--cv-primary)}.cvt-boxline .bx-entry--side .bx-entry__extra{flex-direction:column}.cvt-boxline .bx-skill{display:flex;flex-direction:column;align-items:stretch;gap:.35em}.cvt-boxline .bx-skill__head{display:flex;align-items:baseline;gap:.6em;min-width:0}.cvt-boxline .bx-skill__mark{flex:none;align-self:center;width:.3em;height:.3em;background:var(--cv-primary)}.cvt-boxline .bx-skill .cv-skill__name{font-weight:500;color:var(--cv-muted)}.cvt-boxline .bx-skill__words{flex:none;margin-left:auto;font-size:.88em;color:var(--cv-subtle)}.cvt-boxline .bx-skill .cv-skill__keywords,.cvt-boxline .bx-skill .cv-skill__level{padding-top:0;padding-left:.9em}.cvt-boxline .bx-language{display:flex;flex-direction:column;align-items:stretch;gap:.2em}.cvt-boxline .bx-language__row{display:flex;align-items:center;gap:.8em}.cvt-boxline .bx-language .cv-skill__name{flex:1 1 auto;min-width:0;font-weight:var(--cv-weight-strong)}.cvt-boxline .bx-language__level{display:flex;flex:0 0 52%;justify-content:flex-end}.cvt-boxline .bx-language__words{font-size:.88em;color:var(--cv-subtle)}.cvt-boxline .cv-level--bar{height:.5em;border-radius:0}.cvt-boxline .cv-level--rectangle .cv-level__unit,.cvt-boxline .cv-level--square .cv-level__unit{border-radius:0}.cvt-boxline .cv-profile .cv-icon{color:var(--cv-primary)}.cvt-boxline .cv-inline,.cvt-boxline .cv-section--summary .cv-row--text{color:var(--cv-muted)}.cvt-boxline .cv-rich ul{list-style:square}.cvt-boxline .cv-rich li::marker{color:var(--cv-primary)}.cvt-boxline .cv-jobsearch__grid{grid-template-columns:repeat(auto-fill,minmax(9em,1fr));gap:.7em var(--cv-gap-x)}.cvt-boxline .cv-jobsearch__item{display:flex;flex-direction:column-reverse;gap:.15em;min-width:0}.cvt-boxline .cv-jobsearch__label{font-size:.8em;color:var(--cv-muted)}.cvt-boxline .cv-jobsearch__value{font-family:var(--cv-font-heading);font-size:1.04em;font-weight:var(--cv-weight-heading);line-height:1.35}.cvt-boxline .cv-jobsearch__note{padding-top:.6em;color:var(--cv-muted)}.cv-page.cvt-kaleido{--kd-u:var(--cv-size-body);--kd-ink:var(--cv-text);--kd-panel-ink:var(--cv-text);--kd-green:color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 38%);--kd-cyan:color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 65%);--kd-blue:color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 90%);--kd-pink:color-mix(in oklch shorter hue,var(--cv-primary),var(--cv-secondary) 55%);--kd-lilac:color-mix(in srgb,var(--cv-secondary) 48%,var(--cv-bg));--kd-pale:color-mix(in srgb,var(--cv-primary) 40%,var(--cv-bg));--kd-panel-shadow:color-mix(in srgb,var(--cv-text) 35%,transparent);--kd-side-shadow:color-mix(in srgb,var(--cv-text) 15%,transparent);--kd-inset-x:calc(var(--cv-margin-x) + var(--kd-u) * 2);--kd-inset-y:calc(var(--cv-margin-y) + var(--kd-u));--kd-pad-x:calc(var(--kd-u) * 4);--kd-pad-y:calc(var(--kd-u) * 1.8);--kd-overhang:calc(var(--kd-u) * 1.5);--kd-rule:1.8pt;--kd-panel-rule:3pt;--kd-shadow:calc(var(--kd-u) * 1.05);--kd-shadow-side:calc(var(--kd-u) * 0.7);--cv-section-gap:calc(var(--cv-gap-y) * 2.2);--cv-row-gap:calc(var(--cv-gap-y) * 2);--cv-heading-gap:calc(var(--cv-gap-y) * 1.2);--cv-level-on:var(--cv-text);--cv-level-off:color-mix(in srgb,var(--cv-text) 18%,transparent);background:var(--cv-secondary)}@supports (color:oklch(from red 0.7 0.16 h)){.cv-page.cvt-kaleido{--kd-green:oklch(from color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 38%) 0.74 0.14 h);--kd-cyan:oklch(from color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 65%) 0.76 0.12 h);--kd-blue:oklch(from color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 90%) 0.62 0.2 h);--kd-pink:oklch(from color-mix(in oklch shorter hue,var(--cv-primary),var(--cv-secondary) 55%) 0.72 0.17 h)}}.cvt-kaleido .kd-decor--dark~.cv-page__columns{--kd-panel-ink:var(--cv-on-primary)}.cvt-kaleido .cv-main,.cvt-kaleido .cv-sidebar{color:var(--kd-panel-ink)}.cvt-kaleido :where(.cv-link,.cv-rich a){color:currentColor}.cvt-kaleido .kd-decor{position:absolute;inset:0;overflow:hidden;pointer-events:none}.cvt-kaleido .kd-arc{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--cv-bg);stroke-width:3px}.cvt-kaleido .kd-arc,.cvt-kaleido .kd-arc path{vector-effect:non-scaling-stroke}.cvt-kaleido .kd-panel{position:absolute;inset:var(--kd-inset-y) var(--kd-inset-x);border:var(--kd-panel-rule) solid var(--kd-ink);background:var(--cv-primary);box-shadow:calc(var(--kd-u) * 1.7) calc(var(--kd-u) * 1.4) 0 var(--kd-panel-shadow)}.cvt-kaleido .kd-square{position:absolute;border-radius:17%;transform:rotate(45deg);box-shadow:.2em .2em 0 var(--kd-ink)}.cvt-kaleido .kd-square--cyan{top:calc(var(--kd-inset-y) + var(--kd-u) * 11.5);left:calc(var(--kd-inset-x) - var(--kd-u) * 5);width:calc(var(--kd-u) * 4.1);height:calc(var(--kd-u) * 4.1);background:var(--kd-cyan)}.cvt-kaleido .kd-square--green{bottom:calc(var(--kd-inset-y) - var(--kd-u) * 4.6);left:calc(var(--kd-inset-x) - var(--kd-u) * .5);width:calc(var(--kd-u) * 7.6);height:calc(var(--kd-u) * 7.6);background:var(--kd-green);box-shadow:.5em .2em 0 var(--kd-ink)}.cvt-kaleido .kd-square--pink{top:74%;right:calc(var(--kd-inset-x) - var(--kd-u) * 3.4);width:calc(var(--kd-u) * 6.9);height:calc(var(--kd-u) * 6.9);background:var(--kd-pink);box-shadow:.5em .2em 0 var(--kd-ink)}.cvt-kaleido .cv-column{padding:calc(var(--kd-inset-y) + var(--kd-pad-y)) calc(var(--kd-inset-x) + var(--kd-pad-x))}.cvt-kaleido.cv-page--two.cv-page--sidebar-right:not(.cv-page--full) .cv-main{padding-right:calc(var(--cv-gap-x) * 1.6)}.cvt-kaleido.cv-page--two.cv-page--sidebar-right:not(.cv-page--full) .cv-sidebar{padding-right:calc(var(--kd-inset-x) + var(--kd-u) * 1.4);padding-left:calc(var(--cv-gap-x) * 1.6)}.cvt-kaleido.cv-page--two.cv-page--sidebar-left:not(.cv-page--full) .cv-main{padding-left:calc(var(--cv-gap-x) * 1.6)}.cvt-kaleido.cv-page--two.cv-page--sidebar-left:not(.cv-page--full) .cv-sidebar{padding-right:calc(var(--cv-gap-x) * 1.6);padding-left:calc(var(--kd-inset-x) + var(--kd-u) * 1.4)}.cvt-kaleido.cv-page--two.cv-page--sidebar-right:not(.cv-page--full) .cv-main :is(.cv-row--items,.cv-row--jobsearch){margin-left:calc(-1 * (var(--kd-pad-x) + var(--kd-overhang)))}.cvt-kaleido.cv-page--two.cv-page--sidebar-left:not(.cv-page--full) .cv-main :is(.cv-row--items,.cv-row--jobsearch){margin-right:calc(-1 * (var(--kd-pad-x) + var(--kd-overhang)))}.cvt-kaleido.cv-page--sidebar-left .kd-card--side{box-shadow:var(--kd-shadow-side) var(--kd-shadow-side) 0 var(--kd-side-shadow)}.cvt-kaleido .cv-main-header:empty,.cvt-kaleido .cv-sidebar-header:empty{display:none}.cvt-kaleido .cv-main-header{padding-bottom:calc(var(--kd-u) * .5)}.cvt-kaleido .kd-identity{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.cvt-kaleido .kd-name{font-family:var(--cv-font-heading);font-size:calc(var(--cv-size-heading) * 1.65);font-weight:var(--cv-weight-heading);line-height:1.1;letter-spacing:-.01em;text-wrap:balance}.cvt-kaleido .kd-headline{padding-top:.1em;font-size:1.4em;font-weight:var(--cv-weight-body);line-height:1.25}.cvt-kaleido .kd-contacts{gap:.25em 1.3em;padding-top:.75em;font-weight:var(--cv-weight-strong);line-height:1.3}.cvt-kaleido .kd-contacts .cv-contacts__icon{width:1.05em;height:1.05em}.cvt-kaleido .cv-sidebar-header{display:flex;padding-bottom:var(--kd-u)}.cvt-kaleido .kd-photo{position:relative;flex:none;width:-moz-fit-content;width:fit-content;margin-top:calc(-1 * (var(--kd-pad-y) + var(--kd-u) * 2.4));padding:0;border:2.4pt solid var(--kd-ink);border-radius:calc(var(--kd-photo-radius, 0pt) + 2.4pt);background:var(--cv-bg);box-shadow:calc(var(--kd-u) * 1.1) calc(var(--kd-u) * 1.1) 0 var(--kd-lilac)}.cvt-kaleido .kd-photo__picture{border-radius:var(--kd-photo-radius,0)}.cvt-kaleido .cv-sidebar-header--in-main{display:flex;padding-bottom:var(--kd-u)}.cvt-kaleido .kd-heading{gap:.5em;line-height:1.2;color:currentColor}.cvt-kaleido .kd-card{display:flex;flex-direction:column;align-items:stretch;min-width:0;border:var(--kd-rule) solid var(--kd-ink);color:var(--cv-text)}.cvt-kaleido .kd-card--main{padding:calc(var(--kd-u) * 1.2) calc(var(--kd-u) * 1.5) calc(var(--kd-u) * 1.2);background:var(--cv-bg);box-shadow:var(--kd-shadow) var(--kd-shadow) 0 var(--kd-tone,var(--kd-green))}.cvt-kaleido .kd-card--green{--kd-tone:var(--kd-green)}.cvt-kaleido .kd-card--lilac{--kd-tone:var(--kd-lilac)}.cvt-kaleido .kd-card--pink{--kd-tone:var(--kd-pink)}.cvt-kaleido .kd-card--blue{--kd-tone:var(--kd-blue)}.cvt-kaleido .kd-card--side{padding:calc(var(--kd-u) * 1.05) calc(var(--kd-u) * 1.2) calc(var(--kd-u) * 1.1);background:var(--kd-pale);box-shadow:calc(-1 * var(--kd-shadow-side)) var(--kd-shadow-side) 0 var(--kd-side-shadow)}.cvt-kaleido .kd-entry__head,.cvt-kaleido .kd-entry__org{display:flex;justify-content:space-between;align-items:baseline;gap:.4em 1em;min-width:0}.cvt-kaleido .kd-entry__title{min-width:0;font-weight:var(--cv-weight-strong);line-height:1.35}.cvt-kaleido .kd-entry__dates{flex:none;max-width:50%;font-size:.92em;line-height:1.4;text-align:right;color:var(--cv-muted)}.cvt-kaleido .kd-entry__org{padding-top:.6em}.cvt-kaleido .kd-entry__company{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.3em .6em;min-width:0;font-weight:var(--cv-weight-strong)}.cvt-kaleido .kd-entry__tag{padding:.05em .45em .1em;border:1pt solid var(--kd-ink);font-size:.78em;font-weight:var(--cv-weight-strong);line-height:1.3;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.cvt-kaleido .kd-entry__place{flex:none;max-width:45%;text-align:right}.cvt-kaleido .kd-entry__extra{display:flex;flex-wrap:wrap;-moz-column-gap:1em;column-gap:1em;padding-top:.4em;color:var(--cv-muted)}.cvt-kaleido .kd-entry__link{min-width:0;padding-top:.4em}.cvt-kaleido .kd-entry__body{padding-top:.8em;font-size:.92em;line-height:1.4;color:var(--cv-muted)}.cvt-kaleido .kd-entry__body .cv-rich ul{padding-left:1.3em}.cvt-kaleido .kd-entry__body .cv-rich li+li{margin-top:.1em}.cvt-kaleido .kd-entry__body .cv-role__position{color:var(--cv-text)}.cvt-kaleido .kd-side__dates{font-size:.92em;line-height:1.4;color:var(--cv-muted)}.cvt-kaleido .kd-side__title{padding-top:.45em;font-weight:var(--cv-weight-strong);line-height:1.35}.cvt-kaleido .kd-side__dates+.kd-side__title{padding-top:.55em}.cvt-kaleido .kd-side__extra,.cvt-kaleido .kd-side__sub{padding-top:.2em;line-height:1.4;color:var(--cv-muted)}.cvt-kaleido .kd-side__extra{display:flex;flex-direction:column;overflow-wrap:anywhere}.cvt-kaleido .kd-side__link{min-width:0;padding-top:.3em}.cvt-kaleido .kd-side__body{padding-top:.6em;line-height:1.4;color:var(--cv-muted)}.cvt-kaleido .kd-skill__head{display:flex;justify-content:space-between;align-items:baseline;gap:.4em 1em}.cvt-kaleido .kd-skill__words{flex:none;font-size:.92em;color:var(--cv-muted)}.cvt-kaleido .kd-skill .cv-skill__level{padding-top:.5em}.cvt-kaleido .kd-skill__keywords{padding-top:.6em;line-height:1.4}.cvt-kaleido .kd-skill .cv-keywords--list{padding-left:1.3em}.cvt-kaleido .kd-language{flex-direction:row;flex-wrap:wrap;align-items:center;gap:.3em .8em;padding-top:calc(var(--kd-u) * .75);padding-bottom:calc(var(--kd-u) * .75)}.cvt-kaleido .kd-language__words{font-size:.92em;color:var(--cv-muted)}.cvt-kaleido .kd-language__level{display:inline-flex;margin-left:auto}.cvt-kaleido .cv-section--languages{--cv-row-gap:calc(var(--cv-gap-y) * 1.6)}.cvt-kaleido .cv-inline--interests{font-weight:var(--cv-weight-strong);line-height:1.6}.cvt-kaleido .cv-inline--interests .cv-inline__item+.cv-inline__item:before{content:" / ";font-weight:var(--cv-weight-body)}.cvt-kaleido .cv-profile{gap:.6em}.cvt-kaleido .cv-profile .cv-icon{width:1.1em;height:1.1em}.cvt-kaleido .kd-jobsearch .cv-jobsearch__grid{grid-template-columns:repeat(auto-fit,minmax(7.2em,1fr));gap:.5em var(--cv-gap-x)}.cvt-kaleido .kd-jobsearch .cv-jobsearch__label{overflow-wrap:normal}.cvt-kaleido .cv-sidebar .kd-jobsearch .cv-jobsearch__grid{grid-template-columns:repeat(auto-fit,minmax(6.5em,1fr))}.cvt-kaleido .kd-jobsearch .cv-jobsearch__label{line-height:1.2;color:var(--cv-muted)}.cvt-kaleido .kd-jobsearch .cv-jobsearch__value{line-height:1.3}.cvt-kaleido .kd-jobsearch .cv-jobsearch__note{padding-top:.7em;color:var(--cv-muted)}.cvt-aureline{--ar-gutter:21%}.cvt-aureline .cv-header{padding-bottom:calc(var(--cv-section-gap) * .6)}.cvt-aureline .ar-header{display:flex;flex-direction:column;align-items:center;gap:.3em;text-align:center}.cvt-aureline .ar-header__title{padding-bottom:.2em;font-family:var(--cv-font-heading);font-size:calc(var(--cv-size-heading) * 2.15);font-weight:var(--cv-weight-heading);line-height:1.15;letter-spacing:-.005em;color:var(--cv-text);text-wrap:balance}.cvt-aureline .ar-header__line{justify-content:center;gap:0;font-size:.95em;color:var(--cv-muted)}.cvt-aureline .ar-header__line .cv-contacts__item+.cv-contacts__item:before{content:"·";padding:0 .55em;color:var(--cv-subtle)}.cvt-aureline .cv-heading{gap:.9em;letter-spacing:.16em;text-transform:uppercase;color:var(--cv-primary)}.cvt-aureline .cv-heading:after{content:"";flex:1;height:1px;background:var(--cv-divider)}.cvt-aureline .ar-entry{display:grid;grid-template-columns:var(--ar-gutter) minmax(0,1fr);-moz-column-gap:calc(var(--cv-gap-x) * 1.6);column-gap:calc(var(--cv-gap-x) * 1.6)}.cvt-aureline .ar-entry__side{display:flex;flex-direction:column;gap:.15em;padding-top:.1em}.cvt-aureline .ar-entry__dates{font-size:.92em;font-weight:var(--cv-weight-strong);letter-spacing:.02em;color:var(--cv-primary)}.cvt-aureline .ar-entry__tag{font-size:.88em;color:var(--cv-subtle)}.cvt-aureline .ar-entry__head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--cv-gap-x)}.cvt-aureline .ar-entry__title{min-width:0;font-family:var(--cv-font-heading);font-size:1.1em;font-weight:var(--cv-weight-heading);line-height:1.3;color:var(--cv-text)}.cvt-aureline .ar-entry__right{flex:none;max-width:40%;font-size:.95em;font-weight:var(--cv-weight-strong);text-align:right;color:var(--cv-primary)}.cvt-aureline .ar-entry__sub{padding-top:.1em}.cvt-aureline .ar-entry__extra{display:flex;flex-wrap:wrap;-moz-column-gap:.9em;column-gap:.9em;color:var(--cv-muted)}.cvt-aureline .ar-entry__link{padding-top:.1em}.cvt-aureline .ar-entry__body{padding-top:.3em;color:var(--cv-muted)}.cvt-aureline .cv-skill{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"name proficiency level" "keywords keywords keywords"}.cvt-aureline .cv-skill__level{padding-top:0;padding-left:.6em}.cvt-aureline .cv-skill__name{font-family:var(--cv-font-heading);font-weight:var(--cv-weight-heading)}.cvt-aureline .cv-section--languages .cv-row--items,.cvt-aureline .cv-section--skills .cv-row--items{-moz-column-gap:calc(var(--cv-gap-x) * 3);column-gap:calc(var(--cv-gap-x) * 3)}.cvt-aureline .cv-section--summary .cv-row--text{color:var(--cv-muted)}.cvt-aureline .cv-profile{font-weight:var(--cv-weight-strong);color:var(--cv-primary)}.cvt-aureline .cv-jobsearch__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cv-page.cvt-pastella{--pa-pink:var(--cv-secondary);--pa-lime:color-mix(in oklab,color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 26%) 55%,var(--cv-bg));--pa-green:color-mix(in oklab,color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 33%) 45%,var(--cv-bg));--pa-lavender:color-mix(in oklab,color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 85%) 60%,var(--cv-bg));--pa-rule:color-mix(in srgb,var(--cv-text) 88%,var(--cv-bg));--pa-hairline:color-mix(in srgb,var(--cv-text) 8%,transparent);--cv-section-gap:calc(var(--cv-gap-y) * 2.6);--cv-row-gap:calc(var(--cv-gap-y) * 1.45);--cv-heading-gap:calc(var(--cv-gap-y) * 1.15);--cv-level-on:var(--pa-lavender)}@supports (color:oklch(from red 0.9 min(0.1,calc(0.05 + max(0,2 * cos(calc(h * 1deg)) - 1))) h)){.cv-page.cvt-pastella{--pa-lime:oklch(from color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 26%) 0.905 min(0.155,calc(0.045 + 0.12 * max(0, 2 * cos(calc(h * 1deg - 130deg)) - 1))) h);--pa-green:oklch(from color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 33%) 0.87 min(0.1,calc(0.062 + 0.06 * max(0, 2 * cos(calc(h * 1deg - 140deg)) - 1))) h);--pa-lavender:oklch(from color-mix(in oklch longer hue,var(--cv-primary),var(--cv-secondary) 85%) 0.785 0.092 h)}}.cvt-pastella.cv-page--two:not(.cv-page--full) .cv-sidebar{padding-right:var(--cv-gap-x)}.cvt-pastella.cv-page--two:not(.cv-page--full) .cv-main{padding-left:var(--cv-gap-x)}.cvt-pastella.cv-page--two.cv-page--sidebar-right:not(.cv-page--full) .cv-sidebar{padding-right:var(--cv-margin-x);padding-left:var(--cv-gap-x)}.cvt-pastella.cv-page--two.cv-page--sidebar-right:not(.cv-page--full) .cv-main{padding-right:var(--cv-gap-x);padding-left:var(--cv-margin-x)}.cvt-pastella .cv-main-header:empty,.cvt-pastella .cv-sidebar-header:empty{display:none}.cvt-pastella .cv-main-header{padding-bottom:calc(var(--cv-gap-y) * .8)}.cvt-pastella .cv-section:not(.cv-section--summary)>.cv-section__heading{margin-bottom:min(0px,calc(var(--cv-heading-gap) - var(--cv-row-gap)))}.cvt-pastella :where(.cv-link,.cv-rich a){color:var(--cv-primary)}.cvt-pastella .cv-sidebar-header{display:flex;justify-content:center;padding-bottom:.4em}.cvt-pastella .pa-photo{position:relative;display:flex;flex:none;justify-content:center;align-items:center;width:-moz-fit-content;width:fit-content;padding:calc(var(--pa-photo-width) * .2) calc(var(--pa-photo-width) * .13) calc(var(--pa-photo-width) * .15)}.cvt-pastella .pa-photo__arch{position:absolute;inset:0;border-radius:60% 60% 50% 50%/50% 50% 50% 50%;background:var(--pa-pink)}.cvt-pastella .pa-photo__picture{position:relative}.cvt-pastella .pa-photo__spark{position:absolute;width:17%;aspect-ratio:1;color:var(--pa-lime)}.cvt-pastella .pa-photo__spark--top{top:-4%;right:8%}.cvt-pastella .pa-photo__spark--bottom{bottom:9%;left:-6%;width:14%}.cvt-pastella .pa-greet--photo{display:flex;align-items:center;gap:calc(var(--cv-gap-x) * 2)}.cvt-pastella .pa-greet__text{display:flex;flex:1 1 auto;flex-direction:column;align-items:flex-start;min-width:0}.cvt-pastella .pa-hello{padding:.18em .95em .22em;border:1.4px solid var(--pa-rule);border-radius:999px;font-family:var(--cv-font-dm-serif-display),Georgia,"Times New Roman",serif;font-size:calc(var(--cv-size-heading) * 1.3);font-style:italic;font-weight:400;line-height:1.35}.cvt-pastella .pa-intro{padding-top:.55em;font-size:1.18em;font-weight:var(--cv-weight-strong);line-height:1.4}.cvt-pastella .pa-intro__name{color:var(--cv-primary)}.cvt-pastella .pa-rule{display:block;align-self:stretch;height:1px;margin:1.1em 0 1em;background:var(--pa-rule)}.cvt-pastella .pa-contacts{flex-direction:column;flex-wrap:nowrap;gap:.45em;font-size:1.02em}.cvt-pastella .pa-contacts .cv-contacts__item{gap:1.05em}.cvt-pastella .pa-contacts .cv-contacts__icon{width:1.4em;height:1.4em;color:var(--cv-primary)}.cvt-pastella .pa-pill{width:-moz-fit-content;width:fit-content;max-width:100%;padding:.46em 1.4em;border-radius:999px;letter-spacing:.04em;text-transform:uppercase;line-height:1.2;color:var(--cv-text)}.cvt-pastella .pa-pill--lavender{background:var(--pa-lavender)}.cvt-pastella .pa-pill--lime{background:var(--pa-lime)}.cvt-pastella .pa-pill--pink{background:var(--pa-pink);color:var(--cv-on-secondary)}.cvt-pastella .pa-pill--green{background:var(--pa-green)}.cvt-pastella .pa-entry{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding-top:1.05em;border-top:1px solid var(--pa-hairline)}.cvt-pastella .pa-entry__dates{padding-bottom:.15em;font-size:.92em;font-weight:var(--cv-weight-strong);color:var(--cv-primary)}.cvt-pastella .pa-entry__title{font-size:1.08em;font-weight:var(--cv-weight-strong);line-height:1.3}.cvt-pastella .pa-entry__sub{padding-top:.1em;font-size:.95em;line-height:1.35}.cvt-pastella .pa-entry__extra{display:flex;flex-direction:column;padding-top:.1em;font-size:.95em}.cvt-pastella .pa-entry__link{min-width:0;padding-top:.15em;font-size:.95em}.cvt-pastella .pa-entry__body{padding-top:.55em;font-size:.95em;color:var(--cv-muted)}.cvt-pastella .cv-row--inline{display:flex;flex-wrap:wrap;gap:.65em}.cvt-pastella .cv-inline__item+.cv-inline__item:before{content:none}.cvt-pastella .cv-inline__item{display:inline-flex;align-items:center;padding:.42em 1.1em;border:1.3px solid var(--pa-rule);border-radius:999px;font-size:.98em;line-height:1.2}.cvt-pastella :where(.cv-section--languages){--cv-row-gap:calc(var(--cv-gap-y) * 0.4)}.cvt-pastella .cv-skill--language{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"name proficiency level";font-size:.98em}.cvt-pastella .cv-skill--language .cv-skill__name{font-weight:var(--cv-weight-body)}.cvt-pastella .cv-skill__level{padding-top:0;padding-left:.7em}.cvt-pastella :where(.cv-level--circle,.cv-level--square,.cv-level--rectangle){gap:.32em}.cvt-pastella :where(.cv-level--circle,.cv-level--square) .cv-level__unit{width:.64em;height:.64em}.cvt-pastella :where(.cv-level--circle,.cv-level--square,.cv-level--rectangle) .cv-level__unit:not(.is-on){background:transparent;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cv-text) 22%,transparent)}.cvt-pastella .cv-profile{gap:.8em}.cvt-pastella .cv-profile .cv-icon{width:1.3em;height:1.3em;color:var(--cv-primary)}.cvt-pastella .pa-jobsearch__line{font-size:1em}.cvt-veridian{--vd-soft:color-mix(in srgb,var(--cv-text) 78%,var(--cv-bg))}.cvt-veridian .cv-sidebar{--cv-muted:color-mix(in srgb,var(--cv-on-primary) 86%,var(--cv-primary));--cv-subtle:color-mix(in srgb,var(--cv-on-primary) 72%,var(--cv-primary));--cv-divider:color-mix(in srgb,var(--cv-on-primary) 28%,var(--cv-primary));--cv-level-on:var(--cv-on-primary);--cv-level-off:color-mix(in srgb,var(--cv-on-primary) 32%,transparent);--vd-soft:color-mix(in srgb,var(--cv-on-primary) 88%,var(--cv-primary));padding-inline:calc(var(--cv-margin-x) * .75);color:var(--cv-on-primary);background:var(--cv-primary)}.cvt-veridian .cv-sidebar .cv-heading,.cvt-veridian .cv-sidebar .cv-rich a,.cvt-veridian .cv-sidebar .cv-rich li::marker{color:inherit}.cvt-veridian .vd-photo{box-shadow:0 0 0 2.25pt var(--cv-bg)}.cvt-veridian .cv-sidebar .vd-photo{box-shadow:0 0 0 2.25pt var(--cv-on-primary)}.cvt-veridian .vd-contact{display:flex;flex-direction:column;align-items:flex-start;gap:calc(var(--cv-gap-y) * 2.2)}.cvt-veridian .vd-contact__list{flex-direction:column;flex-wrap:nowrap;gap:.3em}.cvt-veridian .vd-identity{display:flex;align-items:center;gap:calc(var(--cv-gap-x) * 2)}.cvt-veridian .vd-identity__text{flex:1 1 auto;min-width:0}.cvt-veridian .vd-identity__name{font-size:calc(var(--cv-size-heading) * 2.5);line-height:1.12;letter-spacing:-.01em}.cvt-veridian .vd-identity__headline,.cvt-veridian .vd-identity__name{font-family:var(--cv-font-heading);font-weight:var(--cv-weight-heading)}.cvt-veridian .vd-identity__headline{padding-top:.3em;font-size:calc(var(--cv-size-heading) * 1.08);line-height:1.3;letter-spacing:.03em;text-transform:uppercase;color:var(--cv-primary)}.cvt-veridian .vd-identity__contacts{gap:.2em 1.1em;padding-top:.6em;color:var(--vd-soft)}.cvt-veridian .cv-main-header+.cv-section[data-cv-section=summary]{margin-top:calc(var(--cv-gap-y) * .9 - var(--cv-section-gap))}.cvt-veridian .cv-main-header+.cv-section[data-cv-section=summary]>.cv-section__heading{height:0;margin-bottom:-.45em;padding:0;overflow:hidden;visibility:hidden}.cvt-veridian .cv-heading{letter-spacing:.14em;text-transform:uppercase;color:var(--cv-primary)}.cvt-veridian .vd-entry{display:flex;flex-direction:column;align-items:stretch}.cvt-veridian .vd-entry__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--cv-gap-x)}.cvt-veridian .vd-entry__title{min-width:0;font-family:var(--cv-font-heading);font-size:1.12em;font-weight:var(--cv-weight-heading);line-height:1.3}.cvt-veridian .vd-entry__company{font-family:var(--cv-font-body);font-size:.9em;font-weight:var(--cv-weight-body);color:var(--vd-soft)}.cvt-veridian .vd-entry__date,.cvt-veridian .vd-entry__place{flex:none;white-space:nowrap}.cvt-veridian .vd-entry__line{display:flex;justify-content:space-between;gap:var(--cv-gap-x);padding-top:.1em}.cvt-veridian .vd-entry__extra,.cvt-veridian .vd-entry__meta{padding-top:.1em;color:var(--vd-soft)}.cvt-veridian .vd-entry__extra{display:flex;flex-wrap:wrap}.cvt-veridian .vd-entry__extra>span+span:before{content:"·";padding:0 .45em}.cvt-veridian .vd-entry__link{padding-top:.15em}.cvt-veridian .vd-entry__link .cv-link{font-weight:var(--cv-weight-strong);color:var(--cv-primary)}.cvt-veridian .cv-sidebar .vd-entry__link .cv-link{color:inherit}.cvt-veridian .vd-entry__body{padding-top:.45em}.cvt-veridian :is(.cv-section--skills,.cv-section--languages,.cv-section--profiles){--cv-row-gap:calc(var(--cv-gap-y) * 0.35)}.cvt-veridian :is(.cv-skill,.vd-bullet){position:relative;display:flex;flex-wrap:wrap;align-items:center;-moz-column-gap:.45em;column-gap:.45em;padding-left:1.3em;font-size:.94em}.cvt-veridian :is(.cv-skill,.vd-bullet):before{content:"";position:absolute;top:calc(var(--cv-line-height) * .5em - .17em);left:.25em;width:.34em;height:.34em;border-radius:50%;background:currentColor}.cvt-veridian .cv-skill__name{font-weight:var(--cv-weight-body)}.cvt-veridian .cv-skill__proficiency{text-align:left;color:inherit}.cvt-veridian .cv-skill__proficiency:before{content:"— "}.cvt-veridian .cv-skill__level{padding-top:0;font-size:.85em}.cvt-veridian .cv-skill__level:has(>.cv-level--bar,>.cv-level--rectangle-full){flex-basis:100%;padding-top:.2em}.cvt-veridian .cv-skill__keywords{flex-basis:100%}.cvt-veridian .cv-jobsearch__grid{grid-template-columns:repeat(4,minmax(min-content,1fr));gap:.6em 1.4em}.cvt-veridian .cv-jobsearch__label{font-size:.84em;font-weight:var(--cv-weight-strong);letter-spacing:.12em}.cv-page.cvt-monolith{--cv-section-gap:calc(var(--cv-gap-y) * 2.3);--cv-heading-gap:calc(var(--cv-gap-y) * 1.5);--cv-row-gap:calc(var(--cv-gap-y) * 1.05)}.cvt-monolith .cv-main{--cv-divider:color-mix(in srgb,var(--cv-primary) 20%,var(--cv-bg));--mn-rule:color-mix(in srgb,var(--cv-primary) 32%,var(--cv-bg));--mn-accent:var(--cv-primary);--mn-row-pad:calc(var(--cv-gap-y) * 1.1)}.cvt-monolith .cv-sidebar{--cv-muted:color-mix(in srgb,var(--cv-on-primary) 80%,var(--cv-primary));--cv-subtle:color-mix(in srgb,var(--cv-on-primary) 64%,var(--cv-primary));--cv-divider:color-mix(in srgb,var(--cv-on-primary) 22%,var(--cv-primary));--cv-level-on:var(--cv-on-primary);--cv-level-off:color-mix(in srgb,var(--cv-on-primary) 26%,var(--cv-primary));--cv-row-gap:calc(var(--cv-gap-y) * 0.8);--mn-rule:color-mix(in srgb,var(--cv-on-primary) 34%,var(--cv-primary));--mn-accent:var(--cv-on-primary);--mn-row-pad:calc(var(--cv-gap-y) * 0.8);background:var(--cv-primary);color:var(--cv-on-primary)}.cvt-monolith .cv-sidebar :is(.cv-link,.cv-rich a){color:inherit}.cvt-monolith .cv-sidebar .cv-rich mark{background:color-mix(in srgb,var(--cv-on-primary) 22%,var(--cv-primary))}.cvt-monolith .cv-main .cv-link{color:var(--cv-primary)}.cvt-monolith .cv-sidebar-header:empty{display:none}.cvt-monolith .mn-header{display:flex;flex-direction:column;align-items:flex-start;gap:calc(var(--cv-gap-y) * 1.5)}.cvt-monolith .mn-header .cv-picture{margin-bottom:calc(var(--cv-gap-y) * .5);box-shadow:0 0 0 2.25pt var(--cv-on-primary)}.cvt-monolith .mn-header__identity{display:flex;flex-direction:column;gap:.45em}.cvt-monolith .mn-header__name{font-family:var(--cv-font-heading);font-size:calc(var(--cv-size-heading) * 1.55);font-weight:500;line-height:1.12;letter-spacing:-.01em;overflow-wrap:anywhere}.cvt-monolith .mn-header__headline{font-size:.95em;font-weight:600;line-height:1.3;letter-spacing:.16em;text-transform:uppercase;text-wrap:balance}.cvt-monolith .mn-contacts{flex-direction:column;flex-wrap:nowrap;gap:.12em;font-size:.94em;line-height:1.25;color:var(--cv-muted)}.cvt-monolith .mn-contacts .cv-contacts__item{align-items:flex-start;gap:.85em}.cvt-monolith .mn-contacts .cv-contacts__icon{width:1.1em;height:1.1em;margin-top:.075em;color:var(--cv-on-primary)}.cvt-monolith .cv-heading{gap:.6em;color:var(--mn-accent)}.cvt-monolith .cv-heading:before{content:"";flex:none;align-self:flex-start;width:.9em;height:max(1.5px,.1em);margin-top:calc(.5lh - .05em);background:currentColor}.cvt-monolith .cv-heading:after{content:"";flex:1 1 auto;align-self:flex-end;min-width:1em;height:1px;margin-bottom:calc(.5lh - .5px);background:var(--mn-rule)}.cvt-monolith .cv-row--items{padding-bottom:var(--mn-row-pad);border-bottom:1px solid var(--cv-divider)}.cvt-monolith .cv-section--profiles .cv-row--items{padding-bottom:0;border-bottom:0}.cvt-monolith .cv-section--profiles{--cv-row-gap:0.12em}.cvt-monolith .mn-entry{display:flex;flex-direction:column;align-items:stretch;min-width:0}.cvt-monolith .mn-entry__head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--cv-gap-x)}.cvt-monolith .mn-entry__title{min-width:0;font-family:var(--cv-font-heading);font-size:1.15em;font-weight:500;line-height:1.3}.cvt-monolith .mn-entry__tag{flex:none;font-size:.8em;letter-spacing:.02em}.cvt-monolith .mn-entry__meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.2em var(--cv-gap-x);padding-top:.3em}.cvt-monolith .mn-entry__where{display:flex;flex-wrap:wrap;align-items:center;gap:.2em 1.1em;min-width:0;font-size:.92em}.cvt-monolith :is(.mn-entry__company,.mn-entry__place,.mn-entry__dates){display:inline-flex;align-items:center;gap:.45em;min-width:0}.cvt-monolith .mn-entry__company{font-weight:500}.cvt-monolith .mn-entry__place{color:var(--cv-muted)}.cvt-monolith .mn-entry__dates{flex:none;margin-left:auto;white-space:nowrap;font-size:.92em;font-weight:var(--cv-weight-strong);letter-spacing:.02em;color:var(--mn-accent)}.cvt-monolith .mn-entry .cv-icon{width:1.15em;height:1.15em}.cvt-monolith .mn-entry--plain .mn-entry__company{font-weight:inherit;color:var(--cv-muted)}.cvt-monolith .mn-entry--plain .mn-entry__dates{color:var(--cv-muted)}.cvt-monolith .mn-entry__extra{display:flex;flex-wrap:wrap;-moz-column-gap:.9em;column-gap:.9em;padding-top:.15em;font-size:.92em;color:var(--cv-muted)}.cvt-monolith .cv-sidebar .mn-entry__extra{flex-direction:column}.cvt-monolith .mn-entry__body{padding-top:.5em;color:var(--cv-muted)}.cvt-monolith .mn-entry__link{padding-top:.25em}.cvt-monolith .cv-skill{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name level" "proficiency level" "keywords keywords";-moz-column-gap:0;column-gap:0}.cvt-monolith .cv-skill__name{font-size:1.05em;font-weight:var(--cv-weight-body)}.cvt-monolith :is(.cv-skill__proficiency,.cv-skill__level){padding-top:0;padding-left:.8em}.cvt-monolith .cv-skill__proficiency{padding-left:0;text-align:left;font-size:.95em;line-height:1.3}.cvt-monolith .cv-level--square{gap:.6em}.cvt-monolith .cv-level--square .cv-level__unit{width:.5em;height:.5em;border-radius:0}.cvt-monolith :is(.cv-level--bar,.cv-level--rectangle-full){width:4.6em}.cvt-monolith .cv-profile{align-items:flex-start;gap:.85em;font-size:.94em;line-height:1.25}.cvt-monolith .cv-profile .cv-icon{width:1.1em;height:1.1em;margin-top:.075em}.cvt-monolith .cv-sidebar .cv-profile__label{color:var(--cv-muted)}.cvt-monolith .cv-main .cv-profile .cv-icon{color:var(--cv-primary)}.cvt-monolith .cv-inline,.cvt-monolith .cv-section--summary .cv-row--text{color:var(--cv-muted)}.cvt-monolith .cv-jobsearch__label{font-weight:600;letter-spacing:.12em}.cv-page.cvt-magnolia{--mg-band:color-mix(in srgb,var(--cv-primary) 7%,var(--cv-bg));--mg-inner:calc(var(--cv-margin-x) * 0.5);--mg-curve:44pt;--cv-section-gap:calc(var(--cv-gap-y) * 3.2);--cv-heading-gap:calc(var(--cv-gap-y) * 1.25);--cv-row-gap:calc(var(--cv-gap-y) * 2)}.cvt-magnolia.cv-page--sidebar-right:not(.cv-page--full) .cv-main{padding-right:var(--mg-inner)}.cvt-magnolia.cv-page--sidebar-left:not(.cv-page--full) .cv-main,.cvt-magnolia.cv-page--sidebar-right:not(.cv-page--full) .cv-sidebar{padding-left:var(--mg-inner)}.cvt-magnolia.cv-page--sidebar-left:not(.cv-page--full) .cv-sidebar{padding-right:var(--mg-inner)}.cvt-magnolia :is(.cv-link,.cv-rich a){color:var(--cv-primary)}.cvt-magnolia .cv-header:before{content:"";position:absolute;inset:0 0 var(--mg-curve);background:var(--mg-band)}.cvt-magnolia .mg-header{position:relative}.cvt-magnolia .mg-header__row{display:flex;align-items:flex-start;gap:calc(var(--cv-gap-x) * 2)}.cvt-magnolia .mg-identity{flex:1 1 auto;min-width:0}.cvt-magnolia .mg-headline{font-size:var(--cv-size-heading);line-height:1.7;color:var(--cv-primary)}.cvt-magnolia .mg-headline,.cvt-magnolia .mg-name{font-family:var(--cv-font-heading);font-weight:var(--cv-weight-heading)}.cvt-magnolia .mg-name{font-size:calc(var(--cv-size-heading) * 2.5);line-height:1.2;overflow-wrap:anywhere}.cvt-magnolia .mg-name__part{display:block}.cvt-magnolia .mg-contacts{flex:0 1 auto;flex-direction:column;flex-wrap:nowrap;gap:.6em;max-width:42%;padding-top:.4em;font-family:var(--cv-font-heading);line-height:1.4}.cvt-magnolia .mg-contacts .cv-contacts__item{align-items:flex-start;gap:.6em}.cvt-magnolia .mg-contacts .cv-contacts__text[href]{text-decoration:underline;text-decoration-thickness:.05em;text-underline-offset:.16em}.cvt-magnolia .cv-profile .cv-icon,.cvt-magnolia .mg-contacts .cv-contacts__icon{box-sizing:content-box;width:.7em;height:.7em;margin-top:.1em;padding:.25em;border-radius:50%;background:var(--cv-primary);color:var(--cv-on-primary)}.cvt-magnolia .mg-curve{display:block;width:calc(100% + var(--cv-margin-x) * 2);height:var(--mg-curve);margin:calc(var(--cv-gap-y) * 1.5) calc(var(--cv-margin-x) * -1) 0;color:var(--mg-band)}.cvt-magnolia .cv-heading{line-height:1.45}.cvt-magnolia :is(.cv-section--skills,.cv-section--tools,.cv-section--languages,.cv-section--interests,.cv-section--profiles){--cv-row-gap:calc(var(--cv-gap-y) * 0.3)}.cvt-magnolia .mg-entry{display:flex;flex-direction:column;align-items:stretch}.cvt-magnolia .mg-entry__title{font-family:var(--cv-font-heading);font-size:1.4em;font-weight:var(--cv-weight-heading);line-height:1.45}.cvt-magnolia .cv-sidebar .mg-entry__title{font-size:1.2em}.cvt-magnolia .mg-entry__meta{font-family:var(--cv-font-heading);font-size:1.1em;line-height:1.45;color:var(--cv-subtle)}.cvt-magnolia .mg-entry__extra{display:flex;flex-wrap:wrap;-moz-column-gap:.9em;column-gap:.9em;padding-top:.15em;color:var(--cv-subtle)}.cvt-magnolia .mg-entry__link{padding-top:.25em}.cvt-magnolia .mg-entry__body{padding-top:.7em}.cvt-magnolia .cv-skill__name{font-weight:var(--cv-weight-body)}.cvt-magnolia .cv-skill__proficiency{font-family:var(--cv-font-heading);font-size:.95em;color:var(--cv-subtle)}.cvt-magnolia .cv-skill__keywords{color:var(--cv-subtle)}.cvt-magnolia .cv-profile{gap:.6em}.cvt-magnolia .cv-jobsearch__label{font-family:var(--cv-font-heading);font-size:.95em;letter-spacing:0;text-transform:none}.cvt-magnolia .cv-jobsearch__value{font-weight:var(--cv-weight-body)}.cv-page.cvt-editoria{--ed-inner:calc(var(--cv-margin-x) * 0.55);--ed-rule:color-mix(in srgb,var(--cv-text) 12%,var(--cv-bg));--ed-kicker-bg:color-mix(in srgb,var(--cv-primary) 14%,var(--cv-bg));--cv-section-gap:calc(var(--cv-gap-y) * 2);--cv-heading-gap:calc(var(--cv-gap-y) * 1.1);--cv-row-gap:calc(var(--cv-gap-y) * 1.2)}.cvt-editoria.cv-page--sidebar-right:not(.cv-page--full) .cv-main{padding-right:var(--ed-inner)}.cvt-editoria.cv-page--sidebar-left:not(.cv-page--full) .cv-main,.cvt-editoria.cv-page--sidebar-right:not(.cv-page--full) .cv-sidebar{padding-left:var(--ed-inner)}.cvt-editoria.cv-page--sidebar-left:not(.cv-page--full) .cv-sidebar{padding-right:var(--ed-inner)}.cvt-editoria .cv-header{padding-right:0;padding-left:0}.cvt-editoria .ed-header{display:grid;grid-template-columns:minmax(0,1fr) var(--cv-sidebar-width);align-items:center}.cvt-editoria .ed-header--no-details,.cvt-editoria.cv-page--full .ed-header{grid-template-columns:minmax(0,1fr) auto}.cvt-editoria.cv-page--sidebar-left .ed-header{grid-template-columns:var(--cv-sidebar-width) minmax(0,1fr)}.cvt-editoria.cv-page--sidebar-left .ed-header__details{order:-1}.cvt-editoria .ed-header:after{content:"";grid-column:1/-1;height:1px;margin:calc(var(--cv-gap-y) * 1.6) var(--cv-margin-x) 0;background:var(--ed-rule)}.cvt-editoria .ed-header__identity{display:flex;align-items:center;gap:calc(var(--cv-gap-x) * 1.6);min-width:0;padding:0 var(--ed-inner) 0 var(--cv-margin-x)}.cvt-editoria.cv-page--sidebar-left .ed-header__identity{padding:0 var(--cv-margin-x) 0 var(--ed-inner)}.cvt-editoria .ed-header--no-details .ed-header__identity,.cvt-editoria.cv-page--full .ed-header__identity{padding:0 var(--cv-margin-x)}.cvt-editoria .ed-header__text{min-width:0}.cvt-editoria .ed-header__name{font-family:var(--cv-font-heading);font-size:calc(var(--cv-size-heading) * 2.6);font-weight:var(--cv-weight-heading);line-height:1.12;letter-spacing:-.01em;text-wrap:balance;overflow-wrap:anywhere}.cvt-editoria .ed-header__headline{padding-top:.7em;font-size:.98em;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;color:var(--cv-muted)}.cvt-editoria .ed-header__details{min-width:0;padding:0 var(--cv-margin-x) 0 var(--ed-inner)}.cvt-editoria.cv-page--sidebar-left .ed-header__details{padding:0 var(--ed-inner) 0 var(--cv-margin-x)}.cvt-editoria.cv-page--full .ed-header__details{max-width:45%;padding:0 var(--cv-margin-x) 0 var(--cv-gap-x)}.cvt-editoria .ed-table{display:flex;flex-direction:column;gap:.45em}.cvt-editoria .ed-table__row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 1em}.cvt-editoria .ed-table__label{flex:none;font-family:var(--cv-font-heading);font-weight:var(--cv-weight-heading);line-height:var(--cv-line-height)}.cvt-editoria .ed-table__value{flex:1 1 auto;min-width:0;text-align:right;color:var(--cv-muted);overflow-wrap:break-word}.cvt-editoria .ed-table__value--wide{flex-basis:100%}.cvt-editoria .ed-kicker{gap:1em;color:var(--cv-text)}.cvt-editoria .ed-kicker__box{display:inline-flex;flex:none;align-items:center;gap:.45em;max-width:100%;padding:.55em 1em;border-radius:.4em;background:var(--ed-kicker-bg);line-height:1.25}.cvt-editoria .ed-kicker:after{content:"";flex:1 1 1em;min-width:1em;height:1px;background:var(--ed-rule)}.cvt-editoria .ed-entry{display:flex;flex-direction:column;align-items:stretch;min-width:0}.cvt-editoria .ed-entry__head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--cv-gap-x)}.cvt-editoria .ed-entry__title{min-width:0;font-family:var(--cv-font-heading);font-size:1.1em;font-weight:var(--cv-weight-heading);line-height:1.3}.cvt-editoria .ed-entry__dates{flex:none;font-size:.92em;white-space:nowrap;color:var(--cv-muted)}.cvt-editoria .ed-entry__meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.15em var(--cv-gap-x);padding-top:.2em;color:var(--cv-muted)}.cvt-editoria .ed-entry__sub{min-width:0}.cvt-editoria .ed-entry__tag{flex:none;font-size:.9em;letter-spacing:.02em}.cvt-editoria .ed-entry__extra{display:flex;flex-wrap:wrap;-moz-column-gap:.9em;column-gap:.9em;padding-top:.15em;color:var(--cv-muted)}.cvt-editoria .ed-entry__link{padding-top:.2em}.cvt-editoria .ed-entry__body{padding-top:.45em;color:var(--cv-muted)}.cvt-editoria .cv-sidebar .ed-entry__head,.cvt-editoria .cv-sidebar .ed-entry__meta{flex-direction:column;align-items:flex-start;gap:.1em}.cvt-editoria .cv-sidebar .ed-entry__dates{white-space:normal}.cvt-editoria .cv-sidebar .ed-entry__extra{flex-direction:column}.cvt-editoria .cv-skill__name{font-weight:500}.cvt-editoria .cv-skill__proficiency{font-size:.92em}.cvt-editoria .cv-level--bar{height:.5em;border-radius:1px}.cvt-editoria .cv-level--bar .cv-level__fill{border-radius:0}.cvt-editoria .cv-inline,.cvt-editoria .cv-section--summary .cv-row--text{color:var(--cv-muted)}.cvt-editoria .cv-profile .cv-icon{color:var(--cv-primary)}.cvt-editoria .ed-jobsearch__table{gap:.4em}.cvt-editoria .cv-main .ed-jobsearch__table .ed-table__row{justify-content:flex-start;gap:0 1.5em}.cvt-editoria .cv-main .ed-jobsearch__table .ed-table__label{min-width:8em}.cvt-editoria .cv-main .ed-jobsearch__table .ed-table__value{flex:1 1 60%;text-align:left}.cvt-editoria .cv-jobsearch__note{padding-top:.6em;color:var(--cv-muted)}.cv-page.cvt-serifine{--sf-rule:color-mix(in srgb,var(--cv-text) 16%,var(--cv-bg));--sf-small:0.91em;--sf-title:1.09em;--cv-level-off:color-mix(in srgb,var(--cv-text) 7%,var(--cv-bg));--cv-section-gap:calc(var(--cv-gap-y) * 3);--cv-heading-gap:calc(var(--cv-gap-y) * 1.8);--cv-row-gap:calc(var(--cv-gap-y) * 1.8)}.cvt-serifine :is(.cv-link,.cv-rich a){color:var(--cv-primary)}.cvt-serifine .cv-header{padding-bottom:calc(var(--cv-gap-y) * 2);border-bottom:1px solid var(--sf-rule)}.cvt-serifine .sf-header__headline{font-size:1em;line-height:1.2;letter-spacing:.09em;text-transform:uppercase;color:var(--cv-muted)}.cvt-serifine .sf-header__name{padding-top:.5em;font-family:var(--cv-font-heading);font-size:calc(var(--cv-size-heading) * 2.43);font-weight:var(--cv-weight-heading);line-height:1.1;letter-spacing:-.012em;color:var(--cv-primary);overflow-wrap:anywhere;text-wrap:balance}.cvt-serifine .sf-header__headline+.sf-header__name{padding-top:.5em}.cvt-serifine.cv-page--two:not(.cv-page--full) .cv-sidebar{border-left:1px solid var(--sf-rule)}.cvt-serifine.cv-page--two.cv-page--sidebar-right:not(.cv-page--full) .cv-main{padding-right:calc(var(--cv-margin-x) * .75)}.cvt-serifine.cv-page--two.cv-page--sidebar-right:not(.cv-page--full) .cv-sidebar{padding-left:calc(var(--cv-margin-x) * .65)}.cvt-serifine.cv-page--two.cv-page--sidebar-left:not(.cv-page--full) .cv-sidebar{padding-right:calc(var(--cv-margin-x) * .65);border-left:0;border-right:1px solid var(--sf-rule)}.cvt-serifine.cv-page--two.cv-page--sidebar-left:not(.cv-page--full) .cv-main{padding-left:calc(var(--cv-margin-x) * .75)}.cvt-serifine .cv-heading{line-height:1.15;letter-spacing:-.02em;color:var(--cv-primary)}.cvt-serifine .sf-entry{display:flex;flex-direction:column;min-width:0}.cvt-serifine .sf-entry__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.1em var(--cv-gap-x)}.cvt-serifine .sf-entry__title{flex:1 1 auto;min-width:0;font-family:var(--cv-font-heading);font-size:var(--sf-title);font-weight:var(--cv-weight-heading);line-height:1.35;color:var(--cv-primary)}.cvt-serifine .sf-entry__meta{display:flex;flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end;max-width:100%;margin-left:auto;text-align:right;font-size:var(--sf-small);line-height:1.5;color:var(--cv-subtle)}.cvt-serifine .sf-entry__meta-part{white-space:nowrap}.cvt-serifine .sf-entry__detail{padding-top:.2em;color:var(--cv-muted)}.cvt-serifine .sf-entry__detail-part{overflow-wrap:anywhere}.cvt-serifine .sf-entry__link{padding-top:.2em}.cvt-serifine .sf-entry__body{padding-top:.35em;color:var(--cv-muted)}.cvt-serifine .cv-role__position{color:var(--cv-primary)}.cvt-serifine .sf-contacts{display:flex;flex-direction:column;gap:var(--cv-heading-gap)}.cvt-serifine .sf-rows{display:grid;gap:calc(var(--cv-gap-y) * 1.4) var(--cv-gap-x)}.cvt-serifine .sf-rows--grid{grid-template-columns:repeat(auto-fill,minmax(10em,1fr))}.cvt-serifine .sf-row{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0}.cvt-serifine .sf-row__label{display:flex;align-items:center;gap:.4em;font-family:var(--cv-font-heading);font-size:var(--sf-title);font-weight:var(--cv-weight-heading);line-height:1.35;color:var(--cv-primary)}.cvt-serifine .sf-row__value{padding-top:.2em;color:var(--cv-muted);overflow-wrap:anywhere}.cvt-serifine .sf-row__value :is(.cv-contacts__text,.cv-profile__label){color:inherit}.cvt-serifine .cv-profile.sf-row>.sf-row__value:first-child{padding-top:0}.cvt-serifine .sf-jobsearch__note{padding-top:calc(var(--cv-gap-y) * 1.2);color:var(--cv-muted)}.cvt-serifine :is(.cv-section--skills,.cv-section--tools,.cv-section--languages){--cv-row-gap:calc(var(--cv-gap-y) * 1.4)}.cvt-serifine .cv-skill{align-items:baseline}.cvt-serifine .cv-skill__name{font-family:var(--cv-font-heading);font-size:var(--sf-title);font-weight:var(--cv-weight-heading);line-height:1.35;color:var(--cv-primary)}.cvt-serifine .cv-skill__proficiency{font-size:var(--sf-small);line-height:1.5;color:var(--cv-subtle)}.cvt-serifine .cv-skill__level{padding-top:.5em}.cvt-serifine .cv-level--bar{height:2px;border-radius:2px}.cvt-serifine .cv-skill__keywords{padding-top:.15em}.cvt-serifine .cv-inline,.cvt-serifine .cv-section--summary .cv-row--text{color:var(--cv-muted)}.cvt-serifine .cv-rich li::marker{color:var(--cv-subtle)}.cv-page.cvt-northline{--cv-section-gap:calc(var(--cv-gap-y) * 2.4);--cv-row-gap:calc(var(--cv-gap-y) * 1.6);--cv-heading-gap:var(--cv-gap-y)}.cvt-northline .cv-sidebar{--nl-ink:var(--cv-on-primary);--nl-title:var(--cv-on-primary);--nl-soft:color-mix(in srgb,var(--cv-on-primary) 82%,var(--cv-primary));--nl-box:color-mix(in srgb,var(--cv-on-primary) 88%,var(--cv-primary));--cv-muted:color-mix(in srgb,var(--cv-on-primary) 82%,var(--cv-primary));--cv-subtle:color-mix(in srgb,var(--cv-on-primary) 64%,var(--cv-primary));--cv-divider:color-mix(in srgb,var(--cv-on-primary) 22%,var(--cv-primary));--cv-level-on:var(--cv-on-primary);--cv-level-off:color-mix(in srgb,var(--cv-on-primary) 25%,transparent);--cv-heading-gap:calc(var(--cv-gap-y) * 1.5);background:var(--cv-primary);color:var(--cv-on-primary)}.cvt-northline .cv-main{--nl-ink:var(--cv-primary);--nl-title:var(--cv-text);--nl-soft:color-mix(in srgb,var(--cv-text) 58%,var(--cv-bg));--nl-box:color-mix(in srgb,var(--cv-primary) 9%,var(--cv-bg));--cv-heading-gap:calc(var(--cv-gap-y) * 0.9)}.cvt-northline .cv-main .cv-section--summary{--cv-heading-gap:calc(var(--cv-gap-y) * 1.5)}.cvt-northline .cv-main-header:empty,.cvt-northline .cv-sidebar-header:empty{display:none}.cvt-northline .cv-sidebar :where(.cv-link,.cv-rich a,.cv-profile__label){color:inherit}.cvt-northline .cv-sidebar .cv-rich mark{background:color-mix(in srgb,var(--cv-on-primary) 22%,transparent)}.cvt-northline .nl-identity{display:flex;flex-direction:column}.cvt-northline .nl-identity__picture{display:flex;padding-bottom:1.5em}.cvt-northline .nl-identity__name{font-family:var(--cv-font-heading);font-size:calc(var(--cv-size-heading) * 1.75);font-weight:var(--cv-weight-heading);line-height:1.2;overflow-wrap:break-word;color:var(--nl-title)}.cvt-northline .nl-identity__headline{padding-top:.45em;font-size:1.08em;line-height:1.35}.cvt-northline .nl-identity__lines{flex-direction:column;flex-wrap:nowrap;gap:.15em;padding-top:1.3em}.cvt-northline .nl-boxes{flex-direction:column;flex-wrap:nowrap;gap:.6em;padding-top:1.3em}.cvt-northline .nl-box{display:flex;padding:.5em .75em;border-radius:4px;font-size:.92em;background:var(--nl-box);color:var(--cv-primary)}.cvt-northline .cv-section:not(.cv-section--summary)>.cv-section__heading{margin-bottom:min(0px,calc(var(--cv-heading-gap) - var(--cv-row-gap)))}.cvt-northline .cv-heading{position:relative;width:-moz-fit-content;width:fit-content;max-width:100%;letter-spacing:.12em;text-transform:capitalize;color:var(--nl-ink)}.cvt-northline .cv-main .cv-heading{padding-bottom:.45em}.cvt-northline .cv-main .cv-heading:after{content:"";position:absolute;bottom:0;left:0;width:30%;height:2px;background:currentColor}.cvt-northline .nl-entry{display:flex;flex-direction:column;align-items:stretch;min-width:0}.cvt-northline .nl-entry__head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--cv-gap-x)}.cvt-northline .nl-entry__title{min-width:0;font-family:var(--cv-font-heading);font-size:1.2em;font-weight:var(--cv-weight-strong);line-height:1.3;color:var(--nl-title)}.cvt-northline .nl-entry__dates{flex:none;white-space:nowrap;font-size:.85em;color:var(--nl-ink)}.cvt-northline .nl-entry__tag{padding-top:.1em;font-size:.92em;color:var(--nl-ink)}.cvt-northline .nl-entry__extra,.cvt-northline .nl-entry__sub{padding-top:.1em;color:var(--nl-soft)}.cvt-northline .nl-entry__extra{display:flex;flex-direction:column}.cvt-northline .cv-sidebar .nl-entry__extra{font-size:.92em}.cvt-northline .nl-entry__link{min-width:0;padding-top:.2em}.cvt-northline .nl-entry__body{padding-top:.3em;color:var(--nl-soft)}.cvt-northline :where(.cv-section--education,.cv-section--certifications){--cv-row-gap:calc(var(--cv-gap-y) * 1.1)}.cvt-northline .nl-entry--split{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);-moz-column-gap:calc(var(--cv-gap-x) * 2.4);column-gap:calc(var(--cv-gap-x) * 2.4);align-items:start}.cvt-northline .nl-entry__side{display:flex;flex-direction:column;gap:.15em;min-width:0}.cvt-northline .nl-entry--split .nl-entry__dates{white-space:normal;font-size:1em;font-weight:var(--cv-weight-strong)}.cvt-northline .nl-entry__org{color:var(--nl-title)}.cvt-northline .nl-entry__place{font-size:.92em;color:var(--nl-soft)}.cvt-northline .nl-entry__main{min-width:0}.cvt-northline .cv-sidebar .nl-entry--split{display:flex;flex-direction:column}.cvt-northline .cv-sidebar .nl-entry--split :where(.nl-entry__side,.nl-entry__main){display:contents}.cvt-northline .cv-sidebar .nl-entry--split .nl-entry__title{order:-2}.cvt-northline .cv-sidebar .nl-entry--split .nl-entry__org{order:-1}.cvt-northline :where(.cv-section--skills,.cv-section--languages){--cv-row-gap:calc(var(--cv-gap-y) * 0.6)}.cvt-northline .nl-bullet{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"dot text level" ". keywords keywords";-moz-column-gap:.75em;column-gap:.75em;align-items:baseline;min-width:0;font-size:1.22em;line-height:1.35}.cvt-northline .nl-bullet__dot{grid-area:dot;display:block;width:.3em;height:.3em;border-radius:50%;background:currentColor;transform:translateY(-.22em)}.cvt-northline .nl-bullet__icon{grid-area:dot;transform:translateY(.14em)}.cvt-northline .nl-bullet__text{grid-area:text;min-width:0;overflow-wrap:break-word}.cvt-northline .nl-bullet__level{grid-area:level;align-self:center;font-size:.8em}.cvt-northline .nl-bullet__keywords{grid-area:keywords;font-size:.8em;color:var(--nl-soft)}.cvt-northline .cv-section--profiles{--cv-row-gap:calc(var(--cv-gap-y) * 0.45)}.cvt-northline .cv-profile{gap:.9em}.cvt-northline .cv-profile .cv-icon{width:1.1em;height:1.1em}.cvt-northline .cv-main .cv-section--summary .cv-row--text{color:var(--nl-soft)}.cvt-northline .cv-sidebar .cv-jobsearch__grid{grid-template-columns:minmax(0,1fr);gap:.6em}.cvt-northline .cv-sidebar .cv-jobsearch__item{padding:.45em .8em;border-radius:4px;font-size:.95em;background:var(--nl-box);color:var(--cv-primary)}.cvt-northline .cv-sidebar .cv-jobsearch__label{font-size:.92em;letter-spacing:0;text-transform:none;color:color-mix(in srgb,var(--cv-primary) 80%,var(--nl-box))}.cvt-northline .cv-sidebar .cv-jobsearch__value{font-weight:var(--cv-weight-body)}.cv-page.cvt-urbanline{--ur-gutter:21%;--ur-rule:color-mix(in srgb,var(--cv-text) 10%,var(--cv-bg));--ur-soft-accent:color-mix(in srgb,var(--cv-primary) 70%,var(--cv-bg));--cv-section-gap:calc(var(--cv-gap-y) * 2.1);--cv-heading-gap:calc(var(--cv-gap-y) * 1.8);--cv-row-gap:calc(var(--cv-gap-y) * 2.2);--cv-level-off:color-mix(in srgb,var(--cv-text) 9%,var(--cv-bg))}.cvt-urbanline .ur-header{display:flex;align-items:center;gap:calc(var(--cv-gap-x) * 2);padding-bottom:calc(var(--cv-gap-y) * 1.7);border-bottom:1px solid var(--ur-rule)}.cvt-urbanline .ur-header__identity{display:flex;flex:1 1 0;flex-direction:column;min-width:0}.cvt-urbanline .ur-header__headline{padding-bottom:.35em;font-family:var(--cv-font-heading);font-size:.95em;font-weight:var(--cv-weight-strong);line-height:1.35;letter-spacing:.18em;text-transform:uppercase;color:var(--cv-primary)}.cvt-urbanline .ur-header__name{font-family:var(--cv-font-heading);font-size:calc(var(--cv-size-heading) * 2.15);font-weight:var(--cv-weight-heading);line-height:1.15;letter-spacing:-.01em;overflow-wrap:anywhere}.cvt-urbanline .ur-header__links{flex-direction:column;flex-wrap:nowrap;gap:.1em;padding-top:.65em;font-family:var(--cv-font-heading);font-size:.95em;color:var(--cv-muted)}.cvt-urbanline .ur-header__contacts{flex:0 0 auto;flex-direction:column;flex-wrap:nowrap;align-items:flex-end;gap:.2em;max-width:45%;font-family:var(--cv-font-heading);text-align:right}.cvt-urbanline .ur-header__contacts .cv-contacts__text{overflow-wrap:break-word}.cvt-urbanline .cv-heading{gap:.9em;letter-spacing:.16em;text-transform:uppercase}.cvt-urbanline .cv-heading:after{content:"";flex:1;min-width:1em;height:1px;background:var(--ur-rule)}.cvt-urbanline .ur-entry{grid-template-columns:var(--ur-gutter) minmax(0,1fr);grid-template-areas:none;-moz-column-gap:calc(var(--cv-gap-x) * 1.8);column-gap:calc(var(--cv-gap-x) * 1.8)}.cvt-urbanline .ur-entry__side{display:flex;flex-direction:column;gap:.15em;min-width:0}.cvt-urbanline .ur-entry__dates{font-size:.92em;font-weight:var(--cv-weight-strong);letter-spacing:.03em;color:var(--cv-primary)}.cvt-urbanline .ur-entry__place{font-size:.92em;color:var(--cv-muted)}.cvt-urbanline .ur-entry__main{min-width:0}.cvt-urbanline .ur-entry__head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--cv-gap-x)}.cvt-urbanline .ur-entry__title{min-width:0;font-family:var(--cv-font-heading);font-size:1.1em;font-weight:var(--cv-weight-strong);line-height:1.3}.cvt-urbanline .ur-entry__org{flex:none;max-width:45%;font-weight:var(--cv-weight-strong);text-align:right;color:var(--cv-primary)}.cvt-urbanline .ur-entry__extra{display:flex;flex-wrap:wrap;-moz-column-gap:.9em;column-gap:.9em;padding-top:.1em;color:var(--cv-muted)}.cvt-urbanline .ur-entry__link{padding-top:.15em}.cvt-urbanline .ur-entry__body{padding-top:.45em;color:var(--cv-muted)}.cvt-urbanline .cv-section--languages,.cvt-urbanline .cv-section--skills{--cv-row-gap:var(--cv-gap-y)}.cvt-urbanline .cv-section--languages .cv-row--items,.cvt-urbanline .cv-section--skills .cv-row--items{-moz-column-gap:calc(var(--cv-gap-x) * 1.8);column-gap:calc(var(--cv-gap-x) * 1.8)}.cvt-urbanline .cv-skill{align-items:baseline}.cvt-urbanline .cv-skill__name{font-family:var(--cv-font-heading);font-size:1.1em}.cvt-urbanline .cv-skill__proficiency{font-family:var(--cv-font-heading);font-size:.78em;font-weight:var(--cv-weight-strong);letter-spacing:.08em;text-transform:uppercase;color:var(--ur-soft-accent)}.cvt-urbanline .cv-skill__level{padding-top:.3em}.cvt-urbanline .cv-level--bar{height:.45em}.cvt-urbanline .cv-profile .cv-icon{color:var(--cv-primary)}.cvt-urbanline .cv-jobsearch__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cvt-urbanline .cv-jobsearch__label{font-weight:var(--cv-weight-strong);letter-spacing:.12em}