/* Termine als Raster (parts/allgemein/termine-raster.php): 2 × 2, am Handy untereinander */
.tva-termine-raster-wrapper {
  margin: 2.5rem auto;
}

.tva-termine-raster-wrapper > h3 {
  margin-bottom: 1rem;
}

.tva-termine-raster {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem 1.5rem;
}

.tva-termine-raster a.tva-termin {
  margin: 0;
}

/* Titel nur an Wortgrenzen umbrechen, nicht mitten im Wort (auch nicht an den weichen Trennstellen von wp-typography) */
.tva-termine-raster .tva-termin-titel,
.tva-termine-raster .tva-termin-meta {
  overflow-wrap: normal;
  hyphens: none;
}

/* Platz für das Sport-Symbol rechts, damit es den Text nicht überlagert */
.tva-termine-raster a.tva-termin--symbol .tva-termin-inhalt {
  padding-right: 5rem;
}

.tva-termine-raster-mehr {
  margin: 1rem 0 0;
  text-align: right;
}

.tva-termine-raster-mehr a {
  font-weight: 700;
  text-decoration: none;
}

.tva-termine-raster-mehr a:hover,
.tva-termine-raster-mehr a:focus-visible {
  text-decoration: underline;
}

@media (max-width: 760px) {
  .tva-termine-raster {
    grid-template-columns: minmax(0, 1fr);
  }

  /* am schmalen Handy lange Wörter lieber trennen als über den Rand laufen lassen */
  .tva-termine-raster .tva-termin-titel {
    hyphens: manual;
    overflow-wrap: anywhere;
  }

  .tva-termine-raster a.tva-termin--symbol .tva-termin-inhalt {
    padding-right: 4rem;
  }
}
