/* FEXELION Pop-ups – baut auf dem Cookie-Hinweis auf (consent.css + Theme-Regeln für .fexelion-consent / .fexelion-btn) */
.fx-popup.fexelion-consent--modal { z-index: 2147482500; }
.fx-popup .fexelion-consent__dialog { position: relative; width: 100%; max-width: 520px; padding: 0; overflow: auto; }
.fx-popup__img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.fx-popup__body { padding: 22px 24px; }
.fx-popup .fexelion-consent__title { font-size: 1.3rem; }
.fx-popup--close .fexelion-consent__title { padding-right: 40px; }
.fx-popup .fexelion-consent__text { white-space: pre-line; }
.fx-popup .fexelion-consent__actions { justify-content: flex-start; margin-top: 16px; }
.fx-popup a.fexelion-btn { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.fx-popup__close { position: absolute; top: 10px; right: 10px; z-index: 1; width: 44px; height: 44px; display: grid; place-items: center;
  border: 0; border-radius: 50%; background: rgba(0, 0, 0, .55); color: #fff; cursor: pointer; }
.fx-popup--noimg .fx-popup__close { background: transparent; color: var(--zc-text); }
.fx-popup__close:focus-visible { outline: 3px solid var(--zc-primary); outline-offset: 2px; }
/* Hintergrund (seit 1.1.0, Einstellung für alle Pop-ups): dunkler / heller / unverändert, wahlweise verschwommen */
.fx-popup.fx-popup--bg-dark { background: rgba(10, 14, 13, .5); }
.fx-popup.fx-popup--bg-light { background: rgba(255, 255, 255, .55); }
.fx-popup.fx-popup--bg-none { background: transparent; }
.fx-popup.fx-popup--blur { -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
/* Altersabfrage: Inhalt dahinter nicht lesbar */
.fx-popup.fx-popup--gate, .fx-popup.fx-popup--gate.fx-popup--bg-none { background: rgba(5, 6, 8, .92); }
.fx-popup.fx-popup--gate.fx-popup--bg-light { background: rgba(255, 255, 255, .92); }
.fx-popup.fx-popup--gate.fx-popup--blur { -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
@media (prefers-reduced-motion: no-preference) {
  .fx-popup { animation: fx-popup-in .18s ease-out; }
  @keyframes fx-popup-in { from { opacity: 0; } to { opacity: 1; } }
}
html[data-a11y-motion="off"] .fx-popup { animation: none; }
@media (max-width: 640px) {
  .fx-popup__img { aspect-ratio: auto; height: 28vh; }
  .fx-popup__body { padding: 18px; }
  .fx-popup .fexelion-consent__actions { grid-template-columns: 1fr; }
}
