/*
 Theme Name:     Divi Child Theme
 Theme URI:      http://www.elegantthemes.com
 Description:    Child Theme for Divi Theme by Elegant Themes
 Author:         Divi.world
 Author URI:     http://divi.world
 Template:       Divi
 Version:        1.0.0
*/
 
/* =Ab hier kannst du deine CSS-Anpassungen eintragen
------------------------------------------------------- */

/* Noack mobile header: keep only the primary header row sticky on mobile
   and fully suppress the desktop sticky row/spacer on small viewports. */
@media only screen and (max-width: 980px) {
  header.et-l--header .et_pb_sticky_placeholder {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
  }

  header.et-l--header .et_pb_section.zeile-b,
  header.et-l--header .et_pb_section.zeile-b.et_pb_sticky_module,
  header.et-l--header .et_pb_section.zeile-b.et_pb_sticky,
  header.et-l--header .et_pb_row.zeile-b,
  header.et-l--header .et_pb_row.zeile-b.visible,
  header.et-l--header .et_pb_sticky .zeile-b {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    pointer-events: none !important;
    opacity: 0 !important;
  }

  header.et-l--header .et_pb_section.zeile-a,
  header.et-l--header .et_pb_row.zeile-a {
    display: block !important;
    visibility: visible !important;
  }

  header.et-l--header .et_pb_section.zeile-a.et_pb_sticky,
  header.et-l--header .et_pb_section.zeile-a .et_pb_menu.et_pb_sticky {
    background-color: #ffffff !important;
  }
}

@media only screen and (max-width: 767px) {
  header.et-l--header {
    position: relative !important;
    z-index: 99999 !important;
  }

  header.et-l--header .et_pb_section.zeile-a {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 99999 !important;
  }

  body.et-tb-has-header #page-container,
  body.et-tb #page-container {
    padding-top: 214px !important;
  }

  footer.et-l--footer .et_pb_section.et_pb_section_0_tb_footer {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  footer.et-l--footer .et_pb_row.et_pb_row_0_tb_footer,
  body.et-tb-has-footer #main-content .et_pb_row.et_pb_row_0_tb_footer {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }
}

/* Noack header logo dimensions: independent of the uploaded image file size. */
header.et-l--header .zeile-a .et_pb_menu__logo-wrap {
  flex: 0 0 auto !important;
  width: min(520px, calc(100vw - 48px)) !important;
  max-width: min(520px, calc(100vw - 48px)) !important;
}
header.et-l--header .zeile-a .et_pb_menu__logo,
header.et-l--header .zeile-a .et_pb_menu__logo a {
  display: block !important;
  width: 100% !important;
}
header.et-l--header .zeile-a .et_pb_menu__logo img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 172px !important;
  object-fit: contain !important;
}
header.et-l--header .zeile-b .et_pb_column_2_tb_header {
  display: flex !important;
  align-items: center !important;
}
header.et-l--header .zeile-b .et_pb_image_0_tb_header {
  width: 100% !important;
  max-width: 300px !important;
  margin: 0 auto !important;
}
header.et-l--header .zeile-b .et_pb_image_0_tb_header .et_pb_image_wrap,
header.et-l--header .zeile-b .et_pb_image_0_tb_header img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 88px !important;
  object-fit: contain !important;
}
header.et-l--header .zeile-b .et_pb_menu_1_tb_header {
  width: 100% !important;
  margin-left: 0 !important;
}
@media only screen and (max-width: 767px) {
  header.et-l--header .zeile-a .et_pb_menu__logo-wrap {
    width: min(280px, calc(100vw - 40px)) !important;
    max-width: min(280px, calc(100vw - 40px)) !important;
  }
  header.et-l--header .zeile-a .et_pb_menu__logo img {
    max-height: 93px !important;
  }
}

/* Noack header logo dimensions: independent of the uploaded image file size. */
header.et-l--header .zeile-a .et_pb_menu__logo-wrap {
  flex: 0 0 auto !important;
  width: min(520px, calc(100vw - 48px)) !important;
  max-width: min(520px, calc(100vw - 48px)) !important;
}
header.et-l--header .zeile-a .et_pb_menu__logo,
header.et-l--header .zeile-a .et_pb_menu__logo a {
  display: block !important;
  width: 100% !important;
}
header.et-l--header .zeile-a .et_pb_menu__logo img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 172px !important;
  object-fit: contain !important;
}
header.et-l--header .zeile-b .et_pb_column_2_tb_header {
  display: flex !important;
  align-items: center !important;
}
header.et-l--header .zeile-b .et_pb_image_0_tb_header {
  width: 100% !important;
  max-width: 300px !important;
  margin: 0 auto !important;
}
header.et-l--header .zeile-b .et_pb_image_0_tb_header .et_pb_image_wrap,
header.et-l--header .zeile-b .et_pb_image_0_tb_header img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 88px !important;
  object-fit: contain !important;
}
header.et-l--header .zeile-b .et_pb_menu_1_tb_header {
  width: 100% !important;
  margin-left: 0 !important;
}
@media only screen and (max-width: 767px) {
  header.et-l--header .zeile-a .et_pb_menu__logo-wrap {
    width: min(280px, calc(100vw - 40px)) !important;
    max-width: min(280px, calc(100vw - 40px)) !important;
  }
  header.et-l--header .zeile-a .et_pb_menu__logo img {
    max-height: 93px !important;
  }
}

/* Noack slider tonal optimisation: brighten image backgrounds without changing source files or slide crops. */
.et_pb_slider_0_tb_body .et_pb_slide {
  background-color: rgba(255, 255, 255, 0.19) !important;
  background-blend-mode: screen !important;
}

/* Noack: resilient primary header dimensions */
/* The Divi builder writes fixed module dimensions. This final block deliberately
   owns the live primary header so image intrinsic dimensions cannot affect it. */
header.et-l--header .et_pb_section_0_tb_header,
header.et-l--header .et_pb_section_0_tb_header.et_pb_section,
header.et-l--header .et_pb_section_0_tb_header.et_pb_sticky {
  height: 205px !important;
  min-height: 205px !important;
  padding: 0 !important;
  overflow: hidden !important;
}
header.et-l--header .et_pb_row_0_tb_header {
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
}
header.et-l--header .et_pb_menu_0_tb_header,
header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu_inner_container {
  height: 100% !important;
  min-height: 0 !important;
}
header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu_inner_container {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}
header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__logo-wrap {
  flex: 0 0 auto !important;
  width: 410px !important;
  max-width: calc(100vw - 48px) !important;
  height: 136px !important;
  max-height: 136px !important;
  margin: 0 auto !important;
}
header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__logo,
header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__logo a,
header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__logo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-height: 136px !important;
  margin: 0 !important;
  object-fit: contain !important;
}
header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__wrap {
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 4px auto 0 !important;
}
header.et-l--header .et_pb_menu_0_tb_header.et_pb_menu ul li a {
  font-size: 21px !important;
  line-height: 1.25em !important;
}
@media (max-width: 980px) {
  header.et-l--header .et_pb_section_0_tb_header,
  header.et-l--header .et_pb_section_0_tb_header.et_pb_section,
  header.et-l--header .et_pb_section_0_tb_header.et_pb_sticky {
    height: 132px !important;
    min-height: 132px !important;
  }
  header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__logo-wrap {
    width: 285px !important;
    max-width: calc(100vw - 38px) !important;
    height: 95px !important;
    max-height: 95px !important;
  }
  header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__logo,
  header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__logo a,
  header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__logo img {
    max-height: 95px !important;
  }
  header.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__wrap { margin-top: 0 !important; }
}
