/* Route-spezifische Angleichung an die ausformulierten Branchenlayouts. */
.page-header h1 { hyphens: none; }

/* Hero-Hierarchie wie auf den ausformulierten Branchen-Seiten: Einordnung klar vom Hauptversprechen trennen. */
body:has(.fs-trust) .page-header > .container > p:not(.page-header__subtitle) {
  max-width: 42.5rem;
  margin-top: var(--space-4);
  margin-bottom: 0;
}

.fs-trust article::before {
  content: '';
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.6rem;
  height: 2.6rem;
  margin-bottom: var(--space-4);
  border-radius: 50%;
  background: var(--color-blue-50);
  background-color: var(--color-blue-50);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.25rem;
}

.fs-trust article:nth-child(1)::before { background-color: var(--color-navy-900); background-image: url('/assets/icons/trust-star.svg'); }
.fs-trust article:nth-child(2)::before { background-image: url('/assets/icons/trust-growth.svg'); }
.fs-trust article:nth-child(3)::before { background-image: url('/assets/icons/trust-target.svg'); }
.fs-trust article:nth-child(4)::before { background-image: url('/assets/icons/trust-check.svg'); }

/* Die Vertrauenssignale sind symmetrisch aufgebaut; ihre Überschrift folgt derselben Achse. */
main > section:has(.fs-trust) > .container > h2 {
  margin-bottom: var(--space-6);
  text-align: center;
}

.fs-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 50%;
  background: var(--color-blue-50);
  color: var(--color-primary);
}

.fs-icon svg { width: 1.25rem; height: 1.25rem; }

/* Zeilenlisten ohne Premium-Variante: schlichte Reihe statt Kartenraster (Premium-Varianten kommen aus components.css). */
.fs-rows:not(.premium-tickets):not(.premium-checklist) article { grid-template-columns: 3rem minmax(11rem, .8fr) minmax(0, 1.7fr); }
.fs-rows article .fs-icon { margin: 0; }

/* Fünf Prozessschritte brauchen eine feste Titelzone, damit die Beschreibungen sauber auf einer Höhe starten. */
.process-step h3 {
  hyphens: none;
  word-break: normal;
}

@media (min-width: 981px) {
  .process-step h3 {
    min-height: 3.6rem;
  }
}

@media (max-width: 767px) {
  .fs-rows:not(.premium-tickets):not(.premium-checklist) article { grid-template-columns: 3rem 1fr; gap: var(--space-3); }
  .fs-rows:not(.premium-tickets):not(.premium-checklist) article p { grid-column: 2; }
}
