/* A distinct chapter after the institutional network, not a sponsor-logo strip. */
.crg-home-flagships {
  --flagship-ink: var(--palette-night, oklch(28% .045 250));
  padding-block: clamp(44px, 5vw, 76px);
  background: var(--palette-surface, oklch(95.5% .006 245));
  color: var(--flagship-ink);
  scroll-margin-top: 140px;
}
.crg-home-flagships__heading {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
  gap: 24px 56px; align-items: start; margin-bottom: 36px;
}
.crg-home-flagships__heading h2 {
  margin: 0; color: inherit; font-size: clamp(2rem, 3.2vw, 3.1rem);
  line-height: 1.12; letter-spacing: -.035em;
}
.crg-home-flagships__heading > p {
  margin: 0; font-size: 1.05rem; line-height: 1.65; max-width: 58ch;
}
.crg-home-flagships__project {
  display: grid; grid-template-columns: minmax(180px, .65fr) minmax(0, 1.65fr);
  gap: clamp(24px, 4vw, 60px); align-items: center;
  padding-block: 28px; border-top: 1px solid var(--crg-line);
}
.crg-home-flagships__project:last-child { padding-bottom: 0; }
.crg-home-flagships__visual {
  position: relative; display: grid; place-items: center; margin: 0;
  height: 206px; min-width: 0; overflow: hidden; background: oklch(99% .005 245);
}
.crg-home-flagships__visual--logo { padding: 20px; }
.crg-home-flagships__visual--logo img {
  display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply;
}
.crg-home-flagships__visual--place img { width: 100%; height: 100%; object-fit: cover; }
.crg-home-flagships__visual figcaption {
  position: absolute; inset: auto 0 0; padding: 9px 12px;
  background: oklch(24% .04 250 / .94); color: oklch(98% .006 245);
  font-size: .75rem; line-height: 1.4;
}
.crg-home-flagships__context { margin: 0 0 8px; font-size: .85rem; line-height: 1.5; font-weight: 700; color: var(--crg-ink-soft); }
.crg-home-flagships__copy h3 {
  margin: 0; color: inherit; font-size: clamp(1.55rem, 2.3vw, 2.15rem);
  line-height: 1.18; letter-spacing: -.025em; text-wrap: balance;
}
.crg-home-flagships__description { margin: 14px 0 10px; max-width: 65ch; font-size: 1rem; line-height: 1.65; }
.crg-home-flagships a.crg-home-flagships__link {
  display: inline-flex; align-items: center; justify-content: space-between;
  gap: 20px; min-height: 44px; max-width: 100%; color: inherit;
  font-size: .94rem; font-weight: 700; text-decoration: underline; text-underline-offset: .25em;
}
.crg-home-flagships__link span { flex: 0 0 auto; font-size: 1.2rem; transition: transform 180ms ease-out; }
.crg-home-flagships a.crg-home-flagships__link:is(:hover, :focus-visible) { color: var(--palette-accent, oklch(43% .065 250)); text-decoration-thickness: 2px; }
.crg-home-flagships__link:hover span { transform: translateX(3px); }
.crg-home-flagships__link:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
html[data-crg-contrast="inverse"] .crg-home-flagships,
html[data-crg-contrast="high"] .crg-home-flagships { background: var(--crg-surface); color: var(--crg-ink); --flagship-ink: var(--crg-ink); }
html[data-crg-contrast] .crg-home-flagships__context { color: inherit; }
html[data-crg-contrast] .crg-home-flagships a.crg-home-flagships__link:is(:hover, :focus-visible) { color: inherit; }
@media (max-width: 760px) {
  .crg-home-flagships__heading { grid-template-columns: 1fr; gap: 18px; margin-bottom: 24px; }
  .crg-home-flagships__project { grid-template-columns: 160px minmax(0, 1fr); gap: 24px; align-items: start; }
  .crg-home-flagships__visual { height: 180px; }
}
@media (max-width: 540px) {
  .crg-home-flagships__project { grid-template-columns: minmax(0, 1fr); gap: 22px; padding-block: 28px; }
  .crg-home-flagships__visual { height: 190px; }
  .crg-home-flagships__visual--logo img { max-width: 260px; }
  .crg-home-flagships__visual--place img { object-position: center 48%; }
}
html.crg-reduced-motion .crg-home-flagships__link span { transition: none; transform: none; }
@media (prefers-reduced-motion: reduce) { .crg-home-flagships__link span { transition: none; transform: none !important; } }
@media (forced-colors: active) {
  .crg-home-flagships { background: Canvas; color: CanvasText; }
  .crg-home-flagships__project { border-color: CanvasText; }
  .crg-home-flagships__context { color: CanvasText; }
  .crg-home-flagships a.crg-home-flagships__link { color: LinkText; }
}
