@import url("motion.css?v=20261022-review");

/* Inner pages intentionally share the homepage's exact visual foundation. */
body{background:var(--paper)}
main{overflow:hidden}
.header nav a[aria-current="page"]::after{right:0}
.header nav a[aria-current="page"]{color:#fff}
.primary-nav{white-space:nowrap}

.stage-label{display:inline-flex;align-items:center;gap:10px;color:#d9e0f4;font-size:.72rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase}
.stage-label::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--copper);box-shadow:0 0 16px #ffba9188}
.button-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:11px 22px;border:1px solid #5e75ad;border-radius:30px;background:#1d2e53;color:#fff;font-size:.84rem;font-weight:600;transition:transform .25s,background .25s,color .25s}
.button:hover{transform:translateY(-2px);background:#334c82}
.button.secondary{color:var(--ink);background:transparent;border-color:#aab5d0}
.button.secondary:hover{background:#fff}
.text-link{display:inline-flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #929dc1;color:#354f8c;font-size:.88rem;font-weight:600}

/* Every top-level page starts with the same blue cellular world as home. */
.page-hero{position:relative;isolation:isolate;min-height:600px;padding:210px 0 105px;color:#fff;background:var(--night)}
.page-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#080e21f5 0%,#080e21dc 48%,#080e2188 72%,#080e21a6 100%),linear-gradient(0deg,#080e21 0%,transparent 62%),url("assets/nk-t-cell-visual.png") 78% 50%/cover no-repeat;filter:saturate(.88)}
.page-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 78% 34%,#8499e735,transparent 28%),linear-gradient(125deg,#2a266c25,transparent 68%)}
.page-hero-grid{display:grid;grid-template-columns:1.15fr .72fr;gap:90px;align-items:end;position:relative;z-index:1}
.page-hero .eyebrow{color:#c8d3f5;margin-bottom:25px}
.page-hero h1{max-width:830px;font-size:clamp(3.35rem,6.4vw,6.6rem);font-weight:400;line-height:1.04;letter-spacing:-.06em;text-wrap:balance}
.page-hero-grid>div:last-child{padding-bottom:10px}
.page-hero p:not(.eyebrow):not(.stage-label){max-width:510px;margin:0 0 28px;color:#eef2ff;font-size:1.05rem;line-height:1.85}

.section{padding:115px 0}
.section.white{background:var(--paper)}
.section.mist{background:#e9edfc}
.section.navy{background:#10182e;color:#fff}
.section-heading{display:grid;grid-template-columns:1.18fr .82fr;gap:80px;align-items:end;margin-bottom:58px}
.section-heading .eyebrow{color:#5b6f9f}
.section-heading h2,.display-heading{font-size:clamp(2.65rem,4.65vw,4.8rem);font-weight:400;line-height:1.08;letter-spacing:-.05em;text-wrap:balance}
.section-heading>p{max-width:560px;margin:0;color:var(--muted);font-size:1.01rem;line-height:1.85}
.intro{max-width:800px;color:var(--muted);font-size:1.06rem;line-height:1.9}

.three-up,.updates-grid,.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #aeb9d2;border-bottom:1px solid #aeb9d2}
.pillar,.update,.contact-option{min-height:280px;padding:34px 32px 38px 0}
.pillar+.pillar,.update+.update,.contact-option+.contact-option{padding-left:32px;border-left:1px solid #b7c1d8}
.pillar::before{content:"0" counter(pillar);display:block;margin-bottom:48px;color:#5e75ad;font-size:.76rem;letter-spacing:.1em}
.three-up{counter-reset:pillar}
.pillar{counter-increment:pillar}
.pillar h3,.update h2,.contact-option h2{margin:0 0 18px;font-size:1.55rem;font-weight:500;line-height:1.18;letter-spacing:-.035em}
.update h2,.contact-option h2{margin-top:48px}
.pillar p,.update p,.contact-option p{margin:0;color:var(--muted);font-size:.94rem;line-height:1.8}
.update .eyebrow,.contact-option .eyebrow{color:#5e75ad}

.foundation-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:start}
.foundation-note{padding:44px;background:#10182e;color:#fff;box-shadow:0 22px 60px #121d4020}
.foundation-note .eyebrow{color:#becbff}
.foundation-note h2{margin-bottom:24px;font-size:2.35rem;font-weight:400;line-height:1.15}
.foundation-note p{margin:0;color:#e0e7f6;line-height:1.85}
.legacy-list{border-top:1px solid #aeb9d2}
.legacy-item{display:grid;grid-template-columns:195px 1fr;gap:38px;padding:30px 0;border-bottom:1px solid #aeb9d2}
.legacy-item h3{margin:0;color:#4d659f;font-size:1rem;font-weight:600;line-height:1.45;letter-spacing:-.015em}
.legacy-item p{margin:0;color:var(--muted);line-height:1.8}

.section .science-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:74px;align-items:center}
.science-figure{min-width:0;margin:0}
.science-image-frame{position:relative;min-height:500px;overflow:hidden;border:1px solid #c4d0ff45;border-radius:220px;background:#10182e;isolation:isolate}
.science-image-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.05);transition:transform 1.2s ease}
.science-image-frame:hover img{transform:scale(1.11)}
.science-figure figcaption{position:static;display:flex;justify-content:space-between;gap:24px;margin-top:20px;color:#435371;font-size:.8rem;line-height:1.6;overflow-wrap:anywhere}
.science-figure figcaption span{min-width:0}
.science-copy .eyebrow{color:#5b6f9f}
.science-copy h2{margin-bottom:26px;font-size:clamp(2.6rem,4vw,4.2rem);font-weight:400;line-height:1.08;letter-spacing:-.05em;text-wrap:balance}
.science-copy p{color:var(--muted);line-height:1.86}
.science-copy p+p{margin-top:18px}
.science-copy .text-link{margin-top:12px}
.caution{margin-top:28px!important;padding:19px 22px;border-left:3px solid var(--copper);background:#fff7f2;color:#725342!important;font-size:.87rem}

.program-facts{display:grid;grid-template-columns:230px 1fr;margin:0;border-top:1px solid #aeb9d2}
.program-facts dt,.program-facts dd{margin:0;padding:21px 0;border-bottom:1px solid #aeb9d2}
.program-facts dt{color:#4d659f;font-size:.86rem;font-weight:600;letter-spacing:.02em}
.program-facts dd{color:var(--muted);line-height:1.75}
.milestones{display:grid;grid-template-columns:repeat(3,1fr);counter-reset:milestone;border-top:1px solid #aeb9d2;border-bottom:1px solid #aeb9d2}
.milestone{min-height:320px;padding:35px 32px 38px 0;counter-increment:milestone}
.milestone+.milestone{padding-left:32px;border-left:1px solid #b7c1d8}
.milestone::before{content:"0" counter(milestone);display:block;margin-bottom:52px;color:#5e75ad;font-size:.76rem;letter-spacing:.1em}
.milestone h3{margin-bottom:17px;font-size:1.55rem;font-weight:500;line-height:1.18}
.milestone p{margin:0;color:var(--muted);line-height:1.8}
.clinical-note{margin-top:44px;padding:26px 30px;background:#10182e;color:#d9e0f2;font-size:.88rem;line-height:1.75}

.team-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;align-items:stretch;border-top:1px solid #aeb9d2;border-bottom:1px solid #aeb9d2}
.person-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:30px 28px 34px 0;transition:background .25s}
.person-card+.person-card{padding-left:28px;border-left:1px solid #b7c1d8}
.person-card:nth-child(n+4){border-top:1px solid #b7c1d8}
.person-card:nth-child(4){padding-left:0;border-left:0}
.person-card-head{display:grid;grid-template-columns:82px minmax(0,1fr);gap:20px;align-items:center}
.person-photo{width:82px;height:82px;box-shadow:0 0 0 1px #c3cce0}
.person-photo img{filter:saturate(.88)}
.person-card h3{margin:0 0 7px;font-size:1.2rem;font-weight:500;line-height:1.2;letter-spacing:-.025em}
.person-role{margin:0;color:#5069a4;font-size:.76rem;font-weight:600;line-height:1.55}
.person-summary{min-height:125px;margin:25px 0 18px;color:var(--muted);font-size:.89rem;line-height:1.75}
.card-link{color:#405b98;font-size:.8rem;font-weight:600}
.person-card>a{margin-top:auto;align-self:flex-start}
.person-card>a::after{content:"";position:absolute;inset:0}
.person-card:hover{background:#fff}
.person-card:hover h3{color:#405b98}
.board-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 50px;margin:0;padding:0;list-style:none;border-top:1px solid #aeb9d2}
.board-list li{display:flex;justify-content:space-between;gap:22px;padding:18px 0;border-bottom:1px solid #aeb9d2}
.board-list strong{font-weight:500}
.board-list span{color:var(--muted);font-size:.84rem}

.profile-hero{position:relative;min-height:720px;padding:185px 0 100px;background:radial-gradient(circle at 20% 35%,#4f65a838,transparent 30%),#080e21;color:#fff;overflow:hidden}
.profile-hero::after{content:"";position:absolute;inset:auto -12% -48% 35%;height:720px;border-radius:50%;background:radial-gradient(ellipse,#354b8845,transparent 67%);pointer-events:none}
.profile-layout{position:relative;z-index:1;display:grid;grid-template-columns:290px 1fr;gap:78px;align-items:start}
.profile-portrait{width:290px;height:290px;aspect-ratio:1;border:1px solid #a8b6df;box-shadow:0 28px 75px #00000040}
.profile-copy .eyebrow{margin:8px 0 18px;color:#becbff}
.profile-copy h1{margin:0 0 14px;font-size:clamp(3.1rem,5.6vw,6rem);font-weight:400;line-height:1;letter-spacing:-.06em}
.profile-title{margin:0 0 34px;color:#ffccb0;font-size:.9rem;font-weight:600;letter-spacing:.03em}
.profile-copy .lead{max-width:800px;color:#f1f3fb;font-size:1.12rem;line-height:1.82}
.profile-copy p:not(.eyebrow):not(.profile-title):not(.lead){max-width:830px;margin-top:18px;color:#dce4f5;line-height:1.82}
.profile-focus{display:inline-block;margin-top:24px;padding-top:18px;border-top:1px solid #ffffff25;color:#becbff;font-size:.85rem;font-weight:600}
.profile-hero .button.secondary{color:#fff;border-color:#8098d4;background:transparent}
.profile-hero .button.secondary:hover{background:#ffffff12}

.research-list{border-top:1px solid #aeb9d2}
.research-list .publication{display:grid;grid-template-columns:42px 1fr 125px;gap:24px;padding:30px 0;border-bottom:1px solid #aeb9d2}
.research-list .pub-number{color:#536da8;font-size:.78rem;letter-spacing:.08em}
.research-list .publication h2{margin:0 0 10px;font-size:1.18rem;font-weight:500;line-height:1.48;letter-spacing:-.025em}
.research-list .publication h2 a{transition:color .2s}
.research-list .publication h2 a:hover{color:#193b78}
.research-list .publication p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.78;overflow-wrap:anywhere}
.research-list .publication>a{justify-self:end;color:#405b98;font-size:.8rem;font-weight:600}
.preprint{color:#8b5445;font-weight:600}

.empty-state{margin-top:52px;padding:27px 30px;border-left:3px solid #8098d4;background:#e9edfc;color:var(--muted);line-height:1.75}
.update{position:relative;display:flex;flex-direction:column;align-items:flex-start}
.update .text-link{margin-top:auto;padding-top:26px}
.update .text-link::after{content:"";position:absolute;inset:0}
.update:hover h2{color:#405b98}
.news-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:75px}
.news-status{padding-top:28px;border-top:1px solid #aeb9d2;scroll-margin-top:110px}
.news-status h2{margin-bottom:20px;font-size:2rem;font-weight:400}
.news-status p:not(.eyebrow){color:var(--muted);line-height:1.85}
.contact-cta{position:relative;margin-top:75px;padding:60px;background:#10182e;color:#fff;overflow:hidden}
.contact-cta::after{content:"";position:absolute;inset:-60% -5% -95% 32%;border-radius:50%;background:radial-gradient(ellipse,#3f55924d,transparent 65%);pointer-events:none}
.contact-cta>*{position:relative;z-index:1}
.contact-cta .eyebrow{color:#becbff}
.contact-cta h2{margin:0 0 24px;font-size:clamp(2.7rem,5vw,5.2rem);font-weight:400;line-height:1.05}
.contact-cta a{color:#c2ceff;font-size:1.15rem;font-weight:600;border-bottom:1px solid #8ea2dd}

.site-footer{background:var(--night);color:#d5def0;padding:0 0 30px}
.site-footer .license-statement{max-width:1060px;margin:0;padding:42px 0 34px;color:#fff;font-size:19px;font-weight:700;line-height:1.55;white-space:normal}
.footer-meta{display:grid;grid-template-columns:1fr auto;gap:55px;align-items:end;padding:38px 0;border-top:1px solid #ffffff25}
.footer-meta p{max-width:790px;margin:0;color:#d5def0;font-size:.78rem;line-height:1.9}
.footer-links{position:static!important;inset:auto!important;display:flex!important;flex-direction:row!important;align-items:center!important;flex-wrap:wrap;justify-content:flex-end;gap:20px!important;padding:0!important;background:none!important;border:0!important;color:#d8deee;font-size:.77rem}
.footer-links a{padding:0}
.footer-links a::after{display:none!important}
.site-footer .footer-bottom{margin:0;color:#c8d2e8}

@media(max-width:1180px){
  .page-hero-grid,.section-heading{gap:55px}
  .section .science-grid{gap:48px}
}

@media(max-width:980px){
  .team-grid{grid-template-columns:repeat(2,1fr)}
  .person-card:nth-child(n+3){border-top:1px solid #b7c1d8}
  .person-card:nth-child(3),.person-card:nth-child(5){padding-left:0;border-left:0}
  .person-card:nth-child(4){padding-left:28px;border-left:1px solid #b7c1d8}
  .profile-layout{grid-template-columns:230px 1fr;gap:50px}
  .profile-portrait{width:230px;height:230px}
}

@media(max-width:860px){
  .page-hero{min-height:600px;padding:165px 0 85px}
  .page-hero-grid,.section-heading{grid-template-columns:1fr;gap:30px}
  .page-hero-grid>div:last-child{padding-bottom:0}
  .section{padding:85px 0}
  .three-up,.milestones,.updates-grid,.contact-grid{grid-template-columns:1fr}
  .pillar,.pillar+.pillar,.milestone,.milestone+.milestone,.update,.update+.update,.contact-option,.contact-option+.contact-option{min-height:0;padding:30px 0;border-left:0;border-top:1px solid #b7c1d8}
  .pillar:first-child,.milestone:first-child,.update:first-child,.contact-option:first-child{border-top:0}
  .pillar::before,.milestone::before{margin-bottom:22px}
  .update h2,.contact-option h2{margin-top:18px}
  .foundation-grid,.section .science-grid{grid-template-columns:1fr;gap:45px}
  .science-image-frame{min-height:420px}
  .program-facts{grid-template-columns:175px 1fr}
  .profile-layout{grid-template-columns:210px 1fr;gap:40px}
  .profile-portrait{width:210px;height:210px}
  .footer-meta{grid-template-columns:1fr;gap:25px}
  .footer-links{justify-content:flex-start}
}

@media(max-width:620px){
  .page-hero{min-height:640px;padding:155px 0 75px}
  .page-hero::before{background:linear-gradient(90deg,#080e21f5,#080e21c7),linear-gradient(0deg,#080e21 0%,transparent 65%),url("assets/nk-t-cell-visual.png") 62% 50%/cover no-repeat}
  .page-hero h1{font-size:clamp(3rem,14vw,4.4rem)}
  .section{padding:72px 0}
  .section-heading{margin-bottom:40px}
  .section-heading h2{font-size:2.55rem}
  .legacy-item{grid-template-columns:1fr;gap:10px}
  .foundation-note{padding:30px 26px}
  .science-image-frame{min-height:330px;border-radius:150px}
  .science-figure figcaption{display:block}
  .science-figure figcaption span{display:block}
  .science-figure figcaption span+span{margin-top:8px}
  .program-facts{grid-template-columns:1fr}
  .program-facts dt{padding-bottom:5px;border-bottom:0}
  .program-facts dd{padding-top:0}
  .team-grid{grid-template-columns:1fr}
  .person-card,.person-card:nth-child(n),.person-card+.person-card{padding:27px 0;border-left:0;border-top:1px solid #b7c1d8}
  .person-card:first-child{border-top:0}
  .person-summary{min-height:0}
  .board-list{grid-template-columns:1fr}
  .profile-hero{min-height:0;padding:145px 0 75px}
  .profile-layout{grid-template-columns:1fr;gap:36px}
  .profile-portrait{width:210px;height:210px}
  .research-list .publication{grid-template-columns:28px 1fr;gap:14px}
  .research-list .publication>a{grid-column:2;justify-self:start;min-height:32px}
  .contact-cta{padding:40px 27px}
  .news-status-grid{grid-template-columns:1fr;gap:40px;margin-top:50px}
  .footer-meta{padding:30px 0}
}
