@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Libre+Baskerville:ital@0;1&display=swap');
:root{--navy:#10283d;--navy2:#1d405c;--deep:#0b2133;--ink:#183449;--text:#384a58;--muted:#687984;--gold:#f4bf4f;--paper:#fffefa;--pale:#f4f7f7;--border:#dce5e7;--shell:1140px;--font:'DM Sans',Arial,sans-serif;--head:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font:16px/1.72 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:#17678c}img{max-width:100%}button,input{font:inherit}.shell{width:min(calc(100% - 72px),var(--shell));margin:auto}.site-header{height:84px;position:sticky;top:0;z-index:60;background:rgba(255,254,250,.96);border-bottom:1px solid #e7ecee;backdrop-filter:blur(14px)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{display:flex;align-items:center;gap:12px;color:var(--navy)}.logo-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:4px;background:var(--navy);color:#fff;font:800 17px var(--head);letter-spacing:-.6px}.logo-dot,.footer-brand span{color:var(--gold)}.logo-word{font:800 18px/1.1 var(--head);letter-spacing:1.1px;white-space:nowrap}.logo-word small{display:block;color:#7a8890;font:600 8px/1.7 var(--head);letter-spacing:1.75px;margin-top:3px}.desktop-nav{display:flex;align-items:center;gap:29px}.nav-link{color:#3e5260;font:700 12px var(--head);transition:color .2s}.nav-link:hover,.nav-link.active{color:#0e6c90}.nav-link.active{position:relative}.nav-link.active:after{content:'';position:absolute;left:0;right:0;bottom:-32px;height:3px;background:var(--gold)}.menu-toggle{display:none;background:none;border:0;padding:8px;cursor:pointer}.menu-toggle span{display:block;background:var(--navy);height:2px;width:25px;margin:5px 0}.mobile-nav{display:none}.eyebrow{font:800 11px/1.5 var(--head);letter-spacing:2.3px;color:var(--gold);text-transform:uppercase;margin:0 0 20px}.eyebrow.accent{color:#23748e}.tiny-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--gold);vertical-align:2px;margin-right:7px}h1,h2,h3,h4{font-family:var(--head);color:var(--navy);letter-spacing:-.038em;line-height:1.23}h1{font-size:clamp(43px,5.3vw,74px);margin:0;font-weight:800}h2{font-size:clamp(28px,3.3vw,42px);margin:0;font-weight:800}h3{font-size:21px}.serif,.hero h1 em{font-family:'Libre Baskerville',Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.055em}.hero{position:relative;overflow:hidden;background:var(--navy);color:#fff;min-height:630px}.hero-grid{display:grid;grid-template-columns:1.23fr .77fr;gap:72px;align-items:center;min-height:630px;position:relative;z-index:1}.hero h1{color:#fff;font-size:clamp(44px,5vw,68px);line-height:1.18}.hero h1 em{color:#f7d88b}.hero-lead{max-width:565px;font-size:18px;line-height:1.88;color:#d1e0e8;margin:30px 0 34px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;font:700 13px var(--head);padding:14px 20px;border-radius:3px;transition:transform .2s,background .2s;border:1px solid transparent;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn-light{background:var(--gold);color:var(--navy)}.btn-light:hover{color:var(--navy);background:#ffe0a0}.btn-outline{color:#fff;border-color:#7390a1}.btn-outline:hover{color:#fff;border-color:#fff}.btn-navy{background:var(--navy);color:white}.btn-navy:hover{background:#246086;color:white}.hero-affiliation{color:#92acbb;letter-spacing:1.7px;font:700 9px var(--head);margin-top:55px}.hero-affiliation .rule{display:inline-block;width:28px;height:1px;background:#5a7383;vertical-align:middle;margin:0 12px}.portrait-wrap{position:relative;max-width:390px;margin:44px auto}.portrait-back{position:absolute;inset:15px -18px -15px 18px;border:1px solid #617d8e}.portrait{position:relative;display:block;aspect-ratio:4/4.6;object-fit:cover;object-position:center 30%;width:100%;filter:saturate(.88)}.portrait-tag{position:absolute;bottom:23px;left:-25px;background:#fff;padding:18px 22px;box-shadow:0 12px 30px #06152333;color:var(--navy);min-width:220px}.portrait-tag span{display:block;font:800 16px var(--head)}.portrait-tag small{font:500 11px var(--font);color:#73818c}.hero-mark{position:absolute;right:-150px;top:-275px;font:900 800px var(--head);line-height:1;color:#fff;opacity:.025;pointer-events:none}.section{padding:90px 0}.section.tinted{background:var(--pale)}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:44px}.section-sub{font-size:17px;color:#657884;margin-top:18px}.text-arrow{white-space:nowrap;color:#146781;font:800 13px var(--head);border-bottom:1px solid #accbd0;padding-bottom:7px}.text-arrow:hover{color:var(--navy)}.bio-grid{display:grid;grid-template-columns:240px 1fr;gap:66px}.bio-sidebar{border-top:2px solid var(--gold)}.fact-card{padding:22px 0;border-bottom:1px solid var(--border)}.fact-card>span{display:block;color:#71828b;letter-spacing:1.6px;font:800 10px var(--head);margin-bottom:8px}.fact-card strong{display:block;color:var(--navy);font:800 15px/1.5 var(--head)}.fact-card p{margin:8px 0 0;font-size:13px;color:var(--muted);line-height:1.65}.fact-card a{display:block;color:#0b6c91;font-size:13px;margin:6px 0}.bio-rich{font-size:15.6px;line-height:1.9;color:#465c69}.rich-text p{margin:0 0 19px}.rich-text a{color:#126a8c;border-bottom:1px solid #9fbdc8}.rich-text a:hover{color:var(--navy);border-color:var(--navy)}.rich-text ul,.rich-text ol{padding-left:23px}.rich-text li{margin:9px 0}.rich-text strong{color:#233f52}.visual-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.visual-card{background:white;border:1px solid var(--border);padding:16px;position:relative;transition:box-shadow .2s,transform .2s;display:block}.visual-card:hover{box-shadow:0 13px 37px #2b48551d;transform:translateY(-3px);color:var(--navy)}.visual-img{height:220px;display:grid;place-items:center;background:#f7fafb;overflow:hidden}.visual-img img{width:100%;height:100%;object-fit:contain}.visual-card p{margin:19px 37px 11px 5px;color:var(--ink);font-size:14px;line-height:1.58;min-height:45px}.card-arrow{position:absolute;right:23px;bottom:23px;color:#29809e;font-size:20px}.yellow{color:var(--gold)}.closing-cta{background:#19405a;padding:84px 0;color:white;text-align:center}.closing-cta h2{color:white;max-width:730px;margin:0 auto 30px}.page-banner{background:var(--navy);color:#fff;padding:78px 0 81px;position:relative;overflow:hidden}.page-banner:after{content:'';position:absolute;width:330px;height:330px;border:1px solid #ffffff16;right:-90px;top:-145px;border-radius:50%;box-shadow:0 0 0 95px #ffffff08,0 0 0 180px #ffffff06}.page-banner h1{color:#fff;font-size:clamp(39px,5vw,63px)}.page-banner .eyebrow{margin-bottom:15px}.banner-copy{max-width:700px;font-size:17px;color:#c2d5df;line-height:1.7;margin:20px 0 0}.research-intro{max-width:930px;font-size:17px;line-height:1.9;color:#3d5362}.research-intro ol{font-size:16px}.research-index{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--border);margin:50px 0 65px}.research-index a{padding:19px 16px;min-height:126px;border-right:1px solid var(--border);display:flex;flex-direction:column;justify-content:space-between;color:var(--navy);font:700 12px/1.5 var(--head)}.research-index a:last-child{border-right:0}.research-index span{font:700 10px var(--head);color:#2685a0}.research-index b{align-self:flex-end;font-size:16px}.research-index a:hover{background:var(--pale)}.research-entry{border-top:1px solid #cbdadd;padding:54px 0 65px;scroll-margin-top:120px}.research-entry-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px}.research-entry-top h2{font-size:32px}.big-number{font:800 46px var(--head);color:#e3ebef}.research-layout{display:grid;grid-template-columns:37% 1fr;gap:40px;align-items:start}.research-figure{margin:0;background:#f4f8f9;padding:22px;border:1px solid #e7eeef}.research-figure img{width:100%;height:245px;object-fit:contain}.research-figure figcaption{color:#667a86;font-size:12px;line-height:1.6;margin-top:12px}.research-desc{font-size:15.5px;line-height:1.9}.research-more{margin:33px 0 0;padding:26px 30px;background:#f5f8f8;border-left:3px solid #d7ad49;font-size:14.2px;line-height:1.9}.research-more h3{margin:0 0 17px;font-size:16px;letter-spacing:-.01em}.research-more .paragraph{margin-bottom:12px}.pub-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.pub-controls{display:flex;gap:8px;flex-wrap:wrap}.filter-btn{background:#f4f7f8;color:#57717f;border:1px solid var(--border);padding:11px 14px;border-radius:2px;cursor:pointer;font:700 12px var(--head)}.filter-btn span{color:#83949f;margin-left:5px}.filter-btn.active{background:var(--navy);color:#fff}.filter-btn.active span{color:#b8ceda}.pub-search{min-width:min(345px,100%);border:1px solid var(--border);display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fff}.pub-search span{font-size:25px;line-height:1;color:#718d9b}.pub-search input{border:0;outline:0;width:100%;font-size:12px;color:var(--ink);padding:5px 0;background:transparent}.pub-note{font-size:12px;color:#778893;margin:20px 0 31px}.pub-item{display:grid;grid-template-columns:135px 1fr;gap:33px;padding:24px 0;border-top:1px solid var(--border)}.pub-item[hidden]{display:none}.pub-meta{display:flex;flex-direction:column;gap:10px;align-items:flex-start;padding-top:4px}.pub-meta span{font:800 10px var(--head);color:#2d829a;text-transform:uppercase;letter-spacing:1px}.pub-meta small{font:700 12px var(--head);color:#8799a4}.pub-info h3{font-size:17px;line-height:1.5;margin:0 0 8px;letter-spacing:-.015em}.pub-info h3 a{color:var(--navy)}.pub-info h3 a:hover{color:#12779d}.out-icon{color:#3291aa;font-size:13px;margin-left:4px}.pub-info p{font-size:13.2px;line-height:1.7;color:#637681;margin:0}.no-results{padding:35px 0;color:var(--muted)}.end-note{border-top:1px solid var(--border);padding-top:25px;margin:20px 0 0;font-size:14px}.end-note a{color:#147495}.software-list{display:grid;gap:24px}.software-card{display:grid;grid-template-columns:36% 1fr;background:#fff;border:1px solid var(--border);min-height:325px}.software-visual{background:#f2f6f7;display:grid;place-items:center;padding:22px}.software-visual img{width:100%;max-height:267px;object-fit:contain}.software-copy{padding:38px 46px}.software-copy .eyebrow{margin:0 0 10px}.software-copy h2{font-size:30px;margin-bottom:16px}.software-copy>p:not(.eyebrow){font-size:15px;line-height:1.85}.software-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.pill-link{display:inline-block;color:#176983;border:1px solid #a5c0ca;border-radius:2px;padding:7px 12px;font:700 12px var(--head)}.pill-link:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.course-intro{display:grid;grid-template-columns:41% 1fr;gap:70px;padding-bottom:64px;border-bottom:1px solid var(--border)}.course-intro h2{margin-bottom:22px}.course-intro h3{font-size:18px;margin:3px 0 17px}.course-intro p{font-size:15px;line-height:1.86}.course-schedule{font-weight:600;color:#607887}.course-intro .btn{margin-top:10px}.course-content{padding:62px 0}.lecture-list{padding:0;margin:0;list-style:none;border-top:1px solid var(--border)}.lecture-list li{display:grid;grid-template-columns:65px 1fr 115px;align-items:center;gap:15px;padding:16px 10px;border-bottom:1px solid var(--border);font-size:15px}.lecture-count{color:#2b889f;font:800 12px var(--head)}.lecture-title{font-weight:600;color:var(--ink)}.lecture-list a{color:#14779a;font:700 12px var(--head);text-align:right}.lecture-list .muted{font-size:11px;color:#9babb3;text-align:right}.other-teaching{padding:42px 0 10px}.short-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:23px}.short-course{padding:23px;border:1px solid var(--border);background:var(--pale)}.short-course p{font-size:14px}.short-course a{font-size:12px}.footer{background:#0c2233;color:#bccbd3;padding:60px 0 0}.footer-grid{display:grid;grid-template-columns:2.3fr 1fr 1.2fr;gap:55px;padding-bottom:48px}.footer-brand{font:800 26px var(--head);color:white;letter-spacing:.6px}.footer-brand:hover{color:white}.footer-grid p{font-size:12px;color:#9fb6c2;line-height:1.9}.footer-label{color:#d4e2e7;letter-spacing:1.6px;font:800 10px var(--head);margin:0 0 18px}.footer-links a{display:block;color:#b3c6d0;font-size:13px;line-height:2.3}.footer-links a:hover{color:var(--gold)}.footer-bottom{padding:21px 0;border-top:1px solid #294253;color:#7d9dad;font-size:11px}
@media(max-width:1060px){.desktop-nav{gap:16px}.nav-link{font-size:11px}.hero-grid{gap:38px}.hero h1{font-size:51px}.research-index{grid-template-columns:repeat(3,1fr)}.research-index a:nth-child(3){border-right:0}.research-index a:nth-child(n+4){border-top:1px solid var(--border)}}
@media(max-width:780px){.shell{width:min(calc(100% - 36px),var(--shell))}.site-header{height:67px}.logo-icon{width:40px;height:40px}.logo-word{font-size:16px}.desktop-nav{display:none}.menu-toggle{display:block}.mobile-nav{display:none;position:absolute;top:67px;left:0;right:0;background:#fff;box-shadow:0 18px 25px #10283d22;padding:12px 18px 25px}.mobile-nav.open{display:flex;flex-direction:column;gap:4px}.mobile-nav .nav-link{font-size:14px;padding:10px 0}.mobile-nav .nav-link:after{display:none}.hero-grid{grid-template-columns:1fr;gap:0;padding-top:59px;padding-bottom:55px}.hero{min-height:0}.hero h1{font-size:clamp(40px,9vw,58px)}.hero-lead{font-size:16px}.portrait-wrap{width:min(74%,310px);margin:48px auto 16px}.hero-affiliation{margin-top:35px}.hero-mark{display:none}.section{padding:58px 0}.section-top{align-items:flex-start;flex-direction:column;gap:15px;margin-bottom:30px}.section-top h2{font-size:29px}.bio-grid{grid-template-columns:1fr;gap:30px}.bio-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:15px}.fact-card{padding:15px 0}.visual-grid{grid-template-columns:1fr}.page-banner{padding:62px 0}.research-index{grid-template-columns:repeat(2,1fr)}.research-index a{min-height:100px}.research-index a:nth-child(3){border-right:1px solid var(--border)}.research-index a:nth-child(even){border-right:0}.research-index a:nth-child(n+3){border-top:1px solid var(--border)}.research-layout,.software-card,.course-intro{grid-template-columns:1fr}.research-entry{padding:43px 0}.research-entry-top h2{font-size:26px}.research-figure img{height:230px}.research-more{padding:22px 17px}.pub-item{grid-template-columns:80px 1fr;gap:15px}.software-card{min-height:0}.software-visual{min-height:245px}.software-copy{padding:29px}.course-intro{gap:26px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}}
@media(max-width:480px){.eyebrow{font-size:10px;letter-spacing:1.7px}.hero h1{font-size:41px}.hero-actions{display:flex;flex-direction:column;align-items:flex-start}.portrait-wrap{width:76%}.portrait-tag{left:-18px;min-width:200px}.bio-sidebar{grid-template-columns:1fr}.research-index{grid-template-columns:1fr}.research-index a{border-right:0!important;border-top:1px solid var(--border);min-height:75px}.research-index a:first-child{border-top:0}.pub-search{width:100%}.pub-item{grid-template-columns:1fr;gap:5px}.pub-meta{flex-direction:row}.pub-info h3{font-size:16px}.short-grid{grid-template-columns:1fr}.lecture-list li{grid-template-columns:35px 1fr;gap:12px}.lecture-list li>a,.lecture-list .muted{grid-column:2;text-align:left}.footer-grid{grid-template-columns:1fr;gap:23px}.footer-grid>div:first-child{grid-column:auto}.software-copy h2{font-size:27px}}


/* Simplified academic layout: direct facts, no slogan or marketing banners. */
body{background:#fff;color:#344554}
.site-header{background:rgba(255,255,255,.98)}
.logo-icon{display:none}
.logo-word{font-size:17px;letter-spacing:.03em}
.logo-word small{font-size:9px;letter-spacing:.1em}
.nav-link.active:after{height:2px;background:#225c7a}
.simple-home-intro{padding:92px 0 74px;border-bottom:1px solid var(--border)}
.simple-home-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:92px;align-items:center;max-width:950px;margin:0 auto}
.simple-home-copy h1{font-size:clamp(43px,5vw,62px);font-weight:750;letter-spacing:-.04em;margin:0 0 24px}
.simple-home-role{font-size:19px;line-height:1.65;color:#223d50;margin:0 0 27px}
.simple-home-areas{font-size:15px;line-height:1.85;color:#5a6e79;margin:0 0 21px;max-width:550px}
.simple-home-areas strong{font-size:14px;color:#2a4759;font-weight:700}
.simple-home-links{display:flex;gap:15px 22px;flex-wrap:wrap;font-size:14px;font-weight:600}
.simple-home-links a{color:#156c8d;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#bad0d9}
.simple-home-photo{display:block;width:100%;aspect-ratio:4/4.6;object-fit:cover;object-position:center 29%;border-radius:2px}
.simple-home-about{padding:65px 0 96px}
.simple-home-about .shell{max-width:950px}
.simple-home-about h2{font-size:29px;font-weight:750;margin-bottom:22px}
.simple-about-body{max-width:830px;font-size:15.5px;line-height:1.9;color:#475c6a}
.simple-about-body p{margin:0 0 17px}
.page-banner{background:#fff;color:#173449;padding:55px 0 38px;border-bottom:1px solid var(--border)}
.page-banner:after{display:none}
.page-banner h1{color:#173449;font-size:clamp(32px,4vw,43px);letter-spacing:-.035em}
.page-banner .eyebrow,.page-banner .banner-copy{display:none}
.footer{padding:24px 0;background:#f6f8f9;color:#667784;border-top:1px solid var(--border)}
.footer p{font-size:12px;line-height:1.6;margin:0}
.footer a{color:#266b89}
@media(max-width:780px){.simple-home-intro{padding:54px 0 50px}.simple-home-grid{gap:28px;grid-template-columns:minmax(0,1fr) 170px}.simple-home-copy h1{font-size:43px}.simple-home-role{font-size:16px}.simple-home-areas{font-size:14px}.simple-home-about{padding:48px 0 70px}.page-banner{padding:41px 0 31px}}
@media(max-width:580px){.simple-home-grid{grid-template-columns:1fr;gap:25px}.simple-photo-col{grid-row:1}.simple-home-photo{width:150px;height:180px;aspect-ratio:auto;object-position:center 22%}.simple-home-copy h1{font-size:41px;margin-bottom:16px}.simple-home-role{font-size:16px;margin-bottom:22px}.simple-home-links{gap:10px 20px}.simple-home-about h2{font-size:26px}}
