/* He Lab: shared typography for all seven production pages.
   Nanum Myeongjo headings; Roboto text. Set the scale once in :root. */
:root {
  --serif: 'Nanum Myeongjo', Garamond, 'Times New Roman', serif;
  --sans: 'Roboto', Arial, Helvetica, sans-serif;
  --ink: #111;
  --muted: #505050;
  --line: #d7d7d7;
  --highlight: #a33b45;
  --title: 48px;
  --section: 32px;
  --subheading: 22px;
  --lead: 18px;
  --body: 16px;
  --small: 14px;
  --caption: 12px;
  --brand: 22px;
  --body-leading: 1.65;
  --heading-leading: 1.4;
}
* {box-sizing:border-box}
html {scroll-behavior:smooth;scroll-padding-top:100px}
body {margin:0;background:#fff;color:var(--ink);font-family:var(--sans);font-size:var(--body);font-weight:400;line-height:var(--body-leading);-webkit-font-smoothing:antialiased}
p,h1,h2,h3,figure {margin:0}
h1,h2,h3 {font-family:var(--serif);letter-spacing:normal}
h1 {font-size:var(--title);font-weight:700;line-height:1.2}
h2 {font-size:var(--section);font-weight:400;line-height:1.3}
h3 {font-size:var(--subheading);font-weight:700;line-height:var(--heading-leading)}
/* Shared type roles: page titles, sections, items, body, and supporting text. */
.brand {font-family:var(--serif);font-size:var(--brand);font-weight:700;line-height:1.3}
.desktop-nav,.mobile-nav {font-size:var(--body);font-weight:500;line-height:1.5}
.home-subtitle,.research-intro,.section-intro,.page-deck,.home-join>p,
.mission-grid p,.section-heading>p {font-size:var(--lead);font-weight:400;line-height:var(--body-leading)}
.research-framework figcaption h2,.detail-body h2,.join-layout aside h2,
.publication-year-header {font-size:var(--section);font-weight:400;line-height:1.3}
.direction h3,.progress-row h3,.publication h3,.detail-body h3,.principles h3,
.opportunities h3,.news-item h2,.framework-diagram h3,
.brain-model-path figcaption {font-family:var(--serif);font-size:var(--subheading);font-weight:700;line-height:var(--heading-leading)}
.home .direction h3 {font-weight:800}
.direction p,.research-approach,.research-framework figcaption>p,
.framework-diagram p,.framework-cycle,.progress-row p,.detail-body>p,
.research-focus p,.founder-role,.founder p:not(.eyebrow):not(.founder-role),
.principles p,.join-layout aside p,.opportunities p,.news-item p,
.text-link,.button,.contact-address {font-size:var(--body);font-weight:400;line-height:var(--body-leading)}
.home-affiliation,.progress-venue,.site-footer,.detail-tag,.pub-key,
.publication .eyebrow,.publication-authors,.publication-links .text-link,
.framework-diagram .framework-shared,.framework-ai>p:last-child,
.brain-modalities span,.brain-model-method span,.brain-model-context,
.news-item>.eyebrow {font-family:var(--sans);font-size:var(--small);font-weight:400;line-height:var(--body-leading)}
.eyebrow,.framework-diagram .framework-label,.detail-credit {font-family:var(--sans);font-size:var(--caption);font-weight:500;line-height:1.5}
.footer-title {font-family:var(--serif);font-size:var(--body);font-weight:700;line-height:var(--heading-leading)}
.brain-modalities strong {font-family:var(--sans);font-size:var(--small);font-weight:500;line-height:var(--heading-leading)}
.brain-model-method strong {font-family:var(--sans);font-size:var(--body);font-weight:500;line-height:var(--heading-leading)}
.brain-model-outcomes {font-family:var(--sans);font-size:var(--body);font-weight:500;line-height:var(--body-leading)}
.framework-domain .framework-domain-focus {font-weight:500}
.framework-exchange,.brain-model-arrow {font-family:var(--sans);font-size:var(--subheading);font-weight:400;line-height:var(--heading-leading)}
em {font-style:normal;font-weight:inherit}
a {color:inherit;text-decoration:none}
a:hover {text-decoration:underline;text-underline-offset:3px}
img {display:block;max-width:100%;height:auto}
button {font:inherit}
a:focus-visible,button:focus-visible {outline:2px solid #444;outline-offset:5px}
.wrap {width:min(1024px,calc(100% - 60px));margin-inline:auto}
.skip-link {position:fixed;top:-70px;left:15px;padding:10px;background:#111;color:#fff;z-index:100}
.skip-link:focus {top:10px}
.site-header {position:fixed;inset:0 0 auto;z-index:20;background:rgba(255,255,255,.97)}
.nav-inner {max-width:none;width:100%;height:72px;padding-inline:32px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand {display:flex;align-items:center;gap:10px;white-space:nowrap}
.brand:hover {text-decoration:none}
.brand img {width:56px;height:56px;flex-shrink:0}
.desktop-nav {display:flex;gap:38px;align-items:center}
.desktop-nav a {white-space:nowrap}
.desktop-nav a[aria-current] {text-decoration:underline;text-underline-offset:4px}
#hamburger {display:none;border:0;background:none;width:44px;height:44px;padding:9px;cursor:pointer}
#hamburger span {display:block;height:2px;background:#222;margin:6px 0}
.mobile-nav {background:#fff;padding:8px 25px 20px;border-bottom:1px solid var(--line);max-height:calc(100dvh - 72px);overflow:auto}
.mobile-nav a {display:block;padding:10px}
.mobile-nav a[aria-current] {text-decoration:underline}
.desktop-nav a.nav-join,.mobile-nav a.nav-join {text-decoration:underline;text-underline-offset:4px}
.home-intro {padding-top:131px;padding-bottom:70px}
.home-subtitle {margin-top:13px}
.home-affiliation {color:var(--muted);margin-top:6px}
.home-research h2,.home-progress h2,.home-join h2 {margin-bottom:15px}
.directions {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px;margin-top:28px}
.direction {min-width:0}
.direction:hover {text-decoration:none}
.direction:hover h3 {text-decoration:underline;text-underline-offset:4px}
.direction-art {width:100%;aspect-ratio:1;object-fit:contain}
.direction h3 {margin-top:20px;margin-bottom:10px;min-height:2.8em}
.direction p {color:#292929}
.research-approach {margin-top:30px;max-width:950px}
.research-framework {margin-top:55px}
.research-framework figcaption h2 {margin-bottom:12px}
.research-framework figcaption>p {max-width:860px}
.framework-diagram {margin-top:25px;padding:30px 34px;border:1px solid var(--line)}
.framework-diagram h3 {margin:0;min-height:0}
.framework-diagram p {margin:0}
.framework-diagram .framework-label {letter-spacing:.065em;margin-bottom:8px;color:var(--muted)}
.framework-goal {text-align:center}
.framework-goal>p:last-child {margin-top:8px}
.framework-goal-links {display:block;width:100%;height:50px;margin-top:14px;overflow:visible}
.framework-science {display:grid;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);align-items:stretch}
.framework-domain {border:1px solid var(--line);padding:22px 15px;text-align:center;display:flex;flex-direction:column;align-items:center}
.framework-domain>p:not(.framework-label) {margin-top:11px}
.framework-domain .framework-domain-focus {margin-top:auto;padding-top:13px}
.framework-exchange {align-self:center;text-align:center;color:#666}
.framework-diagram .framework-shared {text-align:center;color:var(--muted);margin-top:14px}
.framework-model-links {display:block;width:100%;height:40px;overflow:visible}
.framework-ai {text-align:center;padding:24px 18px;border:1px solid var(--line);background:#fafafa}
.framework-cycle {display:flex;justify-content:center;align-items:center;gap:15px;margin:17px 0 12px}
.framework-cycle>span:nth-child(even),.framework-cycle>span:last-child {color:#777}
.framework-ai>p:last-child {color:var(--muted)}
.text-link {text-decoration:underline;text-underline-offset:3px;display:inline}
.text-link span {display:none}
.button {display:inline-block;border:1px solid #333;background:#fff;padding:16px 21px;margin-top:27px}
.button span {display:none}
.button:hover {background:#fafafa;text-decoration:underline}
.home-progress {padding-top:70px}
.progress-list {margin-top:19px}
.progress-item {border-bottom:1px solid var(--line)}
.progress-item>.publication-highlights {margin:0 0 15px 120px}
.progress-row {display:flex;gap:20px;align-items:center;padding:15px 0}
.progress-row>img {flex:0 0 100px;width:100px;height:100px;object-fit:contain}
.progress-row>div {flex:1;min-width:0}
.progress-row p {margin-top:7px}
.progress-venue {display:block;color:var(--muted);margin-top:5px}
.progress-row:hover {text-decoration:none}
.progress-row:hover h3 {text-decoration:underline;text-underline-offset:3px}
.home-join {padding-top:70px;max-width:1024px}
.home-join>p {max-width:830px}
.site-footer {margin-top:100px;padding:20px 0 65px;border-top:1px solid var(--line)}
.footer-title {margin-bottom:8px}
.footer-links {display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:12px}
.page-intro {padding-top:131px;margin-bottom:45px}
.page-deck {margin-top:17px;max-width:880px}
.eyebrow {letter-spacing:.03em;color:var(--muted)}
.research-detail {display:grid;grid-template-columns:300px 1fr;gap:60px;margin-top:55px;padding-bottom:50px;border-bottom:1px solid var(--line)}
.detail-aside img {width:100%;aspect-ratio:1;object-fit:contain}
.research-publications {grid-column:1/-1;min-width:0;border-top:1px solid var(--line);padding-top:28px}
.research-publications-heading {display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-bottom:24px;flex-wrap:wrap}
.paper-controls {display:flex;align-items:center;gap:10px}
.paper-controls[hidden] {display:none}
.paper-controls button {font:inherit;font-size:var(--small);color:inherit;background:#fff;border:1px solid var(--line);border-radius:3px;min-width:44px;min-height:44px;padding:8px 12px;cursor:pointer}
.paper-controls button:hover {background:#f5f4f7}
.paper-count {font-size:var(--small);font-variant-numeric:tabular-nums;min-width:36px;text-align:center}
.research-paper {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:36px;align-items:start;margin-bottom:24px}
.research-paper-figure {display:block;background:#fafafa;padding:12px}
.research-paper-figure img {display:block;width:100%;height:320px;object-fit:contain}
.research-paper-copy {min-width:0}
.research-paper-copy h4 {font-size:var(--subheading);line-height:1.35;font-weight:700;margin:10px 0 14px}
.research-paper-copy .publication-authors {font-size:var(--small);line-height:1.65}
.research-paper-copy .publication-links {margin-top:16px}
.research-publications.is-enhanced .research-paper-stage {display:grid;overflow:hidden}
.research-publications.is-enhanced .research-paper {grid-area:1/1;visibility:hidden;opacity:0;transform:translateX(24px);transition:opacity .35s ease,transform .35s ease,visibility .35s}
.research-publications.is-enhanced .research-paper.is-active {visibility:visible;opacity:1;transform:none}
@media(max-width:700px) {
 .research-paper {grid-template-columns:minmax(0,1fr);gap:22px}
 .research-paper-figure img {height:250px}
}
@media(prefers-reduced-motion:reduce) {
 .research-publications.is-enhanced .research-paper {transition:none;transform:none}
}
.detail-credit {color:var(--muted);margin-top:9px}
.detail-credit a {text-decoration:underline;text-underline-offset:3px}
.detail-tag {color:var(--muted);margin-top:12px}
.detail-body h3 {margin-top:21px}
.detail-body>p {margin-top:18px}
.research-focus {margin-top:23px;border-left:1px solid #bbb;padding-left:18px}
.research-focus p {margin-top:7px}
.brain-model-path {margin:26px 0 0;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.brain-model-path figcaption {margin-bottom:22px}
.brain-modalities {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:0;text-align:center}
.brain-modalities strong {display:block}
.brain-modalities span {display:block;color:var(--muted);margin-top:5px}
.brain-model-merge {display:block;width:100%;height:35px;margin:10px 0 5px;color:#9a9993}
.brain-model-method {border:1px solid #c9c7bf;padding:13px 12px;text-align:center;max-width:350px;margin:auto}
.brain-model-method strong {display:block}
.brain-model-method span {display:block;margin-top:3px}
.brain-model-arrow {text-align:center;color:#8d8b85;margin:6px 0}
.brain-model-outcomes {text-align:center}
.brain-model-context {color:var(--muted);text-align:center;margin-top:10px}
.mission-band {padding-top:55px}
.mission-grid p {max-width:900px;margin-top:18px}
.mission-grid .text-link {display:inline-block;margin-top:18px}
.simple-cta {margin-top:55px}
.pi-profile,.members-intro {padding-top:131px}
.members-invitation {max-width:880px;margin-top:30px}
.members-invitation .text-link {display:inline-block;margin-top:20px}
.members-culture {padding-top:36px}
.members-culture>p {max-width:880px}
.founder {display:grid;grid-template-columns:300px 1fr;gap:60px;align-items:start}
.founder-photo img {width:100%;aspect-ratio:1;object-fit:cover;object-position:center 25%}
.pi-profile .founder-photo {margin-top:calc(2 * var(--body) * var(--body-leading))}
.founder-photo .eyebrow {display:block;margin-top:13px}
.founder h2 {margin-top:8px}
.founder-role {margin-top:12px}
.founder p:not(.eyebrow):not(.founder-role) {margin-top:18px}
.profile-links {display:flex;flex-wrap:wrap;gap:20px;margin-top:22px}
.profile-body {min-width:0}
.pi-profile .eyebrow {font-size:var(--body);font-weight:400;line-height:var(--body-leading);letter-spacing:normal}
.pi-profile h1 {margin-top:8px}
.profile-history {margin-top:38px}
.profile-history section+section {margin-top:32px}
.profile-history h2 {font-size:var(--subheading);font-weight:700;line-height:var(--heading-leading);margin:0 0 17px}
.cv-list {list-style:none;padding:0;margin:0}
.cv-list li {display:grid;grid-template-columns:112px minmax(0,1fr);gap:18px;margin-top:15px}
.cv-year {color:var(--muted)}
.cv-list strong {font-weight:500}
.section {padding-top:65px}
.section-heading {margin-bottom:28px}
.section-heading .eyebrow {display:none}
.section-heading h2 br {display:none}
.section-heading>p {max-width:850px;margin-top:18px}
.principles {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.principles .eyebrow {display:none}
.principles h3 {margin-bottom:13px}
.join-context {display:grid;grid-template-columns:280px 1fr;gap:65px;margin-top:55px;margin-bottom:30px}
.join-context p {margin-top:16px}
.join-context .contact-address {margin-top:8px}
.join-campus {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:60px}
.join-campus img {width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.join-campus figcaption {margin-top:13px;font-size:var(--small);font-weight:500;line-height:var(--body-leading)}
.join-campus figcaption a {text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line)}
.join-campus figcaption a:hover {text-decoration-color:currentColor}
.join-campus figcaption span {margin-left:4px}
.join-campus .campus-highlight {margin-top:14px;font-weight:400}
.join-campus .campus-highlight strong {display:inline-block;margin-bottom:4px;font-weight:700}
.join-layout {display:grid;grid-template-columns:280px 1fr;gap:65px}
.join-layout aside p {margin-top:17px}
.join-section-nav {display:grid;gap:12px;margin-top:24px}
.join-section-nav a {font-size:var(--small);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line)}
.join-section-nav a:hover {text-decoration-color:currentColor}
.contact-address {display:block;margin-top:20px;overflow-wrap:anywhere;text-decoration:underline}
.opportunities article {border-bottom:1px solid var(--line);padding-bottom:30px;margin-bottom:30px}
.opportunities article:last-child {margin-bottom:0}
.opportunities h3 {margin:0 0 12px}
.opportunities p {margin-top:13px}
.opportunities .text-link {display:inline-block;margin-top:16px}
.pub-key {color:var(--muted);margin-bottom:20px}
.publication-year-header {padding-top:25px;text-align:right}
.publication {display:flex;gap:20px;align-items:start;padding:23px 0;border-bottom:1px solid var(--line)}
.publication-img {flex:0 0 100px;margin-top:12px}
.publication-img img {width:100px;height:100px;object-fit:contain}
.publication-content {flex:1;min-width:0}
.publication h3 {margin-top:6px}
.publication .eyebrow {letter-spacing:normal;text-transform:none}
.publication-authors {margin-top:9px}
.publication-links {display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:9px}
.publication-links:empty {display:none}
.publication-highlights {display:grid;gap:5px;list-style:none;margin:12px 0 0;padding:0;color:var(--highlight);font-family:var(--sans);font-size:var(--small);font-weight:500;line-height:var(--body-leading)}
.publication-highlights a {text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:#d4a7ac}
.publication-highlights a:hover {text-decoration-color:currentColor}
.paper-arrow {display:none}
.news-item {display:grid;grid-template-columns:100px 1fr;gap:30px;padding:25px 0;border-bottom:1px solid var(--line)}
.news-item p {margin-top:15px}
.news-item .text-link {display:inline-block;margin-top:15px}
@media(max-width:1050px) {
 .directions {gap:35px}
 .desktop-nav {gap:26px}
 .research-detail,.founder {grid-template-columns:260px 1fr;gap:40px}
 .join-layout,.join-context {grid-template-columns:250px 1fr;gap:40px}
}
@media(max-width:960px) {
 .desktop-nav {display:none}
 #hamburger {display:block}
}
@media(max-width:800px) {
 .nav-inner {padding-inline:24px}
 .directions {gap:24px}
 .research-detail {grid-template-columns:220px 1fr;gap:30px}
 .founder {grid-template-columns:230px 1fr;gap:30px}
 .join-layout,.join-context {grid-template-columns:1fr;gap:35px}
 .join-layout aside p {max-width:620px}
 .principles {gap:25px}
}
@media(max-width:600px) {
 :root {--title:36px;--section:28px;--subheading:20px;--lead:17px}
 .wrap {width:calc(100% - 44px)}
 .nav-inner {height:66px;padding-inline:20px}
 .brand img {width:48px;height:48px}
 .home-intro,.page-intro {padding-top:106px}
 .home-intro {padding-bottom:44px}
 .home-subtitle {margin-top:16px}
 .research-intro p+p {margin-top:10px}
 .directions {grid-template-columns:1fr;gap:35px;margin-top:24px}
 .direction-art {width:100%;max-height:360px;object-fit:cover}
 .direction h3 {min-height:0;margin-top:17px}
 .research-approach {margin-top:25px}
 .research-framework {margin-top:40px}
 .framework-diagram {padding:24px 12px;margin-top:20px}
 .framework-science {grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr)}
 .framework-domain {padding:16px 7px}
 .framework-domain>p:not(.framework-label),.framework-cycle {font-size:var(--small)}
 .framework-diagram .framework-label {letter-spacing:.03em}
 .framework-ai {padding:20px 9px}
 .framework-cycle {gap:7px;margin-top:14px}
 .home-progress,.home-join {padding-top:48px}
 .progress-row {gap:15px;padding:18px 0;align-items:start}
 .progress-item>.publication-highlights {margin-left:87px;margin-bottom:18px}
 .progress-row>img {flex-basis:72px;width:72px;height:72px;margin-top:5px}
 .button {padding:14px 18px}
 .site-footer {margin-top:65px;padding-bottom:45px}
 .footer-links {flex-direction:column;gap:7px;align-items:start}
 .page-intro {margin-bottom:30px}
 .pi-profile,.members-intro {padding-top:106px}
 .cv-list li {grid-template-columns:1fr;gap:3px;margin-top:18px}
 .cv-year {font-size:var(--small)}
 .research-detail {grid-template-columns:1fr;gap:25px;margin-top:35px;padding-bottom:35px}
 .detail-aside {max-width:360px}
 .mission-band {padding-top:40px}
 .simple-cta {margin-top:40px}
 .join-campus {grid-template-columns:1fr;gap:26px;margin-bottom:40px}
 .founder {grid-template-columns:1fr;gap:30px}
 .founder-photo {max-width:300px}
 .pi-profile .founder-photo {margin-top:0}
 .section {padding-top:45px}
 .principles {grid-template-columns:1fr;gap:26px}
 .publication-img {display:none}
 .publication-year-header {text-align:left}
 .news-item {grid-template-columns:1fr;gap:10px}
}
@media(prefers-reduced-motion:reduce) {html{scroll-behavior:auto}}
