.elementor-kit-8{--e-global-color-primary:#676232;--e-global-color-secondary:#161715;--e-global-color-text:#EDEDE8;--e-global-color-accent:#B5B07A;--e-global-color-fgraphi:#1F211D;--e-global-color-ffooter:#10110F;--e-global-color-fkreide:#F2F0E8;--e-global-color-fkreidd:#E7E4D8;--e-global-color-fpapier:#F4F2EA;--e-global-color-tdprima:#EDEDE8;--e-global-color-tdsekun:rgba(237,237,232,0.78);--e-global-color-tdterti:rgba(237,237,232,0.62);--e-global-color-thprima:#161715;--e-global-color-thsekun:rgba(22,23,21,0.68);--e-global-color-thterti:rgba(22,23,21,0.55);--e-global-color-ldunkel:rgba(237,237,232,0.14);--e-global-color-ldstark:rgba(237,237,232,0.30);--e-global-color-lhell00:rgba(22,23,21,0.14);--e-global-color-lhstark:rgba(22,23,21,0.30);--e-global-color-lavocad:rgba(244,242,234,0.30);--e-global-color-flheadr:rgba(22,23,21,0.88);--e-global-color-flkachl:rgba(22,23,21,0.82);--e-global-color-vsocial:rgba(22,23,21,0.85);--e-global-color-vherooo:rgba(22,23,21,0.10);--e-global-color-vheromi:rgba(22,23,21,0.50);--e-global-color-vherount:rgba(22,23,21,0.92);--e-global-color-sobjekt:rgba(22,23,21,0.25);--e-global-typography-primary-font-family:"Archivo";--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Archivo";--e-global-typography-secondary-font-weight:900;--e-global-typography-text-font-family:"Archivo";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"IBM Plex Mono";--e-global-typography-accent-font-weight:500;--e-global-typography-tdispla-font-family:"Archivo";--e-global-typography-tdispla-font-size:190px;--e-global-typography-tdispla-font-weight:900;--e-global-typography-tdispla-text-transform:uppercase;--e-global-typography-tdispla-line-height:0.84em;--e-global-typography-tdispla-letter-spacing:-0.045em;--e-global-typography-th1home-font-family:"Archivo";--e-global-typography-th1home-font-size:128px;--e-global-typography-th1home-font-weight:900;--e-global-typography-th1home-text-transform:uppercase;--e-global-typography-th1home-line-height:0.88em;--e-global-typography-th1home-letter-spacing:-0.045em;--e-global-typography-th1arti-font-family:"Archivo";--e-global-typography-th1arti-font-size:68px;--e-global-typography-th1arti-font-weight:800;--e-global-typography-th1arti-line-height:1em;--e-global-typography-th1arti-letter-spacing:-0.035em;--e-global-typography-th2sect-font-family:"Archivo";--e-global-typography-th2sect-font-size:60px;--e-global-typography-th2sect-font-weight:800;--e-global-typography-th2sect-line-height:1em;--e-global-typography-th2sect-letter-spacing:-0.035em;--e-global-typography-tzitat0-font-family:"Archivo";--e-global-typography-tzitat0-font-size:56px;--e-global-typography-tzitat0-font-weight:800;--e-global-typography-tzitat0-line-height:1.08em;--e-global-typography-tzitat0-letter-spacing:-0.035em;--e-global-typography-th3kapi-font-family:"Archivo";--e-global-typography-th3kapi-font-size:32px;--e-global-typography-th3kapi-font-weight:800;--e-global-typography-th3kapi-line-height:1.1em;--e-global-typography-th3kapi-letter-spacing:-0.025em;--e-global-typography-tdatxl0-font-family:"IBM Plex Mono";--e-global-typography-tdatxl0-font-size:60px;--e-global-typography-tdatxl0-font-weight:400;--e-global-typography-tdatxl0-line-height:1em;--e-global-typography-tdatxl0-letter-spacing:-0.04em;--e-global-typography-ttmenu0-font-family:"Archivo";--e-global-typography-ttmenu0-font-size:40px;--e-global-typography-ttmenu0-font-weight:800;--e-global-typography-ttmenu0-line-height:1em;--e-global-typography-ttmenu0-letter-spacing:-0.035em;--e-global-typography-ttkartg-font-family:"Archivo";--e-global-typography-ttkartg-font-size:26px;--e-global-typography-ttkartg-font-weight:800;--e-global-typography-ttkartg-line-height:1.1em;--e-global-typography-ttkartg-letter-spacing:-0.025em;--e-global-typography-ttkarte-font-family:"Archivo";--e-global-typography-ttkarte-font-size:22px;--e-global-typography-ttkarte-font-weight:700;--e-global-typography-ttkarte-line-height:1.2em;--e-global-typography-ttkarte-letter-spacing:-0.015em;--e-global-typography-ttprodu-font-family:"Archivo";--e-global-typography-ttprodu-font-size:19px;--e-global-typography-ttprodu-font-weight:700;--e-global-typography-ttprodu-line-height:1.25em;--e-global-typography-ttprodu-letter-spacing:-0.01em;--e-global-typography-ttlogo0-font-family:"Archivo";--e-global-typography-ttlogo0-font-size:18px;--e-global-typography-ttlogo0-font-weight:800;--e-global-typography-ttlogo0-line-height:1.2em;--e-global-typography-ttlogo0-letter-spacing:-0.01em;--e-global-typography-txintro-font-family:"Archivo";--e-global-typography-txintro-font-size:24px;--e-global-typography-txintro-font-weight:500;--e-global-typography-txintro-line-height:1.45em;--e-global-typography-txintro-letter-spacing:-0.01em;--e-global-typography-txlead0-font-family:"Archivo";--e-global-typography-txlead0-font-size:19px;--e-global-typography-txlead0-font-weight:400;--e-global-typography-txlead0-line-height:1.55em;--e-global-typography-txlead0-letter-spacing:0em;--e-global-typography-txartik-font-family:"Archivo";--e-global-typography-txartik-font-size:19px;--e-global-typography-txartik-font-weight:400;--e-global-typography-txartik-line-height:1.7em;--e-global-typography-txartik-letter-spacing:0em;--e-global-typography-txbody0-font-family:"Archivo";--e-global-typography-txbody0-font-size:17px;--e-global-typography-txbody0-font-weight:400;--e-global-typography-txbody0-line-height:1.6em;--e-global-typography-txbody0-letter-spacing:0em;--e-global-typography-txbodst-font-family:"Archivo";--e-global-typography-txbodst-font-size:17px;--e-global-typography-txbodst-font-weight:600;--e-global-typography-txbodst-line-height:1.5em;--e-global-typography-txbodst-letter-spacing:0em;--e-global-typography-txbodys-font-family:"Archivo";--e-global-typography-txbodys-font-size:16px;--e-global-typography-txbodys-font-weight:400;--e-global-typography-txbodys-line-height:1.6em;--e-global-typography-txbodys-letter-spacing:0em;--e-global-typography-txsmall-font-family:"Archivo";--e-global-typography-txsmall-font-size:14px;--e-global-typography-txsmall-font-weight:400;--e-global-typography-txsmall-line-height:1.5em;--e-global-typography-txsmall-letter-spacing:0em;--e-global-typography-tdatl00-font-family:"IBM Plex Mono";--e-global-typography-tdatl00-font-size:30px;--e-global-typography-tdatl00-font-weight:400;--e-global-typography-tdatl00-line-height:1.2em;--e-global-typography-tdatl00-letter-spacing:-0.03em;--e-global-typography-tdatm00-font-family:"IBM Plex Mono";--e-global-typography-tdatm00-font-size:20px;--e-global-typography-tdatm00-font-weight:400;--e-global-typography-tdatm00-line-height:1.3em;--e-global-typography-tdatm00-letter-spacing:0em;--e-global-typography-tdats00-font-family:"IBM Plex Mono";--e-global-typography-tdats00-font-size:13px;--e-global-typography-tdats00-font-weight:400;--e-global-typography-tdats00-line-height:1.5em;--e-global-typography-tdats00-letter-spacing:0em;--e-global-typography-tlabel0-font-family:"IBM Plex Mono";--e-global-typography-tlabel0-font-size:11px;--e-global-typography-tlabel0-font-weight:500;--e-global-typography-tlabel0-text-transform:uppercase;--e-global-typography-tlabel0-line-height:1.4em;--e-global-typography-tlabel0-letter-spacing:0.14em;--e-global-typography-tbutton-font-family:"IBM Plex Mono";--e-global-typography-tbutton-font-size:11px;--e-global-typography-tbutton-font-weight:500;--e-global-typography-tbutton-text-transform:uppercase;--e-global-typography-tbutton-line-height:1.4em;--e-global-typography-tbutton-letter-spacing:0.12em;background-color:var( --e-global-color-secondary );}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-8{--e-global-typography-tdispla-font-size:100px;--e-global-typography-th1home-font-size:88px;--e-global-typography-th1arti-font-size:52px;--e-global-typography-th2sect-font-size:48px;--e-global-typography-tzitat0-font-size:44px;--e-global-typography-th3kapi-font-size:28px;--e-global-typography-tdatxl0-font-size:50px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8{--e-global-typography-tdispla-font-size:64px;--e-global-typography-th1home-font-size:52px;--e-global-typography-th1arti-font-size:36px;--e-global-typography-th2sect-font-size:34px;--e-global-typography-tzitat0-font-size:30px;--e-global-typography-th3kapi-font-size:24px;--e-global-typography-tdatxl0-font-size:40px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --farbe-nacht:#161715; --farbe-graphit:#1F211D; --farbe-footer:#10110F; --farbe-kreide:#F2F0E8; --farbe-kreide-dunkel:#E7E4D8; --farbe-avocado:#676232; --farbe-avocado-hell:#B5B07A; --farbe-schnee:#EDEDE8; --farbe-papier:#F4F2EA; --text-dunkel-primaer:#EDEDE8; --text-dunkel-sekundaer:rgba(237,237,232,0.78); --text-dunkel-tertiaer:rgba(237,237,232,0.62); --text-hell-primaer:#161715; --text-hell-sekundaer:rgba(22,23,21,0.68); --text-hell-tertiaer:rgba(22,23,21,0.55); --linie-dunkel:rgba(237,237,232,0.14); --linie-dunkel-stark:rgba(237,237,232,0.30); --linie-hell:rgba(22,23,21,0.14); --linie-hell-stark:rgba(22,23,21,0.30); --linie-avocado:rgba(244,242,234,0.30); --flaeche-header:rgba(22,23,21,0.88); --flaeche-kachel-ueber-bild:rgba(22,23,21,0.82); --font-archivo:Archivo; --font-ibm-plex-mono:IBM Plex Mono; --flaeche-verlauf-social:rgba(22,23,21,0.85); --verlauf-hero-oben:rgba(22,23,21,0.10); --verlauf-hero-mitte:rgba(22,23,21,0.50); --schatten-objekt:rgba(22,23,21,0.25); --verlauf-hero-unten:rgba(22,23,21,0.92); --rand-seite:32px; --rand-seite-mobil:20px; --abstand-sektion:112px; --abstand-sektion-tablet:88px; --abstand-sektion-mobil:72px; --abstand-unterseite:96px; --abstand-unterseite-mobil:64px; --abstand-intro:80px; --abstand-intro-mobil:56px; --abstand-sektionskopf:40px; --gap-karten:28px; --gap-karten-vertikal:40px; --padding-karte:24px; --padding-karte-mobil:20px; --flaeche-header-scroll:rgba(22,23,21,0.45); }
/* Start custom CSS *//* Partnerband: Laufanimation (V4-Klassen speichern keine Animationen). */
@keyframes partnerband-lauf { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.partnerband-spur { animation: partnerband-lauf 60s linear infinite; }
.partnerzeile .partnerband-spur { animation-duration: 90s; }
.partnerzeile:hover .partnerband-spur { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) { .partnerband-spur { animation: none; } }

/* Navigation bleibt beim Scrollen oben. Hintergrund und Unschärfe über globale Klassen, Wechsel per Plugin (navigation.js). */
.elementor-location-header { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 100; }

/* Sprungziele nicht unter der fixierten Navigation verstecken. */
html { scroll-padding-top: 80px; }
/* Bewegung (Plugin includes/bewegung.php). Eine Kurve, drei Dauern. V4-Klassen können keine Pseudo-Elemente und kein «Eltern-Hover → Kind». */
:root { --bewegung-kurve: cubic-bezier(0.2, 0.7, 0.2, 1); --bewegung-kurz: 0.2s; --bewegung-mittel: 0.7s; --bewegung-lang: 1.1s; }

/* Sektionskopf: Label blendet ein, Titel steigt auf, Linie zeichnet sich (Platzhalter «bewegung-kopf»). */
html.bewegung-an .bewegung-kopf { position: relative; border-bottom-color: transparent; }
html.bewegung-an .bewegung-kopf::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; background: var(--linie-dunkel); transform: scaleX(0); transform-origin: left center; transition: transform var(--bewegung-lang) var(--bewegung-kurve) 0.15s; pointer-events: none; }
html.bewegung-an .bewegung-kopf.sektionskopf-hell::after { background: var(--linie-hell); }
html.bewegung-an .bewegung-kopf .typo-label { opacity: 0; transition: opacity var(--bewegung-mittel) var(--bewegung-kurve); }
html.bewegung-an .bewegung-kopf :is(h1, h2, h3) { opacity: 0; transform: translateY(12px); transition: opacity var(--bewegung-mittel) var(--bewegung-kurve) 0.08s, transform var(--bewegung-mittel) var(--bewegung-kurve) 0.08s; }
html.bewegung-an .bewegung-kopf :is(.e-button-base, .legende, .legende-eintrag) { opacity: 0; transition: opacity var(--bewegung-mittel) var(--bewegung-kurve) 0.3s; }
html.bewegung-an .bewegung-kopf.ist-sichtbar::after { transform: scaleX(1); }
html.bewegung-an .bewegung-kopf.ist-sichtbar :is(.typo-label, h1, h2, h3, .e-button-base, .legende, .legende-eintrag) { opacity: 1; transform: none; }

/* Diagramme: Balken bauen sich von links auf (Skript), Kugeln erscheinen nacheinander (Platzhalter «bewegung-diagramm»). */
html.bewegung-an .bewegung-diagramm :is(.balken-spur, .podest-balken, .ergebnis-balken):not(.ist-sichtbar) > * { clip-path: inset(0 100% 0 0); }
html.bewegung-an .bewegung-diagramm .kugel-icon { opacity: 0; transform: translateY(8px); transition: opacity var(--bewegung-mittel) var(--bewegung-kurve), transform var(--bewegung-mittel) var(--bewegung-kurve); }
html.bewegung-an .bewegung-diagramm .ist-sichtbar .kugel-icon { opacity: 1; transform: none; }

/* Saisonverlauf: Stiele wachsen aus der Grundlinie, nacheinander (Versatz pro Säule per Skript). Negative Seitenränder, damit das Rang-Kästchen nicht beschnitten wird. */
html.bewegung-an .bewegung-diagramm .verlauf-stiel { clip-path: inset(100% -40px 0 -40px); transition: clip-path var(--bewegung-mittel) var(--bewegung-kurve) var(--bewegung-versatz, 0ms); }
html.bewegung-an .bewegung-diagramm .verlauf-diagramm.ist-sichtbar .verlauf-stiel { clip-path: inset(-40px -40px 0 -40px); }

/* Pfeile gehen beim Hover mit (Skript setzt <span class="pfeil">). */
.pfeil { display: inline-block; transition: transform 0.3s var(--bewegung-kurve); }
@media (hover: hover) {
  :is(a, button):hover > .pfeil[data-richtung="rechts"], :is(a, button):focus-visible > .pfeil[data-richtung="rechts"] { transform: translateX(4px); }
  :is(a, button):hover > .pfeil[data-richtung="diagonal"], :is(a, button):focus-visible > .pfeil[data-richtung="diagonal"] { transform: translate(3px, -3px); }
  :is(a, button):hover > .pfeil[data-richtung="unten"], :is(a, button):focus-visible > .pfeil[data-richtung="unten"] { transform: translateY(3px); }
  :is(a, button):hover > .pfeil[data-richtung="links"], :is(a, button):focus-visible > .pfeil[data-richtung="links"] { transform: translateX(-4px); }
  /* Bilder in verlinkten Karten zoomen leicht in ihrem Rahmen (Zuschnitt mit clip-path, kein Wrapper nötig: 1.04 ↔ 1.923 %). */
  .karte-link img { clip-path: inset(0); transition: transform 0.6s var(--bewegung-kurve), clip-path 0.6s var(--bewegung-kurve); }
  .karte-link:hover img, .karte-link:focus-visible img { transform: scale(1.04); clip-path: inset(1.923%); }
}

/* Bewegung Paket B: Hero, Countdown, Karten gestaffelt, Menü mobil (Platzhalter «bewegung-hero», «bewegung-countdown», «bewegung-gestaffelt», «bewegung-menue»). */
@keyframes bewegung-zoom { from { transform: scale(1.06); } to { transform: none; } }
@keyframes bewegung-ein { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@keyframes bewegung-maske { from { transform: translateY(105%); } to { transform: none; } }
@keyframes bewegung-zahl { from { opacity: 0; transform: translateY(-0.3em); } to { opacity: 1; transform: none; } }
@keyframes bewegung-blende { from { opacity: 0.4; } to { opacity: 1; } }

html.bewegung-an .bewegung-hero > .bild-fuellend { animation: bewegung-zoom 1.8s var(--bewegung-kurve) both; }
html.bewegung-an .bewegung-hero .typo-display:not(.maske-bereit) { opacity: 0; }
html.bewegung-an .bewegung-hero .maske { display: block; overflow: hidden; padding-block: 0.12em 0.06em; margin-block: -0.12em -0.06em; }
html.bewegung-an .bewegung-hero .maske-innen { display: block; animation: bewegung-maske 0.9s var(--bewegung-kurve) both; animation-delay: calc(0.15s + var(--n, 0) * 0.09s); }
html.bewegung-an .bewegung-hero .hero-inhalt > :not(.typo-display) { animation: bewegung-ein var(--bewegung-mittel) var(--bewegung-kurve) both; }
html.bewegung-an .bewegung-hero .hero-inhalt > :nth-child(1) { animation-delay: 0.05s; }
html.bewegung-an .bewegung-hero .hero-inhalt > :nth-child(3) { animation-delay: 0.5s; }
html.bewegung-an .bewegung-hero .hero-inhalt > :nth-child(4) { animation-delay: 0.6s; }
html.bewegung-an .bewegung-hero .hero-inhalt > :nth-child(5) { animation-delay: 0.7s; }
html.bewegung-an .bewegung-hero .hero-inhalt > :nth-child(6) { animation-delay: 0.8s; }

html.bewegung-an .bewegung-countdown .zahl-wechsel { animation: bewegung-zahl 0.4s var(--bewegung-kurve); }

html.bewegung-an .bewegung-gestaffelt > :not(.bewegung-fertig) { opacity: 0; transform: translateY(16px); transition: opacity var(--bewegung-mittel) var(--bewegung-kurve) var(--bewegung-versatz, 0ms), transform var(--bewegung-mittel) var(--bewegung-kurve) var(--bewegung-versatz, 0ms); }
html.bewegung-an .bewegung-gestaffelt > .ist-sichtbar:not(.bewegung-fertig) { opacity: 1; transform: none; }

html.bewegung-an .bewegung-menue > * { animation: bewegung-ein 0.5s var(--bewegung-kurve) both; }
html.bewegung-an .bewegung-menue > :nth-child(2) { animation-delay: 0.04s; }
html.bewegung-an .bewegung-menue > :nth-child(3) { animation-delay: 0.08s; }
html.bewegung-an .bewegung-menue > :nth-child(4) { animation-delay: 0.12s; }
html.bewegung-an .bewegung-menue > :nth-child(5) { animation-delay: 0.16s; }
html.bewegung-an .bewegung-menue > :nth-child(6) { animation-delay: 0.2s; }
html.bewegung-an .bewegung-menue > :nth-child(7) { animation-delay: 0.24s; }
html.bewegung-an .bewegung-menue > :nth-child(8) { animation-delay: 0.28s; }
html.bewegung-an .bewegung-menue > :nth-child(9) { animation-delay: 0.32s; }
html.bewegung-an .bewegung-menue > :nth-child(n+10) { animation-delay: 0.36s; }

/* Bewegung Paket C: Filter blenden über (filter.js setzt aria-busy), Seitenübergänge (View Transitions, Navigation bleibt stehen). */
html.bewegung-an .filter-bereich[aria-busy] { opacity: 0.4; transition: opacity 0.15s; }
html.bewegung-an .filter-bereich.filter-neu { animation: bewegung-blende 0.35s var(--bewegung-kurve); }
@media (prefers-reduced-motion: no-preference) {
  @view-transition { navigation: auto; }
  ::view-transition-old(root), ::view-transition-new(root) { animation-duration: 0.35s; animation-timing-function: cubic-bezier(0.2, 0.7, 0.2, 1); }
  .elementor-location-header { view-transition-name: kopfzeile; }
}

@media (prefers-reduced-motion: reduce) {
  .pfeil, .karte-link img { transition: none; }
  .karte-link:hover img, .karte-link:focus-visible img { transform: none; clip-path: none; }
}/* End custom CSS */