:root{--bg:#f7f8f5;--paper:#fff;--ink:#182e33;--muted:#607174;--line:#dfe6e2;--teal:#18796e;--teal-dark:#11564e;--navy:#193b43;--soft:#ebf1ed;--serif:Georgia,"Times New Roman",serif;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}a:hover{color:var(--teal)}.shell{max-width:1120px;margin:0 auto;padding-left:36px;padding-right:36px}.skip{position:absolute;left:-100vw;top:0;background:var(--ink);color:white;padding:10px;z-index:99}.skip:focus{left:10px}.site-header{background:rgba(247,248,245,.96);border-bottom:1px solid var(--line)}.nav-shell{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:96px}.wordmark{display:flex;align-items:center;gap:13px;text-decoration:none}.mark{font:700 30px/1 var(--serif);letter-spacing:-2px}.mark-dot{color:var(--teal)}.wordmark-text{font-size:13px;line-height:1.3;font-weight:750;letter-spacing:.035em}.wordmark-text small{display:block;font-size:10px;margin-top:4px;color:var(--muted);font-weight:500;letter-spacing:.07em}.main-nav{display:flex;flex-wrap:wrap;gap:28px}.main-nav a{font-size:13px;font-weight:600;letter-spacing:.02em;text-decoration:none;padding:8px 0;border-bottom:2px solid transparent}.main-nav a.current{border-bottom-color:var(--teal);color:var(--teal)}.hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(290px,.77fr);align-items:center;gap:65px;padding-top:85px;padding-bottom:96px}.eyebrow{color:var(--teal);font-weight:750;font-size:11px;line-height:1.5;letter-spacing:.17em;text-transform:uppercase;margin:0 0 20px}.status-dot{display:inline-block;width:7px;height:7px;background:#2caa82;border-radius:50%;margin-right:8px;vertical-align:1px}.hero h1,.page-intro h1{font:400 clamp(49px,5.7vw,78px)/1.08 var(--serif);letter-spacing:-.048em;margin:0 0 28px}.hero h1 em{font-weight:400;font-style:italic;color:var(--teal)}.hero-lead{font-size:19px;line-height:1.72;color:#344b4f;max-width:635px;margin:0 0 16px}.hero-description{font-size:15px;color:var(--muted);max-width:610px;margin:0 0 28px}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;padding:12px 19px;font-size:13px;font-weight:750;min-height:47px;border-radius:6px;transition:transform .18s ease,background .18s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--teal);color:white}.button-primary:hover{background:var(--teal-dark);color:white}.button-secondary{border:1px solid #c7d4cf;background:transparent}.button-secondary:hover{background:#e8f1ed}.hero-aside{position:relative;border:1px solid #d5e2dc;border-radius:12px;background:linear-gradient(147deg,#eaf4ee 0%,#e2ede9 54%,#d9e9e5 100%);min-height:390px;overflow:hidden;padding:21px;display:flex;flex-direction:column}.aside-top{display:flex;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:.13em;color:#547670}.little-star{font-size:27px;line-height:1;color:#488f81}.orbit{position:relative;flex:1;min-height:230px;margin:14px 0 12px;display:flex;align-items:center;justify-content:center}.orbit-ring{position:absolute;border:1px solid rgba(24,121,110,.26);border-radius:50%;aspect-ratio:1}.orbit-ring-one{width:220px}.orbit-ring-two{width:165px}.orbit:after,.orbit:before{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:#178a78}.orbit:after{top:14px;right:26%}.orbit:before{bottom:11%;left:23%;background:#6aa89e}.orbit-center{z-index:1;width:118px;height:118px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--navy);color:white;font:600 27px var(--serif);letter-spacing:-1px;box-shadow:0 16px 28px #194e4b30}.orbit-center span{font-size:16px;margin:0 5px;color:#73c7b9}.orbit-label{position:absolute;background:rgba(255,255,255,.85);border:1px solid #cfe0d8;color:#47736b;padding:4px 10px;border-radius:20px;font-size:10px;font-weight:700}.orbit-label-a{top:19%;left:0}.orbit-label-b{right:0;top:49%}.orbit-label-c{bottom:9%;left:10%}.aside-caption{font:italic 15px/1.45 var(--serif);color:#46655f;max-width:265px;margin:0}.section-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f0f3ef}.section-band-inner{display:flex;align-items:baseline;gap:27px;padding-top:17px;padding-bottom:17px}.band-label{font-size:10px;font-weight:800;letter-spacing:.13em;color:var(--teal);white-space:nowrap}.section-band p{font-size:13px;font-weight:650;margin:0}.muted{color:var(--muted);font-weight:450}.section{padding-top:86px;padding-bottom:54px}.tight-top{padding-top:28px}.section-heading{margin-bottom:34px;max-width:770px}.section-heading h2,.connect-card h2{font:400 clamp(32px,3.4vw,46px)/1.19 var(--serif);letter-spacing:-.035em;margin:0}.section-heading .eyebrow{margin-bottom:13px}.two-column{display:grid;grid-template-columns:1.5fr 1fr;gap:90px}.two-column p{margin:0 0 17px;color:#405459;line-height:1.85}.fact-list{border-top:1px solid var(--line)}.fact-list div{border-bottom:1px solid var(--line);padding:15px 0}.fact-list span{display:block;color:var(--teal);font-size:10px;font-weight:800;letter-spacing:.1em;margin-bottom:3px}.fact-list strong{font-size:13px;font-weight:650}.inline-heading{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:20px}.text-link{color:var(--teal);font-size:13px;font-weight:750;text-decoration:none;white-space:normal}.text-link:hover{text-decoration:underline}.research-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.topic-card{position:relative;text-decoration:none;min-height:245px;background:white;border:1px solid var(--line);border-radius:8px;padding:25px 22px;transition:border-color .2s,transform .2s,box-shadow .2s}.topic-card:hover{transform:translateY(-4px);border-color:#9ccac0;box-shadow:0 12px 25px #173e3a10}.topic-number{font-size:11px;font-weight:800;color:var(--teal)}.topic-card h3{font:400 22px/1.23 var(--serif);letter-spacing:-.018em;margin:28px 0 11px}.topic-card p{font-size:13px;line-height:1.65;color:var(--muted);margin:0}.card-arrow{position:absolute;right:19px;top:19px;color:var(--teal);font-size:18px}.connect-card{background:var(--navy);color:white;border-radius:12px;padding:45px 48px;display:flex;gap:45px;justify-content:space-between;align-items:end}.connect-card>div:first-child{max-width:710px}.connect-card h2{max-width:650px}.connect-card p:not(.eyebrow){color:#c6d9d9;font-size:14px;max-width:680px;margin:15px 0 0}.light-eyebrow{color:#83d2c4}.connect-actions{display:flex;flex-direction:column;gap:13px;align-items:flex-start;flex-shrink:0}.button-light{background:#f8fbfa;color:var(--navy)}.button-light:hover{background:#e3f5ef}.connect-actions span{font-size:12px;color:#b7d3cf}.page-intro{padding-top:80px;padding-bottom:65px;border-bottom:1px solid var(--line)}.page-intro h1{margin-bottom:19px}.intro-lead{font:400 clamp(21px,2.3vw,29px)/1.52 var(--serif);color:#506365;max-width:780px;margin:0}.page-intro .actions{margin-top:30px}.research-content{padding-top:70px}.theme{display:grid;grid-template-columns:170px 1fr;gap:40px;padding:47px 0;border-bottom:1px solid var(--line);scroll-margin-top:30px}.theme-no{font-size:13px;color:var(--teal);font-weight:750;padding-top:8px}.theme h3{font:400 clamp(29px,3vw,39px)/1.24 var(--serif);margin:0 0 16px;letter-spacing:-.025em}.theme p{max-width:820px;color:#4a6062;margin:0 0 16px}.tags{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}.tags span{font-size:11px;line-height:1.3;color:#49796f;background:#e6f0eb;border-radius:100px;padding:7px 11px;font-weight:650}.theme .theme-example{font-size:13px;color:#5b6b6e;margin-top:23px}.section-subtitle{color:var(--muted);font-size:14px}.publication-section{padding-top:77px}.publication{display:grid;grid-template-columns:110px 1fr;gap:25px;padding:23px 0;border-bottom:1px solid var(--line)}.publication>span{font-size:12px;font-weight:750;color:var(--teal);padding-top:5px}.publication h3{font-size:16px;line-height:1.5;margin:0 0 6px;font-weight:650}.publication p{font-size:13px;color:var(--muted);margin:0}.end-action{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:30px}.teaching-section{padding-top:75px}.course{display:grid;grid-template-columns:185px 1fr;gap:40px;padding:31px 0;border-top:1px solid var(--line)}.course:last-child{border-bottom:1px solid var(--line)}.course-side{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding-top:6px}.course-side>span:first-child{font-size:12px;font-weight:800;color:var(--teal);letter-spacing:.07em}.course-chip{font-size:10px;color:var(--muted);border:1px solid var(--line);border-radius:100px;padding:3px 9px}.course h3{font:400 29px/1.3 var(--serif);margin:0 0 10px}.course p{max-width:780px;color:#4b6063;margin:0 0 12px}.course .course-note{font-style:italic;font-size:12px;color:#7a8b8c}.cv-grid{display:grid;grid-template-columns:1fr 270px;gap:85px}.cv-second{margin-top:65px}.timeline{border-left:1px solid #b5cec5;padding-left:22px}.timeline>div{position:relative;padding-bottom:28px}.timeline>div:last-child{padding-bottom:0}.timeline>div:before{position:absolute;content:"";width:9px;height:9px;background:var(--teal);border-radius:50%;left:-27px;top:7px}.timeline span{font-size:11px;color:var(--teal);font-weight:800}.timeline h3{font-size:17px;margin:3px 0;font-weight:700}.timeline p{font-size:13px;color:var(--muted);margin:0}.cv-side{background:#ecf2ed;padding:28px;border-radius:8px;align-self:start}.cv-side h3{font:400 26px/1.2 var(--serif);margin:0 0 10px}.cv-side p:not(.eyebrow){font-size:13px;color:var(--muted);margin:0 0 22px}.cv-side .text-link{display:block;margin:13px 0}.fine-print{font-size:12px;color:var(--muted);margin:12px 0 0}.site-footer{margin-top:72px;border-top:1px solid var(--line);background:#f0f3ef}.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap;padding-top:24px;padding-bottom:24px;color:#617477;font-size:11px}.footer-inner a{text-decoration:none}.footer-inner a:hover{text-decoration:underline}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:32px;padding-top:55px}.hero-aside{min-height:310px;max-width:630px}.orbit{min-height:200px}.research-grid{grid-template-columns:repeat(2,1fr)}.two-column{gap:36px}.connect-card{flex-direction:column;align-items:flex-start}.cv-grid{grid-template-columns:1fr;gap:36px}.cv-side{max-width:460px}}
@media(max-width:620px){.shell{padding-left:20px;padding-right:20px}.nav-shell{min-height:105px;align-items:flex-start;padding-top:19px;padding-bottom:12px;flex-direction:column;gap:14px}.main-nav{gap:23px}.main-nav a{padding:0 0 8px}.hero{padding-top:47px;padding-bottom:54px}.hero h1,.page-intro h1{font-size:49px}.hero-lead{font-size:17px}.section-band-inner{display:block}.section-band p{margin-top:6px}.section{padding-top:52px;padding-bottom:22px}.tight-top{padding-top:23px}.two-column{grid-template-columns:1fr;gap:20px}.inline-heading{align-items:start;flex-direction:column}.research-grid{grid-template-columns:1fr}.topic-card{min-height:180px}.topic-card h3{margin:12px 0 10px}.connect-card{padding:29px 24px;gap:25px}.page-intro{padding-top:52px;padding-bottom:45px}.theme{grid-template-columns:1fr;gap:5px;padding:34px 0}.publication{grid-template-columns:1fr;gap:5px}.course{grid-template-columns:1fr;gap:12px}.course-side{flex-direction:row;align-items:center}.cv-grid{gap:34px}.footer-inner{display:block}.footer-inner span{display:block;margin:7px 0}}
/* Academic homepage: streamlined navigation and professional portrait */
.nav-shell{justify-content:center;min-height:70px}
.hero{grid-template-columns:minmax(0,1.4fr) minmax(290px,.82fr);gap:52px;align-items:start;padding-top:70px;padding-bottom:53px}
.hero h1{font-size:clamp(36px,3.8vw,50px);margin-bottom:25px}
.hero-lead{font-size:16px;line-height:1.85;margin-bottom:19px}
.hero-description{font-size:15px;line-height:1.85;max-width:660px;margin-bottom:27px}
.hero-photo{margin:2px 0 0;align-self:start;overflow:hidden;border-radius:12px;background:#dfe7e3;box-shadow:0 14px 40px rgba(17,46,43,.12)}
.hero-photo img{display:block;width:100%;height:auto;aspect-ratio:420/562;object-fit:cover}
@media(max-width:900px){.hero{grid-template-columns:minmax(0,1fr) minmax(250px,.67fr);gap:32px}.hero-photo{align-self:start}.hero h1{font-size:42px}.hero-lead{font-size:15px}}
@media(max-width:690px){.nav-shell{min-height:68px;align-items:center;flex-direction:row;padding-top:10px;padding-bottom:10px}.main-nav{justify-content:center;gap:22px}.hero{grid-template-columns:1fr;gap:28px;padding-top:42px;padding-bottom:45px}.hero h1{font-size:38px}.hero-photo{max-width:390px;grid-row:2;margin:0 auto}.hero-lead{font-size:16px}}

/* Professional portrait: more prominent size and natural image proportions */
.hero-photo{width:100%;max-width:370px;justify-self:end;margin:4px 0 0;overflow:visible;background:none;box-shadow:none}
.hero-photo img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:10px;box-shadow:0 14px 40px rgba(17,46,43,.12)}
.social-links{display:flex;justify-content:center;gap:12px;margin-top:20px}
.social-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #c7d4cf;border-radius:50%;background:#fff;color:var(--navy);transition:color .18s ease,border-color .18s ease,transform .18s ease}
.social-link:hover{color:var(--teal);border-color:var(--teal);transform:translateY(-2px)}
.social-link:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.social-link svg{display:block;width:20px;height:20px}
@media(max-width:900px){.hero-photo{max-width:335px}}
@media(max-width:690px){.hero-photo{max-width:340px;justify-self:center;margin:0 auto}}

/* Selected publication titles link to publishers and working papers. */
.publication h3 a{color:inherit;text-decoration:none;text-underline-offset:4px}
.publication h3 a:hover,.publication h3 a:focus-visible{color:var(--teal);text-decoration:underline}

/* Philosophy sections use the same text size as the homepage introduction. */
.philosophy-story{padding-top:70px;padding-bottom:58px;border-bottom:1px solid var(--line)}
.philosophy-story p{max-width:780px;margin:0 0 20px;color:#344b4f;font-size:16px;line-height:1.85}
.philosophy-story p:last-child{margin-bottom:0}
@media(max-width:900px){.philosophy-story p{font-size:15px}}
@media(max-width:690px){.philosophy-story{padding-top:42px;padding-bottom:45px}.philosophy-story p{font-size:16px}}

.research-content .section-heading{margin-bottom:0}
@media(max-width:690px){.research-content{padding-top:42px}}
