/* SF Website Fixes: nach allen Stylesheets der Vorlage geladen. */

/* Eingeloggt: Die Abschnitts-Leiste klebt unter dem Header, nicht dahinter. Die Adminleiste ist 32 px (ab 783 px) bzw. 46 px hoch. */
@media (min-width: 783px) {
  body.admin-bar .tn31 { top: 108px; }
  body.admin-bar:has(.hdr.is-hidden) .tn31 { top: 32px; }
}
@media (min-width: 601px) and (max-width: 782px) {
  body.admin-bar .tn31 { top: 122px; }
  body.admin-bar:has(.hdr.is-hidden) .tn31 { top: 46px; }
}

/* Überschrift und Text beginnen auf gleicher Höhe, statt die Überschrift neben langen Texten nach unten zu drücken. */
.intro4 { align-items: start; }

/* Rebel-Karten: gleiche Bildhöhe in jeder Reihe. Oben verankert, Text und Pfeil im Bild bleiben ganz sichtbar. */
.et--cov:has(img[src*="/rebel-"]) .et__img { aspect-ratio: 11 / 10; }
.et--cov:has(img[src*="/rebel-"]) .et__img img { width: 100%; height: 100%; object-fit: cover; object-position: top center; }

/* Abstände: Die Vorlage hatte bis zu 200 px Leerraum zwischen zwei Inhalten. Etwa ein Drittel weniger, auf dem Handy unverändert knapp. */
body.v7 .sec4 { padding-block: clamp(56px, 6vw, 92px); }
body.v7 .s7:not(.cd32):not(.in33) { padding-block: clamp(52px, 5.2vw, 76px); }
body.v7 .why32, body.v7 .ab8, body.v7 .h5ins, body.v7 .dm29__g { padding-block: clamp(56px, 6vw, 88px); }
body.v7 .bd31, body.v7 .mb9 { padding-block: clamp(48px, 4.6vw, 68px); }
body.v7 .mo31 { padding-block: clamp(44px, 4vw, 58px); }
body.v7 .nx8 { padding-block: clamp(56px, 5.6vw, 82px); }
body.v7 .ct31 { padding-block: clamp(48px, 5vw, 72px); }
body.v7 .otext { padding-block: clamp(32px, 3.2vw, 46px); }
body.v7 .osplit, body.v7 .oq { padding-block: clamp(44px, 4.4vw, 64px); }
body.v7 .intro4 { margin-bottom: clamp(36px, 3.8vw, 56px); }
body.v7 .series4 { margin-top: clamp(52px, 4.8vw, 70px); }

/* Cookie-Hinweis: schmale Leiste am unteren Rand, verdeckt so wenig wie möglich */
.sfx-notice { position: fixed; left: 0; bottom: 0; z-index: 9990; box-sizing: border-box; width: 100%; padding: 14px clamp(20px, 5.6vw, 96px);
  display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 28px;
  background: #3D1F16; color: #fff; box-shadow: 0 -8px 30px rgba(0, 0, 0, .22); font-size: 14px; line-height: 1.5; }
.sfx-notice[hidden] { display: none; }
.sfx-notice__t { margin: 0; font-size: 12px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: #fff; white-space: nowrap; }
.sfx-notice__p { margin: 0; color: #fff; }
.sfx-notice__p a { color: #fff; text-decoration: underline; text-underline-offset: 2px; }
.sfx-notice__b { display: inline-block; padding: 12px 22px; border: 1px solid #fff; border-radius: 0; background: #fff; color: #3D1F16; font: inherit;
  font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; cursor: pointer; }
.sfx-notice__b:hover { background: transparent; color: #fff; }
.sfx-notice__b:focus-visible, .sfx-notice__p a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
@media (max-width: 900px) {
  .sfx-notice { grid-template-columns: minmax(0, 1fr); gap: 10px; padding: 16px 20px; }
  .sfx-notice__b { justify-self: start; padding: 10px 18px; }
}
