/* ==========================================================================
   transformis® · Team Section Component (Reusable)
   --------------------------------------------------------------------------
   50/50 Grid: Text+CTA links, Foto rechts (randbuendig oben/rechts/unten).
   Verwendung: transformis_part('team-section', [...])
   ========================================================================== */

.tm-team {
  width: 100%;
  background: var(--tm-gray-light);
}

/* Kein max-width / kein padding – Bild soll bis zum rechten Rand gehen */
.tm-team__inner {
  width: 100%;
}

.tm-team__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  align-items: stretch;
}

/* ── Linke Spalte: Text ── */
.tm-team__text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
  padding: var(--tm-section-py) 90px var(--tm-section-py) var(--tm-edge-padding);
}

.tm-team__heading {
  margin: 0;
  font-family: var(--tm-font-heading);
  font-weight: var(--tm-fw-extrabold);
  font-size: clamp(32px, 4vw, 52px);
  line-height: 1.3;
  color: var(--tm-blue);
}

.tm-team__heading strong {
  font-weight: var(--tm-fw-extrabold);
}

.tm-team__copy {
  margin: 0;
  font-family: var(--tm-font-body);
  font-weight: var(--tm-fw-regular);
  font-size: 18px;
  line-height: 1.6;
  color: var(--tm-black);
  max-width: 520px;
}

/* ── Rechte Spalte: Bild randbuendig ── */
.tm-team__image {
  display: flex;
  overflow: hidden;
}

.tm-team__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ── Responsive ── */
@media (max-width: 900px) {
  .tm-team__grid {
    grid-template-columns: 1fr;
  }

  .tm-team__text {
    padding: var(--tm-section-py) var(--tm-edge-padding);
    text-align: center;
    align-items: center;
  }

  .tm-team__copy {
    max-width: 100%;
  }

  .tm-team__image {
    order: -1;
    max-height: 400px;
  }
}
