:root{--lab-font-sans:"Avenir Next", "Avenir", "Helvetica Neue", Helvetica, Arial, sans-serif;--lab-light-background:#f4f4f0;--lab-light-foreground:#404040;--lab-light-header-background:#404040;--lab-light-header-foreground:#f4f4f0;--lab-active:#008c7a;--lab-active-soft:#e6f4f1;--lab-past:#7a6a4f;--lab-past-soft:#f2eee7;--lab-border:#404040;--lab-link:#005f73;--lab-section-content-width:900px;--lab-text-width:750px;--hb-color-background:var(--lab-light-background);--hb-color-header-bg:var(--lab-light-header-background);--hb-color-foreground:var(--lab-light-foreground);--hb-color-header-fg:var(--lab-light-header-foreground)}.dark{--hb-color-background:#404040;--hb-color-header-bg:#f4f4f0;--hb-color-footer-bg:#404040;--hb-color-foreground:#f4f4f0;--hb-color-header-fg:#404040;--hb-color-footer-fg:#f4f4f0;--lab-border:#f4f4f0;--lab-active-soft:rgba(0, 140, 122, 0.18);--lab-past-soft:rgba(199, 175, 130, 0.18);--lab-link:#8dd7ff}html{scroll-behavior:smooth}body,button,input,textarea,select{font-family:var(--lab-font-sans)}body{letter-spacing:0}.page-body{max-width:none}.hbb-section{position:relative}.hbb-section::after{content:"";position:absolute;bottom:0;left:10%;width:80%;border-bottom:1px solid color-mix(in srgb,var(--lab-border) 50%,transparent);pointer-events:none}.hbb-section h1,.hbb-section h2{letter-spacing:0}.hbb-section .max-w-prose{width:min(var(--lab-section-content-width),calc(100vw - 3rem));max-width:min(var(--lab-section-content-width),calc(100vw - 3rem))!important}.hbb-section .prose{font-size:1rem!important;line-height:1.65!important;width:min(var(--lab-text-width),calc(100vw - 3rem));max-width:min(var(--lab-text-width),calc(100vw - 3rem))!important}.hbb-section .prose p,.hbb-section .prose li{font-size:1rem;line-height:1.65}.hbb-section .mb-6{font-size:1.85rem;line-height:1.2}.title-light{font-weight:400;opacity:.72}.section-title-icon{align-items:center;box-sizing:border-box;justify-content:center;display:inline-flex;flex-shrink:0;width:1.35em;height:1.35em;margin-left:.45rem;padding:.15em;position:relative;vertical-align:-.22em;color:currentColor;cursor:pointer;line-height:1;pointer-events:auto;text-decoration:none}.section-title-icon::before{content:"";position:absolute;inset:0}.section-title-icon svg{width:100%;height:100%;pointer-events:none}.publication-toggle{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.publication-list{margin-top:.5rem}.publication-toggle-block{text-align:center}.publication-item{margin-bottom:1.2rem;text-align:left}.publication-item p{margin-bottom:0}.publication-toggle:not(:checked)~.publication-list .publication-item:nth-child(n+6){display:none}.publication-show-more{display:inline-block;margin-top:.35rem;padding:.55rem .85rem;border:1px solid var(--lab-border);border-radius:4px;color:var(--hb-color-foreground);cursor:pointer;font-size:.95rem;font-weight:600;line-height:1.2}.publication-show-more:hover{background:color-mix(in srgb,var(--hb-color-foreground) 8%,transparent)}.publication-show-more-close{display:none}.publication-toggle:checked~.publication-show-more .publication-show-more-open{display:none}.publication-toggle:checked~.publication-show-more .publication-show-more-close{display:inline}.project-grid{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr));position:relative;left:50%;width:min(900px,calc(100vw - 3rem));max-width:calc(100vw - 3rem);transform:translateX(-50%)}.project-card{display:block;min-height:100%;padding:1.1rem;border:1px solid var(--lab-border);border-left-width:.45rem;border-radius:4px;color:inherit;text-decoration:none;background:color-mix(in srgb,var(--hb-color-background) 94%,white);transition:border-color 160ms ease,transform 160ms ease,background-color 160ms ease}.project-card:hover{transform:translateY(-1px)}.project-card h3{margin-top:.5rem;margin-bottom:.45rem;font-size:1.05rem;line-height:1.25}.project-card p{margin-bottom:0;font-size:.95rem;line-height:1.55}.project-card-active{border-left-color:var(--lab-active)}.project-card-active .project-status{background:var(--lab-active-soft);color:var(--lab-active)}.project-card-past{border-left-color:var(--lab-past)}.project-card-past .project-status{background:var(--lab-past-soft);color:var(--lab-past)}.project-status{display:inline-block;padding:.12rem .45rem;border-radius:999px;font-size:.72rem;font-weight:600;line-height:1.45;text-transform:uppercase;letter-spacing:.04em}.team-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,150px);justify-content:center;width:100%;margin:0 auto}#team .prose{width:min(820px,calc(100vw - 3rem));max-width:min(820px,calc(100vw - 3rem))!important}#funding .prose,#outreach .prose{width:min(820px,calc(100vw - 3rem));max-width:min(820px,calc(100vw - 3rem))!important}.team-member{text-align:center}.team-member img{display:block;width:150px;height:150px;object-fit:cover;border:1px solid var(--lab-border);border-radius:4px;background:color-mix(in srgb,var(--hb-color-background) 92%,white)}.team-member h3{margin-top:.85rem;margin-bottom:.25rem;font-size:.95rem;line-height:1.25}.team-member h3 a,.team-links a{color:var(--lab-link);text-decoration:none}.team-member h3 a:hover,.team-links a:hover{text-decoration:underline}.team-member p{margin:0;font-size:.85rem;line-height:1.45}.team-links{margin-top:.25rem!important}.contact-button{display:inline-block;margin-top:.75rem;padding:.8rem 1.25rem;border:1px solid var(--hb-color-header-bg);border-radius:4px;background:var(--hb-color-header-bg);color:var(--hb-color-header-fg);font-weight:700;text-decoration:none}.contact-button-wrap{text-align:center}.contact-button:hover{background:var(--hb-color-header-fg);color:var(--hb-color-header-bg)}.location-map{width:min(820px,calc(100vw - 3rem));max-width:80%;margin:1.5rem auto 0}.location-map img{display:block;width:100%;height:auto;border:0 solid var(--lab-border);border-radius:4px;background:var(--hb-color-background)}.outreach-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:1.25rem 0}.outreach-grid figure{margin:0}.outreach-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid var(--lab-border);border-radius:4px}.outreach-grid figcaption{margin-top:.35rem;font-size:.85rem;line-height:1.35;text-align:center}.event-list h3{margin-top:1.5rem}.funding-grid{display:grid;gap:1rem;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center}.funding-logo{display:flex;align-items:center;justify-content:center;min-height:86px;padding:.8rem;border:0 solid var(--lab-border);border-radius:4px;background:var(--hb-color-background)}.funding-logo img{display:block;max-width:100%;max-height:80px;object-fit:contain}.funding-logo-erc{max-height:68px!important}.funding-logo-dark{display:none!important}.dark .funding-logo-light{display:none!important}.dark .funding-logo-dark{display:block!important}#funding{border-bottom:0}#funding::after{display:none}.page-footer{display:none}@media(min-width:1024px){.page-header{position:fixed;inset:0 auto 0 0;width:232px;border-right:1px solid var(--lab-border);background:var(--hb-color-header-bg)}#site-header,#site-header .navbar{height:100%}#site-header .navbar{flex-direction:column;align-items:flex-start;gap:1.25rem;padding:2rem 1.25rem}#site-header .navbar-brand{display:block;max-width:180px;white-space:normal;line-height:1.25}#nav-menu{display:flex;flex-direction:column;gap:.15rem;padding-bottom:0}#nav-menu .nav-link{display:block;padding:.2rem 0}#site-header .order-1{margin-left:0;margin-top:auto}.page-body,footer{margin-left:232px}.page-body{padding-left:3.5rem;padding-right:3.5rem}.project-grid{width:min(760px,calc(100vw - 232px - 7rem))}}@media(max-width:900px){.project-grid{grid-template-columns:1fr}.funding-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}}