.mm-biography{-moz-column-gap:var(--mm-spacing-6xl);column-gap:var(--mm-spacing-6xl);row-gap:var(--mm-spacing-xl)}.mm-biography,.mm-biography__text{display:flex;flex-direction:column}.mm-biography__text{gap:var(--mm-spacing-md)}@media (min-width:641px){.mm-biography{flex-direction:row}}.mm-biography__lead-text{margin-bottom:var(--mm-spacing-xs);color:var(--mm-color-neutral);font-style:italic;font-size:var(--mm-spacing-2xl);line-height:var(--mm-line-height-intro);font-family:var(--mm-font-family-secondary)}.mm-biography__main-text p{font-size:calc(var(--mm-spacing-md) * 1.075);line-height:var(--mm-line-height-text);font-family:var(--mm-font-family-body)}.mm-biography__image img{box-shadow:var(--mm-shadow-raised);border-radius:var(--mm-radius-lg)}.mm-container{margin-left:auto;margin-right:auto;padding-left:var(--mm-container-padding);padding-right:var(--mm-container-padding);max-width:var(--mm-container-max-width-standard)}@media (min-width:641px){.mm-container--narrow{padding-left:var(--mm-container-padding-narrow);padding-right:var(--mm-container-padding-narrow);max-width:var(--mm-container-max-width-narrow)}.mm-container--wide{padding-left:var(--mm-container-padding-wide);padding-right:var(--mm-container-padding-wide);max-width:var(--mm-container-max-width-wide)}}.mm-hero{text-align:center}.mm-hero__container{display:flex;row-gap:var(--mm-spacing-3xl);flex-direction:column}.mm-hero__image img{border:8px solid var(--mm-color-primary-lighter);border-radius:50%}.mm-hero__text{display:flex;row-gap:var(--mm-spacing-sm);flex-direction:column}.mm-hero__headline{color:var(--mm-color-typography-default);font-weight:700;font-size:var(--mm-spacing-4xl);font-family:var(--mm-font-family-heading)}.mm-hero__description{margin-left:auto;margin-right:auto;width:80%;color:var(--mm-color-typography-default-secondary);font-style:italic;font-weight:400;font-size:calc(var(--mm-spacing-2xl) * .96);line-height:150%;font-family:var(--mm-font-family-secondary)}.mm-contact-block{margin-top:var(--mm-spacing-4xl);text-align:center}.mm-contact-block__lead-text{margin-bottom:var(--mm-spacing-md);color:var(--mm-color-neutral);font-style:italic;font-size:var(--mm-spacing-2xl);line-height:var(--mm-line-height-intro);font-family:var(--mm-font-family-secondary)}.mm-contact-block__main-text{margin-left:auto;margin-right:auto;width:80%}.mm-contact-block__main-text p{font-size:var(--mm-spacing-lg);line-height:var(--mm-line-height-text);font-family:var(--mm-font-family-body)}.mm-contact-block__social-links{all:unset;display:flex;-moz-column-gap:var(--mm-spacing-md);column-gap:var(--mm-spacing-md);justify-content:center;margin-top:var(--mm-spacing-5xl);list-style-type:none}.mm-contact-block__social-link-link{display:flex;flex-grow:0;flex-shrink:0;justify-content:center;align-items:center;border-radius:50%;padding:var(--mm-spacing-2xs);width:var(--mm-spacing-3xl);height:var(--mm-spacing-3xl);color:var(--mm-color-typography-default)}.mm-contact-block__social-link-link:hover{color:var(--mm-color-link)}.mm-breadcrumb{padding-top:var(--mm-spacing-xl);padding-bottom:var(--mm-spacing-2xs);font-weight:400;font-size:var(--mm-spacing-md);font-family:var(--mm-font-family-default)}ol.mm-breadcrumb__items{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none}.mm-breadcrumb__item a{-webkit-text-decoration:none;text-decoration:none}.mm-breadcrumb__item a:hover{color:var(--mm-color-link-hover);-webkit-text-decoration:underline;text-decoration:underline}.mm-breadcrumb__item:after{margin-left:var(--mm-spacing-2xs);margin-right:var(--mm-spacing-2xs);content:"/";color:var(--mm-color-neutral-light)}.mm-breadcrumb__item--current a{color:var(--mm-color-typography-default-secondary)}.mm-breadcrumb__item--current a:hover{color:var(--mm-color-typography-default);-webkit-text-decoration:none;text-decoration:none}.mm-breadcrumb__item--current:after{content:""}.mm-social-links{all:unset;display:flex;-moz-column-gap:var(--mm-spacing-xs);column-gap:var(--mm-spacing-xs);list-style-type:none}.mm-social-links__link{display:flex;justify-content:center;align-items:center;border-radius:50%;padding:var(--mm-spacing-2xs);width:var(--mm-spacing-xl);height:var(--mm-spacing-xl);color:var(--mm-color-typography-default)}.mm-social-links__link:hover{color:var(--mm-color-link)}.mm-footer__container{display:flex;row-gap:var(--mm-spacing-xs);flex-direction:column;align-items:center;padding-top:var(--mm-spacing-4xl);padding-bottom:var(--mm-spacing-4xl);text-align:center}.mm-footer__fine-print{color:var(--mm-color-typography-default-secondary);font-size:var(--mm-spacing-sm)}.mm-main-menu__items{display:flex;gap:var(--mm-spacing-4xl);list-style-type:none}.mm-main-menu__link{color:var(--mm-color-typography-default);font-weight:600;font-size:var(--mm-spacing-lg);font-family:var(--mm-font-family-heading);-webkit-text-decoration:none;text-decoration:none}.mm-main-menu__item--active-path a.mm-main-menu__link,.mm-main-menu__link:hover{color:var(--mm-color-primary)}.mm-header{padding-top:var(--mm-spacing-md);padding-bottom:var(--mm-spacing-md)}.mm-header__container{display:flex;justify-content:space-between;align-items:center;gap:var(--mm-spacing-2xl)}.mm-header__home-link{color:var(--mm-color-typography-default);-webkit-text-decoration:none;text-decoration:none}.mm-header__home-link:hover{color:var(--mm-color-neutral)}.mm-header__site-name{all:unset;color:var(--mm-color-neutral-darkest);font-weight:700;font-size:var(--mm-spacing-xl);font-family:var(--mm-font-family-heading)}.mm-header__site-name:hover,.mm-site-home .mm-header__site-name{color:var(--mm-color-primary)}.mm-page{display:grid;grid-template-rows:1fr auto;background-color:var(--mm-color-background-default);min-height:100vh}.mm-page-title{margin-top:var(--mm-spacing-xl);margin-bottom:var(--mm-spacing-xl)}.mm-main-content{padding-top:var(--mm-spacing-3xl);padding-bottom:var(--mm-spacing-3xl);min-height:30rem}.mm-page--center .mm-page-title{text-align:center}.mm-resume{display:flex;flex-direction:column;gap:var(--mm-spacing-4xl);margin-top:var(--mm-spacing-5xl);margin-bottom:var(--mm-spacing-5xl)}@media (min-width:1024px){.mm-resume{flex-direction:row}}.mm-resume-section__section-items{display:flex;row-gap:var(--mm-spacing-4xl);flex-direction:column}h2.mm-resume-section__section-title{margin-bottom:var(--mm-spacing-2xl);color:var(--mm-color-primary);font-weight:700;font-size:var(--mm-spacing-2xl);font-family:var(--mm-font-family-heading)}.mm-resume-section__fine-print{margin-top:var(--mm-spacing-xl);margin-bottom:var(--mm-spacing-xs);font-weight:300;font-size:var(--mm-spacing-sm)}.mm-resume__main,.mm-resume__sidebar{display:flex;flex-direction:column;gap:var(--mm-spacing-6xl)}@media (min-width:1024px){.mm-resume__main{width:70%}.mm-resume__sidebar{width:30%}}h3.mm-resume-item__title{margin-bottom:var(--mm-spacing-4xs);color:var(--mm-color-typography-default);font-weight:700;font-size:var(--mm-spacing-xl);font-family:var(--mm-font-family-heading)}h3.mm-resume-item__title--skills{margin-bottom:var(--mm-spacing-3xs)}.mm-resume-item__skills-topic-items,.mm-resume-item__subtitle{display:inline-flex;-moz-column-gap:var(--mm-spacing-2xs);column-gap:var(--mm-spacing-2xs);row-gap:var(--mm-spacing-5xs);flex-direction:column;margin-bottom:var(--mm-spacing-xs);color:var(--mm-color-typography-default-secondary);font-weight:400;font-size:var(--mm-spacing-lg);font-family:var(--mm-font-family-heading)}@media (min-width:641px){.mm-resume-item__skills-topic-items,.mm-resume-item__subtitle{flex-direction:row}}.mm-resume-item__divider{display:none;color:var(--mm-color-primary);font-weight:400}@media (min-width:641px){.mm-resume-item__divider{display:inline}}.mm-resume-item__description{margin-bottom:var(--mm-spacing-md);color:var(--mm-color-typography-default);font-weight:300;font-size:var(--mm-spacing-md)}.mm-resume-item__description p:last-child,.mm-resume-item__description:last-child{margin-bottom:0}.mm-resume-presentation{display:flex;row-gap:var(--mm-spacing-5xs);flex-direction:column;color:var(--mm-color-typography-default-secondary);font-weight:400;font-size:var(--mm-spacing-md);font-family:var(--mm-font-family-secondary)}.mm-resume-presentation__title{margin-bottom:0;color:var(--mm-color-typography-default);font-weight:700;font-size:var(--mm-spacing-lg);line-height:var(--mm-line-height-subhead);font-family:var(--mm-font-family-heading)}.mm-resume-presentation__date,.mm-resume-presentation__event{color:var(--mm-color-typography-default-secondary);font-weight:400;font-size:var(--mm-spacing-md);font-family:var(--mm-font-family-default)}ul.mm-skills-list{all:unset;display:flex;row-gap:var(--mm-spacing-sm);flex-direction:column;font-size:calc(var(--mm-spacing-md) 1.1);list-style-type:none}.mm-popover{display:inline-block;z-index:var(--mm-z-index-overlay)}.mm-popover__trigger{all:unset;display:inline-flex;align-items:center;border-radius:var(--mm-radius-circle);padding:var(--mm-spacing-2xs)}.mm-popover__trigger:focus-visible{outline:2px solid var(--mm-color-focus)}.mm-popover__trigger--bg{background-color:hsla(0,0%,100%,.6)}.mm-popover__container{box-shadow:var(--mm-shadow-active),var(--mm-shadow-overlay);border-color:var(--mm-color-border-default);border-radius:var(--mm-radius-md);background-color:var(--mm-color-background-default);padding:var(--mm-spacing-md);width:-moz-max-content;width:max-content;max-width:30vw}@media (--breakpoint-sm ){.mm-popover__container{max-width:80vw}}.mm-popover__arrow path{filter:drop-shadow(var(--mm-shadow-active))}.mm-popover__trigger--sm svg{height:var(--mm-spacing-md)}.mm-popover__trigger--md svg{height:var(--mm-spacing-lg)}.mm-popover__trigger--lg svg{height:var(--mm-spacing-xl)}.mm-tag{--tag-background:var(--mm-color-neutral);--tag-foreground:var(--mm-color-typography-reverse)}.mm-tag a,.mm-tag span{display:inline-block;border-radius:var(--mm-radius-md);background-color:var(--tag-background);padding:var(--mm-spacing-4xs) var(--mm-spacing-2xs);color:var(--tag-foreground);font-weight:600;font-size:var(--mm-spacing-sm);-webkit-text-decoration:none;text-decoration:none;white-space:nowrap}.mm-tag--color-1{--tag-background:var(--mm-color-neutral-dark)}.mm-tag--color-2{--tag-background:var(--mm-color-secondary)}.mm-tag--color-3{--tag-background:#ef8f57;--tag-foreground:var(--mm-color-typography-default)}.mm-tag--color-4{--tag-background:var(--mm-color-primary)}.mm-tag--color-5{--tag-background:#e9ea85;--tag-foreground:var(--mm-color-typography-default)}.mm-tag--color-6{--tag-background:var(--mm-color-semantic-success)}.mm-tag--color-7{--tag-background:var(--mm-color-primary-light);--tag-foreground:var(--mm-color-typography-default)}.mm-tag--color-8{--tag-background:var(--mm-color-secondary-light);--tag-foreground:var(--mm-color-typography-default)}.mm-tag-group{display:flex;flex-wrap:wrap;gap:var(--mm-spacing-xs)}.mm-project-page__header{display:flex;flex-direction:column;justify-content:center;margin-bottom:var(--mm-spacing-3xl);text-align:center}h1.mm-project-page__title{margin-bottom:var(--mm-spacing-sm);font-size:var(--mm-spacing-5xl)}.mm-project-page__description{margin-bottom:var(--mm-spacing-md);color:var(--mm-color-typography-default-secondary);font-weight:400;font-size:var(--mm-spacing-2xl);line-height:var(--mm-line-height-subhead);font-family:var(--mm-font-family-secondary)}.mm-project-page__meta{display:inline-flex;-moz-column-gap:var(--mm-spacing-3xs);column-gap:var(--mm-spacing-3xs);justify-content:center;font-weight:400}.mm-project-page__tags{display:flex;flex-wrap:wrap;justify-content:center;margin-top:var(--mm-spacing-3xl);margin-bottom:var(--mm-spacing-2xs)}.mm-project-page__meta-divider{margin-top:-1px;color:var(--mm-color-neutral-light)}.mm-project-page__image{margin-left:auto;margin-right:auto;margin-top:var(--mm-spacing-3xl);margin-bottom:var(--mm-spacing-3xl);padding-left:var(--mm-container-padding);padding-right:var(--mm-container-padding);max-width:var(--mm-container-max-width-standard);text-align:center}.mm-project-page__image img{width:100%;height:auto}.mm-tile{position:relative;box-shadow:var(--mm-shadow-raised);border-radius:var(--mm-radius-lg);text-align:center;-webkit-text-decoration:none;text-decoration:none}.mm-tile:hover{box-shadow:var(--mm-shadow-active)}.mm-tile__tags-popover{position:absolute;top:var(--mm-spacing-sm);right:var(--mm-spacing-sm)}.mm-tile__link{display:block;-webkit-text-decoration:none;text-decoration:none}.mm-tile__link:focus{outline:none}.mm-tile__link:focus-visible{outline:2px solid var(--mm-color-focus)}.mm-tile__image{line-height:0}.mm-tile__image img{border-radius:var(--mm-radius-lg) var(--mm-radius-lg) 0 0;width:100%;height:auto}.mm-tile__content{display:flex;flex-direction:column;padding:var(--mm-spacing-md) var(--mm-spacing-lg)}.mm-tile__heading{margin:0;margin-bottom:var(--mm-spacing-xs);font-weight:600;font-size:var(--mm-spacing-xl)}.mm-tile__subhead{margin:0;color:var(--mm-color-typography-default-secondary);font-size:var(--mm-spacing-md);line-height:var(--mm-line-height-subhead)}.mm-tile-grid{display:grid;grid-gap:var(--mm-spacing-3xl)}@media (min-width:641px){.mm-tile-grid{grid-template-columns:1fr 1fr}}@media (min-width:1025px){.mm-tile-grid{grid-template-columns:1fr 1fr 1fr}}