:root{--content-width:40rem;--gutter:2rem;--nav-link-inset:1rem;--color-text:#171717;--color-text-muted:#525252;--color-link:#003270;--color-hover-bg:rgba(163, 163, 163, 0.2)}*{box-sizing:border-box}body{margin:0}html{font-family:ui-sans-serif,system-ui,sans-serif;font-size:16px;color:var(--color-text);background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-link)}.site-header{position:fixed;top:0;left:0;right:0;background:rgba(250,250,250,.8);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.site-header-bar{display:flex;justify-content:space-between;align-items:center;max-width:var(--content-width);margin:0 auto;padding:1rem calc(var(--gutter) - var(--nav-link-inset))}.nav-link{padding:.5rem var(--nav-link-inset);white-space:nowrap}.nav-link,.mobile-nav-toggle,.contact-link,.bio a{transition-duration:.15s}.nav-link,.mobile-nav-toggle,.contact-link{display:inline-flex;align-items:center;justify-content:center;color:var(--color-text);text-decoration:none;border-radius:.375rem;transition-property:background-color}.nav-link:hover,.mobile-nav-toggle:hover,.contact-link:hover{background:var(--color-hover-bg)}.nav-home{font-weight:600}.desktop-nav{display:none}.mobile-nav-toggle{width:2.5rem;aspect-ratio:1;cursor:pointer;flex-shrink:0;background:0 0;border:0;padding:0}.mobile-nav-toggle svg{width:1.25rem;aspect-ratio:1}.icon-close{display:none}.mobile-nav-toggle[aria-expanded=true] .icon-close{display:block}.mobile-nav-toggle[aria-expanded=true] .icon-menu{display:none}.mobile-nav{display:none}@media not all and (min-width:768px){.site-header:has(.mobile-nav-toggle[aria-expanded=true]) .mobile-nav{display:flex;flex-direction:column;width:75%;margin:2rem auto;gap:1rem;min-height:100lvh}}.main-content{max-width:var(--content-width);margin:0 auto;padding:8rem var(--gutter)5rem;display:flex;flex-direction:column;gap:2.5rem}.publications-section{display:flex;flex-direction:column;gap:.75rem}.publications-list{display:flex;flex-direction:column;gap:1rem;padding-left:1.5rem;margin:0}.publication-title{font-size:1rem;font-weight:500;margin:0 0 .2rem}.publication-title a,.bio a{text-underline-offset:2px}.publication-meta{color:var(--color-text-muted);line-height:1.5}.publication-venue{font-style:italic}.publication-venue,.publication-year{margin-right:.5rem}.publication-award{font-weight:700;display:inline-flex;align-items:center;gap:.2rem;vertical-align:middle}.publication-award svg{width:1.1rem;aspect-ratio:1;flex-shrink:0}.publications-legend{margin:-.2rem 0 1rem;font-size:.8rem;color:var(--color-text-muted)}.about-section{display:flex;flex-direction:column;gap:2rem}.about-header{display:flex;flex-direction:column;gap:2rem}.about-info{display:flex;flex-direction:column;gap:.75rem}.about-name{font-size:2.25rem;font-weight:600;line-height:1.2;margin:0}.about-degree{font-size:1.25rem;font-weight:500;margin:0}.contact-links{display:flex;gap:.75rem;flex-wrap:wrap}.contact-link{width:2.75rem;aspect-ratio:1;border:1px solid #e5e5e5}.contact-link svg{width:1.5rem;aspect-ratio:1}.profile{order:-1;width:130px;aspect-ratio:1;flex-shrink:0;overflow:hidden}.profile img{width:100%;height:100%;object-fit:cover;display:block}@media(min-width:768px){.desktop-nav{display:flex}.mobile-nav-toggle{display:none}.about-header{flex-direction:row;justify-content:space-between;align-items:flex-start}.about-info{margin-top:-10px}.profile{order:0;margin-top:-5px;width:125px}}.bio p{margin:0;color:var(--color-text-muted);text-wrap:pretty;line-height:1.65}.bio a{text-decoration-color:color-mix(in srgb,var(--color-link) 67%,transparent);text-decoration-thickness:.1em;transition-property:text-decoration-color}@supports not (color:color-mix(in srgb,red,red)){.bio a{text-decoration-color:#54769f}}.bio a:hover{text-decoration-color:var(--color-link)}.publications-section-header{display:flex;justify-content:space-between;align-items:baseline}.section-title{font-size:1.5rem;font-weight:600;margin:0}.view-all{color:#737373;text-decoration:none;font-size:.9rem}.view-all:hover{text-decoration:underline}.page-title{font-size:1.875rem;font-weight:600;margin:0}