.naechste-termine { padding: var(--space-section) var(--container-pad); max-width: var(--content-narrow); margin: 0 auto; }
.naechste-termine .section-eyebrow { text-align: center; }
.naechste-termine h2 { text-align: center; margin-bottom: var(--space-md); }

/* ---------- Compact two-line row (homepage teaser only; archive-termin.php keeps the stacked default) ---------- */
.naechste-termine .termin-list-item {
  padding: var(--space-xs) 0;
}
.naechste-termine .termin-list-item__body {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  column-gap: 0.5em;
  row-gap: 0.1rem;
}
.naechste-termine .termin-list-item__title {
  font-size: var(--text-base);
  margin: 0;
  order: 1;
}
.naechste-termine .termin-list-item__bereich {
  order: 2;
  margin: 0;
  font-size: var(--text-xs);
}
.naechste-termine .termin-list-item__ort,
.naechste-termine .termin-list-item__kurzbeschreibung {
  order: 3;
  flex-basis: 100%;
  margin: 0;
  font-size: var(--text-xs);
  color: var(--color-stone);
}
.naechste-termine .termin-list-item__ort::after { content: ' —'; }
/* The actions wrapper (Mehr erfahren) is a flex child of the ordered body, so
   it needs an explicit order — otherwise it defaults to 0 and jumps ahead of
   the title. */
.naechste-termine .termin-list-item__actions {
  order: 4;
  flex-basis: 100%;
  margin-top: 0.2rem;
}
.naechste-termine .termin-list-item__link {
  font-size: var(--text-xs);
  margin-top: 0;
}
