/* KOMUNIO Theme Overrides
   Zweck: additive Theme-Schicht. Original-Code/HTML bleibt erhalten. */

:root {
  --komunio-body-font: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  --komunio-home-header-image: url("/komunio-theme-assets/titel-0405.png");
  --komunio-button-arrow-icon: url("/komunio-theme-assets/icon-pfeil.png");
  --komunio-totop-icon: url("/komunio-theme-assets/totop-clean.png");
  --komunio-pink: #e72757;
  --komunio-green: #749a41;
  --komunio-dark: #34372f;
}

/* Scroll-/Interaktions-Freigabe, falls der retained DSGVO-Dialog ursprünglich modal geöffnet war */
html,
body {
  overflow-y: auto !important;
  height: auto !important;
  position: static !important;
}

body.komunio-dsgvo-disabled,
html.komunio-dsgvo-disabled {
  overflow-y: auto !important;
  height: auto !important;
}

/* DSGVO vorerst deaktivieren, Code bleibt im HTML erhalten */
dialog[class*="ac56a"],
dialog[data-nosnippet="true"],
.ac56a-ext-0-298 {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  inset: auto !important;
  width: 0 !important;
  height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
}

dialog[class*="ac56a"]::backdrop,
dialog[data-nosnippet="true"]::backdrop {
  display: none !important;
  background: transparent !important;
  pointer-events: none !important;
}

/* Startseite: neues Hintergrundbild nur im Header-/Hero-Bereich */
body.home .fusion-builder-row-1 {
  background-image: var(--komunio-home-header-image) !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: #e72757 !important;
  min-height: 800px !important;
}

body.home .fusion-builder-row-1.lazyloaded,
body.home .fusion-builder-row-1[data-bg] {
  background-image: var(--komunio-home-header-image) !important;
}

/* Roboto Condensed für Fließtext */
.fusion-text:not([style*="Impact"]) p,
.fusion-text:not([style*="Impact"]) p span,
.fusion-text:not([style*="Impact"]) li,
.fusion-text:not([style*="Impact"]) li span,
.fusion-li-item-content,
.fusion-li-item-content span,
.panel-body,
.panel-body p,
.panel-body span,
.post-content .fusion-accordian .panel-title a,
.post-content .fusion-accordian .panel-title a span {
  font-family: var(--komunio-body-font) !important;
}

/* Roboto Condensed für alle Menüs */
.awb-menu,
.awb-menu *,
.awb-menu__main-a,
.awb-menu__main-a .menu-text,
.fusion-menu,
.fusion-menu *,
.fusion-menu a,
.fusion-menu .menu-text,
.fusion-main-menu,
.fusion-main-menu *,
.menu,
.menu *,
.menu-text,
nav,
nav * {
  font-family: var(--komunio-body-font) !important;
  letter-spacing: 0.01em;
}

.awb-menu__main-a,
.awb-menu__main-a .menu-text,
.fusion-menu a,
.fusion-menu .menu-text {
  font-weight: 700;
}

/* Das reale Footer-Logo sitzt oberhalb von „eine Marke der …“; der leere Avada-Footer bleibt ausgeblendet. */
.fusion-footer:empty,
.fusion-footer:has(.komunio-footer-logo-wrap) {
  display: none !important;
  min-height: 0 !important;
  padding: 0 !important;
}

.komunio-brand-logo,
img[data-testid="footer-brand-logo"] {
  display: inline-block !important;
  width: 150px !important;
  max-width: 150px !important;
  height: auto !important;
  margin: 0 auto !important;
}

[data-testid="footer-brand-text"] {
  margin-top: 16px !important;
}

/* CTA/Button-Icons: weißer Kreis mit grünem Rechtspfeil wie im gelieferten Button-Design */
.fusion-button,
a.fusion-button,
.awb-button,
a.awb-button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px;
}

.fusion-button .fa-arrow-alt-circle-right,
.awb-button .fa-arrow-alt-circle-right,
.fusion-button .button-icon-left,
.awb-button .button-icon-left {
  display: none !important;
}

.fusion-button::before,
a.fusion-button::before,
.awb-button::before,
a.awb-button::before {
  content: "›";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 1.15em;
  height: 1.15em;
  border-radius: 999px;
  background: #ffffff;
  color: var(--komunio-green);
  font-family: Arial, sans-serif;
  font-size: 1.05em;
  font-weight: 900;
  line-height: 1;
  padding-bottom: 0.05em;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.2);
}

/* CTA-Schreibweise exakt wie HTML: „Wir beraten Sie gerne“, nicht automatisch in Versalien */
.fusion-button.button-large,
a.fusion-button.button-large,
.awb-button.button-large,
a.awb-button.button-large,
.fusion-button.button-large .fusion-button-text,
a.fusion-button.button-large .fusion-button-text,
.awb-button.button-large .fusion-button-text,
a.awb-button.button-large .fusion-button-text {
  --button_text_transform: none !important;
  text-transform: none !important;
}


/* Prozess-Karussellbilder aus gelieferten 0101–0901 Dateien */
.komunio-carousel-image,
.fusion-image-carousel img.komunio-carousel-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 1800px !important;
  margin: 0 auto !important;
}

.fusion-image-carousel .fusion-image-wrapper {
  background: transparent !important;
}

/* FAQ/Infofelder: geöffnetes Feld nimmt Raum ein, geschlossene Felder überlagern keine Trigger */
.panel-collapse.collapse.show,
.panel-collapse.collapse.in,
.panel-collapse.komunio-open {
  display: block !important;
  height: auto !important;
  overflow: visible !important;
  position: relative !important;
  z-index: 1 !important;
}

.panel-collapse.collapse:not(.show):not(.in):not(.komunio-open),
.panel-collapse.komunio-closed {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

.fusion-panel,
.panel-heading,
.panel-title,
.panel-title a {
  position: relative !important;
  z-index: 2 !important;
}

/* KOMUNIO Analytics Grafik */
.komunio-analytics-image {
  display: block !important;
  width: 100% !important;
  max-width: 760px !important;
  height: auto !important;
  margin: 0 auto !important;
}

/* KOMUNIO Index Grafik */
.komunio-index-image {
  display: block !important;
  width: 100% !important;
  max-width: 1800px !important;
  height: auto !important;
  margin: 0 auto !important;
}

/* To The Top unten rechts: Design aus geliefertem Anhang */
.to-top-container.to-top-right {
  position: fixed !important;
  right: 75px !important;
  bottom: 0 !important;
  z-index: 9999 !important;
  display: block !important;
  width: 85px !important;
  height: 57px !important;
  pointer-events: auto !important;
}

#toTop.fusion-top-top-link {
  width: 85px !important;
  height: 57px !important;
  border-radius: 0 !important;
  background: transparent var(--komunio-totop-icon) center center / contain no-repeat !important;
  border: 0 !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-decoration: none !important;
  box-shadow: none !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  z-index: 100000 !important;
}

#toTop.fusion-top-top-link::before {
  content: none !important;
}
