/* The homepage follows one question from research to its public results. */
.crg-home-story > *, .crg-home-story [id] { scroll-margin-top: 150px; }
.crg-home-story .crg-home-stage__frame { min-height: min(820px, calc(100svh - 126px)); }
.crg-home-story .crg-home-stage__inner { min-height: inherit; padding-block: clamp(70px, 8vw, 110px); }
.crg-home-story .crg-home-stage__content { max-width: 810px; }
.crg-home-story .crg-home-stage h1 { max-width: 18ch; font-size: clamp(2.8rem, 5.7vw, 5.2rem); line-height: 1.08; }
.crg-home-story__identity { margin: 0 0 26px; color: var(--crg-paper); font-size: .9rem; }
.crg-home-story .crg-home-stage__lead { max-width: 57ch; font-size: 1.05rem; }
.crg-home-story-nav { border-bottom: 1px solid var(--crg-line); background: var(--crg-paper); }
.crg-home-story-nav .crg-wrap { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 24px; padding-block: 12px; }
.crg-home-story-nav a { display: inline-flex; align-items: center; min-height: 44px; font-size: .9rem; font-weight: 700; text-decoration: none; }
.crg-home-story-nav a:hover { text-decoration: underline; text-underline-offset: .3em; }
.crg-home-story .crg-home-research { padding-block: clamp(64px, 7vw, 100px); }
.crg-home-story .crg-content-heading { margin-bottom: 44px; }
.crg-research-studies { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(24px, 3vw, 44px); align-items: stretch; }
.crg-research-study { min-width: 0; }
.crg-research-study a { display: grid; grid-template-rows: auto 1fr; gap: 28px; height: 100%; color: inherit; text-decoration: none; }
.crg-research-study figure { margin: 0; aspect-ratio: 4 / 3; overflow: hidden; }
.crg-research-study img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 420ms cubic-bezier(.16, 1, .3, 1); }
.crg-research-study__copy { position: relative; padding-right: 28px; }
.crg-research-study__copy .crg-research-study__area { min-height: 3em; margin: 0 0 12px; color: var(--crg-ink-soft); font-size: .8rem; line-height: 1.5; }
.crg-research-study h3 { margin: 0 0 16px; font-size: clamp(1.4rem, 2vw, 2rem); line-height: 1.22; letter-spacing: -.025em; }
.crg-research-study__copy > p:last-of-type { margin: 0; font-size: .94rem; line-height: 1.65; }
.crg-research-study__arrow { position: absolute; top: 0; right: 0; font-size: 1.4rem; transition: transform 220ms cubic-bezier(.16, 1, .3, 1); }
.crg-research-study a:hover h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.crg-research-study a:hover img { transform: scale(1.025); }
.crg-research-study a:hover .crg-research-study__arrow { transform: translate(2px, -2px); }
.crg-home-field .crg-atlas { background: color-mix(in oklch, var(--crg-mist-soft) 72%, var(--crg-mist)); padding-block: clamp(64px, 7vw, 100px) 48px; }
.crg-home-field .crg-atlas__header { margin-bottom: 48px; }
.crg-home-field-projects { background: var(--crg-ink); color: var(--crg-paper); padding-block: 32px 40px; }
.crg-home-field-projects__head { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px 32px; margin-bottom: 18px; }
.crg-home-field-projects h3 { margin: 0; font-size: 1.1rem; color: inherit; }
.crg-home-field-projects__links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.crg-home-field-projects__links a { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px 16px; border-top: 1px solid color-mix(in oklch, var(--crg-paper) 30%, transparent); padding-top: 22px; text-decoration: none; }
.crg-home-field-projects__links a span { grid-column: 1 / -1; color: var(--crg-mist); font-size: .85rem; }
.crg-home-field-projects__links a strong { font-size: 1.2rem; line-height: 1.35; }
.crg-home-field-projects__links a:hover strong { text-decoration: underline; text-underline-offset: .2em; }
.crg-home-community { background: var(--crg-paper); padding-block: clamp(72px, 8vw, 120px) 48px; }
.crg-home-community__lead { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(32px, 6vw, 90px); align-items: center; }
.crg-home-community h2, .crg-home-latest h2 { margin: 0; font-size: clamp(2rem, 3.8vw, 3.6rem); line-height: 1.14; letter-spacing: -.035em; }
.crg-home-community__lead p { margin-block: 24px; }
.crg-home-community figure { margin: 0; }
.crg-home-community__lead figure img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: center; }
.crg-home-community__paths { display: flex; flex-wrap: wrap; gap: 4px 24px; margin-top: 24px; }
.crg-home-community__paths a { display: inline-flex; align-items: center; min-height: 44px; font-size: .875rem; text-underline-offset: .25em; }
.crg-home-community__photos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 48px; }
.crg-home-community__photos img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.crg-home-community__archive { display: flex; justify-content: flex-end; padding-block: 16px 40px; }
.crg-institution-network { margin-top: 24px; padding-top: 48px; border-top: 1px solid var(--crg-line); }
.crg-institution-network__group { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 32px; padding-block: 20px 40px; }
.crg-institution-network__group + .crg-institution-network__group { padding-top: 40px; border-top: 1px solid var(--crg-line); }
.crg-institution-network h3 { margin: 10px 0 0; max-width: 14ch; font-size: 1.25rem; line-height: 1.35; font-weight: 700; }
.crg-institution-network ul { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 24px; list-style: none; padding: 0; margin: 0; }
.crg-institution-network__group--collaborators ul { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 650px; }
.crg-institution-network figure { display: grid; justify-items: center; gap: 20px; }
.crg-institution-network__mark { display: flex; align-items: center; justify-content: center; width: 100%; height: 120px; }
.crg-home-story .crg-institution-network img { width: auto; max-width: 100%; height: auto; max-height: 110px; object-fit: contain; mix-blend-mode: multiply; border: 0; outline: 0; box-shadow: none; }
.crg-institution-network figcaption { max-width: 24ch; color: var(--crg-ink-soft); font-size: .8rem; font-style: normal; line-height: 1.5; text-align: center; }
.crg-home-results { background: var(--crg-blue-deep); color: var(--crg-paper); padding-block: clamp(64px, 7vw, 100px); }
.crg-home-results__head { display: flex; justify-content: space-between; align-items: end; flex-wrap: wrap; gap: 24px; margin-bottom: 48px; }
.crg-home-results__head p { margin: 0 0 14px; font-size: .9rem; color: var(--crg-mist); }
.crg-home-results h2 { margin: 0; color: inherit; font-size: clamp(2rem, 3.8vw, 3.6rem); line-height: 1.14; letter-spacing: -.035em; }
.crg-home-results a { color: inherit; }
.crg-home-results__group { display: grid; grid-template-columns: minmax(140px, .55fr) minmax(0, 2fr); gap: 40px; padding-block: 36px; border-top: 1px solid color-mix(in oklch, var(--crg-paper) 25%, transparent); }
.crg-home-results h3 { margin: 12px 0 0; font-size: 1.1rem; font-weight: 400; color: var(--crg-mist); }
.crg-home-results dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; margin: 0; }
.crg-home-results__datum { display: grid; grid-template-columns: auto minmax(0, 1fr); align-content: start; align-items: center; gap: 12px 24px; }
.crg-home-results dt { grid-area: 1 / 2; max-width: 22ch; font-size: 1rem; line-height: 1.4; font-weight: 700; }
.crg-home-results dd { grid-area: 1 / 1; margin: 0; font-size: clamp(2.7rem, 4.5vw, 4.8rem); line-height: 1.15; font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: -.055em; white-space: nowrap; }
.crg-home-results .crg-home-results__detail { grid-area: 2 / 1 / auto / -1; color: var(--crg-mist); font-size: .8rem; line-height: 1.5; font-weight: 400; letter-spacing: 0; white-space: normal; }
html[data-crg-contrast="inverse"] .crg-home-results { background: var(--crg-surface); color: var(--crg-ink); }
html[data-crg-contrast="inverse"] .crg-home-results :is(h3, .crg-home-results__detail, .crg-home-results__head p) { color: var(--crg-ink); }
.crg-home-latest { background: var(--crg-mist-soft); padding-block: clamp(64px, 8vw, 110px); }
.crg-home-latest__head { display: flex; align-items: end; justify-content: space-between; gap: 24px 48px; margin-bottom: 48px; }
.crg-home-latest__head h2 { max-width: 22ch; }
.crg-home-latest__head > a { flex-shrink: 0; }
.crg-home-latest__grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, .7fr); gap: clamp(40px, 7vw, 100px); }
.crg-home-latest a { text-decoration: none; }
.crg-home-latest a:hover :is(h3, h4), .crg-home-latest__reading a:hover { text-decoration: underline; text-underline-offset: .18em; }
.crg-home-latest__feature > a { display: block; }
.crg-home-latest__feature figure { margin: 0 0 24px; }
.crg-home-latest__feature img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.crg-home-latest time { display: block; color: var(--crg-ink-soft); font-size: .85rem; font-variant-numeric: tabular-nums; }
.crg-home-latest__feature h3 { margin: 12px 0 20px; font-size: clamp(1.5rem, 2.5vw, 2.4rem); line-height: 1.23; }
.crg-home-latest__feature > a > span { display: inline-flex; gap: 18px; min-height: 44px; align-items: center; font-size: .9rem; font-weight: 700; }
.crg-home-latest ul { list-style: none; margin: 0; padding: 0; }
.crg-home-latest__stories li { border-top: 1px solid var(--crg-line); }
.crg-home-latest__stories a { display: block; padding-block: 24px; }
.crg-home-latest__stories h3 { margin: 10px 0 0; font-size: 1.15rem; line-height: 1.45; }
.crg-home-latest__agenda > h3 { margin: 0 0 22px; font-size: 1.6rem; }
.crg-home-latest__agenda li { border-top: 1px solid var(--crg-line); }
.crg-home-latest__agenda li a { display: block; padding-block: 24px; }
.crg-home-latest__agenda h4 { margin: 8px 0; font-size: 1.2rem; line-height: 1.35; }
.crg-home-latest__agenda li span { color: var(--crg-ink-soft); font-size: .875rem; }
.crg-home-latest__reading { border-top: 1px solid var(--crg-line); padding-top: 28px; margin-top: 40px; }
.crg-home-latest__reading h3 { margin: 0 0 16px; font-size: 1.2rem; }
.crg-home-latest__reading a { display: block; font-size: 1rem; line-height: 1.6; }
@media (max-width: 900px) {
  .crg-research-studies { gap: 32px; }
  .crg-institution-network__group { grid-template-columns: minmax(0, 1fr); }
  .crg-institution-network h3 { max-width: none; }
  .crg-institution-network ul { gap: 20px; }
  .crg-home-results__group { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .crg-home-community__lead, .crg-home-latest__grid { grid-template-columns: minmax(0, 1fr); }
  .crg-home-community__lead figure img { aspect-ratio: 16 / 9; }
  .crg-home-latest__head { align-items: start; flex-direction: column; }
}
@media (max-width: 700px) {
  .crg-home-story .crg-home-stage h1 { font-size: clamp(2.2rem, 9vw, 3.4rem); }
  .crg-home-story .crg-home-stage__inner { padding-block: 64px; }
  .crg-home-story-nav .crg-wrap { justify-content: flex-start; gap: 4px 20px; }
  .crg-research-studies { grid-template-columns: minmax(0, 1fr); }
  .crg-research-studies { grid-auto-rows: 1fr; gap: 40px; }
  .crg-research-study figure { aspect-ratio: 16 / 9; }
  .crg-research-study__copy .crg-research-study__area { min-height: 0; }
  .crg-home-field-projects__links { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .crg-home-community__photos { grid-template-columns: minmax(0, 1fr); gap: 12px; margin-top: 12px; }
  .crg-home-community__photos img { aspect-ratio: 16 / 9; }
  .crg-institution-network ul, .crg-institution-network__group--collaborators ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 24px; }
  .crg-institution-network__mark { height: 100px; }
  .crg-home-story .crg-institution-network img { max-height: 92px; max-width: min(140px, 100%); width: auto; }
  .crg-home-results dl { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .crg-home-results__datum { display: flex; flex-wrap: wrap; gap: 12px 20px; }
  .crg-home-results dt { flex: 1 1 140px; }
  .crg-home-results dd:not(.crg-home-results__detail) { order: -1; flex: 0 0 auto; min-width: 100px; }
  .crg-home-results .crg-home-results__detail { flex: 0 0 100%; }
  .crg-home-results dd { font-size: clamp(2.7rem, 11vw, 4.8rem); }
}
