/* ==========================================================================
   FSS „Flutlicht“ – gemeinsame Gestaltung für alle öffentlichen Seiten
   Pflege: Farben, Schriften, Abstände und Bewegungen nur hier in :root ändern.
   Plugin-Bausteine (.fss-ui) haben eigene, auf den Baustein begrenzte Dateien.
   ========================================================================== */
:root{
  /* Farben */
  --fl-night:#0e1a13;          /* Nachtrasen: Header, Seitenanfänge, Footer */
  --fl-night-2:#16271d;
  --fl-night-3:#21382a;
  --fl-brand:#81A936;          /* FSS-Grün (Logo) – Lichtakzent */
  --fl-green:#557a17;          /* Buttons, Flächen mit weißer Schrift (≥ 4,5:1) */
  --fl-green-ink:#3f5c0f;      /* Grün für Text auf Hell */
  --fl-chalk:#f3f6ee;          /* Kreideweiß auf Dunkel */
  --fl-chalk-2:rgba(243,246,238,.72);
  --fl-ink:#18211b;            /* Fließtext */
  --fl-muted:#5b655e;
  --fl-page:#eef1ea;           /* Seitenhintergrund */
  --fl-band:#f7f9f3;           /* abwechselnde Abschnitte */
  --fl-surface:#ffffff;
  --fl-line:#dde3d6;
  /* Schrift */
  --fl-display:"Oswald","Roboto Condensed",system-ui,sans-serif;
  --fl-text:"Roboto",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --fl-h1:clamp(33.6px,21.6px + 3.2vw,60px);
  --fl-h2:clamp(25.6px,19.2px + 1.6vw,38.4px);
  --fl-h3:clamp(18.4px,16.8px + .4vw,21.6px);
  --fl-body:clamp(16px,15.5px + .15vw,17px);
  --fl-measure:70ch;
  /* Raum & Form */
  --fl-gap:clamp(28px,4vw,56px);
  --fl-radius:14px;
  --fl-shadow:0 1px 2px rgba(14,26,19,.06),0 8px 24px -12px rgba(14,26,19,.22);
  --fl-shadow-hi:0 2px 4px rgba(14,26,19,.08),0 18px 36px -16px rgba(14,26,19,.35);
  /* Bewegung */
  --fl-ease:cubic-bezier(.16,1,.3,1);
  --fl-fast:160ms;
  --fl-mid:280ms;
  --fl-slow:620ms;
}

/* Elementor-Grundwerte (Kit) auf das FSS-System umstellen statt Elementor-Vorgaben (Hellblau/Grau). */
.elementor-kit-6{
  --e-global-color-primary:var(--fl-green);
  --e-global-color-secondary:var(--fl-night);
  --e-global-color-text:var(--fl-ink);
  --e-global-color-accent:var(--fl-brand);
  --e-global-typography-primary-font-family:"Oswald";
  --e-global-typography-secondary-font-family:"Oswald";
  --e-global-typography-text-font-family:"Roboto";
  --e-global-typography-accent-font-family:"Roboto";
}

/* ---------- Grundlagen ---------- */
html{scrollbar-color:var(--fl-green) #e3e8dc;-webkit-text-size-adjust:100%}
body.fss-site{background:var(--fl-page)!important;color:var(--fl-ink);font-family:var(--fl-text);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.fss-site ::selection{background:var(--fl-brand);color:var(--fl-night)}
.fss-site :focus-visible{outline:3px solid var(--fl-brand);outline-offset:3px;border-radius:4px}
.fss-site img{max-width:100%;height:auto}

/* Elementors Einblend-Effekte (fadeIn…, bounceIn) ersetzen: Inhalte nie versteckt warten lassen. */
.fss-site .elementor-invisible{visibility:visible!important;opacity:1!important}
.fss-site .elementor-element.animated{animation:none!important}

/* ---------- Typografie ---------- */
.fss-site .elementor-widget-text-editor,.fss-site .entry-content,.fss-site .fss-legal{font-size:var(--fl-body);line-height:1.65;color:var(--fl-ink)}
/* Elementor-Texte im Inhalt nie kleiner als die Lesegröße (Einzelwerte wie 11 px überschreiben) */
.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) .elementor-widget-text-editor,.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) .elementor-widget-text-editor :is(p,li,span){font-size:var(--fl-body)!important;line-height:1.65!important}
.fss-site .elementor-widget-text-editor p,.fss-site .entry-content p,.fss-site .fss-legal p{max-width:var(--fl-measure)}
/* lange Wörter und Adressen umbrechen statt seitlich überstehen */
.fss-site .elementor-widget-text-editor,.fss-site .entry-content,.fss-site .fss-legal{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}
.fss-site .fss-legal a{overflow-wrap:anywhere}
/* Tabellen schon vor dem Laden der Baustein-Stile im Rahmen halten */
.fss-site .sp-table-wrapper{max-width:100%;overflow-x:auto}
.fss-site .entry-content a,.fss-site .elementor-widget-text-editor a,.fss-site .fss-legal a{color:var(--fl-green-ink);text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.2em;transition:color var(--fl-fast) var(--fl-ease),text-decoration-color var(--fl-fast) var(--fl-ease)}
.fss-site .entry-content a:hover,.fss-site .elementor-widget-text-editor a:hover,.fss-site .fss-legal a:hover{color:var(--fl-night);text-decoration-color:var(--fl-brand)}

/* Abschnittsüberschriften im Inhalt (Elementor-Überschriften, nicht Header/Footer/Hero) */
.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) .e-parent .elementor-widget-heading .elementor-heading-title{
  font-family:var(--fl-display)!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.01em!important;
  font-size:var(--fl-h2)!important;line-height:1.05!important;color:var(--fl-night)!important;text-wrap:balance;position:relative;padding-bottom:.42em;margin:0 0 .35em
}
.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) .e-parent .elementor-widget-heading .elementor-heading-title::after{
  content:"";position:absolute;left:0;bottom:0;width:56px;height:4px;border-radius:2px;background:var(--fl-brand);transform-origin:left center
}
.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) .e-parent .elementor-widget-heading h3.elementor-heading-title,
.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) .e-parent .elementor-widget-heading h4.elementor-heading-title{font-size:var(--fl-h3)!important;font-family:var(--fl-text)!important;text-transform:none!important;letter-spacing:0!important}
.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) .e-parent .elementor-widget-heading :is(h3,h4).elementor-heading-title::after{display:none}
.fss-site .fss-dup{display:none!important}
/* Sprungziele nicht unter dem fixierten Header verstecken */
.fss-site .elementor-menu-anchor,.fss-site [id]:target{scroll-margin-top:104px}
/* zentrierte Überschriften: Strich mittig */
.fss-site .fss-hcenter .elementor-heading-title::after{left:50%!important;margin-left:-28px;transform-origin:center}

/* ---------- Header & Navigation ---------- */
/* Heller Header: Das Vereinslogo (schwarze Silhouette, transparent) steht ohne Kachel direkt auf Kreideweiß.
   Höhe 96 px (Desktop) / 84 px (Tablet) / 70 px (mobil); Logo 80 / 68 / 54 px hoch. */
.fss-site .elementor-location-header > .e-con,.fss-site .elementor-location-header > .e-con.elementor-sticky__spacer{background:#fff!important;height:96px!important;min-height:96px!important;box-shadow:0 1px 0 var(--fl-line),inset 0 -3px 0 var(--fl-brand);transition:background-color var(--fl-mid) var(--fl-ease),box-shadow var(--fl-mid) var(--fl-ease)}
.fss-site .elementor-location-header > .e-con > .e-con-inner{align-items:center!important;gap:32px!important;padding-left:24px!important;padding-right:24px!important}
/* Geschlossenes Mobilmenü liegt unsichtbar rechts neben dem Knopf – seitlich abschneiden, damit die Seite nicht breiter wird */
.fss-site .elementor-location-header > .e-con{overflow-x:clip}
html.fss-scrolled .fss-site .elementor-location-header > .e-con{background:rgba(255,255,255,.95)!important;box-shadow:0 10px 30px -20px rgba(14,26,19,.45),inset 0 -3px 0 var(--fl-brand);-webkit-backdrop-filter:saturate(1.2) blur(10px);backdrop-filter:saturate(1.2) blur(10px)}
.fss-site .elementor-location-header .elementor-widget-theme-site-logo{flex:0 0 auto!important;width:auto!important}
.fss-site .elementor-location-header .elementor-widget-theme-site-logo a{display:block;line-height:0}
.fss-site .elementor-location-header .elementor-widget-theme-site-logo img{display:block;height:80px!important;max-height:none!important;width:auto!important;max-width:none!important;object-fit:contain;background:none!important;padding:0!important;border-radius:0!important;box-shadow:none!important;transition:transform var(--fl-mid) var(--fl-ease)}
.fss-site .elementor-location-header .elementor-widget-theme-site-logo a:hover img{transform:translateY(-1px)}
.fss-site .elementor-location-header .elementor-widget-nav-menu{flex:0 1 auto!important;min-width:0;width:auto!important;margin-left:auto!important}
.fss-site .elementor-location-header .elementor-nav-menu--main > ul{flex-wrap:nowrap!important;justify-content:flex-end!important;gap:clamp(18px,2.6vw,40px)}
.fss-site .elementor-location-header .elementor-nav-menu--main > ul > li{margin:0!important}
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-item{
  color:var(--fl-ink)!important;fill:var(--fl-ink)!important;font-family:var(--fl-text)!important;font-weight:600!important;font-size:15.5px!important;letter-spacing:.01em!important;text-transform:none!important;white-space:nowrap;
  position:relative;transition:color var(--fl-fast) var(--fl-ease)
}
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-item .sub-arrow svg{fill:currentColor!important}
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-item::after{
  content:"";position:absolute!important;left:0;right:0;bottom:calc(50% - 1.15em)!important;height:3px;border-radius:2px;background:var(--fl-brand)!important;
  transform:scaleX(0);transform-origin:center;transition:transform var(--fl-mid) var(--fl-ease);opacity:1!important;top:auto!important;width:auto!important
}
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-item:hover,
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-item:focus-visible,
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var(--fl-green-ink)!important;fill:var(--fl-green-ink)!important}
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-item:hover::after,
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-item:focus-visible::after,
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active::after{transform:scaleX(1)}
/* Tablet quer / kleine Laptops: Menü bleibt einzeilig neben dem Logo */
@media (max-width:1100px){
  .fss-site .elementor-location-header > .e-con,.fss-site .elementor-location-header > .e-con.elementor-sticky__spacer{height:84px!important;min-height:84px!important}
  .fss-site .elementor-location-header > .e-con > .e-con-inner{gap:20px!important;padding-left:16px!important;padding-right:16px!important}
  .fss-site .elementor-location-header > .e-con{padding-left:0!important;padding-right:0!important}
  .fss-site .elementor-location-header .elementor-widget-theme-site-logo img{height:68px!important}
  .fss-site .elementor-location-header .elementor-nav-menu--main > ul{gap:clamp(10px,1.6vw,20px)}
  .fss-site .elementor-location-header .elementor-nav-menu--main .elementor-item{font-size:14.5px!important}
}
@media (max-width:900px){
  .fss-site .elementor-location-header > .e-con > .e-con-inner{gap:14px!important}
  .fss-site .elementor-location-header .elementor-widget-theme-site-logo img{height:60px!important}
  .fss-site .elementor-location-header .elementor-nav-menu--main > ul{gap:12px}
  .fss-site .elementor-location-header .elementor-nav-menu--main .elementor-item{font-size:13.5px!important}
  .fss-site .elementor-location-header .elementor-nav-menu--main .sub-arrow{padding-left:4px!important;margin:0!important}
}
@media (max-width:767px){
  .fss-site .elementor-location-header > .e-con,.fss-site .elementor-location-header > .e-con.elementor-sticky__spacer{height:70px!important;min-height:70px!important}
  .fss-site .elementor-location-header .elementor-widget-theme-site-logo img{height:54px!important}
}
/* Sprungmarken der Startseite nicht als „aktiv“ markieren */
.fss-site .elementor-location-header .elementor-nav-menu--main .sub-menu .elementor-item-active{color:var(--fl-chalk)!important}
.fss-site .elementor-location-header .elementor-nav-menu--main .sub-menu{
  background:var(--fl-night-2)!important;border:1px solid rgba(243,246,238,.08);border-radius:12px;padding:6px!important;min-width:220px;
  box-shadow:0 22px 44px -20px rgba(0,0,0,.65);overflow:hidden
}
.fss-site .elementor-location-header .elementor-nav-menu--main .sub-menu{animation:fl-drop var(--fl-mid) var(--fl-ease) both}
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-sub-item{
  color:var(--fl-chalk-2)!important;background:transparent!important;border-radius:8px;font-family:var(--fl-text)!important;font-weight:500!important;font-size:15px!important;padding:11px 14px!important;
  transition:background-color var(--fl-fast) var(--fl-ease),color var(--fl-fast) var(--fl-ease),padding-left var(--fl-mid) var(--fl-ease)
}
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-sub-item:hover,
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-sub-item:focus-visible{background:rgba(129,169,54,.16)!important;color:#fff!important;padding-left:18px!important}
.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-sub-item::after,.fss-site .elementor-location-header .elementor-nav-menu--main .elementor-sub-item::before{display:none!important}
@keyframes fl-drop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
/* Mobil: Menüknopf und ausklappendes Menü */
.fss-site .elementor-location-header .elementor-menu-toggle{background:rgba(14,26,19,.06)!important;color:var(--fl-night)!important;fill:var(--fl-night)!important;border-radius:10px;padding:10px!important;transition:background-color var(--fl-fast) var(--fl-ease)}
.fss-site .elementor-location-header .elementor-menu-toggle svg{fill:var(--fl-night)!important}
.fss-site .elementor-location-header .elementor-menu-toggle:hover{background:rgba(129,169,54,.2)!important}
.fss-site .elementor-location-header .elementor-menu-toggle.elementor-active{background:var(--fl-green)!important}
.fss-site .elementor-location-header .elementor-menu-toggle.elementor-active svg{fill:#fff!important}
.fss-site .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container{
  background:var(--fl-night-2)!important;border-top:1px solid rgba(243,246,238,.08);box-shadow:0 24px 40px -20px rgba(0,0,0,.7);max-height:calc(100dvh - 70px);overflow-y:auto
}
.fss-site .elementor-location-header .elementor-nav-menu--dropdown .elementor-item,
.fss-site .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item{
  color:var(--fl-chalk)!important;background:transparent!important;font-family:var(--fl-text)!important;font-size:17px!important;font-weight:600!important;padding:14px 22px!important;min-height:48px;border-bottom:1px solid rgba(243,246,238,.06)
}
.fss-site .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item{font-weight:500!important;font-size:16px!important;color:var(--fl-chalk-2)!important;padding-left:38px!important}
.fss-site .elementor-location-header .elementor-nav-menu--dropdown .elementor-item.elementor-item-active{color:var(--fl-brand)!important;box-shadow:inset 3px 0 0 var(--fl-brand)}
.fss-site .elementor-location-header .elementor-nav-menu--dropdown a:hover{background:rgba(129,169,54,.14)!important;color:#fff!important}

/* ---------- Seitenanfang (Unterseiten) ---------- */
.fss-intro{position:relative;overflow:hidden;isolation:isolate;background:
  radial-gradient(120% 140% at 88% -20%,rgba(129,169,54,.34),rgba(129,169,54,0) 55%),
  linear-gradient(180deg,var(--fl-night) 0%,var(--fl-night-2) 100%);color:var(--fl-chalk);
  padding:clamp(34px,5vw,64px) 0 clamp(30px,4vw,52px)}
.fss-intro::after{content:"";position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,rgba(129,169,54,0),rgba(129,169,54,.7),rgba(129,169,54,0))}
.fss-intro__in{position:relative;z-index:1;max-width:1140px;margin:0 auto;padding:0 clamp(16px,3vw,10px)}
.fss-intro__title{font-family:var(--fl-display);font-weight:700;font-size:var(--fl-h1);line-height:.98;letter-spacing:.005em;text-transform:uppercase;color:#fff;margin:0;max-width:18ch;text-wrap:balance;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}
.fss-intro__nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.fss-intro__link{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:999px;border:1px solid rgba(243,246,238,.22);color:var(--fl-chalk)!important;text-decoration:none!important;font-weight:600;font-size:15px;
  transition:background-color var(--fl-fast) var(--fl-ease),border-color var(--fl-fast) var(--fl-ease),transform var(--fl-fast) var(--fl-ease)}
.fss-intro__link::after{content:"";width:7px;height:7px;margin-left:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.7}
.fss-intro__link:hover{background:rgba(129,169,54,.2);border-color:var(--fl-brand)}
.fss-intro__link:active{transform:translateY(1px)}
.fss-intro__pitch{position:absolute;z-index:0;top:0;right:0;height:100%;width:min(58%,640px);fill:none;stroke:rgba(243,246,238,.16);stroke-width:2.2;pointer-events:none}
.fss-intro__pitch .fss-intro__spot{fill:rgba(243,246,238,.28);stroke:none}
.fss-intro__pitch [pathLength]{stroke-dasharray:1;stroke-dashoffset:0}
html.fss-js .fss-intro__pitch [pathLength]{animation:fl-chalk 1.25s var(--fl-ease) .15s both}
html.fss-js .fss-intro__pitch circle[pathLength]{animation-delay:.35s;animation-duration:1.5s}
html.fss-js .fss-intro__pitch path[pathLength]:last-of-type{animation-delay:.55s}
html.fss-js .fss-intro__title{animation:fl-rise var(--fl-slow) var(--fl-ease) both}
html.fss-js .fss-intro__nav{animation:fl-rise var(--fl-slow) var(--fl-ease) .08s both}
@keyframes fl-chalk{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes fl-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (max-width:640px){.fss-intro__pitch{width:90%;opacity:.7}}
/* Erste Überschrift doppelt? (z. B. „Pokal“, „Kontakt“) → per JS .fss-dup; Bausteintitel direkt: */
.fss-has-intro .fss-karten .fss-ks-title{display:none}

/* ---------- Startseite: Hero (erster Abschnitt der Startseite) ---------- */
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child{padding-top:10px!important}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child .elementor-widget-heading .elementor-heading-title::after{display:none}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child{position:relative;overflow:hidden;isolation:isolate}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child::before{content:"";position:absolute;inset:0;z-index:0;background:inherit;background-size:cover;background-position:center;transform-origin:60% 40%}
html.fss-js body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child::before{animation:fl-settle 2.2s var(--fl-ease) both}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:
  linear-gradient(180deg,rgba(14,26,19,0) 25%,rgba(14,26,19,.55) 78%),radial-gradient(90% 70% at 15% 70%,rgba(14,26,19,.55),rgba(14,26,19,0) 70%)}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child > .elementor-shape{z-index:1}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child > .elementor-shape-top{display:none}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child > .elementor-shape-bottom .elementor-shape-fill{fill:var(--fl-page)!important;opacity:1}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child > .elementor-shape-bottom svg{height:84px!important}
@media (max-width:767px){body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child > .elementor-shape-bottom svg{height:56px!important}}
/* Hero-Text oberhalb der Welle halten */
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child{padding-bottom:110px!important}
@media (max-width:767px){body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child{padding-bottom:76px!important}}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child > .elementor-element,body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child > .e-con-inner{position:relative;z-index:2}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child .elementor-widget-heading .elementor-heading-title{font-family:var(--fl-display)!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.005em!important;font-size:clamp(35.2px,19.2px + 4.4vw,80px)!important;line-height:.95!important;color:#fff!important;text-shadow:0 2px 24px rgba(0,0,0,.35);text-wrap:balance}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child .elementor-widget-text-editor{color:var(--fl-chalk)!important;font-family:var(--fl-display)!important;font-size:clamp(18.4px,16px + .8vw,25.6px)!important;letter-spacing:.02em;text-shadow:0 1px 14px rgba(0,0,0,.45)}
body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child .elementor-widget-text-editor *{color:inherit!important;font:inherit!important}
html.fss-js body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child .elementor-widget-heading{animation:fl-rise .8s var(--fl-ease) .1s both}
html.fss-js body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child .elementor-widget-text-editor{animation:fl-rise .8s var(--fl-ease) .28s both}
@keyframes fl-settle{from{transform:scale(1.09)}to{transform:scale(1)}}

/* ---------- Abschnitte auf Elementor-Seiten ---------- */
/* Plugin-Bausteine in Elementor-Shortcode-Widgets volle Breite geben: In Containern mit flex-wrap (Spalte)
   misst Chrome sonst die Höhe bei Inhaltsbreite und lässt große Leerräume unter dem Baustein. */
.fss-site .elementor-widget-shortcode:has(.fss-ui){width:100%;max-width:100%}
/* Startseite mobil: Elementor-Abstandshalter über „Aktuelle Spiele“ entfällt (Abschnitt hat eigenen Innenabstand) */
@media (max-width:767px){body.home.fss-site .elementor-element-be7309a{display:none}}
.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent{padding-top:var(--fl-gap);padding-bottom:var(--fl-gap)}
.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:nth-child(even){background-color:var(--fl-band)}
.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:empty,
.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:not(:has(.elementor-widget)){display:none}

/* ---------- Beitragsvorschauen (Elementor „Beiträge“) ---------- */
.fss-site .elementor-posts .elementor-post{background:var(--fl-surface);border:1px solid var(--fl-line);border-radius:var(--fl-radius);padding:20px 22px;box-shadow:var(--fl-shadow);
  transition:transform var(--fl-mid) var(--fl-ease),box-shadow var(--fl-mid) var(--fl-ease),border-color var(--fl-mid) var(--fl-ease);position:relative}
.fss-site .elementor-posts .elementor-post__title,.fss-site .elementor-posts .elementor-post__title a{font-family:var(--fl-text)!important;font-weight:700!important;font-size:var(--fl-h3)!important;line-height:1.3!important;color:var(--fl-night)!important;text-transform:none!important;letter-spacing:0!important;text-decoration:none}
.fss-site .elementor-posts .elementor-post__title a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.fss-site .elementor-posts .elementor-post__meta-data{color:var(--fl-muted)!important;font-size:13.5px!important;margin-top:6px}
.fss-site .elementor-posts .elementor-post__excerpt p{color:var(--fl-ink)!important;font-size:15.5px!important;line-height:1.6!important;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.fss-site .elementor-posts .elementor-post__read-more{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;margin-top:4px;color:var(--fl-green-ink)!important;font-weight:700!important;font-size:14.5px!important;text-transform:none!important;letter-spacing:0!important}
.fss-site .elementor-posts .elementor-post__read-more::after{content:"";width:16px;height:2px;background:currentColor;transition:width var(--fl-mid) var(--fl-ease)}
@media (hover:hover){
  .fss-site .elementor-posts .elementor-post:hover{transform:translateY(-3px);box-shadow:var(--fl-shadow-hi);border-color:rgba(129,169,54,.5)}
  .fss-site .elementor-posts .elementor-post:hover .elementor-post__read-more::after{width:26px}
}
.fss-site .elementor-pagination{display:flex;justify-content:center;gap:6px;margin-top:22px}
.fss-site .elementor-pagination .page-numbers{display:inline-grid;place-items:center;min-width:40px;height:40px;padding:0 10px;border-radius:10px;background:var(--fl-surface);border:1px solid var(--fl-line);color:var(--fl-night)!important;font-weight:600;text-decoration:none;transition:background-color var(--fl-fast) var(--fl-ease),border-color var(--fl-fast) var(--fl-ease)}
.fss-site .elementor-pagination .page-numbers.current{background:var(--fl-night);border-color:var(--fl-night);color:#fff!important}
.fss-site .elementor-pagination a.page-numbers:hover{border-color:var(--fl-brand)}

/* ---------- Amtliche Mitteilungen: waagerecht verschiebbar (fss-mitteilungen.js) ---------- */
.fss-site .fss-mt .fss-mt-viewport{contain:paint;max-width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:8px 8px 12px;margin:0 -8px;border-radius:var(--fl-radius);outline-offset:-3px}
.fss-site .fss-mt .fss-mt-viewport::-webkit-scrollbar{display:none}
.fss-site .fss-mt .fss-mt-viewport:focus-visible{outline:3px solid var(--fl-brand)}
.fss-site .fss-mt .fss-mt-track{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:86%;gap:16px!important;row-gap:0!important}
@media (min-width:600px){.fss-site .fss-mt .fss-mt-track{grid-auto-columns:calc((100% - 32px) / 2.2)}}
@media (min-width:1025px){.fss-site .fss-mt .fss-mt-track{grid-auto-columns:calc((100% - 48px) / 3.2)}}
.fss-site .fss-mt .fss-mt-item{scroll-snap-align:start;min-width:0;margin:0!important;width:auto!important}
.fss-site .fss-mt .elementor-post__title,.fss-site .fss-mt .elementor-post__title a{overflow-wrap:anywhere}
.fss-site .fss-mt .elementor-post__meta-data{display:flex;flex-wrap:wrap;gap:2px 8px;color:var(--fl-muted)!important}
.fss-site .fss-mt .elementor-post__meta-data .elementor-post-date{font-weight:700;color:var(--fl-green-ink)}
.fss-site .fss-mt .elementor-post__meta-data span+span::before{content:none!important}
@media (pointer:fine){.fss-site .fss-mt .fss-mt-viewport,.fss-site .fss-mt .elementor-post__title a::after{cursor:grab}}
.fss-site .fss-mt .fss-mt-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto;user-select:none;-webkit-user-select:none}
.fss-site .fss-mt .fss-mt-viewport.is-dragging *{pointer-events:none;cursor:grabbing!important}
.fss-site .fss-mt .fss-mt-viewport img{-webkit-user-drag:none}
.fss-site .fss-mt .elementor-post:focus-within{outline-offset:-1px}
.fss-site .fss-mt-ctrl{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:8px}
.fss-site .fss-mt-pos{margin:0;font-size:14px;font-weight:600;color:var(--fl-muted);font-variant-numeric:tabular-nums}
.fss-site .fss-mt-status{font-size:13.5px;color:var(--fl-muted)}
.fss-site .fss-mt-all{margin-left:auto;display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:700;color:var(--fl-green-ink)!important;text-decoration:none!important}
.fss-site .fss-mt-all::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg)}
.fss-site .fss-mt-all:hover{text-decoration:underline!important}
.fss-site .fss-mt-arrow{flex:0 0 auto;width:44px;height:44px;border-radius:999px;border:1px solid var(--fl-line);background:var(--fl-surface);color:var(--fl-night);cursor:pointer;display:grid;place-items:center;padding:0;transition:background-color var(--fl-fast) var(--fl-ease),border-color var(--fl-fast) var(--fl-ease)}
.fss-site .fss-mt-arrow::before{content:"";width:9px;height:9px;border-right:2.5px solid currentColor;border-bottom:2.5px solid currentColor;transform:rotate(-45deg);margin-right:3px}
.fss-site .fss-mt-prev::before{transform:rotate(135deg);margin-right:0;margin-left:3px}
.fss-site .fss-mt-arrow:hover:not(:disabled){border-color:var(--fl-brand);background:var(--fl-band)}
.fss-site .fss-mt-arrow:disabled{opacity:.35;cursor:default}
@media (max-width:420px){.fss-site .fss-mt-all{margin-left:0;order:5;width:100%}}

/* ---------- Kalender-Abos (Startseite, fss-site.js) ---------- */
.fss-site .fss-abo-old{display:none!important}
.fss-site .fss-abo{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px 18px;margin:22px 0 0;padding:18px 20px;border-radius:var(--fl-radius);background:var(--fl-night);color:var(--fl-chalk);box-shadow:var(--fl-shadow);background-image:radial-gradient(90% 160% at 100% 0%,rgba(129,169,54,.22),rgba(129,169,54,0) 60%)}
.fss-site .fss-abo__icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:rgba(129,169,54,.16);color:var(--fl-brand)}
.fss-site .fss-abo__icon svg{width:26px;height:26px}
.fss-site .fss-abo__title{margin:0!important;font-family:var(--fl-display)!important;font-weight:700!important;text-transform:uppercase;letter-spacing:.01em;font-size:21px!important;line-height:1.15!important;color:#fff!important;text-wrap:balance}
.fss-site .fss-abo__sub{margin:4px 0 0!important;font-size:15px!important;line-height:1.45;color:var(--fl-chalk-2)!important}
.fss-site .fss-abo__btns{display:flex;flex-wrap:wrap;gap:8px}
.fss-site .fss-abo__btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:10px;border:1px solid rgba(243,246,238,.28);background:rgba(243,246,238,.06);color:var(--fl-chalk)!important;font-weight:600;font-size:15px;text-decoration:none!important;white-space:nowrap;transition:background-color var(--fl-fast) var(--fl-ease),border-color var(--fl-fast) var(--fl-ease),color var(--fl-fast) var(--fl-ease)}
.fss-site .fss-abo__btn svg{width:18px;height:18px;flex:0 0 18px;color:var(--fl-brand)}
.fss-site .fss-abo__btn:hover{background:var(--fl-brand);border-color:var(--fl-brand);color:var(--fl-night)!important}
.fss-site .fss-abo__btn:hover svg{color:var(--fl-night)}
.fss-site .fss-abo__btn:focus-visible{outline:3px solid #fff;outline-offset:2px}
@media (max-width:960px){.fss-site .fss-abo{grid-template-columns:auto minmax(0,1fr)}.fss-site .fss-abo__btns{grid-column:1 / -1}}
@media (max-width:520px){.fss-site .fss-abo{padding:16px}.fss-site .fss-abo__btns{display:grid;grid-template-columns:1fr}.fss-site .fss-abo__btn{justify-content:flex-start}}

/* ---------- Buttons ---------- */
.fss-site .elementor-button{background:var(--fl-green)!important;color:#fff!important;fill:#fff!important;border:0!important;border-radius:10px!important;font-family:var(--fl-text)!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;
  box-shadow:0 1px 0 rgba(255,255,255,.18) inset,0 6px 16px -10px rgba(63,92,15,.8);transition:background-color var(--fl-fast) var(--fl-ease),transform var(--fl-fast) var(--fl-ease),box-shadow var(--fl-mid) var(--fl-ease)}
.fss-site .elementor-button:hover{background:var(--fl-green-ink)!important;transform:translateY(-1px);box-shadow:0 1px 0 rgba(255,255,255,.18) inset,0 12px 22px -12px rgba(63,92,15,.85)}
.fss-site .elementor-button:active{transform:translateY(1px)}

/* ---------- Akkordeons (Downloads u. a.) ---------- */
.fss-site .e-n-accordion-item{border-radius:12px;background:var(--fl-surface);border:1px solid var(--fl-line);margin-bottom:10px;overflow:hidden;transition:box-shadow var(--fl-mid) var(--fl-ease),border-color var(--fl-mid) var(--fl-ease)}
.fss-site .e-n-accordion-item[open]{box-shadow:var(--fl-shadow);border-color:rgba(129,169,54,.45)}
.fss-site .e-n-accordion-item-title{padding:16px 18px!important;min-height:56px;border:0!important;background:transparent!important;transition:background-color var(--fl-fast) var(--fl-ease)}
.fss-site .e-n-accordion-item-title:hover{background:var(--fl-band)!important}
.fss-site .e-n-accordion-item-title-text{font-family:var(--fl-text)!important;font-weight:700!important;font-size:17px!important;color:var(--fl-night)!important}
.fss-site .e-n-accordion-item-title-icon svg{fill:var(--fl-green)!important;transition:transform var(--fl-mid) var(--fl-ease)}
.fss-site .e-n-accordion-item[open] > .e-n-accordion-item-title + *{animation:fl-rise var(--fl-mid) var(--fl-ease) both}

/* ---------- Theme-Seiten (Mannschaften, Spiele, Beiträge, Archive) ---------- */
.fss-site .content-area-right-sidebar,.fss-site .content-area-left-sidebar{width:100%!important;float:none!important;margin-left:0!important}
.fss-site .site-content > .content-area,.fss-site #primary{max-width:1140px;margin-left:auto!important;margin-right:auto!important}
.fss-site .site-content{background:transparent!important;padding-top:0!important;border:0!important}
.fss-site .site-content .content-area,.fss-site #primary,.fss-site .site-main{border:0!important;padding-top:0!important;box-shadow:none!important}
.fss-site .site-content::before,.fss-site .site-content::after,.fss-site .content-area::after{border:0!important}
.fss-site .site-main > article,.fss-site .site-main > .type-post{background:transparent}
.fss-site .entry-header{display:flow-root;position:relative;background:var(--fl-night);color:var(--fl-chalk);box-shadow:0 0 0 100vmax var(--fl-night);clip-path:inset(0 -100vmax);padding:clamp(26px,4vw,46px) 0 clamp(22px,3vw,36px)!important;margin-bottom:clamp(24px,3vw,40px)!important;
  border-bottom:0}
.fss-site .entry-header .entry-title,.fss-site .page-header .page-title{float:none!important;font-family:var(--fl-display)!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.005em!important;font-size:var(--fl-h1)!important;line-height:1!important;color:#fff!important;text-wrap:balance;overflow-wrap:anywhere;margin:0!important}
html.fss-js .fss-site .entry-header .entry-title{animation:fl-rise var(--fl-slow) var(--fl-ease) both}
/* Kopf von Beiträgen: Kategorie und Datum als Etiketten unter dem Titel (Theme-Grau entfernen) */
.fss-site .entry-header .entry-details,.fss-site .entry-header .article-details{display:flex!important;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0 0!important;padding:0!important;float:none!important;clear:both;position:static!important;background:transparent!important;border:0!important}
.fss-site .entry-header .entry-meta,.fss-site .entry-header .entry-category-links,.fss-site .entry-header .cat-links{display:flex;flex-wrap:wrap;gap:6px;margin:0!important;padding:0!important;float:none!important;position:static!important;background:transparent!important;border:0!important;box-shadow:none!important}
.fss-site .entry-header time.updated{display:none!important}
.fss-site .entry-header .entry-category-links a,.fss-site .entry-header .cat-links a{display:inline-flex;align-items:center;min-height:30px;padding:0 12px!important;border-radius:999px;background:var(--fl-brand)!important;color:var(--fl-night)!important;font-weight:700;font-size:13.5px!important;text-decoration:none!important;transition:background-color var(--fl-fast) var(--fl-ease),color var(--fl-fast) var(--fl-ease)}
.fss-site .entry-header .entry-category-links a:hover,.fss-site .entry-header .cat-links a:hover{background:#fff!important;color:var(--fl-night)!important}
.fss-site .entry-header .entry-category-links a:focus-visible,.fss-site .entry-header .cat-links a:focus-visible,.fss-site .entry-header .posted-on a:focus-visible{outline:3px solid #fff;outline-offset:2px}
.fss-site .entry-header .posted-on,.fss-site .entry-header .posted-on a{background:transparent!important;padding:0!important}
.fss-site .entry-header .posted-on a{display:inline-flex;align-items:center;min-height:30px;padding:0 12px!important;border-radius:999px;border:1px solid rgba(243,246,238,.35);color:var(--fl-chalk)!important;font-size:13.5px!important;text-decoration:none!important;transition:border-color var(--fl-fast) var(--fl-ease)}
.fss-site .entry-header .posted-on a:hover{border-color:var(--fl-brand)}
/* Archivliste: Datum über dem Beitragstitel */
.fss-site .article-header .posted-on a,.fss-site .article-details .posted-on a{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:var(--fl-surface);border:1px solid var(--fl-line);color:var(--fl-muted)!important;font-size:13.5px;text-decoration:none!important}
.fss-site .article-header time.updated{display:none!important}
.fss-site .article-header .entry-title a{color:var(--fl-night)!important;text-decoration:none!important;transition:color var(--fl-fast) var(--fl-ease)}
.fss-site .article-header .entry-title a:hover{color:var(--fl-green-ink)!important}
/* Beitragskarten: sichtbarer Fokus für Tastatur */
.fss-site .elementor-posts .elementor-post:focus-within{outline:3px solid var(--fl-brand);outline-offset:2px}
.fss-site .elementor-posts .elementor-post__title a:focus-visible,.fss-site .elementor-posts .elementor-post__read-more:focus-visible{outline:none}
.fss-site .entry-content table:not(.sp-data-table),.fss-site .entry-content .wp-block-table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.fss-site .entry-content table:not(.sp-data-table){border-collapse:collapse;background:var(--fl-surface);border-radius:12px;box-shadow:var(--fl-shadow);font-size:15px}
.fss-site .entry-content th{background:var(--fl-night)!important;color:var(--fl-chalk)!important;font-weight:600;font-family:var(--fl-text)}
.fss-site .entry-content td,.fss-site .entry-content th{padding:10px 12px!important;border-color:var(--fl-line)!important}
/* SportsPress-Vorlagen (Mannschafts- und Spielseiten) */
.fss-site .sp-template a{text-decoration:none!important;color:var(--fl-night)}
.fss-site .sp-template a:hover{color:var(--fl-green-ink)}
.fss-site .sp-template th a,.fss-site .sp-template thead a{color:var(--fl-chalk)!important}
.fss-site .sp-template th a:hover{color:var(--fl-brand)!important}
.fss-site .sp-template .sp-data-table{width:100%!important}
.fss-site .sp-template-event-blocks .sp-event-blocks td{width:100%}
.fss-site .sp-table-caption,.fss-site h4.sp-table-caption{background:var(--fl-night)!important;color:var(--fl-chalk)!important;font-family:var(--fl-display)!important;font-weight:700!important;letter-spacing:.02em!important;text-transform:uppercase!important;border:0!important;border-radius:12px 12px 0 0;padding:12px 16px!important;margin:0!important;box-shadow:inset 0 3px 0 var(--fl-brand)}
.fss-site .sp-template .sp-data-table{font-family:var(--fl-text)!important;background:var(--fl-surface);border-radius:0 0 12px 12px;overflow:hidden;box-shadow:var(--fl-shadow)}
.fss-site .sp-template-event-blocks .sp-event-blocks td{padding:16px 14px!important;background:var(--fl-surface)!important;border-bottom:1px solid var(--fl-line)!important;transition:background-color var(--fl-fast) var(--fl-ease)}
.fss-site .sp-template-event-blocks .sp-event-blocks tr:hover td{background:var(--fl-band)!important}
.fss-site .sp-template-event-blocks .sp-event-title,.fss-site .sp-template-event-blocks .sp-event-title a{font-family:var(--fl-display)!important;color:var(--fl-night)!important;font-size:18px!important;letter-spacing:.01em}
.fss-site .sp-template-event-blocks .sp-event-results,.fss-site .sp-template-event-blocks .sp-event-results a{font-family:var(--fl-display)!important;font-size:26px!important;color:var(--fl-night)!important}
.fss-site .sp-template-event-blocks .sp-event-date,.fss-site .sp-template-event-blocks .sp-event-league,.fss-site .sp-template-event-blocks .sp-event-season,.fss-site .sp-template-event-blocks .sp-event-venue{color:var(--fl-muted)!important;font-size:13.5px!important}
.fss-site .sp-template-event-logos{background:var(--fl-night);color:var(--fl-chalk);border-radius:var(--fl-radius);padding:clamp(18px,3vw,30px)!important;box-shadow:var(--fl-shadow-hi);background-image:radial-gradient(80% 140% at 50% -40%,rgba(129,169,54,.35),rgba(129,169,54,0) 60%)}
.fss-site .sp-template-event-logos .sp-team-name{font-family:var(--fl-display)!important;color:#fff!important;font-size:clamp(17.6px,14.4px + 1vw,27.2px)!important;text-transform:uppercase;letter-spacing:.01em}
.fss-site .sp-template-event-logos .sp-team-result{display:inline-grid;place-items:center;min-width:52px;height:52px;border-radius:12px;background:var(--fl-brand);color:var(--fl-night)!important;font-family:var(--fl-display)!important;font-size:30px!important}
.fss-site .sp-template-event-logos img{background:#fff;border-radius:12px;padding:4px}
.fss-site .fss-venue-route{margin:0;padding:6px 0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.fss-site .fss-venue-route a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:10px;background:var(--fl-green);color:#fff!important;font-weight:600;text-decoration:none!important;transition:background-color var(--fl-fast) var(--fl-ease)}
.fss-site .fss-venue-route a:hover{background:var(--fl-green-ink)}
.fss-site .fss-venue-route-note{font-size:13.5px;color:var(--fl-muted)}
.fss-site .sp-template-team-logo img{background:#fff;border-radius:16px;padding:6px;box-shadow:var(--fl-shadow)}

/* ---------- Rechtstexte: ruhig und lesefreundlich ---------- */
.fss-site .fss-legal{max-width:calc(var(--fl-measure) + 40px)}
.fss-site .fss-legal h1{font-family:var(--fl-display);font-weight:700;text-transform:uppercase;letter-spacing:.005em;font-size:clamp(32px,24px + 2vw,44.8px);line-height:1.02;color:var(--fl-night);margin:0 0 .8em;padding-bottom:.45em;border-bottom:1px solid var(--fl-line)}
.fss-site .fss-legal h2{font-family:var(--fl-text);font-weight:700;font-size:19.2px;line-height:1.3;text-transform:none;letter-spacing:0;color:var(--fl-night);margin:2em 0 .5em}
.fss-site .fss-legal h3{font-family:var(--fl-text);font-weight:700;font-size:16.8px;text-transform:none;letter-spacing:0;color:var(--fl-night);margin:1.6em 0 .4em}
.fss-site .fss-legal p,.fss-site .fss-legal li{color:var(--fl-ink)}

/* ---------- Footer ---------- */
.fss-site .elementor-location-footer > .e-con{background:var(--fl-night)!important;color:var(--fl-chalk-2)}
.fss-site .elementor-location-footer > .e-con:first-child{background-image:radial-gradient(70% 120% at 0% 0%,rgba(129,169,54,.18),rgba(129,169,54,0) 60%)!important;border-top:3px solid var(--fl-brand)}
.fss-site .elementor-location-footer > .e-con:last-child{background:#09120d!important}
.fss-site .elementor-location-footer .elementor-heading-title{font-family:var(--fl-display)!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.04em!important;color:#fff!important;font-size:18px!important}
.fss-site .elementor-location-footer,.fss-site .elementor-location-footer p,.fss-site .elementor-location-footer .elementor-icon-list-text,.fss-site .elementor-location-footer .elementor-image-box-title,.fss-site .elementor-location-footer .elementor-image-box-description{color:var(--fl-chalk-2)!important;font-family:var(--fl-text)!important}
.fss-site .elementor-location-footer a,.fss-site .elementor-location-footer .elementor-item,.fss-site .elementor-location-footer .elementor-nav-menu a{color:var(--fl-chalk)!important;transition:color var(--fl-fast) var(--fl-ease)}
.fss-site .elementor-location-footer a:hover,.fss-site .elementor-location-footer .elementor-item:hover{color:var(--fl-brand)!important}
.fss-site .elementor-location-footer .elementor-social-icon{background:rgba(243,246,238,.08)!important;border-radius:10px!important;transition:background-color var(--fl-fast) var(--fl-ease),transform var(--fl-fast) var(--fl-ease)}
.fss-site .elementor-location-footer .elementor-social-icon svg{fill:var(--fl-chalk)!important}
.fss-site .elementor-location-footer .elementor-social-icon:hover{background:var(--fl-green)!important;transform:translateY(-2px)}
.fss-site .elementor-location-footer .e-n-accordion-item{background:rgba(243,246,238,.05);border-color:rgba(243,246,238,.1)}
.fss-site .elementor-location-footer .e-n-accordion-item-title-text,.fss-site .elementor-location-footer .elementor-login *{color:var(--fl-chalk)!important}
/* Akkordeon im dunklen Footer (z. B. „Anmeldung für Ligaverwaltung“): eigene Hover-/Fokusfarben statt hellem Band */
.fss-site .elementor-location-footer .e-n-accordion-item-title:hover,.fss-site .elementor-location-footer .e-n-accordion-item[open] > .e-n-accordion-item-title{background:rgba(129,169,54,.16)!important}
.fss-site .elementor-location-footer .e-n-accordion-item-title:hover .e-n-accordion-item-title-text{color:#fff!important}
.fss-site .elementor-location-footer .e-n-accordion-item-title:focus-visible{outline:3px solid var(--fl-brand);outline-offset:-3px}
.fss-site .elementor-location-footer .e-n-accordion-item-title-icon svg{fill:var(--fl-brand)!important}
.fss-site .elementor-location-footer .e-n-accordion-item[open]{border-color:rgba(129,169,54,.45);box-shadow:none}
/* Anmeldeformular im Footer: Eingabefelder hell mit dunkler Schrift (sonst weiß auf weiß) */
.fss-site .elementor-location-footer .elementor-login input:is([type=text],[type=password],[type=email]){background:#fff!important;color:var(--fl-night)!important;border:1px solid rgba(243,246,238,.35)!important;border-radius:8px!important;min-height:44px}
.fss-site .elementor-location-footer .elementor-login input:is([type=text],[type=password],[type=email]):focus{outline:3px solid var(--fl-brand);outline-offset:1px}
.fss-site .elementor-location-footer .elementor-login input[type=checkbox]{accent-color:var(--fl-brand)}

/* ---------- Einblenden beim ersten Erscheinen (gesteuert von fss-site.js) ---------- */
html.fss-js:not(.fss-rv-all) .fss-rv:not(.is-in){opacity:0;transform:translateY(16px)}
.fss-rv{transition:opacity .55s var(--fl-ease),transform .55s var(--fl-ease);transition-delay:calc(var(--rv-i,0) * 55ms)}
html.fss-js:not(.fss-rv-all) .fss-rv-line:not(.is-in) .elementor-heading-title::after{transform:scaleX(0)}
.fss-rv-line .elementor-heading-title::after{transition:transform .7s var(--fl-ease) .15s}

/* ---------- Bewegung reduzieren ---------- */
@media (prefers-reduced-motion:reduce){
  html.fss-js .fss-rv,html.fss-js .fss-rv:not(.is-in){opacity:1!important;transform:none!important;transition:none!important}
  html.fss-js .fss-intro__pitch [pathLength],html.fss-js .fss-intro__title,html.fss-js .fss-intro__nav,html.fss-js body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child::before,
  html.fss-js body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child .elementor-widget,html.fss-js .fss-site .entry-header .entry-title,.fss-site .e-n-accordion-item[open] > .e-n-accordion-item-title + *,
  .fss-site .elementor-location-header .sub-menu{animation:none!important}
  .fss-site .elementor-posts .elementor-post,.fss-site .elementor-button,.fss-site .elementor-location-header .elementor-sub-item{transition:none!important}
  .fss-site .elementor-posts .elementor-post:hover,.fss-site .elementor-button:hover{transform:none!important}
}

/* ---------- Druck: ohne Dekor und Bewegung ---------- */
@media print{
  .fss-intro{background:none!important;color:#000!important;padding:0 0 8pt!important}
  .fss-intro__title{color:#000!important;font-size:20pt!important}
  .fss-intro__pitch,.fss-intro__nav,.fss-intro::after{display:none!important}
  .fss-rv{opacity:1!important;transform:none!important}
  body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child::before,body.home.fss-site .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .e-parent:first-child::after{display:none!important}
  *{animation:none!important;transition:none!important}
}
.fss-site .fss-mt .elementor-pagination[hidden]{display:none!important}
