@font-face{font-family:'Source Serif 4';src:url('assets/source-serif-4.woff2') format('woff2');font-weight:200 900;font-display:swap}
@font-face{font-family:'Source Serif 4';src:url('assets/source-serif-4-italic.woff2') format('woff2');font-style:italic;font-weight:200 900;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url('assets/source-sans-3.woff2') format('woff2');font-weight:200 900;font-display:swap}
:root{--ink:#18474b;--text:#2b4142;--muted:#637372;--ochre:#a87334;--paper:#faf9f5;--line:#d8ded9;--serif:'Source Serif 4',Georgia,serif;--sans:'Source Sans 3','Segoe UI',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:32px}
body{margin:0;background:var(--paper);color:var(--text);font:18px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,figure{margin:0}h1,h2,h3{color:var(--ink);font-weight:400}h1,h2{font-family:var(--serif)}
h1{font-size:64px;line-height:1.12;letter-spacing:-1.8px}h2{font-size:36px;line-height:1.25;letter-spacing:-.6px}h3{font-size:24px;line-height:1.35}
em{font-weight:400;color:var(--ochre)}p{max-width:70ch}
::selection{background:#dec99f;color:var(--ink)}:focus-visible{outline:2px solid var(--ochre);outline-offset:5px}
a:hover{color:var(--ochre)}h1 a:hover em{color:var(--ink)}
.shell{max-width:1280px;margin:auto;padding-inline:64px}
.skip-link{position:fixed;left:20px;top:12px;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;background:#fff;z-index:99}
.skip-link:focus{width:auto;height:auto;clip-path:none;padding:12px 20px}
.site-header{border-bottom:1px solid var(--line)}
.header-inner{display:flex;justify-content:space-between;align-items:center;min-height:106px;gap:32px}
.brand{width:242px;flex-shrink:0}.brand img{width:100%}
.site-header nav{display:grid;grid-template-columns:repeat(4,104px);gap:8px;font-size:16px;line-height:1.5;font-weight:400}
.site-header nav a{display:flex;justify-content:center;align-items:center;min-height:48px;position:relative;white-space:nowrap}
.site-header nav a[aria-current=page]:after{content:'';position:absolute;height:2px;width:32px;left:50%;transform:translateX(-50%);bottom:1px;background:var(--ochre)}
.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:65px;padding-top:65px;padding-bottom:56px;align-items:center}
.hero h1{font-size:72px;line-height:1.12;letter-spacing:-2px}
.hero-intro{margin-top:27px;max-width:450px;font-size:21px;line-height:1.65;color:var(--muted)}
.hero-visual{width:100%;max-width:440px;justify-self:end}
.learning-figure svg{width:100%;height:auto;display:block}
.learning-figure figcaption{border-top:1px solid var(--line);padding-top:15px;margin:0 8px;text-align:center}
.equation{font:italic 20px var(--serif);color:var(--ink)}
.section{padding-top:50px;padding-bottom:8px}.section-heading{margin-bottom:28px}
.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.theme{padding:20px 0 18px;border-top:1px solid var(--ink)}
.theme-number{font-family:var(--serif);color:var(--ochre);font-size:17px}
.theme h3{font-family:var(--serif);font-size:27px;margin:14px 0 13px;letter-spacing:-.35px}
.theme p{font-size:17px;color:var(--muted);line-height:1.7}
.selected-section{padding-top:48px;padding-bottom:64px}
.paper-list{border-top:1px solid var(--line)}
.paper{border-bottom:1px solid var(--line);padding:24px 0}
.paper.with-year{display:grid;grid-template-columns:68px 1fr;gap:30px}
.paper-year{color:var(--ink);font-size:20px;font-family:var(--serif)}
.paper h3{font-size:20px;line-height:1.45;font-weight:500}
.paper-authors{font-size:15px;margin-top:10px;line-height:1.5;color:var(--muted)}
.paper-authors strong{font-weight:600;color:var(--ink)}
.paper-venue{font-size:15px;margin-top:4px;font-style:italic;color:var(--muted)}
.site-footer{background:var(--ink);color:#f2f4ed;padding:34px 0}
.footer-inner{display:flex;justify-content:space-between;gap:35px;align-items:center}
.footer-inner p,.footer-contact{font-size:17px}.footer-inner p span{display:block;color:#b7c8c3;font-size:14px;margin-top:6px}
.footer-contact{text-align:right}.footer-links{display:flex;justify-content:flex-end;gap:24px;font-size:14px;margin-top:8px;color:#d3dfd9}
.site-footer a:hover{color:#e5be81}
.page-intro{padding-top:48px;padding-bottom:44px}.page-intro h1{font-size:52px;letter-spacing:-1.2px}
.research-block{display:grid;grid-template-columns:62px 1fr;gap:25px;padding:32px 0 52px;border-top:1px solid var(--line);scroll-margin-top:30px}
.research-index{font:30px var(--serif);color:var(--ochre)}.research-main>h2{font-size:34px;margin-bottom:19px}
.research-description{font-size:19px;color:var(--muted);max-width:780px;margin-bottom:30px}
.research-block .paper{padding:18px 0}.research-block .paper h3{font-size:18px}.research-block .paper-venue{font-size:14px;margin-top:7px}
.research-wrap{padding-bottom:30px}
.pi-profile{display:grid;grid-template-columns:300px 1fr;gap:65px;padding:0 0 55px}
.pi-photo{width:300px;aspect-ratio:4/5;object-fit:cover;object-position:38% center}
.pi-bio h2{font-size:40px;margin:0 0 8px}.pi-bio h2 span{font:22px var(--sans);margin-left:15px;color:var(--muted)}
.pi-role{font-size:17px;color:var(--ochre);margin-bottom:23px}
.pi-bio>p:not(.pi-role){font-size:18px;line-height:1.75;margin-bottom:23px}
.cv-details{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}
.cv-details summary{cursor:pointer;font-size:17px;color:var(--ink);padding:5px 0}
.cv-details dl{margin-top:18px;font-size:16px;line-height:1.5}.cv-details dt{color:var(--muted);font-size:14px;margin-top:17px}.cv-details dd{margin-left:0;margin-top:3px}
.people-section{padding:32px 0 48px;border-top:1px solid var(--line)}.people-section .section-heading{margin-bottom:22px}
.people-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.person-photo,.portrait-placeholder{width:100%;aspect-ratio:1;object-fit:cover;height:auto}
.portrait-placeholder{background:#e9ede7;border:1px solid #dfe5de}
.person figcaption{margin-top:12px;font-size:19px;color:var(--ink);line-height:1.4}
.alumni-grid .portrait-placeholder{background:#edede8}
.publication-layout{display:grid;grid-template-columns:120px 1fr;gap:44px;padding-bottom:55px}
.publication-sidebar{padding-top:5px}.publication-sidebar a{display:block;margin-bottom:8px;padding:4px 0;font-size:16px;color:var(--muted)}.publication-sidebar a:hover{color:var(--ochre)}
.publication-sidebar-inner{position:sticky;top:30px}
.publication-group{scroll-margin-top:25px;margin-bottom:34px}.publication-group>h2{font-size:30px;padding-bottom:15px;border-bottom:1px solid var(--ink)}
.publication-group .paper h3{font-size:20px}.preprint-heading{margin-top:54px}.preprint-year{font:17px var(--serif);color:var(--ochre);margin-top:24px}.preprint-year-group .paper:first-of-type{padding-top:14px}
@media(min-width:1500px){.shell{max-width:1380px}.hero{padding-top:75px;padding-bottom:65px}.hero h1{font-size:78px}}
@media(max-width:1050px){.shell{padding-inline:40px}.brand{width:215px}.site-header nav{grid-template-columns:repeat(4,88px);gap:4px}.header-inner{gap:20px}.hero{gap:28px}.hero h1{font-size:64px}.theme-grid{gap:25px}.theme h3{font-size:25px}.pi-profile{grid-template-columns:270px 1fr;gap:38px}.pi-photo{width:270px}.publication-layout{gap:30px;grid-template-columns:95px 1fr}}
@media(max-width:760px){
 .shell{padding-inline:24px}.header-inner{min-height:88px;position:relative;flex-wrap:wrap;gap:0}.brand{width:208px}
 .menu-toggle{display:flex;align-items:center;gap:13px;background:none;border:0;color:var(--ink);padding:12px 0 12px 15px;font-size:16px;min-height:44px}.menu-toggle span{font-size:24px;line-height:1}
 .site-header nav{display:none;width:100%;padding:6px 0 18px;grid-template-columns:1fr;gap:0}.site-header nav.open{display:grid}
 .site-header nav a{justify-content:flex-start;padding:9px 0;min-height:44px}.site-header nav a[aria-current=page]:after{left:0;transform:none;bottom:3px;width:24px}
 .hero{display:block;padding-top:38px;padding-bottom:20px}.hero h1{font-size:clamp(44px,9vw,64px);letter-spacing:-1.5px}.hero-intro{font-size:19px;margin-top:21px;max-width:550px}
 .hero-visual{max-width:380px;margin:30px auto 0}.equation{font-size:18px}
 .selected-section{padding-bottom:42px}
 .section{padding-top:36px}.section-heading{margin-bottom:24px}h2{font-size:30px}
 .theme-grid{grid-template-columns:1fr;gap:5px}.theme{padding:17px 0 23px}.theme h3{font-size:27px;margin-top:10px}.theme p{max-width:600px}
 .paper{padding:21px 0}.paper.with-year{grid-template-columns:42px 1fr;gap:16px}.paper h3{font-size:18px}.paper-year{font-size:18px}.paper-authors,.paper-venue{font-size:14px}
 .footer-inner{display:block}.footer-contact{text-align:left;margin-top:22px}.footer-links{justify-content:flex-start}.footer-inner p,.footer-contact{font-size:16px}
 .page-intro{padding-top:35px;padding-bottom:31px}.page-intro h1{font-size:42px;letter-spacing:-1px}
 .research-block{grid-template-columns:32px 1fr;gap:14px;padding:25px 0 35px}.research-index{font-size:25px}.research-main>h2{font-size:28px}.research-description{font-size:17px;margin-bottom:24px}.research-block .paper h3{font-size:17px}.research-wrap{padding-bottom:15px}
 .pi-profile{grid-template-columns:1fr;gap:25px;padding-bottom:35px}.pi-photo{width:260px;aspect-ratio:1}.pi-bio h2{font-size:35px}.pi-bio h2 span{font-size:19px}.pi-role{font-size:16px}.pi-bio>p:not(.pi-role){font-size:17px}
 .people-section{padding:29px 0 35px}.people-grid{grid-template-columns:repeat(2,1fr);gap:24px 18px}.person figcaption{font-size:17px}
 .publication-layout{display:block;padding-bottom:30px}.publication-sidebar-inner{display:flex;gap:8px 23px;flex-wrap:wrap;position:static;padding-bottom:25px}.publication-sidebar a{margin:0;padding:4px 0}.publication-group>h2{font-size:28px}.publication-group .paper h3{font-size:18px}.preprint-heading{margin-top:38px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
