:root{
  --ink:#11243d;
  --muted:#65758a;
  --line:#dbe2ea;
  --paper:#fbfcfe;
  --soft:#f2f5f8;
  --blue:#173b67;
  --blue-2:#28527f;
  --rust:#b9674c;
  --dark:#0b1220;
  --white:#fff;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.65}
a{color:inherit;text-decoration:none}
.container{width:min(var(--max),calc(100% - 48px));margin:0 auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(251,252,254,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(219,226,234,.8)}
.nav-wrap{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:12px}
.brand-mark{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--ink);font-family:Georgia,serif;font-size:20px}
.brand strong{display:block;font-size:14px;letter-spacing:.14em}
.brand small{display:block;font-size:8px;letter-spacing:.18em;color:var(--muted);margin-top:2px}
.site-nav{display:flex;gap:28px;font-size:13px;color:#40546c}
.site-nav a:hover{color:var(--ink)}
.menu-toggle{display:none;border:1px solid var(--line);background:transparent;padding:8px 12px;font:inherit}
.section{padding:112px 0}
.hero{padding:96px 0 80px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center}
.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:700;color:var(--rust);margin:0 0 16px}
.hero h1{font:500 clamp(44px,5.1vw,73px)/1.02 Georgia,"Times New Roman",serif;letter-spacing:-.04em;margin:0 0 24px;max-width:760px}
.hero-lede{font-size:18px;line-height:1.75;color:#50647a;max-width:670px}
.hero-actions{display:flex;align-items:center;gap:26px;margin-top:34px}
.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;font-size:13px;font-weight:700}
.button-primary{background:var(--ink);color:white}
.button-primary:hover{background:#1c3858}
.text-link{font-size:13px;font-weight:700}
.text-link span{margin-left:6px;color:var(--rust)}
.affiliations{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:42px;font-size:11px;letter-spacing:.11em;color:#637187;text-transform:uppercase}
.affiliations span{position:relative}
.affiliations span:not(:last-child)::after{content:"";width:3px;height:3px;background:#bdc8d4;border-radius:50%;position:absolute;right:-11px;top:50%;transform:translateY(-50%)}
.hero-panel{border:1px solid var(--line);border-radius:28px;padding:14px;background:#eef2f7;box-shadow:0 22px 60px rgba(19,43,72,.12)}
.hero-panel svg{display:block;width:100%;height:auto;border-radius:18px}
.section-light{background:var(--soft);border-top:1px solid #e9edf2;border-bottom:1px solid #e9edf2}
.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:44px}
.section-heading h2{font:500 clamp(34px,4vw,54px)/1.05 Georgia,serif;letter-spacing:-.03em;margin:0}
.section-intro{margin:0;color:var(--muted);max-width:540px;font-size:16px}
.research-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.research-card{background:white;border:1px solid var(--line);min-height:310px;padding:30px;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
.research-card:hover{transform:translateY(-4px);box-shadow:0 16px 38px rgba(26,47,75,.08)}
.card-number{font-size:11px;color:var(--rust);letter-spacing:.16em}
.research-card h3{font:500 28px/1.15 Georgia,serif;margin:50px 0 16px}
.research-card p{margin:0;color:var(--muted)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:28px}
.tags span{font-size:10px;border:1px solid var(--line);padding:5px 8px;color:#58697d}
.quote-section{background:#eef1f4}
.quote-grid{display:grid;grid-template-columns:90px 1fr 240px;gap:24px;align-items:start}
.quote-mark{font:100px/.7 Georgia,serif;color:var(--rust);margin:0}
blockquote{font:500 clamp(28px,3.5vw,45px)/1.2 Georgia,serif;letter-spacing:-.02em;margin:0;max-width:850px}
.quote-note{font-size:12px;color:var(--muted);margin:8px 0}
.pi-card{display:grid;grid-template-columns:180px 1fr;gap:32px;padding:28px;border:1px solid var(--line);background:white;align-items:center}
.portrait{width:180px;height:180px;display:grid;place-items:center;background:linear-gradient(135deg,#d6dfeb,#f0e8df);color:var(--blue);font:500 44px Georgia,serif}
.portrait.small{width:100px;height:100px;font-size:28px}
.placeholder-portrait span{opacity:.8}
.pi-card h3{font:500 40px/1.1 Georgia,serif;margin:0 0 10px}
.role{color:var(--muted);max-width:650px;margin:0}
.affiliation-line{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#65758a;margin:20px 0 0}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.person-card{padding:26px;border:1px solid var(--line);background:white}
.person-card h3{font:500 23px Georgia,serif;margin:20px 0 8px}
.person-card p{font-size:13px;color:var(--muted);margin:0}
.section-dark{background:var(--dark);color:white}
.section-heading.light .eyebrow{color:#d88b70}
.section-heading.light .section-intro{color:#aeb9c8}
.section-heading.light h2{color:#fff}
.publication-list{border-top:1px solid rgba(255,255,255,.16)}
.publication{display:grid;grid-template-columns:80px 1fr 30px;gap:18px;align-items:start;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.publication:hover{background:rgba(255,255,255,.025)}
.pub-year{font-size:12px;color:#aeb9c8;letter-spacing:.08em}
.publication strong{display:block;font:500 21px/1.35 Georgia,serif}
.publication small{display:block;margin-top:9px;color:#94a2b3;font-size:11px}
.arrow{font-size:18px;color:#d88b70}
.news-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.news-card{background:white;border:1px solid var(--line);padding:30px;min-height:210px}
.news-label{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--rust)}
.news-card h3{font:500 27px/1.15 Georgia,serif;margin:48px 0 12px}
.news-card p{color:var(--muted);margin:0}
.contact-section{padding-bottom:80px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px}
.contact-grid h2{font:500 52px/1 Georgia,serif;margin:0}
.contact-lede{color:var(--muted);font-size:17px;max-width:520px}
.contact-box{border-left:1px solid var(--line);padding-left:28px;color:#42556c}
.contact-box p{margin:0 0 20px}
.muted{color:var(--muted);font-size:13px}
.site-footer{background:#080e18;color:#b4bfcd;padding:22px 0;font-size:11px}
.footer-wrap{display:flex;justify-content:space-between;gap:20px}
@media (max-width: 900px){
  .hero-grid,.section-heading,.contact-grid{grid-template-columns:1fr}
  .hero-grid{gap:42px}
  .section-heading{gap:18px}
  .research-grid{grid-template-columns:1fr}
  .quote-grid{grid-template-columns:50px 1fr}
  .quote-note{grid-column:2}
}
@media (max-width: 680px){
  .container{width:min(var(--max),calc(100% - 30px))}
  .site-nav{position:absolute;top:74px;left:0;right:0;display:none;flex-direction:column;padding:18px 15px;background:var(--paper);border-bottom:1px solid var(--line);gap:18px}
  .site-nav.open{display:flex}
  .menu-toggle{display:block}
  .hero{padding-top:62px}
  .hero h1{font-size:45px}
  .hero-lede{font-size:16px}
  .section{padding:78px 0}
  .pi-card{grid-template-columns:1fr}
  .team-grid,.news-grid{grid-template-columns:1fr}
  .publication{grid-template-columns:48px 1fr}
  .publication .arrow{display:none}
  .footer-wrap{flex-direction:column}
}