@font-face{font-family:Literata;src:url('fonts/literata-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Literata;src:url('fonts/literata-medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url('fonts/source-sans-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url('fonts/source-sans-semibold.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--paper:#fff;--wash:#f5f3f7;--ink:#27232c;--plum:#513d58;--muted:#69616e;--line:#ded8e2;--serif:Literata,Georgia,serif;--sans:'Source Sans 3',Arial,sans-serif;--rail:242px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{margin:0;color:var(--ink);background:var(--paper);font:18px/1.6 var(--sans);-webkit-font-smoothing:antialiased}a{color:var(--plum);text-underline-offset:4px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #876a94;outline-offset:5px;border-radius:2px}button{cursor:pointer}img{display:block;max-width:100%}.skip-link{position:fixed;top:10px;left:12px;transform:translateY(-150%);background:var(--paper);padding:10px 20px;z-index:100}.skip-link:focus{transform:none}.rail{position:fixed;inset:0 auto 0 0;width:var(--rail);padding:43px 31px 30px 35px;background:var(--wash);display:flex;flex-direction:column;z-index:20;border-right:1px solid #eeeaf0}.wordmark{font-family:var(--serif);font-size:23px;line-height:1.3;color:var(--ink);text-decoration:none;display:inline-block;letter-spacing:-.6px}.wordmark span{display:block}.rail-role{font-size:15px;color:var(--muted);margin:11px 0 0}.site-nav{display:flex;flex-direction:column;gap:3px;margin-top:54px}.site-nav a{padding:8px 0;text-decoration:none;font-size:17px;color:var(--muted)}.site-nav a:hover,.site-nav a[aria-current]{color:var(--plum)}.site-nav a[aria-current]{font-weight:600}.rail-bottom{margin-top:auto;padding-top:50px}.language-switch{display:flex;align-items:center;gap:14px;font-size:16px}.language-switch a{color:var(--muted);text-decoration:none}.language-switch a[aria-current]{color:var(--plum);font-weight:600;border-bottom:2px solid var(--plum)}.rail-links{display:flex;flex-direction:column;gap:7px;margin:23px 0 0;font-size:15px}.rail-links a{text-decoration:none}.menu-toggle{display:none}main{margin-left:var(--rail);max-width:1380px;padding:66px clamp(34px,5.6vw,88px) 0}.intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,32%);column-gap:56px;align-items:start;padding-bottom:64px}.intro-copy{padding-top:4px}h1,h2,h3,p{margin:0}h1{font:400 clamp(46px,5vw,74px)/1.16 var(--serif);letter-spacing:-3px;margin:0 0 18px}h1 span{display:block}.intro-role{font-size:22px;color:var(--plum);margin-bottom:28px}.intro-text{max-width:650px}.intro-text p{margin-bottom:15px}.intro-text p:first-child{font-size:21px;line-height:1.55}.intro-links{display:flex;flex-wrap:wrap;gap:13px 25px;margin-top:27px;font-size:17px}.portrait{margin:8px 0 0;position:relative}.portrait img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:56% center;border-radius:2px 2px 42% 2px;background:#653d31}.portrait figcaption{margin-top:12px;font-size:14px;color:var(--muted)}.interests{border-top:1px solid var(--line);padding-top:25px;display:grid;grid-template-columns:145px 1fr;gap:30px;margin-bottom:64px}.interests h2{font:600 17px/1.6 var(--sans)}.interest-list{display:flex;flex-wrap:wrap;gap:5px 25px;list-style:none;margin:0;padding:0;font-size:17px;color:var(--muted)}.section{padding:0 0 65px;scroll-margin-top:40px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:30px;margin-bottom:30px}.section-head h2{font:400 32px/1.35 var(--serif);letter-spacing:-.8px}.section-head>a{font-size:16px;white-space:nowrap}.section-intro{color:var(--muted);font-size:17px;margin:-13px 0 26px;max-width:670px}.research-subtitle{font:600 18px/1.5 var(--sans);margin-bottom:3px}.publication-list{list-style:none;margin:0;padding:0}.publication{display:grid;grid-template-columns:58px minmax(0,1fr);gap:18px;padding:24px 0}.publication+.publication{border-top:1px solid #eeebf0}.publication-year{font-size:16px;color:var(--muted);padding-top:3px}.publication h3{font:400 22px/1.45 var(--serif);letter-spacing:-.35px;max-width:850px}.publication-title-link{color:var(--ink);text-decoration:none}.publication-title-link:hover{color:var(--plum);text-decoration:underline}.publication-alt{font-size:16px;line-height:1.5;color:var(--muted);margin-top:8px;max-width:790px}.publication-meta{font-size:16px;color:var(--muted);margin-top:9px}.publication-links{display:flex;gap:22px;font-size:15px;margin-top:10px}.publication-links a{font-weight:600}.publication-links a::after{content:' ↗';font-weight:400}.publication h3 a::after{content:none}.manuscripts{margin-top:29px;padding:27px 30px;background:var(--wash);border-radius:4px}.manuscripts h3{font:400 24px/1.4 var(--serif);margin-bottom:18px}.manuscript+.manuscript{margin-top:21px}.manuscript .manuscript-title{font:400 19px/1.5 var(--sans);margin:0;max-width:750px}.manuscript p{font-size:15px;color:var(--muted);margin-top:4px}.other-writing{margin-top:32px}summary{font-size:18px;color:var(--plum);cursor:pointer;list-style:none;display:flex;align-items:center;gap:14px;width:fit-content;padding:8px 0}summary::before{content:'+';font-size:23px;width:16px;font-weight:400}details[open] summary::before{content:'−'}summary::-webkit-details-marker{display:none}.other-writing .publication h3{font:400 19px/1.5 var(--sans)}.other-writing .publication{padding:18px 0}.background-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:58px}.subheading{font:600 18px/1.5 var(--sans);margin-bottom:25px}.career-item{margin-bottom:28px}.career-date{color:var(--muted);font-size:15px;margin-bottom:3px;font-variant-numeric:tabular-nums}.career-item :is(h3,h4){font:400 19px/1.4 var(--sans);margin:0 0 2px}.career-place{font-size:16px;color:var(--muted);line-height:1.5}.career-detail{font-size:15px;color:var(--muted);margin-top:4px}.talk-list{list-style:none;margin:0;padding:0}.talk{display:grid;grid-template-columns:120px minmax(0,1fr);gap:28px;padding:22px 0;border-top:1px solid #eeebf0}.talk:first-child{padding-top:0;border:0}.talk time{font-size:15px;color:var(--muted);padding-top:3px}.talk h3{font:400 20px/1.5 var(--sans)}.talk p{font-size:16px;color:var(--muted);margin-top:5px}.talk a{font-size:15px}.service{margin-top:33px}.service p{font-size:17px;max-width:780px;color:var(--muted);margin-top:10px}.contact-section{padding-bottom:47px}.contact-body{display:flex;align-items:start;justify-content:space-between;gap:30px}.contact-body>div>p{font-size:18px;margin-bottom:14px;max-width:620px}.email-line{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.email-address{font-size:clamp(20px,2.25vw,28px);letter-spacing:-.3px}.copy-email{border:1px solid var(--line);padding:5px 12px;background:var(--paper);color:var(--plum);border-radius:4px;font-size:14px;min-height:35px}.copy-feedback{font-size:14px;min-height:24px;color:var(--muted);display:block;margin-top:5px}.contact-profiles{display:flex;flex-direction:column;gap:6px;font-size:16px;white-space:nowrap}.page-footer{border-top:1px solid var(--line);padding:22px 0 28px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:14px}.page-footer a{color:var(--muted)}.cv-page{max-width:900px;margin:0 auto;padding:50px 44px}.cv-toolbar{display:flex;justify-content:space-between;gap:20px;margin-bottom:45px;font-size:16px}.cv-toolbar button{background:var(--paper);border:1px solid var(--line);color:var(--plum);padding:5px 14px;border-radius:3px}.cv-page h1{font-size:42px;letter-spacing:-1px}.cv-page .cv-role{color:var(--plum);font-size:20px;margin:9px 0}.cv-contact{font-size:16px;margin-bottom:25px}.cv-page h2{font:400 24px/1.4 var(--serif);margin:30px 0 18px;border-bottom:1px solid var(--line);padding-bottom:8px}.cv-page .interest-list{gap:3px 19px;font-size:16px}.cv-page .career-item{margin-bottom:17px}.cv-page .career-item :is(h3,h4){font-size:17px}.cv-page .publication{gap:10px;padding:13px 0}.cv-page .publication h3{font:400 18px/1.45 var(--sans);letter-spacing:0}.cv-page .publication-alt{font-size:15px}.cv-page .publication-meta{font-size:15px;margin-top:4px}.cv-page .manuscripts{background:none;padding:0;margin-top:23px}.cv-page .talk{grid-template-columns:107px 1fr;gap:15px;padding:13px 0}.cv-page .talk h3{font-size:17px}.cv-page .talk p{font-size:15px}.cv-page .page-footer{margin-top:30px}.not-found{max-width:600px;margin:12vh auto;padding:30px}.not-found h1{font-size:45px;letter-spacing:-1px}.not-found p{margin:23px 0}
@media(min-width:1600px){main{margin-right:auto;margin-left:calc(var(--rail) + (100vw - 1600px)/2)}}
@media(max-width:1200px){:root{--rail:210px}.rail{padding-left:27px;padding-right:25px}main{padding-left:45px;padding-right:45px}.intro{column-gap:32px}.intro-text p:first-child{font-size:20px}.intro-text{font-size:17px}.background-grid{gap:35px}h1{font-size:57px;letter-spacing:-2px}.portrait img{aspect-ratio:3/4}.interests{grid-template-columns:130px 1fr;gap:20px}}
@media(max-width:950px){:root{--rail:180px}.rail{padding:32px 22px}.wordmark{font-size:21px}.rail-role{font-size:14px}.site-nav{margin-top:42px}.site-nav a{font-size:16px}main{padding:42px 30px 0}.intro{gap:22px;grid-template-columns:minmax(0,1fr) 30%;padding-bottom:40px}h1{font-size:45px}.intro-role{font-size:20px;margin-bottom:21px}.portrait{margin-top:3px}.portrait img{aspect-ratio:2/3}.portrait figcaption{font-size:12px}.intro-links{gap:12px 19px;font-size:16px}.interests{display:block;margin-bottom:40px}.interests h2{margin-bottom:9px}.interest-list{gap:3px 20px;font-size:16px}.section{padding-bottom:45px}.background-grid{grid-template-columns:1fr;gap:15px}.contact-body{display:block}.contact-profiles{flex-direction:row;gap:24px;margin-top:22px}.publication h3{font-size:20px}.section-head h2{font-size:29px}.talk{grid-template-columns:95px 1fr;gap:15px}}
@media(max-width:700px){html{scroll-padding-top:85px}.rail{position:sticky;top:0;width:100%;height:auto;display:block;padding:15px 23px;background:var(--wash);border-right:0;border-bottom:1px solid var(--line)}.rail-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.wordmark{font-family:var(--serif);font-size:20px;letter-spacing:-.5px;line-height:1.5}.wordmark span{display:inline}.wordmark span+span::before{content:' '}.rail-role{display:none}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #cfc4d4;border-radius:3px;color:var(--plum);background:transparent;padding:5px 10px;min-height:37px;font-size:15px}.menu-toggle svg{width:15px;height:15px}.site-nav{display:flex;flex-direction:row;flex-wrap:wrap;gap:1px 23px;margin-top:14px;border-top:1px solid var(--line);padding-top:7px}.site-nav a{font-size:16px;padding:7px 0}.rail-bottom{margin:0;padding:9px 0 3px}.language-switch{font-size:15px;gap:15px}.rail-links{display:none}.js .rail:not(.is-open) .site-nav,.js .rail:not(.is-open) .rail-bottom{display:none}.menu-toggle[hidden]{display:none}.section{scroll-margin-top:15px}main{margin:0;padding:34px 24px 0}.intro{grid-template-columns:minmax(0,1fr) 112px;gap:0 20px;padding-bottom:34px}.intro-copy{display:contents}h1{font-size:43px;letter-spacing:-1.9px;grid-column:1;grid-row:1;margin:0 0 13px;align-self:end}.intro-role{grid-column:1;grid-row:2;font-size:18px;margin:0;align-self:start}.portrait{grid-column:2;grid-row:1/3;margin:0}.portrait img{aspect-ratio:4/5;border-bottom-right-radius:40%}.portrait figcaption{display:none}.intro-text{grid-column:1/-1;margin-top:29px;font-size:18px}.intro-text p:first-child{font-size:20px}.intro-text p{margin-bottom:15px}.intro-links{grid-column:1/-1;margin-top:9px;gap:20px;font-size:17px}.interests{padding-top:21px;margin-bottom:38px}.interest-list{gap:5px 18px;font-size:16px}.section-head{padding-top:25px;margin-bottom:26px;align-items:start;gap:15px}.section-head h2{font-size:29px}.section-head>a{font-size:14px;padding-top:7px}.section-intro{font-size:16px}.publication{grid-template-columns:42px 1fr;gap:13px;padding:22px 0}.publication-year{font-size:14px}.publication h3{font-size:20px;line-height:1.5}.publication-alt{font-size:15px}.publication-meta{font-size:15px}.manuscripts{padding:23px 22px;margin-top:25px}.manuscripts h3{font-size:23px}.manuscript .manuscript-title{font-size:18px}.other-writing{margin-top:23px}.background-grid{gap:16px}.subheading{margin-bottom:23px}.career-item{margin-bottom:24px}.talk{grid-template-columns:1fr;gap:4px;padding:21px 0}.talk h3{font-size:19px}.talk p{font-size:16px}.contact-body>div>p{font-size:17px}.email-address{font-size:24px}.contact-profiles{font-size:16px}.page-footer{font-size:13px;align-items:start}.cv-page{padding:25px 23px}.cv-page h1{font-size:35px}.cv-toolbar{font-size:15px;margin-bottom:30px}.cv-page .talk{grid-template-columns:1fr}.not-found{margin:7vh auto}}
@media(max-width:370px){main{padding-left:18px;padding-right:18px}.rail{padding-left:18px;padding-right:18px}h1{font-size:37px}.intro{grid-template-columns:1fr 98px;gap:0 14px}.wordmark{font-size:18px}.menu-toggle{font-size:14px}.intro-role{font-size:17px}.publication{grid-template-columns:1fr;gap:3px}.section-head{display:block}.section-head>a{display:inline-block;margin-top:6px}.email-address{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@page{size:A4;margin:17mm 17mm 18mm}
@media print{html{scroll-behavior:auto}body{font-size:10pt;line-height:1.45;color:#000}a{color:inherit;text-decoration:none}.rail,.skip-link,.cv-toolbar,.copy-email,.copy-feedback,.intro-links,.page-footer,.publication-links,.portrait,.section-head>a{display:none!important}main{margin:0;max-width:none;padding:0}.intro{display:block;padding-bottom:15px}.intro-copy{display:block}h1{font-size:29pt;letter-spacing:-1px}h1 span{display:inline}h1 span+span::before{content:' '}.intro-role{font-size:13pt;margin-bottom:12px}.intro-text p,.intro-text p:first-child{font-size:10pt}.interests{margin-bottom:20px}.section{padding-bottom:15px}.section-head{padding-top:15px;margin-bottom:15px}.section-head h2{font-size:18pt}.background-grid{grid-template-columns:1fr 1fr}.publication,.career-item,.talk,.manuscript{break-inside:avoid}.publication h3{font-size:12pt}.publication-meta,.publication-alt{font-size:10pt}.cv-page{padding:0;max-width:none;margin:0}.cv-page h1{font-size:28pt}.cv-page .cv-role{font-size:13pt;margin:5px 0}.cv-contact{font-size:10pt;margin-bottom:15px}.cv-page h2{font-size:14pt;margin:19px 0 12px;break-after:avoid}.cv-page .interest-list{font-size:10pt;gap:2px 16px}.cv-page .career-date{font-size:9pt}.cv-page .career-item{margin-bottom:11px}.cv-page .career-item :is(h3,h4){font-size:11pt}.cv-page .career-place,.cv-page .career-detail{font-size:10pt}.cv-page .publication{padding:9px 0;grid-template-columns:35px 1fr;gap:10px}.cv-page .publication h3{font-size:11pt}.cv-page .publication-alt,.cv-page .publication-meta{font-size:9.5pt}.cv-page .publication-year{font-size:9pt}.cv-page .talk{padding:9px 0;grid-template-columns:73px 1fr;gap:10px}.cv-page .talk h3{font-size:11pt}.cv-page .talk p,.cv-page .talk time{font-size:9.5pt}.cv-page .service{margin-top:18px}.cv-page .service p{font-size:10pt}.cv-page .subheading{font-size:11pt;margin-bottom:12px}.cv-page .manuscripts h3{font-size:14pt}.cv-page .manuscript .manuscript-title{font-size:11pt}.cv-page .manuscript p{font-size:9.5pt}.cv-page .manuscript+.manuscript{margin-top:12px}}
