/* ==========================================================================
   referenz-erfurt.css — seitenlokale Bausteine der Referenz „Neubau Schulsporthalle (Zweifeld), Erfurt“ (Präfix ef-)
   Version: 1.1 | 2026-11-08 (Seitenhöhe: Bühne im Streifen, Arbeitsgänge im Flur als Reiter, Fasen in einer Reihe) | Quelle: Marketing/rauMKult/projektreferenzen/vorlagen/ (bauen_erfurt_sporthalle.py, projekte/erfurt-schulsporthalle-zweifeld/konzept.md)
   Leitgedanke „halbzeit-sporthalle“: eine Sporthalle, zwei Halbzeiten (Halle im Rohbau, langer Flur) und eine Nachspielzeit.
   Regel (Skill website-design-raumkult): nur Anordnung; Farben, Radien, Schatten und Schrift ausschließlich aus Token (main-v2.css, rk-wow.css,
   --ph-erhaben aus referenz-module.css). Keine Literalfarben, kein filter, kein mix-blend-mode, keine Abdunklung über den Fotos.
   Mobile first (390 px), Hell und Dunkel (Dunkelmodus erhaben), reduzierte Bewegung (prefers-reduced-motion, html.no-motion,
   [data-motion="reduced"]), Fokus sichtbar, Gold nur als Linie oder Text. Einblende-Vertrag: Ausgangszustände nur unter
   html.ef-js.rk-wow-motion und nur bis .is-in; ohne Skript, reduziert und im Druck steht alles.
   Arbeitsnamen für die Zentralisierung durch die Website-Sitzung:
     rk-wow-mittellinie       NEU: Einstieg, zwei Nachher-Bilder als zwei Spielfeldhälften, Mittellinie mit Mittelkreis dazwischen
     rk-wow-anzeigetafel      NEU: „Auf einen Blick“ als Spielstandanzeige, zwei Spalten, Gesamtwert zählt einmal hoch
     rk-wow-zeitraffer-streifen NEU (Ideenpool „Zeitraffer-Streifen“): Standbilder eines Zeitraffers, Markierung folgt dem Scroll, Klick springt im Film
     rk-wow-konenreihe        NEU: Ankerkonen als runde Ausschnitte, drei Zustände groß, danach die gesetzten Stopfen auf einer Ankerlinie
     rk-wow-spielzuege        NEU: Arbeitsgänge im Flur als Reiter mit Trikotnummern (APG-Tab-Muster), ohne Skript alle Bereiche untereinander
     rk-wow-flurgang          NEU: waagerechter Gang durch alle Nachher-Bilder (Scroll-Snap), Knöpfe, Fortschrittslinie, Zähler
     rk-wow-cta-stopfen       NEU (CTA-KATALOG Nr. 25): Stopfen wird beim Einblenden in den Ankerkonus gesetzt; Markup ef_cta() im Builder
     rk-wow-video, rk-wow-gross wie Gütersloh (Präfix ef-, Großansicht zeigt auch Filme)
   ========================================================================== */
:where(.ef) button { font: inherit; }
.ef .rk-wow-statement__title, .ef-h1 { overflow-wrap: break-word; hyphens: auto; }
.ef :is(button, a, [tabindex="0"]):focus-visible { outline: 3px solid var(--rk-focus-color, currentColor); outline-offset: 2px; }
.ef figure { margin: 0; min-width: 0; }
.ef figcaption { color: var(--text-secondary); font-size: var(--rk-wow-fs-meta); line-height: 1.5; margin-top: 8px; }
.ef-text > p { max-width: 64ch; margin: 0 0 1em; color: var(--text-secondary); line-height: 1.65; }
.ef-text > p:last-child { margin-bottom: 0; }
.ef-h1 { margin: 0; font-size: clamp(2rem, 1.4rem + 2vw, 2.85rem); font-weight: var(--rk-fw-regular, 400); line-height: 1.05; letter-spacing: var(--rk-wow-ls-tight); color: var(--text-primary); text-wrap: balance; }
.ef-lead { margin: 0; max-width: 60ch; font-size: clamp(1.05rem, .98rem + .3vw, 1.18rem); line-height: 1.6; color: var(--text-secondary); text-wrap: pretty; }
.ef-zwischen { margin: 0 0 8px; color: var(--text-primary); font-size: var(--rk-wow-fs-title, 1.5rem); font-weight: var(--rk-fw-regular, 400); line-height: 1.2; text-wrap: balance; }
.ef-bildknopf { display: block; position: relative; box-sizing: border-box; overflow: hidden; border-radius: var(--rk-wow-r-md); cursor: zoom-in; color: inherit; text-decoration: none; background: var(--rk-wow-tint); }
.ef-bildknopf img { display: block; width: 100%; height: auto; }
@media (hover: hover) { .ef-bildknopf img { transition: transform .5s var(--rk-wow-ease); } .ef-bildknopf:hover img { transform: scale(1.02); } }
.ef-bildknopf:focus-visible { outline: 3px solid var(--rk-focus-color, currentColor); outline-offset: 3px; }
.ef-bildknopf--film { cursor: pointer; }
.ef-filmzeichen { position: absolute; left: 50%; top: 50%; z-index: 2; display: grid; place-items: center; width: 46px; height: 46px; margin: -23px 0 0 -23px; border: 2px solid var(--rk-wow-dark-gold); border-radius: 50%; background: var(--rk-wow-dark-bg); color: var(--rk-wow-dark-ink); pointer-events: none; }
.ef-filmzeichen svg { width: 20px; height: 20px; fill: currentColor; }
.ef-etikett { display: inline-flex; align-items: center; min-height: 26px; padding: 2px 10px; border-radius: var(--rk-wow-r-pill); background: var(--rk-wow-dark-bg); color: var(--rk-wow-dark-ink); font-size: var(--rk-wow-fs-tag); letter-spacing: .06em; text-transform: uppercase; }
.ef-feld { position: relative; }
.ef-feld .ef-bildknopf img { aspect-ratio: 4 / 5; object-fit: cover; }
.ef-feld > .ef-etikett { position: absolute; left: 8px; top: 8px; z-index: 3; max-width: calc(100% - 16px); pointer-events: none; }
.ef-ergebnis .ef-feld > .ef-etikett { left: 6px; top: 6px; min-height: 22px; padding: 1px 7px; font-size: .62rem; letter-spacing: .04em; white-space: nowrap; }
.ef-feld figcaption { font-size: var(--rk-wow-fs-tag); margin-top: 6px; }

/* Abstände und Köpfe */
.ef .ref__block { margin-top: 44px; }
@media (min-width: 960px) { .ef .ref__block { margin-top: 52px; } }
.ef .ef-kopf { margin-bottom: 18px; gap: 8px; }
.ef-kopf .rk-wow-statement__title { font-size: clamp(1.9rem, 1.3rem + 1.7vw, 2.55rem); line-height: 1.08; }
.ef-kopf .rk-wow-statement__sub { font-size: var(--rk-wow-fs-body); max-width: 62ch; }
.ef .ph-pos-r.ef-kopf { margin-left: auto; text-align: right; justify-items: end; }
.ef .ph-pos-m.ef-kopf .rk-wow-statement__sub { margin-inline: auto; }
.ef > .ref__wrap > .rk-cta { margin-top: 48px; }
.ef [id] { scroll-margin-top: 96px; }

/* Raster und Spalten */
.ef-zweispalt { display: grid; gap: 22px; align-items: start; }
.ef-raster { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; align-content: start; }
@media (min-width: 640px) { .ef-raster--drei { grid-template-columns: repeat(3, minmax(0, 1fr)); } .ef-raster--vier { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 1024px) {
  .ef-zweispalt { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(28px, 3.4vw, 48px); }
  .ef-zweispalt > .ef-text { position: sticky; top: 104px; }
  .ef-raster--vier { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1240px) { .ef-zweispalt .ef-raster--vier { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ef-kapitel > * + * { margin-top: clamp(28px, 3.2vw, 40px); }
.ef-kapitel > .ef-kopf + * { margin-top: 0; }

/* Runde Knöpfe — hell und dunkel klar lesbar (FLOW §23) */
.ef-gross__pfeil, .ef-gross__zu, .ef-flurgang__pfeil { display: grid; place-items: center; width: 48px; height: 48px; padding: 0; border: 1px solid var(--rk-wow-line-strong); border-radius: 50%; background: var(--rk-wow-card); color: var(--text-primary); box-shadow: var(--rk-wow-sh-2); cursor: pointer; }
.ef-gross__pfeil svg, .ef-gross__zu svg, .ef-flurgang__pfeil svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ef-flurgang__pfeil:disabled { opacity: .4; cursor: default; }

/* ==========================================================================
   1 Einstieg Mittellinie — rk-wow-mittellinie
   ========================================================================== */
.ef-einstieg { display: grid; gap: 30px; margin-top: 4px; padding: clamp(22px, 3vw, 40px) clamp(16px, 4vw, 48px) clamp(30px, 4vw, 44px); border-radius: var(--rk-wow-r-card); box-shadow: var(--ph-erhaben-stark); }
.ef-einstieg__text { display: grid; gap: 16px; align-content: center; min-width: 0; }
.ef-einstieg .rk-wow-btnrow { margin: 4px 0 0; }
.ef-mittellinie { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; width: 100%; max-width: 580px; margin: 0 auto; padding: 0 0 4px; }
.ef-haelfte { position: relative; display: grid; gap: 8px; }
.ef-haelfte__bild { border-radius: var(--rk-wow-r-card); }
.ef-haelfte__bild img { aspect-ratio: 3 / 4; object-fit: cover; }
.ef-haelfte--links .ef-haelfte__bild img { object-position: 50% 45%; }
.ef-haelfte figcaption { margin: 0; text-align: center; }
.ef-haelfte__marke { display: inline-block; padding: 4px 12px; border-radius: var(--rk-wow-r-pill); background: var(--rk-wow-card); box-shadow: var(--rk-wow-sh-2); color: var(--text-primary); font-size: var(--rk-wow-fs-tag); letter-spacing: .06em; text-transform: uppercase; }
/* Mittellinie: Goldlinie im Spaltenabstand, Mittelkreis darauf; liegt nur im Abstand und am Rand der Bilder, nie über der Bildmitte */
.ef-mittellinie__linie { position: absolute; left: 50%; top: -10px; bottom: 30px; width: 2px; margin-left: -1px; background: var(--rk-gold-text); border-radius: 2px; transform-origin: 50% 50%; pointer-events: none; }
.ef-mittellinie__kreis { position: absolute; left: 50%; top: calc(50% - 22px); z-index: 3; display: grid; place-items: center; align-content: center; width: 92px; height: 92px; margin: -46px 0 0 -46px; box-sizing: border-box;
  border: 2px solid var(--rk-gold-text); border-radius: 50%; background: var(--rk-wow-card); box-shadow: var(--rk-wow-sh-3); text-align: center; pointer-events: none; }
.ef-mittellinie__kreis b { color: var(--text-primary); font-size: 1.45rem; font-weight: var(--rk-fw-regular, 400); line-height: 1; font-variant-numeric: tabular-nums; }
.ef-mittellinie__kreis small { margin-top: 3px; color: var(--text-secondary); font-size: var(--rk-wow-fs-tag); line-height: 1.15; max-width: 70px; }
.ef-mittellinie .rk-teilen-halter, .ef-mittellinie > [data-rk-herz] { position: absolute; right: 10px; top: 10px; z-index: 4; }
@media (min-width: 1100px) {
  .ef-einstieg { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 4vw, 56px); align-items: center; }
  .ef-mittellinie { gap: 26px; }
}
html.ef-js.rk-wow-motion .ef-mittellinie:not(.is-in) .ef-haelfte--links { transform: translateX(14px); opacity: .0; }
html.ef-js.rk-wow-motion .ef-mittellinie:not(.is-in) .ef-haelfte--rechts { transform: translateX(-14px); opacity: .0; }
html.ef-js.rk-wow-motion .ef-mittellinie:not(.is-in) .ef-mittellinie__linie { transform: scaleY(0); }
html.ef-js.rk-wow-motion .ef-mittellinie:not(.is-in) .ef-mittellinie__kreis { transform: scale(.5); opacity: 0; }
.ef-haelfte { transition: transform .7s var(--rk-wow-ease) .15s, opacity .5s var(--rk-wow-ease) .15s; }
.ef-mittellinie__linie { transition: transform .6s var(--rk-wow-ease); }
.ef-mittellinie__kreis { transition: transform .5s cubic-bezier(.3, 1.4, .5, 1) .45s, opacity .35s var(--rk-wow-ease) .45s; }

/* ==========================================================================
   2 Anzeigetafel „Auf einen Blick“ — rk-wow-anzeigetafel
   ========================================================================== */
.ef-tafel { display: grid; gap: 8px; padding: clamp(16px, 2.4vw, 24px); border: 2px solid var(--rk-wow-dark-gold); border-radius: var(--rk-wow-r-card); background: var(--rk-wow-dark-bg); color: var(--rk-wow-dark-ink); box-shadow: var(--ph-erhaben-stark); font-variant-numeric: tabular-nums; }
.ef-tafel__kopf { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px; padding-bottom: 10px; border-bottom: 1px solid color-mix(in srgb, var(--rk-wow-dark-ink) 22%, transparent);
  font-size: var(--rk-wow-fs-tag); letter-spacing: .14em; text-transform: uppercase; }
.ef-tafel__kopf span:first-child { text-align: left; } .ef-tafel__kopf span:last-child { text-align: right; }
.ef-tafel__lampe { width: 10px; height: 10px; border-radius: 50%; background: var(--rk-wow-dark-gold); box-shadow: 0 0 0 4px color-mix(in srgb, var(--rk-wow-dark-gold) 25%, transparent); }
.ef-tafel__gesamt { display: grid; justify-items: center; margin: 6px 0 4px; line-height: 1; text-align: center; }
.ef-tafel__zahl { font-size: clamp(3.4rem, 2.2rem + 5vw, 6rem); color: var(--rk-wow-dark-gold); letter-spacing: var(--rk-wow-ls-tight); }
.ef-tafel__einheit { margin-top: 4px; font-size: clamp(1.1rem, .9rem + .8vw, 1.5rem); color: var(--rk-wow-dark-ink); }
.ef-tafel__label { margin-top: 8px; font-size: var(--rk-wow-fs-meta); line-height: 1.4; color: var(--rk-wow-dark-ink); opacity: .85; max-width: 46ch; }
.ef-tafel__liste { display: grid; margin: 0; }
.ef-tafel__zeile { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-areas: "dt dt" "l r"; gap: 2px 12px; padding: 7px 0; border-top: 1px solid color-mix(in srgb, var(--rk-wow-dark-ink) 18%, transparent); }
.ef-tafel__zeile dt { grid-area: dt; margin: 0; text-align: center; font-size: var(--rk-wow-fs-tag); letter-spacing: .1em; text-transform: uppercase; color: var(--rk-wow-dark-ink); opacity: .75; }
.ef-tafel__wert { margin: 0; font-size: var(--rk-wow-fs-meta); line-height: 1.3; color: var(--rk-wow-dark-ink); }
.ef-tafel__wert--links { grid-area: l; text-align: left; } .ef-tafel__wert--rechts { grid-area: r; text-align: right; }
.ef-tafel__wert b { font-weight: var(--rk-fw-regular, 400); font-size: 1.55em; color: var(--rk-wow-dark-gold); }
.ef-tafel__wert small { font-size: .9em; opacity: .85; }
.ef-tafel__fuss { margin: 6px 0 0; font-size: var(--rk-wow-fs-tag); line-height: 1.5; color: var(--rk-wow-dark-ink); opacity: .7; text-align: center; }
@media (min-width: 860px) {
  .ef-tafel { grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); column-gap: clamp(24px, 4vw, 48px); }
  .ef-tafel__kopf, .ef-tafel__fuss { grid-column: 1 / -1; }
  .ef-tafel__gesamt { grid-column: 1; align-self: center; }
  .ef-tafel__liste { grid-column: 2; }
  .ef-tafel__zeile { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr) minmax(0, 1fr); grid-template-areas: "l dt r"; align-items: baseline; }
}
html.ef-js.rk-wow-motion .ef-tafel:not(.is-in) .ef-tafel__zeile { opacity: 0; transform: translateY(8px); }
.ef-tafel__zeile { transition: opacity .4s var(--rk-wow-ease) calc(.2s + var(--i, 0) * 90ms), transform .4s var(--rk-wow-ease) calc(.2s + var(--i, 0) * 90ms); }

/* ==========================================================================
   3 Halle: Schrittfolgen, Zeitraffer-Streifen, Bühne, Ergebnis
   ========================================================================== */
.ef-schrittfolgen { display: grid; gap: 28px; }

.ef-schrittfolge__text { margin: 0 0 12px; max-width: 64ch; color: var(--text-secondary); line-height: 1.6; }
.ef-schritte { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; counter-reset: none; }
@media (min-width: 640px) { .ef-schritte { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 960px) { .ef-schritte { grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); } }
.ef-schritt { position: relative; }
.ef-schritt .ef-bildknopf img { aspect-ratio: 1; object-fit: cover; }
.ef-schritt__nr { position: absolute; left: 8px; top: 8px; z-index: 3; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--rk-wow-dark-bg); color: var(--rk-wow-dark-ink); font-size: var(--rk-wow-fs-tag); pointer-events: none; }
.ef-schritt figcaption { margin-top: 6px; font-size: var(--rk-wow-fs-meta); line-height: 1.35; }
.ef-schritt figcaption b { color: var(--text-primary); font-weight: var(--rk-fw-medium, 500); }
html.ef-js.rk-wow-motion .ef-schritte:not(.is-in) .ef-schritt { opacity: 0; transform: translateY(16px); }
.ef-schritt { transition: opacity .45s var(--rk-wow-ease) calc(var(--i, 0) * 90ms), transform .45s var(--rk-wow-ease) calc(var(--i, 0) * 90ms); }

.ef-streifen { display: grid; gap: 20px; padding: clamp(18px, 2.6vw, 28px); border: 1px solid var(--rk-wow-line); border-radius: var(--rk-wow-r-card); background: var(--rk-wow-card); box-shadow: var(--ph-erhaben); }
.ef-streifen__rechts { display: grid; gap: 10px; align-content: start; min-width: 0; }
.ef-streifen__text { margin: 0; max-width: 62ch; color: var(--text-secondary); line-height: 1.6; }
.ef-streifen__liste { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; margin: 6px 0 0; padding: 0; list-style: none; }
.ef-streifen__knopf { display: block; width: 100%; padding: 0; border: 2px solid transparent; border-radius: var(--rk-wow-r-sm, 8px); overflow: hidden; background: var(--rk-wow-tint); cursor: pointer; transition: border-color .25s var(--rk-wow-ease), transform .25s var(--rk-wow-ease); }
.ef-streifen__knopf img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.ef-streifen__knopf.is-aktiv { border-color: var(--rk-gold-text); transform: translateY(-3px); }
.ef-streifen__hinweis { margin: 0; color: var(--text-muted); font-size: var(--rk-wow-fs-tag); }
.ef-video--quer .ef-video__v { aspect-ratio: 16 / 9; }
@media (min-width: 1024px) { .ef-streifen { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: clamp(24px, 3vw, 40px); align-items: center; } }
.ef-ergebnis { display: grid; gap: 20px; }
.ef-raster--ergebnis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ef-raster--ergebnis .ef-bildknopf img { aspect-ratio: 4 / 3; }
/* Schlussflug (Drohnenflug durch die Halle, c-241-a): Handy unter dem Ergebnis, ab 1100 px eigene Spalte rechts über Text und Bildreihe */
.ef-schlussflug { display: grid; gap: 10px; align-content: start; justify-items: center; margin: 0; }
.ef-schlussflug__kopf { justify-self: stretch; margin: 0; }
.ef-schlussflug__kopf .ef-zwischen { margin-bottom: 4px; font-size: var(--rk-wow-fs-body); font-weight: var(--rk-fw-medium, 500); }
.ef-schlussflug__kopf p { margin: 0; color: var(--text-secondary); font-size: var(--rk-wow-fs-meta); line-height: 1.5; }
.ef-schlussflug .ef-video { width: min(100%, 300px); order: -1; }
@media (min-width: 1100px) {
  .ef-ergebnis { grid-template-columns: minmax(0, 1fr) 200px; grid-template-areas: "text film" "bilder film"; column-gap: clamp(24px, 3vw, 40px); align-items: start; align-content: start; }
  .ef-ergebnis > .ef-text { grid-area: text; } .ef-ergebnis > .ef-raster--ergebnis { grid-area: bilder; } .ef-ergebnis > .ef-schlussflug { grid-area: film; }
  .ef-schlussflug .ef-video { width: 100%; }
  .ef-ergebnis .ef-raster--ergebnis .ef-bildknopf img { aspect-ratio: 1; }
}
@media (min-width: 760px) { .ef-raster--ergebnis { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1240px) { .ef-raster--ergebnis { grid-template-columns: repeat(var(--n, 3), minmax(0, 1fr)); } }

/* ==========================================================================
   4 Flur: Mängelraster, Konenreihe, Fasen, Kiesnest, Hydrophobierung
   ========================================================================== */
.ef-maengel__titel { margin: 0 0 10px; color: var(--text-muted); font-size: var(--rk-wow-fs-tag); letter-spacing: .08em; text-transform: uppercase; }
.ef-maengel { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .ef-maengel { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .ef-maengel { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
@media (min-width: 1240px) { .ef-maengel { grid-template-columns: repeat(7, minmax(0, 1fr)); } }
.ef-maengel li { position: relative; }
.ef-maengel .ef-bildknopf img { aspect-ratio: 1; object-fit: cover; }
.ef-maengel figcaption { margin: 0; }
.ef-mangel__wort { display: block; margin-top: 4px; color: var(--text-secondary); font-size: var(--rk-wow-fs-tag); line-height: 1.3; hyphens: auto; overflow-wrap: anywhere; }

.ef-konen { display: grid; gap: 16px; padding: clamp(18px, 2.6vw, 30px); border-radius: var(--rk-wow-r-card); background: var(--rk-wow-tint); }
.ef-konen__text { margin: 0; max-width: 66ch; color: var(--text-secondary); line-height: 1.6; }
.ef-konen__stufen { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 760px) { .ef-konen__stufen { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ef-konus figure { display: grid; justify-items: center; gap: 8px; text-align: center; }
.ef-konus__rund { width: min(100%, 120px); border-radius: 50%; border: 3px solid var(--rk-gold-text); box-shadow: var(--rk-wow-sh-3); }
.ef-konus__rund img { aspect-ratio: 1; object-fit: cover; object-position: var(--mitte, 50% 50%); }
.ef-konus figcaption { margin: 0; }
.ef-konus__stufe { display: block; color: var(--text-primary); font-size: var(--rk-wow-fs-meta); font-weight: var(--rk-fw-medium, 500); }
.ef-konus figcaption small { display: block; margin-top: 2px; color: var(--text-secondary); font-size: var(--rk-wow-fs-tag); line-height: 1.4; }
.ef-konenreihe { display: grid; gap: 12px; }
.ef-konenreihe__zaehler { margin: 0; color: var(--text-secondary); font-size: var(--rk-wow-fs-meta); }
.ef-konenreihe__zaehler b { color: var(--rk-gold-text); font-size: 1.6em; font-weight: var(--rk-fw-regular, 400); }
/* Ankerlinie: dünne Linie durch die Mitte der Stopfen, wie die Ankerreihe an der Wand */
.ef-konenreihe__linie { position: relative; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px 10px; margin: 0; padding: 0; list-style: none; }
.ef-konenreihe__linie::before { content: ""; position: absolute; left: 0; right: 0; top: calc((100% - 24px) / 6); height: 1px; background: var(--rk-wow-line-strong); }
@media (min-width: 760px) { .ef-konenreihe__linie { grid-template-columns: repeat(7, minmax(0, 1fr)); } .ef-konenreihe__linie::before { top: calc((100% - 12px) / 4); } }
@media (min-width: 1100px) { .ef-konenreihe__linie { grid-template-columns: repeat(15, minmax(0, 1fr)); } .ef-konenreihe__linie::before { top: 50%; } }
.ef-konenreihe__stopfen { width: 100%; border-radius: 50%; border: 2px solid var(--rk-wow-line-strong); transition: transform .25s var(--rk-wow-ease), border-color .25s var(--rk-wow-ease); }
.ef-konenreihe__stopfen img { aspect-ratio: 1; object-fit: cover; object-position: var(--mitte, 50% 50%); transform: scale(1.6); }
@media (hover: hover) { .ef-konenreihe__stopfen:hover { transform: scale(1.12); border-color: var(--rk-gold-text); z-index: 2; } }
.ef-konenreihe__stopfen:focus-visible { transform: scale(1.12); border-color: var(--rk-gold-text); }
html.ef-js.rk-wow-motion .ef-konen__stufen:not(.is-in) .ef-konus { opacity: 0; transform: scale(.85); }
.ef-konus { transition: opacity .45s var(--rk-wow-ease) calc(var(--i, 0) * 120ms), transform .5s cubic-bezier(.3, 1.3, .5, 1) calc(var(--i, 0) * 120ms); }
html.ef-js.rk-wow-motion .ef-konenreihe:not(.is-in) .ef-konenreihe__linie li { opacity: 0; transform: scale(.4); }
.ef-konenreihe__linie li { position: relative; transition: opacity .35s var(--rk-wow-ease) calc(var(--i, 0) * 45ms), transform .4s cubic-bezier(.3, 1.4, .5, 1) calc(var(--i, 0) * 45ms); }

.ef-fasen .ef-raster--vier { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 640px) { .ef-fasen .ef-raster--vier { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ef-kiesnest { display: grid; gap: 14px; }
.ef-kiesnest__kopf p { margin: 0; max-width: 66ch; color: var(--text-secondary); line-height: 1.6; }
.ef-nester { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 900px) { .ef-nester { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ef-nest .ef-bildknopf img { aspect-ratio: 1; object-fit: cover; }
.ef-nest figcaption { font-size: var(--rk-wow-fs-meta); line-height: 1.45; }
.ef-nest figcaption b { display: block; color: var(--text-primary); font-weight: var(--rk-fw-medium, 500); }
.ef-nest__nr { display: inline-grid; place-items: center; width: 28px; height: 28px; margin: 0 0 6px; border-radius: 50%; border: 2px solid var(--rk-gold-text); color: var(--text-primary); font-size: var(--rk-wow-fs-tag); }
html.ef-js.rk-wow-motion .ef-nester:not(.is-in) .ef-nest { opacity: 0; transform: translateY(16px); }
.ef-nest { transition: opacity .45s var(--rk-wow-ease) calc(var(--i, 0) * 110ms), transform .45s var(--rk-wow-ease) calc(var(--i, 0) * 110ms); }

.ef-hydro { display: grid; gap: 16px; }
.ef-hydro__kopf > p { margin: 0 0 .8em; max-width: 66ch; color: var(--text-secondary); line-height: 1.6; }
.ef-gaenge { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.ef-gang { display: grid; grid-template-columns: 96px minmax(0, 1fr); grid-template-areas: "bild text"; gap: 12px; align-items: center; padding: 10px; border: 1px solid var(--rk-wow-line); border-radius: var(--rk-wow-r-card); background: var(--rk-wow-card); box-shadow: var(--ph-erhaben); }
.ef-gang figure { grid-area: bild; }
.ef-gang .ef-bildknopf img { aspect-ratio: 1; object-fit: cover; }
.ef-gang__text { grid-area: text; }
.ef-gang__text h4 { margin: 0 0 4px; color: var(--text-primary); font-size: var(--rk-wow-fs-body); font-weight: var(--rk-fw-medium, 500); line-height: 1.3; }
.ef-gang__text p { margin: 0; color: var(--text-secondary); font-size: var(--rk-wow-fs-meta); line-height: 1.5; }
.ef-gang__nr { position: absolute; margin: 4px 0 0 4px; z-index: 3; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--rk-wow-dark-bg); color: var(--rk-wow-dark-ink); font-size: var(--rk-wow-fs-tag); pointer-events: none; }
@media (min-width: 900px) {
  .ef-gaenge { grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); }
  .ef-gang { grid-template-columns: 1fr; grid-template-areas: "bild" "text"; align-items: start; align-content: start; }   /* sonst dehnt die höchste Karte die Zeilen der kürzeren */
  .ef-gang .ef-bildknopf img { aspect-ratio: 4 / 3; }
}
html.ef-js.rk-wow-motion .ef-gaenge:not(.is-in) .ef-gang { opacity: 0; transform: translateX(-14px); }
.ef-gang { position: relative; transition: opacity .45s var(--rk-wow-ease) calc(var(--i, 0) * 100ms), transform .45s var(--rk-wow-ease) calc(var(--i, 0) * 100ms); }
.ef-hydrotag .ef-maengel__titel { margin-bottom: 8px; }
.ef-raster--hydrotag { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (min-width: 760px) { .ef-raster--hydrotag { grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); } }
.ef-raster--hydrotag .ef-bildknopf img { aspect-ratio: 4 / 3; object-fit: cover; }
.ef-produkte { margin: 0; max-width: 92ch; padding-top: 10px; border-top: 1px solid var(--rk-wow-line); color: var(--text-secondary); font-size: var(--rk-wow-fs-meta); line-height: 1.55; }
.ef-produkte b { color: var(--text-primary); font-weight: var(--rk-fw-medium, 500); }
.ef-produkte__titel { margin-right: 6px; color: var(--text-muted); font-size: var(--rk-wow-fs-tag); letter-spacing: .08em; text-transform: uppercase; }
.ef-produkte__eigen { color: var(--text-primary); }

/* Arbeitsgänge als Reiter — rk-wow-spielzuege: Nummern wie Trikotnummern, Goldlinie unter dem aktiven Reiter.
   Ohne Skript: Leiste verborgen (hidden), alle Bereiche untereinander. Mit Skript (html.ef-js + .is-bereit): nur der gewählte Bereich. */
.ef-zuege { display: grid; gap: 14px; }
.ef-zuege__titel { margin: 0; color: var(--text-muted); font-size: var(--rk-wow-fs-tag); letter-spacing: .08em; text-transform: uppercase; }
.ef-zuege__leiste { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
@media (min-width: 760px) { .ef-zuege__leiste { grid-template-columns: repeat(var(--reiter, 4), minmax(0, 1fr)); } }
.ef-zuege--schritte .ef-zuege__leiste { max-width: 560px; }
.ef-zuege.is-bereit .ef-zuege__leiste[hidden] { display: grid; }
.ef-zuege__reiter { display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 8px 12px; border: 1px solid var(--rk-wow-line); border-radius: var(--rk-wow-r-md); background: var(--rk-wow-card); color: var(--text-secondary);
  box-shadow: var(--ph-erhaben); text-align: left; cursor: pointer; position: relative; transition: color .2s var(--rk-wow-ease), border-color .2s var(--rk-wow-ease); }
.ef-zuege__reiter::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: -1px; height: 3px; border-radius: 3px; background: var(--rk-gold-text); transform: scaleX(0); transform-origin: 0 50%; transition: transform .3s var(--rk-wow-ease); }
.ef-zuege__reiter[aria-selected="true"] { color: var(--text-primary); border-color: var(--rk-gold-text); }
.ef-zuege__reiter[aria-selected="true"]::after { transform: scaleX(1); }
@media (hover: hover) { .ef-zuege__reiter:hover { color: var(--text-primary); } }
.ef-zuege__nr { display: grid; place-items: center; flex: 0 0 auto; width: 34px; height: 34px; border-radius: 50%; border: 2px solid var(--rk-gold-text); color: var(--text-primary); font-size: var(--rk-wow-fs-meta); font-variant-numeric: tabular-nums; }
.ef-zuege__reiter[aria-selected="true"] .ef-zuege__nr { background: var(--rk-wow-dark-bg); color: var(--rk-wow-dark-ink); border-color: var(--rk-wow-dark-gold); }
.ef-zuege__name { font-size: var(--rk-wow-fs-meta); line-height: 1.25; }
.ef-zug { min-width: 0; }
.ef-zug:focus-visible { outline: 3px solid var(--rk-focus-color, currentColor); outline-offset: 4px; border-radius: var(--rk-wow-r-md); }
.ef-zuege:not(.is-bereit) .ef-zug + .ef-zug { margin-top: clamp(30px, 4vw, 48px); }
.ef-zuege.is-bereit .ef-zug[hidden] { display: none; }
@media print { .ef-zuege__leiste { display: none !important; } .ef-zug[hidden] { display: block !important; } }

/* ==========================================================================
   5 Flurgang — rk-wow-flurgang
   ========================================================================== */
.ef-nachher__text { margin: 0 0 16px; max-width: 66ch; color: var(--text-secondary); line-height: 1.6; }
.ef-flurgang { display: grid; gap: 12px; }
.ef-flurgang__spur { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(240px, 78%); gap: 12px; margin: 0; padding: 4px 2px 12px; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; scrollbar-width: thin; }
.ef-flurgang__spur:focus-visible { outline: 3px solid var(--rk-focus-color, currentColor); outline-offset: 4px; border-radius: var(--rk-wow-r-md); }
@media (min-width: 640px) { .ef-flurgang__spur { grid-auto-columns: minmax(240px, 44%); } }
@media (min-width: 1024px) { .ef-flurgang__spur { grid-auto-columns: calc((100% - 48px) / 5); } }
.ef-flurgang__bild { scroll-snap-align: start; }
.ef-flurgang__bild .ef-bildknopf img { aspect-ratio: 4 / 5; object-fit: cover; }
.ef-flurgang__steuer { display: none; grid-template-columns: 48px minmax(0, 1fr) auto 48px; gap: 14px; align-items: center; }
.ef-flurgang.is-bereit .ef-flurgang__steuer { display: grid; }
.ef-flurgang__weg { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 10px; align-items: center; color: var(--text-muted); font-size: var(--rk-wow-fs-tag); letter-spacing: .06em; text-transform: uppercase; }
.ef-flurgang__band { position: relative; height: 6px; border-radius: var(--rk-wow-r-pill); background: var(--rk-wow-line); overflow: hidden; }
.ef-flurgang__band i { position: absolute; inset: 0; border-radius: inherit; background: var(--rk-gold-text); transform-origin: 0 50%; transform: scaleX(.04); transition: transform .2s linear; }
.ef-flurgang__zahl { min-width: 4.5ch; color: var(--text-secondary); font-size: var(--rk-wow-fs-meta); font-variant-numeric: tabular-nums; text-align: right; }
@media (max-width: 639.98px) { .ef-flurgang__start, .ef-flurgang__ende { display: none; } }

/* ==========================================================================
   6 Nachspielzeit
   ========================================================================== */
.ef-nachspiel__karte { display: grid; gap: 22px; padding: clamp(18px, 2.6vw, 30px); border: 1px solid var(--rk-wow-line); border-radius: var(--rk-wow-r-card); background: var(--rk-wow-card); box-shadow: var(--ph-erhaben); }
.ef-nachspiel__raster { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; align-content: start; }
.ef-nachspiel__raster .ef-bildknopf img { aspect-ratio: 1; }
.ef-nachspiel__rechts > .ef-kopf { margin-bottom: 12px; }
@media (min-width: 1024px) { .ef-nachspiel__karte { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 3vw, 48px); align-items: center; } }

/* ==========================================================================
   7 Fragen: zentral rk-wow-fragen (rk-wow.css AC), hier nur Abstand
   ========================================================================== */
.ef-fragen .rk-wow-fragen__karte { scroll-margin-top: 110px; }

/* ==========================================================================
   Aufruf Stopfen — rk-wow-cta-stopfen (CTA-KATALOG Nr. 25, neu)
   ========================================================================== */
.rk-cta--stopfen .rk-cta__stopfenfeld { display: grid; gap: 18px; padding: clamp(20px, 3vw, 32px) clamp(20px, 4vw, 44px); border: 1px solid var(--rk-wow-line); border-radius: var(--rk-wow-r-card); background: var(--rk-wow-card); box-shadow: var(--ph-erhaben); }
.rk-cta--stopfen .rk-cta__setzen { justify-self: center; width: 132px; }
.rk-cta--stopfen svg { display: block; width: 100%; height: auto; overflow: visible; }
.rk-cta--stopfen .rk-cta__wand { fill: var(--rk-wow-tint); stroke: var(--rk-wow-line); stroke-width: 1; }
.rk-cta--stopfen .rk-cta__trichter { fill: color-mix(in srgb, var(--text-primary) 10%, transparent); stroke: var(--rk-wow-line-strong); stroke-width: 2; }
.rk-cta--stopfen .rk-cta__loch { fill: color-mix(in srgb, var(--text-primary) 55%, transparent); }
.rk-cta--stopfen .rk-cta__stopfen circle:first-child { fill: var(--rk-wow-card); stroke: none; }
.rk-cta--stopfen .rk-cta__stopfen-rand { fill: none; stroke: var(--rk-gold-text); stroke-width: 3; stroke-dasharray: 1; stroke-dashoffset: 0; transition: stroke-dashoffset .6s var(--rk-wow-ease) .55s; }
.rk-cta--stopfen .rk-cta__stopfen { transform-box: fill-box; transform-origin: 50% 50%; transition: transform .55s cubic-bezier(.3, 1.35, .5, 1) .1s, opacity .3s var(--rk-wow-ease) .1s; }
html.rk-cta-bewegt .rk-cta--stopfen:not(.is-in) .rk-cta__stopfen { transform: translate(34px, -30px) scale(1.25); opacity: 0; }
html.rk-cta-bewegt .rk-cta--stopfen:not(.is-in) .rk-cta__stopfen-rand { stroke-dashoffset: 1; }
@media (hover: hover) { .rk-cta--stopfen:hover .rk-cta__stopfen { transform: scale(.94); } }
.rk-cta--stopfen:focus-within .rk-cta__stopfen { transform: scale(.94); }
.rk-cta--stopfen .rk-cta__inhalt { display: grid; gap: 12px; }
.rk-cta--stopfen .rk-cta__text { margin: 0; color: var(--text-primary); font-size: var(--rk-wow-fs-title, 1.5rem); line-height: 1.2; text-wrap: balance; }
.rk-cta--stopfen .rk-cta__klein { margin: 0; max-width: 62ch; color: var(--text-secondary); font-size: var(--rk-wow-fs-meta); line-height: 1.55; }
.rk-cta--stopfen .rk-cta__knopf { justify-self: start; }
@media (min-width: 760px) { .rk-cta--stopfen .rk-cta__stopfenfeld { grid-template-columns: 150px minmax(0, 1fr); align-items: center; gap: clamp(24px, 4vw, 48px); } }

/* Video (rk-wow-video) */
.ef-video { position: relative; overflow: hidden; border-radius: var(--rk-wow-r-md); background: var(--rk-wow-dark-bg); box-shadow: var(--ph-erhaben-stark); }
.ef-video__v { display: block; width: 100%; height: auto; aspect-ratio: 9 / 16; object-fit: cover; background: var(--rk-wow-dark-bg); }
.ef-video__play { position: absolute; left: 50%; top: 50%; z-index: 2; display: none; place-items: center; width: 60px; height: 60px; margin: -30px 0 0 -30px; padding: 0;
  border: 2px solid var(--rk-wow-dark-gold); border-radius: 50%; background: var(--rk-wow-dark-bg); color: var(--rk-wow-dark-ink); cursor: pointer; transition: transform .2s var(--rk-wow-ease); }
html.ef-js .ef-video__play { display: grid; }
html.ef-js .ef-video--ohne-quelle .ef-video__play { display: none; }
.ef-video__play svg { width: 24px; height: 24px; fill: currentColor; }
.ef-video__play .ef-i-pause, .ef-video.is-laeuft .ef-video__play .ef-i-play { display: none; }
.ef-video.is-laeuft .ef-video__play .ef-i-pause { display: block; }
.ef-video.is-laeuft .ef-video__play { left: auto; top: 8px; right: 8px; width: 48px; height: 48px; margin: 0; opacity: .92; }
@media (hover: hover) { .ef-video__play:hover { transform: scale(1.06); } }
.ef-video__play:focus-visible { outline: 3px solid var(--rk-wow-dark-ink); outline-offset: 3px; }

/* ==========================================================================
   Großansicht (rk-wow-gross)
   ========================================================================== */
.ef-gross { width: min(96vw, 1100px); max-height: 94vh; padding: 0; overflow: hidden; border: 1px solid color-mix(in srgb, var(--rk-gold-text) 45%, transparent); border-radius: var(--rk-wow-r-card); background: var(--rk-wow-card); color: var(--text-primary); box-shadow: var(--ph-erhaben-stark); }
.ef-gross::backdrop { background: color-mix(in srgb, var(--rk-wow-dark-bg) 82%, transparent); }
.ef-gross__rahmen { position: relative; display: grid; grid-template-rows: minmax(0, 1fr) auto; gap: 10px; max-height: 94vh; padding: 12px; box-sizing: border-box; }
.ef-gross__inhalt { display: grid; place-items: center; min-height: 0; overflow: hidden; border-radius: var(--rk-wow-r-md); background: var(--rk-wow-tint); touch-action: pan-y; }
.ef-gross__inhalt img, .ef-gross__inhalt video { display: block; width: auto; height: auto; max-width: 100%; max-height: calc(94vh - 170px); }
.ef-gross__fuss { display: grid; grid-template-columns: 48px minmax(0, 1fr) 48px; grid-template-areas: "z t w" ". n ."; gap: 4px 12px; align-items: center; text-align: center; }
.ef-gross__text { grid-area: t; margin: 0; color: var(--text-secondary); font-size: var(--rk-wow-fs-meta); line-height: 1.5; }
.ef-gross__zahl { grid-area: n; color: var(--text-muted); font-size: var(--rk-wow-fs-tag); }
.ef-gross__pfeil[data-ef-gschritt="-1"] { grid-area: z; } .ef-gross__pfeil[data-ef-gschritt="1"] { grid-area: w; }
.ef-gross__pfeil[hidden] { display: grid; visibility: hidden; }
.ef-gross__zu { position: absolute; top: 18px; right: 18px; z-index: 2; }

/* ==========================================================================
   Dunkelmodus: Karten erhaben, Knöpfe mit festen Dunkelwerten (FLOW §10, §23)
   ========================================================================== */
:root[data-theme="dark"] :is(.ef-streifen, .ef-gang, .ef-nachspiel__karte, .ef-zuege__reiter, .rk-cta--stopfen .rk-cta__stopfenfeld) { background: var(--rk-wow-dark-raised); box-shadow: var(--ph-erhaben-stark); }
:root[data-theme="dark"] .ef-konen { background: var(--rk-wow-dark-raised); box-shadow: var(--ph-erhaben); }
:root[data-theme="dark"] .ef-tafel { background: var(--rk-wow-dark-raised); }
:root[data-theme="dark"] :is(.ef-etikett, .ef-schritt__nr, .ef-gang__nr, .ef-filmzeichen) { background: var(--rk-wow-dark-bg); border: 1px solid var(--rk-wow-dark-gold); }
:root[data-theme="dark"] :is(.ef-haelfte__marke, .ef-mittellinie__kreis) { background: var(--rk-wow-dark-raised); }
:root[data-theme="dark"] .rk-cta--stopfen .rk-cta__stopfen circle:first-child { fill: var(--rk-wow-dark-raised); }
:root[data-theme="dark"] :is(.ef-gross__pfeil, .ef-gross__zu, .ef-flurgang__pfeil) { background: var(--rk-wow-dark-bg); color: var(--rk-wow-dark-ink); border: 2px solid var(--rk-wow-dark-gold); }
:root[data-theme="dark"] :is(.ef-gross__pfeil, .ef-gross__zu, .ef-flurgang__pfeil):is(:hover, :focus-visible):not(:disabled) { background: var(--rk-wow-dark-gold); color: var(--rk-wow-dark-bg); }
:root[data-theme="dark"] .ef-gross { background: color-mix(in srgb, var(--rk-wow-dark-text) 9%, var(--rk-wow-dark-bg)); box-shadow: var(--ph-erhaben-stark), 0 0 80px color-mix(in srgb, var(--rk-gold-text) 18%, transparent); }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) :is(.ef-streifen, .ef-gang, .ef-nachspiel__karte, .ef-zuege__reiter, .rk-cta--stopfen .rk-cta__stopfenfeld) { background: var(--rk-wow-dark-raised); box-shadow: var(--ph-erhaben-stark); }
  :root:not([data-theme="light"]) .ef-konen { background: var(--rk-wow-dark-raised); box-shadow: var(--ph-erhaben); }
  :root:not([data-theme="light"]) .ef-tafel { background: var(--rk-wow-dark-raised); }
  :root:not([data-theme="light"]) :is(.ef-etikett, .ef-schritt__nr, .ef-gang__nr, .ef-filmzeichen) { background: var(--rk-wow-dark-bg); border: 1px solid var(--rk-wow-dark-gold); }
  :root:not([data-theme="light"]) :is(.ef-haelfte__marke, .ef-mittellinie__kreis) { background: var(--rk-wow-dark-raised); }
  :root:not([data-theme="light"]) .rk-cta--stopfen .rk-cta__stopfen circle:first-child { fill: var(--rk-wow-dark-raised); }
  :root:not([data-theme="light"]) :is(.ef-gross__pfeil, .ef-gross__zu, .ef-flurgang__pfeil) { background: var(--rk-wow-dark-bg); color: var(--rk-wow-dark-ink); border: 2px solid var(--rk-wow-dark-gold); }
  :root:not([data-theme="light"]) :is(.ef-gross__pfeil, .ef-gross__zu, .ef-flurgang__pfeil):is(:hover, :focus-visible):not(:disabled) { background: var(--rk-wow-dark-gold); color: var(--rk-wow-dark-bg); }
  :root:not([data-theme="light"]) .ef-gross { background: color-mix(in srgb, var(--rk-wow-dark-text) 9%, var(--rk-wow-dark-bg)); box-shadow: var(--ph-erhaben-stark), 0 0 80px color-mix(in srgb, var(--rk-gold-text) 18%, transparent); }
}

/* ==========================================================================
   Reduzierte Bewegung und Druck: Endzustand sofort
   ========================================================================== */
@media (prefers-reduced-motion: reduce) {
  .ef-haelfte, .ef-mittellinie__linie, .ef-mittellinie__kreis, .ef-tafel__zeile, .ef-schritt, .ef-konus, .ef-konenreihe__linie li, .ef-konenreihe__stopfen, .ef-nest, .ef-gang,
  .ef-streifen__knopf, .ef-flurgang__band i, .rk-cta--stopfen .rk-cta__stopfen, .rk-cta--stopfen .rk-cta__stopfen-rand, .ef-bildknopf img, .ef-zuege__reiter::after { transition: none !important; }
  html.ef-js.rk-wow-motion :is(.ef-mittellinie .ef-haelfte, .ef-mittellinie .ef-mittellinie__linie, .ef-mittellinie .ef-mittellinie__kreis, .ef-tafel .ef-tafel__zeile, .ef-schritte .ef-schritt,
    .ef-konen__stufen .ef-konus, .ef-konenreihe .ef-konenreihe__linie li, .ef-nester .ef-nest, .ef-gaenge .ef-gang) { opacity: 1 !important; transform: none !important; }
  html.rk-cta-bewegt .rk-cta--stopfen .rk-cta__stopfen { transform: none !important; opacity: 1 !important; }
  html.rk-cta-bewegt .rk-cta--stopfen .rk-cta__stopfen-rand { stroke-dashoffset: 0 !important; }
}
:is(html.no-motion, html[data-motion="reduced"]) :is(.ef-haelfte, .ef-mittellinie__linie, .ef-mittellinie__kreis, .ef-tafel__zeile, .ef-schritt, .ef-konus, .ef-konenreihe__linie li, .ef-konenreihe__stopfen,
  .ef-nest, .ef-gang, .ef-streifen__knopf, .ef-flurgang__band i, .rk-cta--stopfen .rk-cta__stopfen, .rk-cta--stopfen .rk-cta__stopfen-rand, .ef-bildknopf img) { transition: none !important; }
:is(html.no-motion, html[data-motion="reduced"]) :is(.ef-haelfte, .ef-mittellinie__linie, .ef-mittellinie__kreis, .ef-tafel__zeile, .ef-schritt, .ef-konus, .ef-konenreihe__linie li, .ef-nest, .ef-gang,
  .rk-cta--stopfen .rk-cta__stopfen) { opacity: 1 !important; transform: none !important; }
:is(html.no-motion, html[data-motion="reduced"]) .rk-cta--stopfen .rk-cta__stopfen-rand { stroke-dashoffset: 0 !important; }
@media print {
  .ef-gross, .ef-video__play, .ef-flurgang__steuer, .ef-filmzeichen { display: none !important; }
  .ef-haelfte, .ef-mittellinie__linie, .ef-mittellinie__kreis, .ef-tafel__zeile, .ef-schritt, .ef-konus, .ef-konenreihe__linie li, .ef-nest, .ef-gang { opacity: 1 !important; transform: none !important; }
  .ef-flurgang__spur { grid-auto-flow: row; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: visible; }
}
