/* Eigene CSS-Sticky-Implementierung für Logo+Hauptmenü-Zeile – 2026-07-22,
   siebenundfünfzigster Durchgang, mit zwei Nachbesserungen im selben
   Durchgang.

   VERLAUF (siehe S04 Header und Navigation.md für die volle Historie):
   1. Erster Versuch: `.fusion-header { position: sticky; }` - keine Wirkung.
   2. Ursache vermutet: Avadas `#wrapper{overflow:hidden!important}`
      site-weit in der generierten Dynamic CSS - Fix per höherer Spezifität
      (`html #wrapper{overflow-y:visible!important}`) - IMMER NOCH keine
      Wirkung.
   3. Mit lokal installiertem Playwright (npx playwright, Chromium lokal
      installiert) tatsächlich nachgestellt und Schritt für Schritt
      isoliert (Dummy-<div>s an verschiedenen DOM-Ebenen mit
      position:sticky getestet): der wirkliche Grund ist strukturell, kein
      CSS-Bug. `.fusion-header`s direktes Elternelement (`.fusion-header-v3`,
      darüber `.fusion-header-wrapper`) ist selbst nur so hoch wie der
      Header (~110-157px, variiert nach Content) - ein position:sticky-
      Element kann sich aber nur innerhalb der Höhe seines EIGENEN
      Elternelements "festkleben", danach scrollt es zwangsläufig mit dem
      (viel zu kurzen) Elternelement weg. Sticky ist an dieser DOM-Stelle
      strukturell unmöglich, unabhängig vom CSS.

   LÖSUNG (erster Teil): `position: fixed` statt `sticky` - fixed hat diese
   Höhenbeschränkung nicht (immer relativ zum Viewport). Dafür muss der
   dadurch aus dem normalen Fluss genommene Platz kompensiert werden, sonst
   springt der Seiteninhalt unter den Header. Avada hat dafür bereits eine
   leere Platzhalter-<div> vorgesehen (`.fusion-header-sticky-height`,
   direkt vor `.fusion-header` im Markup, normalerweise von Avadas eigenem
   Sticky-JS befüllt) - hier zweckentfremdet: eigenes, kleines Vanilla-JS
   (drg-header-sticky.js) setzt ihre Höhe exakt auf die aktuelle
   Header-Höhe, ohne jede Abhängigkeit von Avadas `header_sticky`-Option
   oder JS.

   NACHBESSERUNG (im selben Durchgang, nach Rückmeldung "Top-Leiste rollt
   nicht weg sondern fehlt völlig"): `position: fixed` wurde zunächst
   UNBEDINGT gesetzt, also auch ganz oben auf der Seite (scrollY=0). Die
   Sprachumschalter-Kopfleiste (`.fusion-secondary-header`) steht im
   normalen Dokumentfluss direkt VOR der Logo+Menü-Zeile - an derselben
   Bildschirmposition (y=0), an die `position:fixed` die Menü-Zeile
   permanent setzt. Ergebnis: die Menü-Zeile lag die ganze Zeit deckend
   (z-index:100, undurchsichtiger Hintergrund) über der Kopfleiste, die
   dadurch komplett unsichtbar war (nicht "weggerollt", sondern verdeckt).

   Fix: `position:fixed` gilt jetzt nur noch mit der Klasse
   `.drg-header-fixed`, die per JS (drg-header-sticky.js) erst gesetzt
   wird, sobald über die Höhe der Kopfleiste hinausgescrollt wurde. Bis
   dahin bleibt die Menü-Zeile im normalen Fluss UNTERHALB der Kopfleiste
   (Avada-Standardverhalten). Der Übergang ist unsichtbar, weil die
   Menü-Zeile genau an der Stelle steht, an die `position:fixed` sie sowieso
   setzen würde, sobald die Kopfleiste weggescrollt ist.

   Kein Risiko für den alten Scroll-Sprung-Bug (Durchgang 44): Die
   Header-Höhe ändert sich hier NIE dynamisch während des Fixiert-Seins
   (anders als bei Avadas eigenem Sticky-Mechanismus, der zwischen ~148px
   und 53px umschaltete) - der Spacer wird nur beim Umschalten
   fixiert/normal gesetzt, nicht fortlaufend während des Scrollens neu
   berechnet. */
.fusion-header.drg-header-fixed {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
}

/* Nachbesserung (gleicher Durchgang): Der JS-Spacer (siehe
   drg-header-sticky.js) setzte die Höhe korrekt per Inline-Style, blieb
   aber trotzdem 0px hoch sichtbar - Ursache: Avada versteckt
   .fusion-header-sticky-height standardmäßig (`display:none`), zeigt sie
   nur bei aktivem `.fusion-is-sticky`-Klassenwechsel (Avadas eigener,
   hier ungenutzter Mechanismus). Da wir diese <div> zweckentfremden,
   erzwingen wir sie dauerhaft sichtbar (Höhe wird von JS gesteuert, 0px
   solange die Menü-Zeile nicht fixiert ist). */
.fusion-header-sticky-height {
	display: block !important;
}
