/* Cohort-only styles. The shared header, footer and theme controls are unchanged. */
.cohort-page { color: var(--white); font-family: Manrope, sans-serif; }
.cohort-page .content_container { width: calc(100% - 48px); max-width: 940px; padding-top: 48px; padding-bottom: 96px; }
.cohort-intro { text-align: center; margin: 0 auto 64px; max-width: 720px; }
.cohort-back { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 8px 20px; border: 1px solid var(--white-50); border-radius: 999px; color: var(--white); font-size: 14px; font-weight: 500; text-decoration: none; }
.cohort-back:hover { color: var(--black); background: var(--white); border-color: var(--white); }
.cohort-intro h1 { font-family: Calsans, sans-serif; font-weight: 600; font-size: 56px; line-height: 1.12; letter-spacing: -1px; margin: 16px 0 24px; text-wrap: balance; }
.cohort-intro p { font-size: 20px; line-height: 1.6; margin: 0; }
.cohort-intro .cohort-eyebrow { margin: 40px 0 0; color: var(--white-50); font-size: 14px; font-weight: 500; letter-spacing: .5px; }
.cohort-intro .cohort-description { color: var(--white); font-size: 20px; margin: 0 auto; max-width: 560px; text-wrap: pretty; }
.cohort-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; list-style: none; padding: 0; margin: 0; }
.cohort-grid li { min-width: 0; margin: 0; }
.cohort-company { display: block; border: 1px solid var(--card-fill); border-radius: 8px; overflow: hidden; background: var(--black); transition: border-color 160ms ease; }
.cohort-company img { display: block; width: 100%; height: auto; aspect-ratio: 600 / 338; object-fit: contain; mix-blend-mode: screen; }
.cohort-company--superdata { container-type: inline-size; text-decoration: none; }
.cohort-superdata-logo { display: flex; width: 100%; aspect-ratio: 600 / 338; align-items: center; justify-content: center; gap: 4cqw; color: var(--white); font-family: Arial, sans-serif; font-size: 8cqw; font-weight: 700; letter-spacing: -.03em; }
.cohort-superdata-logo svg { width: 14cqw; height: 14cqw; flex: none; }
.cohort-company:hover { border-color: var(--brand-yellow); }
.cohort-page a:focus-visible { outline: 1px solid var(--brand-yellow); outline-offset: 2px; }
.cohort-next { margin-top: 80px; padding-top: 64px; border-top: 1px solid var(--card-fill); text-align: center; }
.cohort-next.velocity-next { width: 100%; margin-top: 0; color: var(--white); font-family: Manrope, sans-serif; }
.cohort-next h2 { font-family: Calsans, sans-serif; font-size: 32px; font-weight: 600; line-height: 1.2; letter-spacing: -1px; margin: 0 0 16px; }
.cohort-next p { color: var(--white-50); font-size: 16px; line-height: 1.6; max-width: 480px; margin: 0 auto 24px; text-wrap: pretty; }
html.theme-cream .cohort-company, html.theme-cream .cohort-next { border-color: var(--black-50); }
html.theme-cream .cohort-company img { filter: invert(1); mix-blend-mode: multiply; }
html.theme-cream .cohort-superdata-logo { filter: invert(1); }
html.theme-cream .cohort-company:hover { border-color: var(--white); }
html.theme-cream .cohort-page a:focus-visible { outline-color: var(--white); }
@media screen and (max-width: 767px) {
  .cohort-page .content_container { padding-top: 32px; padding-bottom: 64px; }
  .cohort-intro { margin-bottom: 40px; }
  .cohort-intro h1 { font-size: 44px; }
  .cohort-intro p { font-size: 18px; }
  .cohort-intro .cohort-description { font-size: 18px; }
  .cohort-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .cohort-next { margin-top: 48px; padding-top: 40px; }
  .cohort-next h2 { font-size: 28px; }
}
@media screen and (max-width: 479px) {
  .cohort-grid { grid-template-columns: 1fr; }
  .cohort-intro h1 { font-size: 40px; }
}
@media (prefers-reduced-motion: reduce) {
  .cohort-company { transition: none; }
}
