/*---------------------------------------------------------------------------------

 Theme Name:   Divi Child Theme
 Theme URI:    https://lukas-fischer.de/
 Description:  Child Theme für Divi erstellt von Lukas Fischer.
 Author:       Lukas Fischer
 Author URI:   https://lukas-fischer.de
 Template:     Divi
 Version:      1.1.9


------------------------------ ADDITIONAL CSS HERE ------------------------------*/







/*change hamburger icon to x when mobile menu is open*/

#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,
.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
	content: '\4d';
}

/* Alle mobilen Menü-Items fett darstellen */
.et_mobile_menu li a,
.et-db #et-boc .et-l .et_mobile_menu li a {
    font-weight: bold !important;
}


/*adjust the new toggle element which is added via jQuery*/

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
ul.et_mobile_menu li.page_item_has_children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.page_item_has_children .mobile-toggle {
	width: 44px;
	height: 100%;
	padding: 0px !important;
	max-height: 44px;
	border: none;
	position: absolute;
	right: 0px;
	top: 0px;
	z-index: 999;
	background-color: transparent;
}


/*some code to keep everyting positioned properly*/

ul.et_mobile_menu>li.menu-item-has-children,
ul.et_mobile_menu>li.page_item_has_children,
ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.page_item_has_children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children {
	position: relative;
}


/*remove default background color from menu items that have children*/

.et_mobile_menu .menu-item-has-children>a,
.et-db #et-boc .et-l .et_mobile_menu .menu-item-has-children>a {
	background-color: transparent;
}


/*hide the submenu by default*/

ul.et_mobile_menu .menu-item-has-children .sub-menu,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu {
	display: none !important;
	visibility: hidden !important;
}


/*show the submenu when toggled open*/

ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible {
	display: block !important;
	visibility: visible !important;
}


/*adjust the toggle icon position and transparency*/

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle {
	text-align: center;
	opacity: 1;
}


/*submenu toggle icon when closed*/

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after {
	top: 10px;
	position: relative;
	font-family: "ETModules";
	content: '\33';
	color: #00d263;
	background: #f0f3f6;
	border-radius: 50%;
	padding: 3px;
}


/*submenu toggle icon when open*/

ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after {
	content: '\32';
}


/*add point on top of the menu submenu dropdown*/

.et_pb_menu_0.et_pb_menu .et_mobile_menu:after {
	position: absolute;
	right: 5%;
	margin-left: -20px;
	top: -14px;
	width: 0;
	height: 0;
	content: '';
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-bottom: 20px solid #ffffff;
}


/*adjust the position of the hamburger menu*/

.mobile_menu_bar {
	position: relative;
	display: block;
	bottom: 1px;
	line-height: 0;
}


/*force the background color and add a rounded border*/

.et_pb_menu_0.et_pb_menu .et_mobile_menu,
.et_pb_menu_0.et_pb_menu .et_mobile_menu ul {
	background-color: #ffffff!important;
	border-radius: 10px;
}

/* Mobile Menüeinträge klarer trennen */
.et_mobile_menu li {
  border-bottom: 2px solid #e0e0e0 !important; /* gut sichtbares Hellgrau */
}

/* Letztes Menü-Item ohne Linie */
.et_mobile_menu li:last-child {
  border-bottom: none !important;
}











/* Divi Button: Hover-Pfeil komplett entfernen */
.et_pb_button::after,
.et_pb_button:hover::after {
    display: none !important;
    content: none !important;
}






/* --- MBÖRSO: Dropdown mit minimal mehr Luft unten --- */

/* leichtes, sauberes Innen-Padding für das ganze Dropdown */
#top-menu .sub-menu {
    padding-top: 5px !important;
    padding-bottom: 7px !important;  /* minimaler Abstand */
}

/* Divi-Container selbst ebenfalls leicht gepolstert */
.nav li ul {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

/* Innenabstand für einzelne Zeilen */
#top-menu .sub-menu li {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

/* letztes Element: Trennlinie weg + etwas Luft */
#top-menu .sub-menu li:last-child {
    border-bottom: none !important;
    padding-bottom: 5px !important; 
}

/* Link im letzten Element leicht vom Rand abheben */
#top-menu .sub-menu li:last-child a {
    padding-bottom: 6px !important;
}




/* -------------------------------------------------------
   FIX für den FIXED HEADER (nach dem Scrollen)
   Aktiver Menüpunkt bleibt grün + Schrift weiß
-------------------------------------------------------- */

/* Aktiver Hauptmenüpunkt im Fixed Header */
.et-fixed-header #top-menu > li.current-menu-item > a,
.et-fixed-header #top-menu > li.current_page_item > a,
.et-fixed-header #top-menu > li.current-menu-ancestor > a,
.et-fixed-header #top-menu > li.current_page_parent > a {
    background-color: #0f7b79 !important;
    color: #ffffff !important;
}

/* Aktiver SUBMENÜ-Punkt im Fixed Header */
.et-fixed-header #top-menu li li.current-menu-item > a,
.et-fixed-header #top-menu li li.current_page_item > a,
.et-fixed-header #top-menu li li.current-menu-parent > a,
.et-fixed-header #top-menu li li.current_page_parent > a {
    background-color: #0f7b79 !important;
    color: #ffffff !important;
}

/* Pfeile auch im Fixed Header weiß */
.et-fixed-header #top-menu .menu-item-has-children.current-menu-item > a:first-child:after,
.et-fixed-header #top-menu .menu-item-has-children.current-menu-ancestor > a:first-child:after,
.et-fixed-header #top-menu .menu-item-has-children.current_page_ancestor > a:first-child:after {
    color: #ffffff !important;
}









/* --- MBÖRSO Menu Styling Fixes ---------------------------------- */

/* Grundabstand & Erscheinungsbild */
#et-top-navigation nav > ul > li > a,
.et-fixed-header #et-top-navigation nav > ul > li > a {
    padding: 14px 42px 14px 22px !important; /* Platz rechts für Pfeil */
   
    background: #ffffff !important; 
    color: #1d1d1d !important;
    position: relative;
    line-height: 1 !important;
}

/* Hover / Aktiv */
#top-menu > li > a:hover,
#top-menu > li.current-menu-item > a,
#top-menu > li.current_page_item > a,
#top-menu > li > a:focus {
    background: #0f7b79 !important;
    color: #ffffff !important;
   
    filter: none !important;
}

/* SUBMENU Hover */
#top-menu li li a:hover {
    background: #0f7b79 !important;
    color: #ffffff !important;
}

/* Abstand zwischen Menüpunkten */
#top-menu li {
    padding-right: 5px !important;
}

/* Header Padding */
#et-top-navigation {
    padding: 20px 0 !important;
}

/* DIVI-default Effekte ausschalten */
#top-menu li > a,
#top-menu li > a:hover {
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    transition: background 0.15s ease-in-out;
}

/* -----------------------------------------------------------
   DROPDOWN-PFEILE (sichtbar + neu positioniert)
   ----------------------------------------------------------- */

/* Pfeile anzeigen */
#top-menu .menu-item-has-children > a:first-child:after {
    font-family: "ETmodules" !important;
    content: "\33" !important; /* kleiner Chevron */
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #1d1d1d; /* Normalzustand: dunkel */
    opacity: 0.9;
}

/* Pfeile in Hover weiß */
#top-menu .menu-item-has-children:hover > a:first-child:after,
#top-menu .menu-item-has-children.current-menu-item > a:first-child:after {
    color: #ffffff !important;
    opacity: 1;
}

/* -------------------------------------------------------
   MBÖRSO ANTI-BRIGHTEN FIX – verhindert Aufhellen komplett
   ------------------------------------------------------- */

/* BLOCKIERT Divis Opacity-Animation */
#top-menu a,
#top-menu li > a,
#top-menu li > a:hover,
#top-menu li > a:active,
#top-menu li > a:focus {
    opacity: 1 !important;
    transition: background-color 0.15s ease-in-out !important;
}

/* BLOCKIERT Browser-Active/Focus Farbänderungen */
#top-menu a:active,
#top-menu a:focus {
    background-color: #0f7b79 !important;
    color: #ffffff !important;
    outline: none !important;
}

/* HINTERGRUNDFARBE NUR durch UNS kontrolliert */
#top-menu li:hover > a {
    background-color: #0f7b79 !important;
    color: #ffffff !important;
    filter: none !important;
    box-shadow: none !important;
}

/* verhindert unsichtbare Overlays von Divi */
#top-menu li > a:before,
#top-menu li > a:after {
    background: none !important;
    filter: none !important;
}

/* verhindert Subpixel-Opacity-Effekte */
#top-menu li {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}


/* -----------------------------------------------------------
   ACTIVE PARENT HIGHLIGHT für Menüebene 1
   wenn eine Unterseite aktiv ist
   ----------------------------------------------------------- */

#top-menu > li.current-menu-ancestor > a,
#top-menu > li.current_page_ancestor > a,
#top-menu > li.current_page_parent > a,
#top-menu > li.current-menu-parent > a {
    background-color: #0f7b79 !important;
    color: #ffffff !important;
    
    filter: none !important;
}

/* Submenu selbst bleibt natürlich auch aktiv */
#top-menu li li.current-menu-item > a,
#top-menu li li.current_page_item > a {
    background-color: #0f7b79 !important;
    color: #ffffff !important;
}










/* Abstand für h2 nach unten im Blog*/

h2.wp-block-heading {
 	margin-top: 7px !important;
	margin-bottom: 16px !important;
}


/* Abstand für h3 nach unten im Blog*/

h3.wp-block-heading {
 	margin-top: 7px !important;
	margin-bottom: 16px !important;
}

/* Abstand für h4 nach unten im Blog*/

h4.wp-block-heading {
  	margin-top: 7px !important;
	margin-bottom: 16px !important;
}




/* Divi + Gutenberg: Überschriften sicher umbrechen */
.wp-block-post-content .wp-block-heading,
.et_pb_post_content .wp-block-heading,
.entry-content .wp-block-heading,
.wp-block-heading {
  white-space: normal !important;
  overflow-wrap: anywhere;
  word-wrap: break-word;
  word-break: break-word;
  hyphens: auto;
}






/* Erste und zweite Ebene im Dropdown-Menü: Trennlinie zwischen Listenelementen */
#top-menu .sub-menu li {
  border-bottom: 2px solid #e0e0e0; /* dezente graue Linie */
 padding: 8px 12px;
}

/* Letztes Element ohne Linie */
#top-menu .sub-menu li:last-child {
  border-bottom: none;
}


/* Increase inner width of drop-down menu */
.et-menu li li a {
    padding: 6px 20px; 
    width: 320px;
}
/* Increase width of drop-down menu*/
.nav li ul {
    position: absolute;
    padding: 20px 0; 
    width: 360px;
    
}

#top-menu li li a {
padding: 6px 20px;
width: 320px;
}

/*Kontaktformular*/

.et_contact_bottom_container {
    float: none;
    text-align: right;
    display: block !important;
  margin-top:30px;
  margin-left:20px;
}

@media (min-width: 768px) and (max-width: 991.98px){
  .et_contact_bottom_container {
     margin-top: -17px;
  }
}

@media (min-width: 300px) and (max-width: 767.98px){
  .et_contact_bottom_container {
     margin:25px;
    text-align:center;
  }
}




/*design back to top button*/

.et_pb_scroll_top.et-pb-icon {
	    background: rgba(15, 123, 121, 0.5);
		bottom: 280px;
		right: 20px;
    	border-radius: 25px;
}

.et_pb_scroll_top.et-pb-icon:hover {
	    background: #0F7B79;
		bottom: 280px;
		right: 20px;
    	border-radius: 25px;
}

.et_pb_scroll_top.et-visible {
    opacity: 1;
    -webkit-animation: fadeInBottom 1s 1 cubic-bezier(.77,0,.175,1);
    -moz-animation: fadeInBottom 1s 1 cubic-bezier(.77,0,.175,1);
    -o-animation: fadeInBottom 1s 1 cubic-bezier(.77,0,.175,1);
    animation: fadeInBottom 1s 1 cubic-bezier(.77,0,.175,1);
} 


/*mobil reihenfolge ändern anleitung:

display: flex;
flex-wrap: wrap;   ->  in mobile custom css der entsprechenden row einfügen

dann: order:1; order:2; usw bei den entsprechenden spalten in die mobile custom css einfügen

*/


/*place button modules next to each other in the same column -> klasse .inline-buttons in divi row einfügen, damit aktiv*/

.inline-buttons .et_pb_button_module_wrapper {
    display: inline-block;
}

.inline-buttons {
text-align: center !important;
}




/* CSS for buttons - Attention Grabber - Pulse */
#page-container .et-l .et_pb_section .dl-pulse {
  animation: button-pulse 2.0s infinite;
}

@keyframes button-pulse {

  0%,
  30%,
  60%,
  100% {
    transform: scale(1);
  }

  8%,
  12% {
    transform: scale(1.03);
  }
}

#page-container .et-l .et_pb_section .dl-pulse:hover {
  animation: none;
}




/*prevent horizontal scroll on mobile*/

@media all and (max-width: 980px) {
	html,
	body {
		overflow-x: hidden;
	}
	body {
		position: relative
	}
}

@media all and (max-width: 980px) {
#page-container {overflow:hidden;}	
}
