:root {
  --navy:#090b35;
  --violet:#35106b;
  --magenta:#f22c93;
  --coral:#ff6a74;
  --blue:#395bff;
  --ink:#17191c;
  --muted:#62656d;
  --paper:#f7f6f2;
  --white:#ffffff;
  --line:rgba(23,25,28,.13);
  --max:1220px;
  --shadow:0 22px 70px rgba(9,11,53,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{font:inherit}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:999;background:#fff;padding:.8rem 1rem;border-radius:8px;box-shadow:var(--shadow)}
.skip-link:focus{top:1rem}
.site-header{position:fixed;inset:0 0 auto 0;z-index:100;transition:background .25s ease,box-shadow .25s ease,color .25s ease}
.site-header.scrolled,.site-header.light-page{background:rgba(247,246,242,.95);backdrop-filter:blur(18px);box-shadow:0 1px 0 var(--line);color:var(--ink)}
.nav{max-width:var(--max);height:84px;margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.brand{font-weight:850;letter-spacing:.105em;font-size:.89rem;color:#fff;white-space:nowrap}
.site-header.scrolled .brand,.site-header.light-page .brand{color:var(--navy)}
.brand span{color:var(--magenta)}
.nav-links{display:flex;align-items:center;gap:clamp(1.1rem,2.8vw,2.5rem);font-size:.93rem;color:rgba(255,255,255,.92)}
.site-header.scrolled .nav-links,.site-header.light-page .nav-links{color:var(--ink)}
.nav-links a{position:relative;padding:.35rem 0}
.nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--magenta);transition:right .2s ease}
.nav-links a:hover::after,.nav-links a.active::after{right:0}
.menu-toggle{display:none;border:0;background:transparent;color:inherit;width:44px;height:44px;align-items:center;justify-content:center}
.menu-toggle svg{width:24px}
.hero{min-height:100svh;position:relative;display:flex;align-items:center;background:var(--navy);color:#fff;overflow:hidden}
.hero-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(5,8,39,.93) 0%,rgba(5,8,39,.78) 28%,rgba(5,8,39,.35) 55%,rgba(5,8,39,.05) 100%),url('https://static.wixstatic.com/media/f7b868_eec6115612794b22b2e714ac04f7f9d2~mv2.png');background-size:cover;background-position:center center;transform:scale(1.01)}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:180px;background:linear-gradient(transparent,var(--paper));pointer-events:none}
.hero-inner{position:relative;z-index:1;width:min(var(--max),calc(100% - 56px));margin:0 auto;padding:130px 0 150px}
.eyebrow{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;font-weight:780;color:var(--magenta);margin:0 0 1.35rem}
.hero h1{font-size:clamp(3.8rem,9vw,8.5rem);line-height:.88;letter-spacing:-.055em;margin:0;max-width:900px;font-weight:860}
.hero-subtitle{font-size:clamp(1.25rem,2.5vw,2.25rem);line-height:1.15;max-width:760px;margin:2rem 0 0;font-weight:510;letter-spacing:-.02em}
.hero-meta{margin:1.3rem 0 0;color:rgba(255,255,255,.76);font-size:clamp(.95rem,1.4vw,1.1rem);letter-spacing:.04em}
.scroll-mark{position:absolute;z-index:2;left:50%;bottom:38px;transform:translateX(-50%);color:rgba(255,255,255,.7);font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:.7rem}
.scroll-mark::after{content:"";width:1px;height:32px;background:linear-gradient(var(--magenta),transparent)}
.section{padding:clamp(80px,10vw,140px) 28px}
.container{width:min(var(--max),100%);margin:0 auto}
.intro{padding-top:95px;padding-bottom:95px;text-align:center}
.intro p{font-size:clamp(1.7rem,3.6vw,3.35rem);line-height:1.14;letter-spacing:-.035em;max-width:1030px;margin:0 auto;font-weight:620}
.section-label{font-size:.76rem;letter-spacing:.19em;text-transform:uppercase;font-weight:800;color:var(--magenta);margin-bottom:1.05rem}
.section h2,.page-hero h1{font-size:clamp(2.6rem,5vw,5rem);line-height:.96;letter-spacing:-.045em;margin:0;font-weight:830}
.section-lead{font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.45;max-width:760px;color:#34363c;margin:1.4rem 0 0}
.figure-card{margin-top:3.2rem;background:#fff;border:1px solid rgba(23,25,28,.08);box-shadow:0 24px 90px rgba(29,25,74,.08);overflow:hidden}
.figure-card img{width:100%;height:auto;background:#fff}
figcaption{padding:1.1rem 1.35rem 1.3rem;color:var(--muted);font-size:.78rem;line-height:1.5;border-top:1px solid var(--line)}
figcaption a{text-decoration:underline;text-decoration-color:rgba(242,44,147,.45);text-underline-offset:3px}
.alt-section{background:#ecebe7}
.split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:clamp(40px,7vw,96px)}
.split.reverse{grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr)}
.split .copy p{font-size:clamp(1.08rem,1.8vw,1.35rem);color:#3c3e44;max-width:570px}
.figure-compact{background:#fff;box-shadow:var(--shadow);padding:0;border:1px solid rgba(23,25,28,.08)}
.question{padding:clamp(100px,12vw,170px) 28px;background:var(--navy);color:#fff;position:relative;overflow:hidden}
.question::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(242,44,147,.28),transparent 70%);right:-100px;top:-150px}
.question .container{position:relative}
.question blockquote{margin:0;max-width:980px;font-size:clamp(2.2rem,5vw,5.5rem);line-height:1.02;letter-spacing:-.045em;font-weight:720}
.question em{font-style:normal;color:#ff91c7}
.pi-teaser{display:grid;grid-template-columns:minmax(300px,.73fr) minmax(0,1.27fr);gap:clamp(48px,7vw,110px);align-items:center}
.pi-photo{aspect-ratio:4/5;overflow:hidden;background:#ddd;box-shadow:var(--shadow)}
.pi-photo img{width:100%;height:100%;object-fit:cover}
.pi-copy h2{font-size:clamp(2.6rem,5vw,5rem);margin:0;letter-spacing:-.05em;line-height:.95}
.pi-title{font-size:1.25rem;font-weight:680;margin:1.2rem 0 .35rem}
.pi-affiliation{color:var(--muted);margin:0 0 1.8rem}
.pi-tags{font-weight:650;color:#34363c}
.text-link{display:inline-flex;align-items:center;gap:.55rem;margin-top:2rem;font-weight:750;border-bottom:2px solid var(--magenta);padding-bottom:.2rem}
.join-strip{background:linear-gradient(110deg,#17114d,#441174 52%,#9d145f);color:#fff;padding:clamp(85px,10vw,130px) 28px}
.join-grid{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end}
.join-strip h2{font-size:clamp(3rem,6vw,6rem);line-height:.9;letter-spacing:-.05em;margin:0}
.join-strip p{font-size:1.12rem;max-width:680px;color:rgba(255,255,255,.8);margin:1.5rem 0 0}
.email-pill{display:inline-block;border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:1rem 1.35rem;font-weight:700;white-space:nowrap;transition:background .2s,color .2s}
.email-pill:hover{background:#fff;color:var(--navy)}
.site-footer{background:#070826;color:rgba(255,255,255,.64);padding:48px 28px 54px;font-size:.88rem}
.footer-grid{width:min(var(--max),100%);margin:auto;display:flex;justify-content:space-between;gap:2rem;align-items:flex-end}
.footer-brand{color:#fff;font-weight:820;letter-spacing:.1em}
.footer-right{text-align:right}
.page-hero{padding:165px 28px 78px;background:var(--paper);border-bottom:1px solid var(--line)}
.page-hero .container{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end}
.page-hero p{font-size:1.15rem;color:var(--muted);max-width:600px;margin:0}
.research-block{padding:clamp(90px,10vw,140px) 28px;border-bottom:1px solid var(--line)}
.research-block:nth-child(even){background:#efeee9}
.research-number{font-variant-numeric:tabular-nums;color:var(--magenta);font-size:.8rem;letter-spacing:.15em;font-weight:800;margin-bottom:1.3rem}
.research-block h2{font-size:clamp(2.4rem,5vw,4.7rem);line-height:.98;letter-spacing:-.045em;margin:0 0 1.4rem}
.research-block .desc{font-size:clamp(1.08rem,1.8vw,1.35rem);max-width:750px;color:#42444a}
.people-layout{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);gap:clamp(50px,8vw,110px);align-items:start}
.people-layout .pi-photo{position:sticky;top:112px}
.bio h1{font-size:clamp(2.9rem,5.8vw,5.9rem);line-height:.92;letter-spacing:-.05em;margin:0}
.bio .role{font-size:1.28rem;font-weight:760;margin:1.5rem 0 0}
.bio .institution{font-size:1.04rem;color:var(--muted);margin:.25rem 0 2.2rem}
.bio p{font-size:clamp(1.05rem,1.55vw,1.23rem);max-width:770px;color:#34363c}
.bio p+p{margin-top:1.3rem}
.simple-content{max-width:850px}
.simple-content h2{font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.04em;margin:0 0 1rem}
.simple-content p{font-size:1.15rem;color:#41434a}
.publication-placeholder{border-top:1px solid var(--line);padding-top:2rem;margin-top:3.5rem;color:var(--muted)}
.contact-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:clamp(28px,5vw,60px);margin-top:3.5rem;display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.contact-card strong{display:block;font-size:.78rem;letter-spacing:.13em;text-transform:uppercase;margin-bottom:.65rem;color:var(--magenta)}
.contact-card a{font-size:clamp(1.1rem,2vw,1.4rem);font-weight:700;text-decoration:underline;text-decoration-color:rgba(242,44,147,.45);text-underline-offset:4px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}
.reveal.visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.site-header{transition:none}}
@media (max-width:860px){
 .nav{height:72px;padding:0 20px}.brand{font-size:.78rem}.menu-toggle{display:flex;color:#fff}.site-header.scrolled .menu-toggle,.site-header.light-page .menu-toggle{color:var(--ink)}
 .nav-links{position:fixed;inset:72px 0 auto;background:rgba(247,246,242,.98);color:var(--ink)!important;display:none;flex-direction:column;align-items:flex-start;padding:24px 28px 30px;border-bottom:1px solid var(--line);gap:1rem}.nav-links.open{display:flex}
 .hero-bg{background-image:linear-gradient(90deg,rgba(5,8,39,.91),rgba(5,8,39,.45)),url('https://static.wixstatic.com/media/f7b868_eec6115612794b22b2e714ac04f7f9d2~mv2.png');background-position:58% center}
 .hero-inner{width:min(100% - 40px,var(--max));padding-top:120px}.hero h1{font-size:clamp(3.6rem,18vw,6rem)}
 .split,.split.reverse,.pi-teaser,.people-layout,.page-hero .container,.contact-card{grid-template-columns:1fr}.split.reverse .copy{order:-1}
 .pi-teaser{gap:38px}.pi-photo{max-width:560px}.people-layout .pi-photo{position:static;max-width:650px}
 .join-grid{grid-template-columns:1fr}.email-pill{justify-self:start}.footer-grid{display:block}.footer-right{text-align:left;margin-top:1.5rem}
 .page-hero{padding-top:128px}.page-hero .container{gap:1.8rem}.question blockquote{font-size:clamp(2.5rem,10vw,4.8rem)}
}
