/* BHIAR Homepage Design V1.0 — faithful, homepage-scoped presentation.
   Shared components and CMS contracts remain in their existing modules. */

/* Foundations, shared navigation and text actions */
body.home-page.homepage-v1 {
  --home-ink: #203d33;
  --home-paper: #f6f7f2;
  --home-rose: #9c4057;
  --home-line: #d1dbd3;
  --home-muted: #4d6157;
  --home-space: clamp(64px, 7vw, 104px);
  --home-header-height: 94px;
  --home-hero-copy-width: 710px;
  --home-publication-height: 310px;
  --color-heading: var(--home-ink);
  --primary-green: var(--home-ink);
  --text-primary: var(--home-ink);
  --body-text: #293c33;
  --interaction-rose: var(--home-rose);
  --interaction-rose-hover: #813147;
  --layout-max: 1240px;
  --layout-gutter-total: clamp(40px, 9vw, 144px);
  --layout-width: min(var(--layout-max), calc(100% - var(--layout-gutter-total)));
  background: var(--home-paper);
  font-size: 16px;
}

body.homepage-v1 .home-content-shell { width: var(--layout-width); max-width: var(--layout-max); }
body.homepage-v1 main > section:not(.hero) { padding-block: var(--home-space); margin: 0; }
body.homepage-v1 :is(.section-title, .institutional-values h2) {
  color: var(--home-ink);
  font-size: clamp(38px, 4vw, 56px);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -0.025em;
  text-align: left;
  text-wrap: balance;
}
body.homepage-v1 :is(.about-copy, .founder-copy, .research-framework-section__body) p {
  font-size: 17px;
  line-height: 1.8;
  max-width: 64ch;
}
body.homepage-v1 .text-link { font-size: 16px; line-height: 1.6; text-underline-offset: 5px; }
body.homepage-v1 a:focus-visible,
body.homepage-v1 button:focus-visible { outline: 3px solid var(--home-rose); outline-offset: 5px; }

body.home-page.homepage-v1[data-homepage-design="v1"] main a.text-link {
  text-decoration-line: none;
}

/* Video introduction */
body.homepage-v1 .hero {
  min-height: 84svh;
  padding: var(--home-header-height) 0 0;
  background: var(--home-paper);
  border-bottom: 1px solid var(--home-line);
}
body.homepage-v1 .hero__video {
  inset: 0;
  width: 100%;
  height: 100%;
  background-position: center;
}
body.homepage-v1 .hero__video-media { object-position: center; }
body.homepage-v1 .hero__overlay {
  display: block;
  background: rgb(26 26 26 / .60);
}
body.home-page.homepage-v1[data-homepage-design="v1"] .hero__overlay::before {
  content: none;
  display: none;
}
body.home-page.homepage-v1 .hero__layout {
  width: var(--layout-width);
  min-height: calc(84svh - var(--home-header-height));
  display: flex;
  align-items: center;
  padding: 40px 0 76px;
  transform: none;
}
body.homepage-v1 .hero__copy { width: 57%; max-width: var(--home-hero-copy-width); margin: 0; transform: none; }
html[lang] body.home-page.homepage-v1 .hero .hero__copy h1.hero-title--single {
  width: 100%;
  max-width: 710px;
  margin: 0;
  font-size: clamp(60px, 5.7vw, 82px);
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: -0.035em;
  white-space: normal;
  text-wrap: balance;
}
html[lang] body.home-page.homepage-v1 .hero .hero__copy h1 .hero-title-text { color: inherit; }
html[lang] body.home-page.homepage-v1 .hero .hero__copy h1 .hero-highlight { display: block; }
body.homepage-v1 .hero .hero__copy > p {
  display: block;
  width: 100%;
  max-width: 52ch;
  margin: 28px 0 0;
  font-size: 17px;
  line-height: 1.8;
}
body.homepage-v1 .hero__cta {
  min-height: 48px;
  margin-top: 28px;
  padding: 13px 24px;
  border: 1px solid var(--home-rose);
  border-radius: 2px;
  background: var(--home-rose);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  transition: background-color 180ms cubic-bezier(.2,.7,.2,1), transform 180ms cubic-bezier(.2,.7,.2,1);
}
body.homepage-v1 .hero__cta:hover { background: #813147; }
body.homepage-v1 .hero__cta:active { transform: translateY(1px); }
body.homepage-v1 .hero__video-control {
  right: max(24px, env(safe-area-inset-right));
  bottom: max(24px, env(safe-area-inset-bottom));
  width: 56px;
  height: 56px;
  color: #fff;
  background: rgb(20 44 34 / .84);
  border-color: rgb(255 255 255 / .72);
  transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}
body.homepage-v1 .hero__video-control-icon { width: 24px; height: 24px; }
body.homepage-v1 .hero__video-control:hover { background: var(--home-ink); border-color: #fff; }
body.homepage-v1 .hero__video-control:focus-visible { outline: 3px solid #fff; outline-offset: 4px; box-shadow: 0 0 0 8px var(--home-ink); }
body.homepage-v1 .hero__video-control:active { transform: scale(.96); background: #122c22; }
html[data-home-video-static] body.homepage-v1 .hero__video-media,
html[data-home-video-static] body.homepage-v1 .hero__video-control { display: none; }


@media (min-width: 1051px) {
  body.home-page.homepage-v1[data-homepage-design="v1"] .hero__layout {
    width: min(1040px, calc(100% - var(--layout-gutter-total)));
    padding: 64px 0 56px;
  }
  body.home-page.homepage-v1[data-homepage-design="v1"] .hero__copy {
    width: min(820px, 100%);
    max-width: 820px;
  }
  html[lang] body.home-page.homepage-v1[data-homepage-design="v1"] .hero .hero__copy h1.hero-title--single {
    max-width: 820px;
  }
}

/* The approved inverse headline palette is fixed for this design version. */
html[lang] body.home-page.homepage-v1[data-homepage-design="v1"] .hero .hero__copy h1.hero-title--single {
  color: #fff;
}
html[lang] body.home-page.homepage-v1[data-homepage-design="v1"] .hero .hero__copy h1 .hero-highlight {
  color: var(--light-sage);
}
body.home-page.homepage-v1[data-homepage-design="v1"] .hero .hero__copy > p {
  color: #fff;
}

/* Editorial scientific process */
body.homepage-v1 .institutional-values { background: #fff; }
body.homepage-v1 .institutional-values__deco-wrapper { display: none; }
body.homepage-v1 .institutional-value::after { display: none; }

html[lang] body.home-page.homepage-v1 .institutional-values {
  padding-block: clamp(72px, 6.7vw, 104px);
}
html[lang] body.home-page.homepage-v1 .institutional-values .home-content-shell {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: 32px;
}
html[lang] body.home-page.homepage-v1 .institutional-values h2 {
  grid-column: 1 / 8;
  max-width: 12ch;
  margin: 0;
  font-size: clamp(42px, 4vw, 56px);
  line-height: 1.05;
  letter-spacing: -.025em;
}
html[lang] body.home-page.homepage-v1 .institutional-values__intro {
  grid-column: 8 / -1;
  align-self: end;
  max-width: none;
  margin: 0;
  text-align: left;
}
html[lang] body.home-page.homepage-v1 .institutional-values__intro-primary {
  color: var(--body-text);
  font-size: 18px;
  line-height: 1.7;
  text-wrap: pretty;
}
html[lang] body.home-page.homepage-v1 .institutional-values__list {
  grid-column: 1 / -1;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 32px;
  margin: 52px 0 0;
}
html[lang] body.home-page.homepage-v1 .institutional-values__list::before {
  content: "";
  display: block;
  position: absolute;
  top: 24px;
  left: 0;
  width: calc(75% + 24px);
  height: 1px;
  background: var(--home-line);
}
html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value {
  padding: 0;
  border: 0;
  text-align: left;
}
html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value::before {
  content: counter(philosophy, decimal-leading-zero);
  display: block;
  position: relative;
  z-index: 1;
  width: fit-content;
  min-width: 66px;
  margin: 0 0 28px;
  padding-right: 18px;
  background: #fff;
  color: var(--home-muted);
  font-family: var(--font-display);
  font-size: 48px;
  font-weight: 500;
  font-variant-numeric: lining-nums tabular-nums;
  letter-spacing: -.02em;
  line-height: 1;
  text-align: left;
}
html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value > span {
  color: var(--home-ink);
  font-family: var(--font-display);
  font-size: 34px;
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: -.02em;
  text-align: left;
}
html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value p {
  max-width: none;
  margin: 16px 0 0;
  color: var(--body-text);
  font-size: 16px;
  line-height: 1.75;
  text-align: left;
  text-wrap: pretty;
}

@media (max-width: 1050px) {
  html[lang] body.home-page.homepage-v1 .institutional-values .home-content-shell { grid-template-columns: minmax(0, 1fr); }
  html[lang] body.home-page.homepage-v1 .institutional-values h2 { grid-column: 1; max-width: none; font-size: 48px; }
  html[lang] body.home-page.homepage-v1 .institutional-values__intro { grid-column: 1; max-width: 55ch; margin-top: 20px; }
  html[lang] body.home-page.homepage-v1 .institutional-values__list { grid-column: 1; grid-template-columns: minmax(0, 1fr); gap: 28px; margin-top: 44px; }
  html[lang] body.home-page.homepage-v1 .institutional-values__list::before { display: none; }
  html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value { display: grid; grid-template-columns: 64px 180px minmax(0, 1fr); gap: 0 24px; align-items: start; }
  html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value::before { grid-column: 1; grid-row: 1; align-self: start; min-width: 0; width: 64px; margin: 0; padding: 0; font-size: 40px; line-height: 1.1; }
  html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value > span { grid-column: 2; grid-row: 1; font-size: 32px; }
  html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value p { grid-column: 3; grid-row: 1; margin: 0; }
  html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value:not(:last-child)::after { content: ""; display: block; position: absolute; top: 50px; bottom: -28px; left: 18px; right: auto; width: 1px; height: auto; background: var(--home-line); }
}
@media (max-width: 600px) {
  html[lang] body.home-page.homepage-v1 .institutional-values { padding-block: 56px; }
  html[lang] body.home-page.homepage-v1 .institutional-values h2 { max-width: 13ch; font-size: 42px; }
  html[lang] body.home-page.homepage-v1 .institutional-values__intro { margin-top: 18px; }
  html[lang] body.home-page.homepage-v1 .institutional-values__intro-primary { font-size: 17px; }
  html[lang] body.home-page.homepage-v1 .institutional-values__list { gap: 24px; margin-top: 36px; }
  html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value { grid-template-columns: 44px minmax(0, 1fr); gap: 8px 14px; }
  html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value::before { grid-column: 1; grid-row: 1 / span 2; width: 44px; font-size: 32px; line-height: 1.2; }
  html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value > span { grid-column: 2; grid-row: 1; font-size: 30px; }
  html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value p { grid-column: 2; grid-row: 2; }
  html[lang] body.home-page.homepage-v1 .institutional-values .institutional-value:not(:last-child)::after { top: 44px; bottom: -24px; left: 15px; }
}

/* Final desktop adjustment: center the heading area without changing stages. */
@media (min-width: 1051px) {
  html[lang] body.home-page.homepage-v1 .institutional-values h2 {
    grid-column: 1 / -1;
    max-width: none;
    text-align: center;
  }
  html[lang] body.home-page.homepage-v1 .institutional-values__intro {
    grid-column: 1 / -1;
    justify-self: center;
    align-self: start;
    max-width: 60ch;
    margin: 24px 0 0;
    text-align: center;
  }
}

/* Keep complete Chinese heading phrases and the established CJK title stack. */
html[lang="zh-Hant"] body.home-page.homepage-v1 .institutional-values h2 {
  max-width: none;
  line-height: 1.3;
  letter-spacing: 0;
}
html[lang="zh-Hant"] body.home-page.homepage-v1 .institutional-values .institutional-value > span {
  font-family: var(--font-heading);
  line-height: 1.3;
  letter-spacing: 0;
}
html[lang="zh-Hant"] body.home-page.homepage-v1 .institutional-values__intro-primary,
html[lang="zh-Hant"] body.home-page.homepage-v1 .institutional-values .institutional-value p {
  text-wrap: balance;
}

/* Integrated theory framework */
body.homepage-v1 .research-framework-section { background: var(--home-ink); color: #fff; }
body.home-page.homepage-v1 .research-framework-section__intro { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 64px; align-items: start; }
body.homepage-v1 .research-framework-section__copy .section-title { white-space: normal; }
body.homepage-v1 .research-framework-section .section-title { color: #fff; font-size: clamp(38px,4vw,56px); }
body.homepage-v1 .research-framework-section__body { margin-top: 28px; }
body.homepage-v1 .research-framework-section__body p { color: #f3f6f0; }
body.homepage-v1 .research-framework-section__callout { padding: 0; border: 0; background: transparent; border-radius: 0; }
body.homepage-v1 .research-framework-section__visual { padding-top: 8px; }
body.homepage-v1 .research-framework-section__visual h3 { margin-bottom: 20px; color: #fff; font-size: 27px; line-height: 1.3; text-align: left; }
body.homepage-v1 .research-framework-section__image-frame { padding: 12px; border-radius: 0; background: #fff; box-shadow: none; }
body.homepage-v1 .research-framework-section .image-caption { color: #dce7dd; font-size: 13px; line-height: 1.7; }
body.homepage-v1 .research-framework-section .image-caption span { color: inherit; }
body.homepage-v1 .image-caption .about-media__caption-title { font-weight: 400; text-transform: none; letter-spacing: 0; line-height: 1.7; }
body.homepage-v1 .research-framework-section__components { margin-top: 56px; text-align: left; }
body.homepage-v1 .research-framework-section__components-heading { color: #e3ece3; margin-bottom: 24px; font-size: 14px; text-transform: none; letter-spacing: .02em; text-align: left; line-height: 1.6; }
body.homepage-v1 .research-framework-section__component-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px; border: 0; }
body.homepage-v1 .research-framework-component { padding: 24px 0 0; min-height: 0; text-align: left; border-top: 1px solid #698275; border-bottom: 0; transition: border-color 180ms; }
body.homepage-v1 .research-framework-component__number { color: #d8b4c0; font-size: 13px; margin: 0 0 16px; text-align: left; }
body.homepage-v1 .research-framework-component__title { color: #fff; font-size: 26px; font-weight: 500; line-height: 1.3; text-align: left; }
body.homepage-v1 .research-framework-component__description { color: #e3ece3; font-size: 14px; line-height: 1.7; text-align: left; }
body.homepage-v1 .research-framework-component:hover,
body.homepage-v1 .research-framework-component:focus-visible { transform: none; border-color: #e6b3c1; }
body.homepage-v1 .research-framework-component:hover .research-framework-component__title { text-underline-offset: 5px; }
body.homepage-v1 .research-framework-section__cta { margin: 40px 0 0; color: #fff; }
body.homepage-v1 .research-framework-section a:focus-visible { outline-color: #f0bdcc; }


body.home-page.homepage-v1 .research-framework-section .research-framework-section__figure {
  width: min(100%, 480px);
  margin-inline: 0;
}
body.home-page.homepage-v1 .research-framework-section .research-framework-section__image-frame,
body.home-page.homepage-v1 .research-framework-section .research-framework-section__figure img {
  cursor: default;
}
body.home-page.homepage-v1 .research-framework-section .research-framework-section__figure img {
  height: auto;
  /* Match the 720×504 source while lazy loading; retain its natural ratio. */
  aspect-ratio: auto 10 / 7;
  object-fit: contain;
  transform: none;
  transition: none;
}
body.home-page.homepage-v1 .research-framework-section .research-framework-section__cta {
  text-decoration: none;
  transform: none;
  transition: transform 180ms ease;
}
@media (hover: hover) and (pointer: fine) {
  body.home-page.homepage-v1 .research-framework-section .research-framework-section__cta:hover {
    transform: translateX(4px);
  }
}
body.home-page.homepage-v1 .research-framework-section .research-framework-section__cta:focus-visible {
  outline: 3px solid #f0bdcc;
  outline-offset: 5px;
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
  body.home-page.homepage-v1 .research-framework-section .research-framework-section__cta,
  body.home-page.homepage-v1 .research-framework-section .research-framework-section__cta:hover {
    transform: none;
    transition: none;
  }
}

@media (min-width: 1051px) {
  body.home-page.homepage-v1 .research-framework-section .research-framework-section__figure {
    width: min(100%, 530px);
  }
  body.home-page.homepage-v1 .research-framework-section .research-framework-section__components-heading {
    text-align: center;
  }
  body.home-page.homepage-v1 .research-framework-section .research-framework-section__cta {
    margin-inline: auto;
  }
}

/* Theory 01B: suppress link/title underlines without altering line or focus feedback. */
body.home-page.homepage-v1 .research-framework-section .research-framework-component,
body.home-page.homepage-v1 .research-framework-section .research-framework-component .research-framework-component__title {
  text-decoration-line: none;
}

/* Selected publications */
body.homepage-v1 .selected-publications-section { background: var(--home-paper); }
body.homepage-v1 .selected-publications-grid { gap: 40px; margin-top: 40px; }
body.homepage-v1 .selected-publication-card { padding: 0; }
body.homepage-v1 .selected-publication-card__cover { height: var(--home-publication-height); aspect-ratio: auto; padding: 10px; border: 0; border-radius: 0; background: #e8ede5; box-shadow: none; }
body.home-page.homepage-v1 .selected-publication-card__cover img { width: 100%; max-width: 100%; height: 100%; max-height: calc(var(--home-publication-height) - 20px); object-fit: contain; }
body.homepage-v1 .selected-publication-card:hover .selected-publication-card__cover,
body.homepage-v1 .selected-publication-card:focus-within .selected-publication-card__cover { box-shadow: none; transform: none; background: #dfe6dc; }
body.homepage-v1 .selected-publication-card__label { margin: 24px 0 12px; color: var(--home-muted); font-size: 13px; line-height: 1.6; letter-spacing: .06em; }
body.homepage-v1 .selected-publication-card h3,
body.homepage-v1 .selected-publication-card h3 a { font-size: 28px; line-height: 1.35; font-weight: 600; color: var(--home-ink); }
body.homepage-v1 .selected-publication-card__authors { margin-top: 16px; font-size: 14px; }
body.homepage-v1 .selected-publication-card__venue { margin-top: 4px; font-size: 14px; font-style: italic; }


body.home-page.homepage-v1 .selected-publications-section .selected-publications-section__header {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}
body.home-page.homepage-v1 .selected-publications-section .selected-publications-section__header .section-title {
  text-align: center;
}
body.home-page.homepage-v1 .selected-publications-section .selected-publications-section__intro {
  max-width: 65ch;
  margin: 20px auto 0;
  font-size: 17px;
  line-height: 1.8;
  text-align: center;
  text-wrap: balance;
}
body.home-page.homepage-v1 .selected-publications-section .selected-publications-section__cta {
  margin: 40px auto 0;
  text-decoration-line: none;
}

/* 01A: allow a natural desktop line without constraining smaller viewports. */
@media (min-width: 1051px) {
  body.home-page.homepage-v1 .selected-publications-section .selected-publications-section__header {
    max-width: 1040px;
  }
  body.home-page.homepage-v1 .selected-publications-section .selected-publications-section__intro {
    max-width: 1040px;
  }
}

/* Institution and founder */
body.homepage-v1 :is(.about-section, .founder-section) { background: #fff; }
body.homepage-v1 :is(.about-section__grid, .founder-section__grid) { gap: 72px; align-items: center; grid-template-columns: 1fr 1fr; }
body.homepage-v1 .about-section { border-top: 1px solid var(--home-line); }
body.homepage-v1 :is(.about-copy, .founder-copy) .section-title { margin: 0 0 24px; }
body.homepage-v1 .founder-copy__role { color: var(--home-rose); font-weight: 500; }
body.homepage-v1 .home-section-image { border-radius: 0; box-shadow: none; }
body.homepage-v1 .image-caption { font-size: 13px; line-height: 1.7; color: var(--home-muted); }
body.homepage-v1 :is(.about-photo, .founder-photo) { margin: 0; }
body.homepage-v1 .about-photo__image { aspect-ratio: 4 / 3; }
body.homepage-v1 .founder-photo__image { aspect-ratio: 5 / 4; }


@media (min-width: 1051px) {
  body.home-page.homepage-v1[data-homepage-design="v1"] main > .about-section + .founder-section {
    padding-top: 0;
  }
}

/* Live News and Events layouts */
body.homepage-v1 :is(.updates-section, .events-section, .collaborations-section) { background: var(--home-paper); border-top: 1px solid var(--home-line); }
body.homepage-v1 :is(.updates-section__header, .events-section__header) { align-items: center; margin-bottom: 36px; }
body.homepage-v1 .content-state { color: var(--home-muted); font-size: 16px; line-height: 1.8; }
body.homepage-v1 .news-editorial:has(> .content-state) { display: block; min-height: 0; }
body.homepage-v1 .news-editorial > .content-state { min-height: 0; padding: 24px 0; margin: 0; text-align: left; }
body.homepage-v1 .news-editorial { align-items: start; }
body.homepage-v1 .news-editorial:has(> .news-featured):not(:has(> .news-secondary-list > .news-secondary)) { grid-template-columns: minmax(0,1fr); }
body.homepage-v1 .news-editorial > .news-secondary-list:has(> .news-secondary:only-child) { grid-template-rows: auto; }
body.homepage-v1 .news-featured { grid-template-rows: auto auto; }
body.homepage-v1 .news-featured .news-visual { min-height: 0; aspect-ratio: 16 / 10; }
body.homepage-v1 :is(.news-category, .news-featured time, .news-secondary time) { font-size: 13px; line-height: 1.7; }
body.homepage-v1 :is(.news-featured h3, .news-secondary h3) { line-height: 1.35; }
body.homepage-v1 .featured-event__organization { max-width: 65ch; font-size: 16px; line-height: 1.8; }
body.homepage-v1 .featured-event__date { color: var(--home-rose); font-size: 13px; line-height: 1.7; }
body.homepage-v1 .featured-event h3 { line-height: 1.35; }
body.homepage-v1 .events-editorial:has(> .content-state) { display: block; }
body.homepage-v1 .events-editorial > .content-state { padding: 24px 0; margin: 0; }
body.homepage-v1 .events-editorial:has(> .featured-event):not(:has(> .upcoming-events > .upcoming-event)) { display: block; }
body.homepage-v1 .upcoming-events:not(:has(.upcoming-event)) { display: none; }
body.homepage-v1 .events-editorial:has(> .featured-event):not(:has(> .upcoming-events > .upcoming-event)) .featured-event {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: 48px;
  align-items: center;
}
body.homepage-v1 .events-editorial:has(> .featured-event):not(:has(> .upcoming-events > .upcoming-event)) .featured-event__body { padding: 0; }
body.homepage-v1 .featured-event__visual { min-height: 0; aspect-ratio: 16 / 9; border-radius: 0; background: #fff; }
body.homepage-v1 .featured-event__visual img { object-fit: contain; }
body.homepage-v1 .featured-event:hover .featured-event__visual img,
body.homepage-v1 .featured-event:focus-within .featured-event__visual img { transform: none; opacity: 1; }
body.homepage-v1 .events-editorial:not(:has(> .featured-event)):has(> .upcoming-events > .upcoming-event) { display: block; }
body.homepage-v1 .events-editorial:not(:has(> .featured-event)) .upcoming-events { grid-column: auto; display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,260px),1fr)); column-gap: 32px; }
body.homepage-v1 .events-editorial:not(:has(> .featured-event)) .upcoming-events__label { grid-column: 1 / -1; }
body.homepage-v1 .upcoming-event__date,
body.homepage-v1 .upcoming-event__location { font-size: 13px; line-height: 1.7; }
body.homepage-v1 .upcoming-event h3 { font-size: 26px; line-height: 1.35; }

/* Global network */
body.homepage-v1 .collaborations-section__header { text-align: left; max-width: none; }
body.homepage-v1 .collaborations-section__intro { max-width: 65ch; margin: 20px 0 0; font-size: 17px; line-height: 1.8; }
body.homepage-v1 .logo-wall { margin-top: 40px; }
body.homepage-v1 .logo-wall__item { border-radius: 0; box-shadow: none; background: #fff; }

body.home-page.homepage-v1[data-homepage-design="v1"] .collaborations-section__header > :is(.section-title, .collaborations-section__intro) {
  text-align: center;
}
body.home-page.homepage-v1[data-homepage-design="v1"] .collaborations-section__intro {
  margin-inline: auto;
}

/* Long localized action text wraps within its original-size flex row. */
@media (max-width: 600px) {
  body.home-page.homepage-v1[data-homepage-design="v1"] .collaborations-section__status--link {
    width: fit-content;
    min-width: 0;
    white-space: normal;
  }
  body.home-page.homepage-v1[data-homepage-design="v1"] .collaborations-section__status--link > span:first-child {
    min-width: 0;
    flex: 0 1 auto;
    overflow-wrap: anywhere;
  }
  /* Shared arrow-span leading is too tight for a wrapped localized label. */
  html:is([lang="en"], [lang="es"]) body.home-page.homepage-v1[data-homepage-design="v1"] .collaborations-section__status--link > span:first-child {
    line-height: 1.3;
  }
  body.home-page.homepage-v1[data-homepage-design="v1"] .collaborations-section__status--link > span[aria-hidden] {
    flex: 0 0 auto;
  }
}

/* Engagement */
body.homepage-v1 .home-final-cta { background: #e9eee6; }
body.homepage-v1 .home-final-cta__header { margin: 0 0 40px; max-width: none; text-align: left; }
body.homepage-v1 .home-final-cta__header > p { max-width: 65ch; margin: 20px 0 0; font-size: 17px; line-height: 1.8; }
body.homepage-v1 .home-final-cta__grid { gap: 32px; }
body.homepage-v1 .home-final-cta-card { padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
body.homepage-v1 .home-final-cta-card h3 { color: var(--home-ink); font-size: 32px; line-height: 1.3; }
body.homepage-v1 .home-final-cta-card p { font-size: 16px; line-height: 1.8; }
body.homepage-v1 .home-final-cta-card__button { color: var(--home-ink); border: 1px solid #6e8375; border-radius: 2px; background: transparent; min-height: 46px; font-size: 15px; }
body.homepage-v1 .home-final-cta-card__button:hover { background: var(--home-ink); color: #fff; }
/* Posters carry real event and collaboration text; keep every edge visible. */
body.homepage-v1 .home-final-cta-card__media:not(.home-final-cta-card__media--support) img {
  object-fit: contain;
  background: #fff;
}

body.home-page.homepage-v1[data-homepage-design="v1"] .home-final-cta__header,
body.home-page.homepage-v1[data-homepage-design="v1"] .home-final-cta__header > p {
  margin-inline: auto;
}
body.home-page.homepage-v1[data-homepage-design="v1"] .home-final-cta__header > :is(.section-title, p) {
  text-align: center;
}

/* Mobile Engage images retain their full intrinsic proportions. */
@media (max-width: 767px) {
  body.homepage-v1 .home-final-cta-card__media {
    width: 95%;
    aspect-ratio: auto;
    margin: 0 auto 16px;
  }
  body.homepage-v1 .home-final-cta-card__media-link { height: auto; }
  body.homepage-v1 .home-final-cta-card__media img {
    height: auto;
    object-fit: contain;
    object-position: center;
  }
}

/* Responsive and language rules */
@media (max-width: 1050px) {
  body.home-page.homepage-v1 { --home-header-height: 94px; --home-publication-height: 254px; }
  body.home-page.homepage-v1 .hero__layout { padding: 40px 0 84px; }
  body.homepage-v1 .hero__copy { width: 100%; max-width: 660px; }
  html[lang] body.home-page.homepage-v1 .hero .hero__copy h1.hero-title--single { font-size: 68px; max-width: 660px; }
  body.homepage-v1 :is(.research-framework-section__intro, .about-section__grid, .founder-section__grid) { grid-template-columns: 1fr; gap: 36px; }
  body.home-page.homepage-v1 .research-framework-section__intro { grid-template-columns: 1fr; gap: 36px; }
  body.homepage-v1 .research-framework-section__visual { max-width: 680px; }
  body.homepage-v1 .research-framework-section__component-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px; }
  body.homepage-v1 .selected-publications-grid { gap: 24px; }
  body.homepage-v1 .selected-publication-card h3,
  body.homepage-v1 .selected-publication-card h3 a { font-size: 24px; }
  body.homepage-v1 .home-final-cta__grid { grid-template-columns: 1fr; gap: 44px; }
  body.homepage-v1 .events-editorial:has(> .featured-event):not(:has(> .upcoming-events > .upcoming-event)) .featured-event { grid-template-columns: 1fr; gap: 28px; }
}
@media (max-width: 600px) {
  body.home-page.homepage-v1 { --layout-gutter-total: 40px; --home-space: 56px; --home-header-height: 74px; --home-publication-height: 156px; }
  body.home-page.homepage-v1 .hero__layout { padding: 32px 0 84px; }
  html[lang] body.home-page.homepage-v1 .hero .hero__copy h1.hero-title--single { font-size: 48px; line-height: 1.08; letter-spacing: -.025em; }
  body.homepage-v1 .hero .hero__copy > p { font-size: 16px; line-height: 1.75; margin-top: 22px; }
  body.homepage-v1 .hero__cta { margin-top: 24px; }
  body.homepage-v1 .hero__video-control { width: 52px; height: 52px; right: max(20px, env(safe-area-inset-right)); bottom: max(20px, env(safe-area-inset-bottom)); }
  body.homepage-v1 :is(.section-title, .institutional-values h2) { font-size: 38px; }
  body.homepage-v1 .research-framework-section .section-title { font-size: 38px; }
  body.homepage-v1 .research-framework-section__body p { font-size: 16px; }
  body.homepage-v1 .research-framework-section__component-grid { grid-template-columns: 1fr; gap: 24px; }
  body.homepage-v1 .research-framework-component { display: grid; grid-template-columns: 30px 1fr; gap: 8px 12px; }
  body.homepage-v1 .research-framework-component__number { margin: 7px 0 0; grid-row: span 2; }
  body.homepage-v1 .research-framework-component__description { margin: 0; }
  body.homepage-v1 .selected-publications-grid { grid-template-columns: 1fr; gap: 32px; }
  body.homepage-v1 .selected-publication-card { display: grid; grid-template-columns: 112px minmax(0,1fr); gap: 8px 16px; align-content: start; border-top: 1px solid var(--home-line); padding-top: 24px; }
  body.homepage-v1 .selected-publication-card__cover { grid-row: 1 / span 4; height: var(--home-publication-height); padding: 4px; }
  body.home-page.homepage-v1 .selected-publication-card__cover img { max-height: calc(var(--home-publication-height) - 8px); }
  body.homepage-v1 .selected-publication-card__label { margin: 0; font-size: 12px; }
  body.homepage-v1 .selected-publication-card h3,
  body.homepage-v1 .selected-publication-card h3 a { font-size: 23px; }
  body.homepage-v1 .selected-publication-card__authors,
  body.homepage-v1 .selected-publication-card__venue { margin: 0; font-size: 13px; }
  body.homepage-v1 :is(.about-copy, .founder-copy) p { font-size: 16px; }
  body.homepage-v1 :is(.updates-section__header, .events-section__header) { align-items: flex-start; gap: 16px; }
  body.homepage-v1 .home-archive-cta { font-size: 14px; }
}
html[lang="zh-Hant"] body.homepage-v1 { --font-heading: "PingFang TC", "Microsoft JhengHei", sans-serif; }
html[lang="zh-Hant"] body.home-page.homepage-v1 .hero .hero__copy h1.hero-title--single { line-height: 1.3; font-size: clamp(38px,4.6vw,66px); }
html[lang="zh-Hant"] body.home-page.homepage-v1 .hero .hero__copy h1 .hero-highlight { display: inline; white-space: nowrap; }
html[lang="zh-Hant"] body.homepage-v1 :is(.section-title, .institutional-values h2) { line-height: 1.35; font-size: clamp(30px,3.4vw,46px); }
@media (prefers-reduced-motion: reduce) {
  html:has(body.homepage-v1) { scroll-behavior: auto; }
  body.homepage-v1 *, body.homepage-v1 *::before, body.homepage-v1 *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
