
/* =================================================================
   NUKLEARE OVERRIDES — Diese CSS lädt NACH Divi's Page-Specific CSS
   Bei gleicher Spezifität + !important gewinnt die LETZTE Regel
   ================================================================= */

/* --- SEKTIONEN: Alle Divi-Backgrounds neutralisieren --- */
body.ub-page #page-container div.et_pb_section[class*="et_pb_section_"],
body.ub-homepage #page-container div.et_pb_section[class*="et_pb_section_"],
body.ub-article #page-container div.et_pb_section[class*="et_pb_section_"] {
  background-image: none !important;
  background-color: transparent !important;
  filter: none !important;
  -webkit-filter: none !important;
}

/* Alternierende Hintergründe (sauber, clean) */
body #page-container .et_pb_section:nth-child(odd) {
  background-color:transparent!important;
}
body #page-container .et_pb_section:nth-child(even) {
  background-color:transparent!important;
}

/* Erste Sektion = Hero (Deep Teal Gradient) */
body #page-container .et_pb_section:first-child,
body #page-container div.et_pb_section.et_pb_section_0 {
  background: linear-gradient(160deg, #071f1f 0%, #0d4f4f 40%, #1a7a7a 100%) !important;
  background-image:none!important;
}

/* Fullwidth Header (Angst-Seiten etc.) */
body #page-container .et_pb_fullwidth_header,
body #page-container div.et_pb_fullwidth_header[class*="et_pb_fullwidth_header_"] {
  background: linear-gradient(160deg, #071f1f 0%, #0d4f4f 40%, #1a7a7a 100%) !important;
  background-color:transparent!important;
  filter: none !important;
  -webkit-filter: none !important;
}

/* --- ALLE TEXTE: Divi-Farbchaos neutralisieren --- */
body #page-container .et_pb_text h1[style],
body #page-container div.et_pb_text[class*="et_pb_text_"] h1,
body #page-container .et_pb_text_0 h1,
body #page-container .et_pb_text_1 h1 {
  color: #1a1d21 !important;
  font-family: 'Inter', 'Segoe UI', system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: clamp(2rem, 4.5vw, 3rem) !important;
  text-shadow: none !important;
  letter-spacing: -0.02em !important;
}

/* H1 in Hero (weiß) */
body #page-container .et_pb_section:first-child h1,
body #page-container .et_pb_section_0 h1,
body #page-container .et_pb_fullwidth_header h1,
body #page-container .et_pb_fullwidth_header .header-content h1,
body #page-container .et_pb_fullwidth_header .header-content h2.et_pb_module_header {
  color: #ffffff !important;
  font-family: 'Inter', 'Segoe UI', system-ui, sans-serif !important;
  font-weight: 800 !important;
  text-shadow: none !important;
  font-size: clamp(2rem, 5vw, 3.5rem) !important;
  line-height: 1.1 !important;
}

/* Alle H2, H3, H4 */
body #page-container div.et_pb_text[class*="et_pb_text_"] h2,
body #page-container div.et_pb_text[class*="et_pb_text_"] h3,
body #page-container div.et_pb_text[class*="et_pb_text_"] h4 {
  color: #1a1d21 !important;
  font-family: 'Inter', 'Segoe UI', system-ui, sans-serif !important;
  font-weight: 700 !important;
  text-shadow: none !important;
  font-size: clamp(1.25rem, 3vw, 1.75rem) !important;
  line-height: 1.25 !important;
}

/* Text in Hero-Sektionen weiß */
body #page-container .et_pb_section:first-child p,
body #page-container .et_pb_section:first-child h2,
body #page-container .et_pb_section:first-child h3,
body #page-container .et_pb_section:first-child .et_pb_promo_description,
body #page-container .et_pb_fullwidth_header .header-content,
body #page-container .et_pb_fullwidth_header .et_pb_header_content_wrapper {
  color: rgba(255,255,255,0.9) !important;
  font-family: 'Inter', 'Segoe UI', system-ui, sans-serif !important;
  text-shadow: none !important;
}

/* Body-Text überall */
body #page-container div.et_pb_text[class*="et_pb_text_"],
body #page-container div.et_pb_text[class*="et_pb_text_"] p,
body #page-container .et_pb_promo_description div {
  font-family: 'Inter', 'Segoe UI', system-ui, sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #5a6170 !important;
}

/* --- BUTTONS: Einheitlich, Premium --- */
body #page-container .et_pb_section .et_pb_button,
body #page-container .et_pb_section div[class*="et_pb_cta_"] .et_pb_promo_button.et_pb_button,
body #page-container .et_pb_section .et_pb_fullwidth_header .et_pb_button_one.et_pb_button,
body #page-container .et_pb_section .et_pb_fullwidth_header .et_pb_button_two.et_pb_button {
  background: linear-gradient(135deg, #d4944c 0%, #c07f38 100%) !important;
  background-color:transparent!important;
  color: #ffffff !important;
  border: none !important;
  border-width: 0 !important;
  border-color: transparent !important;
  border-radius: 0.625rem !important;
  font-family: 'Inter', 'Segoe UI', system-ui, sans-serif !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  padding: 0.875rem 2rem !important;
  box-shadow: 0 4px 16px rgba(212,148,76,0.3) !important;
  transition: all 0.25s cubic-bezier(0.4,0,0.2,1) !important;
}

body #page-container .et_pb_section .et_pb_button:hover,
body #page-container .et_pb_section div[class*="et_pb_cta_"] .et_pb_promo_button.et_pb_button:hover {
  background: linear-gradient(135deg, #c07f38 0%, #a86a2a 100%) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 8px 24px rgba(212,148,76,0.4) !important;
  letter-spacing: 0 !important;
}

/* Button Arrow ausblenden */
body #page-container .et_pb_button:after,
body #page-container .et_pb_button:before {
  display: none !important;
}

/* --- CTA BOXEN --- */
body #page-container div[class*="et_pb_cta_"].et_pb_promo h2,
body #page-container div[class*="et_pb_cta_"].et_pb_promo h1.et_pb_module_header {
  color: #1a1d21 !important;
  font-family: 'Inter', 'Segoe UI', system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: clamp(1.25rem, 3vw, 1.75rem) !important;
  line-height: 1.3 !important;
}

/* --- CARDS/BLURBS: Clean --- */
body #page-container div.et_pb_blurb[class*="et_pb_blurb_"] {
  background: #ffffff !important;
  border-radius: 1rem !important;
  box-shadow: 0 1px 3px 1px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.04) !important;
  border: 1px solid #f0f2f5 !important;
  padding: 2rem !important;
  filter: none !important;
  -webkit-filter: none !important;
}

body #page-container div.et_pb_blurb[class*="et_pb_blurb_"]:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.08) !important;
}

/* --- BILDER: Kaputte/leere Bilder verstecken --- */
img[src=""],
img:not([src]),
.et_pb_image_container img[src*="placeholder"],
.et_pb_image_container img[alt=""] {
  opacity: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
}

/* --- DIVI DIVIDERS/WAVES: Ausblenden --- */
.et_pb_top_inside_divider" style="display:none!important,
.et_pb_bottom_inside_divider" style="display:none!important {
  display: none !important;
}

/* --- FILTER WAHNSINN STOPPEN --- */
body #page-container [class*="et_pb_section_"],
body #page-container [class*="et_pb_blurb_"],
body #page-container [class*="et_pb_fullwidth_header_"] {
  filter: none !important;
  -webkit-filter: none !important;
  backface-visibility: visible !important;
}

/* --- TESTIMONIALS --- */
body #page-container .et_pb_testimonial {
  background: #ffffff !important;
  border: 1px solid #f0f2f5 !important;
  border-radius: 1rem !important;
  border-left: none !important;
  box-shadow: 0 1px 3px 1px rgba(0,0,0,0.08) !important;
}

/* --- AUDIO PLAYER --- */
body #page-container .et_pb_audio_module {
  background: #ffffff !important;
  border-radius: 1rem !important;
  border: 1px solid #e0e3e8 !important;
  box-shadow: 0 1px 3px 1px rgba(0,0,0,0.08) !important;
}

/* --- ACCORDION/TOGGLE --- */
body #page-container .et_pb_toggle {
  border: 1px solid #e0e3e8 !important;
  border-radius: 0.625rem !important;
  background: #ffffff !important;
  margin-bottom: 0.5rem !important;
}

body #page-container .et_pb_toggle_title {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-weight: 600 !important;
  color: #1a1d21 !important;
  font-size: 1rem !important;
}

body #page-container .et_pb_toggle_open .et_pb_toggle_title {
  color: #0d4f4f !important;
  background: #e6f5f5 !important;
}

/* --- VIDEO MODULE --- */
body #page-container .et_pb_video {
  border-radius: 1rem !important;
  overflow: hidden !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.06) !important;
}

/* --- SPACING NORMALISIEREN --- */
body #page-container .et_pb_section {
  padding: 5rem 0 !important;
}

body #page-container .et_pb_section:first-child {
  padding: 6rem 0 5rem !important;
}

body #page-container .et_pb_row[style*="padding"] {
  padding-top: revert !important;
  padding-bottom: revert !important;
}

/* --- FOOTER --- */
body #main-footer {
  background: #0f1114 !important;
}

/* --- PROMO/CTA Boxen Hintergrund --- */
body #page-container .et_pb_promo {
  background: #f8f9fb !important;
  border-radius: 1rem !important;
  border: 1px solid #e0e3e8 !important;
  padding: 2.5rem !important;
}

/* Letzte Sektion = CTA (Deep Teal) — NICHT auf Member-Seiten */
body:not(.ub-member) #page-container .et_pb_section:last-of-type {
  background: linear-gradient(160deg, #0d4f4f 0%, #0a3636 100%) !important;
}

body:not(.ub-member) #page-container .et_pb_section:last-of-type h2,
body:not(.ub-member) #page-container .et_pb_section:last-of-type h3,
body:not(.ub-member) #page-container .et_pb_section:last-of-type p,
body:not(.ub-member) #page-container .et_pb_section:last-of-type .et_pb_promo_description {
  color: #ffffff !important;
}

body:not(.ub-member) #page-container .et_pb_section:last-of-type .et_pb_promo {
  background: transparent !important;
  border: none !important;
}

/* --- LINK-FARBE GLOBAL --- */
body #page-container a:not(.et_pb_button) {
  color: #0d4f4f !important;
}
body #page-container a:not(.et_pb_button):hover {
  color: #1a7a7a !important;
}

/* --- FONT FAMILY OVERRIDE GLOBAL --- */
body #page-container,
body #page-container *:not([class*="etmodules"]):not([class*="dashicons"]):not([class*="fa-"]) {
  font-family: 'Inter', 'Segoe UI', system-ui, sans-serif;
}

/* --- LEGACY-PLUGIN-BLOCK AUSBLENDEN (2026-08-31) ---
   Ein separates Plugin ("free-du-plugin") haengt an JEDE Seite einen alten Divi-Promo-Block
   an ("Genießen Sie die Hypnosen..." + 4 zufaellige "verwandte Produkte"). Divis Icon-Font
   fuer die Pfeil-Icons ist nicht geladen, dadurch erscheinen rohe Fallback-Zeichen ("u"/"v")
   statt Icons. Plugin selbst darf laut Projektregel nicht angefasst werden (nur Theme-Dateien) —
   deshalb hier sauber per CSS ausgeblendet statt zu versuchen es zu reparieren. Betrifft alle
   Seiten (getestet: /abnehmen/, /burnout/, /schlafstoerungen/, /jahresabo/, /stress/,
   /selbstbewusstsein/), nicht nur Salespages. */
.free-du-plugin-footer {
  display: none !important;
}
