/* Seitenbezogene Ergänzung; das vorhandene fairInstitut-Design bleibt erhalten. */
.tour-section { margin-block: 2.5rem; scroll-margin-top: 110px; }
.tour-section > p { max-width: 70ch; }
.tour { margin-top: 1.25rem; }
.tour__stage {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  min-height: 400px;
  overflow: hidden;
  border-radius: var(--r-lg);
  background: var(--paper-2);
}
.tour__placeholder { position: absolute; inset: 0; display: grid; place-items: center; padding: 1.25rem; }
.tour__preview { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: brightness(.38); }
.tour__consent { position: relative; width: min(100%, 36rem); padding: 1.5rem; border-radius: var(--r-lg); background: var(--paper); color: var(--ink); }
.tour__consent p { margin-bottom: 1rem; }
.tour__consent .btn { white-space: normal; text-align: center; }
.tour__frame { display: block; width: 100%; height: 100%; border: 0; }
.tour__toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem 1.25rem; margin-bottom: .75rem; }
.tour__toolbar p { margin: 0; flex: 1 1 18rem; }
.tour__toolbar .btn { min-height: 44px; }
.tour__status { margin-top: .75rem; color: var(--muted); }
.tour__fallback { margin-top: .75rem; font-size: .95rem; }
.tour__fallback a { overflow-wrap: anywhere; }
.tour [hidden] { display: none; }
/* Ohne JavaScript oder bei abgebrochener Initialisierung passt sich die
   Vorschau ihrem Text an; der noscript-Hinweis darf nicht abgeschnitten sein. */
[data-tour]:not([data-tour-ready]) .tour__stage { height: auto; aspect-ratio: auto; }
[data-tour]:not([data-tour-ready]) .tour__placeholder { position: relative; min-height: 450px; }
@media (max-width: 560px) {
  .tour__stage { aspect-ratio: auto; height: 450px; }
  .tour__placeholder { padding: .75rem; }
  .tour__consent { padding: 1.125rem; }
  .tour__consent .btn { width: 100%; }
}
@media print {
  .tour__stage, .tour__toolbar, .tour__status { display: none; }
}
