/* Neuer Footer – seit 11.11.2026 (Elementor-Vorlage aus Option lm_fn_vorlage, geladen über hooks/footer-neu.php
   auf allen Seiten mit dieser Vorlage; nicht im dunklen TV-Footer 128925)
-----------------------------------------------------------------------
   In Elementor eingestellt: Farben und Schriften (Kit-Globals), Abstände, Spaltenbreiten,
   Radius und Schatten der Platte, Z-Index, Logo- und Siegelgrößen.
   Hier nur, was Elementor nicht kann. */

/* 1. Ebenen-Effekt: Die Footer-Ebene (Z-Index 1) klebt unten, die Spendenplatte (Z-Index 3) gleitet beim
      Scrollen darüber weg und deckt sie auf. Nur wenn die Ebene ganz in den Bildschirm passt. */
@media (min-width: 1025px) and (min-height: 700px) {
  /* body hat overflow-x:hidden und wird dadurch zu einem Scroll-Container, der selbst nie scrollt –
     dann greift sticky nicht. clip schneidet genauso ab, ohne Scroll-Container zu werden. */
  body {
    overflow-x: clip !important;
  }
  /* Seiteninhalt liegt über der Footer-Ebene … */
  #content {
    position: relative;
    z-index: 2;
    background-color: var(--e-global-color-c9a4f81);
  }
  /* … und der Footer-Bereich reicht unsichtbar eine Bildschirmhöhe nach oben hinter den Inhalt,
     damit die Ebene schon dort unten kleben kann, bevor die Platte erscheint. */
  .elementor-location-footer {
    margin-top: -100vh;
  }
  .elementor-location-footer::before {
    content: "";
    display: block;
    height: 100vh; /* echter Inhalt statt Innenabstand – sticky rechnet nur mit dem Inhaltsbereich */
  }
  .lm-fn-ebene {
    position: sticky !important;
    bottom: 0;
  }
}

/* 2. Spendenplatte: vier Spalten wie die Linkgruppen; die Kontospalte wird nie schmaler als die IBAN-Zeile. */
@media (min-width: 1025px) {
  .lm-fn-platte > .elementor-container {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(min-content, 1fr) minmax(0, 1fr);
  }
  .lm-fn-platte > .elementor-container > .elementor-column {
    width: auto !important;
  }
}

/* 2b. Bankdaten und GiroCode-Popup auf allen Seiten (dieselben Regeln wie in css/startseite.css,
       die nur auf der Startseite geladen wird). */
.lm-bank-aktionen{display:flex;flex-wrap:wrap;align-items:center;gap:6px 22px;font-size:var(--e-global-typography-lmklein-font-size);line-height:var(--e-global-typography-lmklein-line-height)}
:is(.lm-fn,.lm-modal-qr) .lm-bank-link{display:inline-flex;align-items:center;gap:7px;margin:0;padding:4px 0;border:0;border-radius:0;background:none!important;box-shadow:none;color:var(--e-global-color-79b6df38)!important;font:inherit;font-weight:400;text-transform:none;letter-spacing:0;text-decoration:none!important;cursor:pointer}
:is(.lm-fn,.lm-modal-qr) .lm-bank-link:hover,:is(.lm-fn,.lm-modal-qr) .lm-bank-link:focus-visible{color:var(--e-global-color-ff51695)!important}
:is(.lm-fn,.lm-modal-qr) .lm-bank-link:hover span{text-decoration:underline;text-underline-offset:3px}
.lm-bank-icon{flex:none;color:var(--e-global-color-ff51695)}
.lm-bank-link .lm-bank-icon:nth-of-type(2){display:none}
.lm-bank-link.lm-kopiert .lm-bank-icon:nth-of-type(1){display:none}
.lm-bank-link.lm-kopiert .lm-bank-icon:nth-of-type(2){display:block}
.lm-bank-status{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lm-girocode{display:block;width:min(240px,70vw);height:auto;margin:0 auto;border-radius:12px;background:#fff}
.lm-modal-qr .lm-modal-karte{text-align:left}
.lm-modal-qr .lm-bank-aktionen{justify-content:center;margin-top:2px}
.lm-konto{margin:0 0 6px}
.lm-konto p{margin:0 0 6px}

/* 3. Bankdaten: jede Zeile, vor allem die IBAN, bleibt einzeilig. */
.lm-fn-konto .lm-konto p {
  white-space: nowrap;
}

/* 3b. Zeilen „Aktuelles“ und „Partner“: Trennlinie bündig mit dem Text der Spalten
       (Spaltenabstand 40 px → je 20 px Innenabstand pro Spalte), Linienfarbe = Kit-Global #DDDDDD. */
.lm-fn-zeile > .elementor-container {
  position: relative;
  padding: 16px 0;
}
.lm-fn-zeile > .elementor-container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 20px;
  right: 20px;
  border-top: 1px solid var(--e-global-color-347c79e4);
}

/* 4. Partner-Logos: dezent in Graustufen, beim Überfahren in Originalfarbe. */
.lm-fn-logo img {
  filter: grayscale(1);
  opacity: .5;
  transition: filter .2s ease, opacity .2s ease;
}
.lm-fn-logo a:hover img,
.lm-fn-logo a:focus-visible img {
  filter: none;
  opacity: 1;
}

/* 5. Rote Leiste: Pflichtlinks mit Abstand statt Trennstrichen, Links in Hellrosa auf Rot. */
.lm-fn-recht {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 20px;
  margin: 0;
}
.lm-fn-leiste a {
  color: #FFE0E0 !important;
}
.lm-fn-leiste a:hover {
  color: #FFFFFF !important;
}

@media (prefers-reduced-motion: reduce) {
  .lm-fn-logo img { transition: none; }
}
