/* Section: Text + media (centered) */

.text-media { padding-block: var(--space-3xl); }
/* When this content section is immediately followed by the press-logos strip,
   drop its bottom padding so the two don't double-space (client feedback). */
.text-media:has(+ .press) { padding-block-end: 0; }
.text-media__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-l);
}

.text-media__media {
  width: 663px;
  max-width: 100%;
  aspect-ratio: 663 / 376;
}
.text-media__media img { width: 100%; height: 100%; object-fit: cover; }

.text-media__content {
  display: flex;
  flex-direction: column;
  width: 100%;   /* full width so the .u-align-* utility can place the text */
  gap: var(--space-l);
  /* alignment comes from the .u-align-* utility (ACF "align" field) */
}
.text-media__heading { max-width: 1000px; color: var(--color-grey-900); }
.text-media__heading em { font-style: italic; }
.text-media__sub {
  max-width: 800px;
  font-size: var(--fs-body-m);
  line-height: var(--lh-body-m);
  letter-spacing: -0.352px;
  color: var(--color-grey-900);
}

@media (max-width: 600px) {
  .text-media__heading { font-size: var(--fs-h-m); line-height: var(--lh-h-m); letter-spacing: var(--ls-h-m); }
}
