/*
Theme Name:   Luisa Herrmann Webdesign
Description:  Luisa Herrmann Childtheme
Author:       Luisa Herrmann
Author URL:   https://www.luisaherrmann.de/
Template:     Divi
Version:      1.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  Divi-child
*/

/* Write here your own personal stylesheet */


.font-headline {
  font-family: 'AustinNewsHeadline';
  font-style: italic;
  font-weight: 500;
}


@media (min-width: 980px){
 

  #fullsection, #fullslide .et_pb_slide {
    height: calc(100vh - 95px);  }

  #fullsection {
    display: flex;    flex-direction:column;    overflow: hidden;  }

  #footer-bottom .container {
    width: 100%;    max-width: 100%;    padding-right: 30px;    padding-left: 30px;  }
}


#et-boc .et-l ol li, #et-boc .et-l ul li {
padding-bottom: 15px;}


.pa-bullet-list-1 ul {
list-style-type: none!important;}
.pa-bullet-list-1 ul li:before {
content: '\24'!important;color: #00000;font-family: 'ETMODULES'!important;margin-right: 10px;margin-left: -30px;font-size: 1.1em!important;}



/*LUX BUTTON*/
.lux-button {
  display: inline-flex;  align-items: center;  gap: 0.75em;  font-size: 19px;  font-weight: 500;  color: #111;  text-decoration: none;  position: relative;  padding: 0.4em 0.7em;  transition: color 0.3s ease;  z-index: 1;  margin-left:2px;}

.lux-button::after {
  content: "";  position: absolute;  left: 0;  bottom: 0;  width: 100%;  height: 2px;  background: #111;  transition: all 0.3s ease;  border-radius: 0px;  z-index: -1;}

.lux-button:hover::after {
  height: 100%;  border-radius: 999px;  background: transparent;  outline: 1px solid #111;}





[data-a-split="word"] {
  line-height: 1.0 !important; }

[data-a-split="word"] span {
  display: inline-block;  line-height: 1em;  vertical-align: baseline;  padding-bottom: 0.02em;  white-space: nowrap;}



.pa-add-accordion-icon .et_pb_accordion_item.et_pb_toggle_open .et_pb_toggle_title:before {
	display: block; font-family: "FontAwesome" !important;  content: '\f621' !important;  font-weight: 900;  font-size: 35px;  color: #F44D26;  position: absolute;  right: 0;margin-right: -10px;padding-right: 0;    transition: transform 0.3s ease;  transform: rotate(0deg);}





.pa-bullet-list-2 ul {
list-style-type: none!important;}
.pa-bullet-list-2 ul li:before {
font-family: "FontAwesome" !important;  content: '\f621' !important; font-weight: 700;  font-size: 30px;  color: #F44D26;  position: absolute; margin-right: 10px;margin-left: -30px;font-size: 1.2em!important;}



/*Back to top Button*/
.et_pb_scroll_top.et-pb-icon {
	border-radius: 25px;
	right: 15px;
	background: #ffbb91bd;
	padding: 5px;
}

.et_pb_scroll_top.et-pb-icon:hover {
	background: #33373a;
	transition: ease-in-out;
	transition-duration: 0.5s;
}

.et_pb_scroll_top:before {
	content: "\21";
}

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


/*change color of text highlight*/
::-moz-selection {
  color: #ffffff;
  background: #000000;
}
::selection {
  color: #ffffff;
  background: #000000;
}

.et_fullwidth_nav #main-header .container {
    backdrop-filter: blur(0.7px);
}







MENU
#main-header {
  box-shadow: none !important;
}

header .container {
    max-width: 1571px!important;
}





et_parallax_bg {
	opacity: 0.;
}


/*This will change the active main menu item colour*/




/*Prevent Navigation from Overlap on Tablet*/
@media (max-width: 1500px) {
 #et_mobile_nav_menu {
 display: block;
 }
 
#top-menu {
 display: none;
 }
 }


/* OVERLAY */
/* Paralax image background color overlay effect */
.bg-overlay .et_parallax_bg::before { 
    background-color: #000000; 
	  opacity: 0.6;
    content: ""; 
    height: 100%;
    width: 100%;
    position: absolute; 
    left: 0;
    top: 0; 
}






.pa-multi-line-highlight h2 {
  color: #ffffff;
  background-color: #000000;
  line-height: 1.4em;
  padding-bottom: 3px;
  display: inline;
  padding-left: 10px;
padding-right: 10px;

  
  box-decoration-break: clone;
}

.pa-multi-line-highlight1 h2 {
  color: #ffffff;
  background-color: #000000;
  padding-bottom: 0px;
  display: inline;
  padding-left: 10px;
padding-right: 10px;

  
  box-decoration-break: clone;
}


.pa-multi-line-highlight h3 {
  color: #ffffff;
  background-color: #000000;
  line-height: 1.4em;
  padding-bottom: 5px;
  display: inline;
  padding-left: 10px;
padding-right: 10px;

  box-decoration-break: clone;
}

.pa-multi-line-highlight p {
  color: #000000;
  background-color: #ffffff;
  line-height: 1.7em;
  padding-bottom: 5px;
  padding-top: 2px;
  display: inline;
  box-shadow: 15px 0 0px 0px #ffffff, -5px 0 0px 0px #ffffff;
  padding-left: 10px;
padding-right: 10px;

  box-decoration-break: clone;
}






Highlight navigation
.ds-custom-link a {
	padding: 12px !important;
	border-radius: 30px;
	background: #000;
	color: #fff!important;
}

.ds-custom-link a:hover {
	background: #fff;
	color: #000 !important;
	opacity: 1 !important;
}

@media (max-width: 980px) {
	.ds-custom-link a {
	background: none !important;
	color: #ffbb91 !important;
	
}

.ds-custom-link a:hover {
	background: none !important;
	color: #ffbb91 !important;
	opacity: 0 !important;
}
}
	
	
	
Jumping Header fix
#page-container {
padding-top: 138px !important;
}





EQUALIZE BLURB HEIGHTS


#floating #floatingText {
	width: 60%;
}


#floating #floatingImage {
	width: 80%;
}





SEITE SEO
.seobox {
  animation-duration: 5s!important;
	animation-timing-function: ease-in-out!important;
}

.et_pb_accordion .et_pb_toggle_open .et_pb_toggle_title:before {
    display: block!important;
    content: "\e04f" !important;
}


.et_pb_accordion_0.et_pb_accordion {
  background-color: #eeece8!important;
}



KONTAKT
input[type="text"], select, textarea {
	background-color: #fff0;
}

body #gform_wrapper_2 .gform_body .gform_fields .gfield .gfield_label {
  font-weight: normal;
  font-size: 19px;
}


.gform_required_legend {
	display: none;
}




.custom_bullets ul li {
  padding-left: 25px;
  list-style:none;
  margin-bottom: 5px;
}

.custom_bullets ul li::before {
  content: '\52';
  display: inline-block;
  margin-right: 5px;
  margin-left: -30px;
  padding-right: 5px;
  font-family:'ETmodules';
  font-size: 1.2em;
  vertical-align: middle;
}

.custom_bulletsx ul li {
  padding-left: 25px;
  list-style:none;
  margin-bottom: 5px;
}

.custom_bulletsx ul li::before {
  content: '\51';
  display: inline-block;
  margin-right: 5px;
  margin-left: -30px;
  padding-right: 5px;
  font-family:'ETmodules';
  font-size: 1.2em;
  vertical-align: middle;
}


.custom_bullets2 ul li {
  padding-left: 25px;
  list-style:none;
  margin-bottom: 5px;
}

.custom_bullets2 ul li::before {
  content: '\4c';
  display: inline-block;
  margin-right: 5px;
  margin-left: -30px;
  padding-right: 5px;
  font-family:'ETmodules';
  font-size: 1.2em;
  vertical-align: middle;
}

/*BLOG*/

.wp-block-group.has-background {
	padding: 70px;
	margin-top: 50px!important;
	margin-bottom: 50px!important;
}


.gutentoc {
	margin-top: 50px;
	margin-bottom: 50px;
}

.et_pb_post_content_0_tb_body h2 {
	margin-top: 30px!important;
}

.et_pb_post_content_0_tb_body h3 {
	margin-top: 30px!important;
}


.wp-block-image img {
	margin-top: 30px;
	margin-bottom:25px;
}

.wp-block-image figcaption {
	margin-top:-10px;
	margin-bottom:10px;
}

.wp-block-image h3 {
	margin-top:20px!important;
	margin-bottom:40px;
}

p.has-background {
    padding: 1.25em 2.375em;
    margin-top: 20px;
    margin-bottom: 35px;
}

.wp-block-gallery.has-nested-images figure.wp-block-image img {
    display: block;
    height: auto;
    max-width: 100%!important;
    width: auto;
    margin-top: 0px!important;
    margin-bottom: 0px!important;
}


.pa-post-category-links a {
	background: #ebe6e6;padding: .3em 0.8em;border-radius: 50px;font-size: .8em;transition: .3s ease all;  margin: 0 0.4em 0.4em 0;}


.pa-post-category-links a:hover {
	background: #d3cfcf;transition: .3s ease all;}





/*RATING WIDGET*/
.rmp-widgets-container.rmp-wp-plugin.rmp-main-container {
    text-align: left;
    padding: 0px;
	margin-top:40px;
}
.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-heading--title {
    font-size: 22px;
    font-family: 'Bricolage Grotesque Medium',Helvetica,Arial,Lucida,sans-serif;;
}




.wp-block-button .has-custom-font-size .button-affiliates {
    border-radius: 100px;
    background-color: #e6ff3f;
    padding-top: 7px;
    padding-bottom: 7px;
    text-decoration: none!important;
	color:#ffffff!important;
}

.wp-block-buttons>.wp-block-button.has-custom-font-size .wp-block-button__link {
    font-size: inherit;
    text-decoration: none;
	    margin-bottom: 12px;
    margin-top: 12px;
}



/*MOBILE MENU*/
@media screen and (max-width: 1100px) {
    .et_header_style_left #logo, .et_header_style_split header#main-header #dipi_logo, .et_header_style_centered header#main-header #logo {
        width: px !important;
        margin-top: -10px!important;
    }
}

@media (max-width: 1100px) {
    body.dipi-mobile-menu-fullscreen .mobile_nav:before {
        top: 0;
        right: -10px!important;
        bottom: 0;
        left: -10px!important;

    }
}


@media (max-width: 1100px) {
    .et-db #et-boc .et-l div[class^='et_pb_module et_pb_menu et_pb_menu_'].et_pb_menu ul li a.dipi-cta-button, div[class^='et_pb_module et_pb_menu et_pb_menu_'].et_pb_menu ul li a.dipi-cta-button, body.dipi-mobile-cta-button .dipi-cta-button, body.dipi-mobile-cta-button #main-header.et-fixed-header .dipi-cta-button {
        margin-top: 60px!important;
        max-width: 220px!important;
    }
}





/* Gutenberg Galerie: mobil 1 Spalte erzwingen */
@media (max-width: 760px) {
  /* Flex-Variante (WP 6.x): alle Items auf volle Breite */
  .wp-block-gallery.is-layout-flex.columns-2 .wp-block-image,
  .wp-block-gallery.is-layout-flex.columns-3 .wp-block-image,
  .wp-block-gallery.is-layout-flex .wp-block-image {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin: 0 0 var(--wp--style--gallery-gap, 16px) 0 !important;
  }

  /* Falls die Galerie als Grid läuft (manche WP/Theme-Kombis) */
  .wp-block-gallery.has-nested-images.is-layout-grid {
    display: grid !important;
  }

  /* Bildbreite sicherstellen */
  .wp-block-gallery .wp-block-image img {
    width: 100%;
    height: auto;
  }
}


/* Bildunterschriften (Gallery & Images) */
.wp-block-image figcaption,
.wp-block-gallery figcaption {
  line-height: 1.3 !important;
  font-size: 0.9em;   /* optional: etwas kleiner als Fließtext */
  text-align: center; /* falls du sie mittig haben willst */
}



/*BLOG KÄSTEN*/
/* ================================
   INFOBOXEN – SVG-Icons im CSS
   ================================ */

.infobox {
  position: relative;
  margin: 40px 0;
  padding: 30px 36px 30px 84px; /* Platz für Icon links */
  border-radius: 15px;
  border: 3px solid transparent;
  color: #212121;
  background: #fff;
  box-shadow: 0 8px 28px -14px rgba(0,0,0,0.12);
  background-repeat: no-repeat;
  background-position: 26px 28px;
  background-size: 34px auto;
}

/* Varianten */
.infobox.tip {
  background-color: #F3EFFB;
  border-color: #DCCBF3;
  background-image: url('/wp-content/uploads/2025/10/tippicon.svg');
}

.infobox.info {
  background-color: #EBE5E6;
  border-color: #D7D0D1;
  background-image: url('/wp-content/uploads/2025/10/infoicon.svg');
}

.infobox.warn {
  background-color: #FFECE6;
  border-color: #F44D26;
  background-image: url('/wp-content/uploads/2025/10/warnicon.svg');
}

/* Text */
.infobox p {
  margin: 0;
  line-height: 1.6;
}
.infobox strong {
  font-weight: 600;
  color: inherit;
}

/* ================================
   RESPONSIVE ANPASSUNG
   ================================ */
@media (max-width: 768px) {
  .infobox {
    padding: 70px 26px 26px 26px; /* oben Platz für Icon */
    background-position: center 20px; /* Icon mittig oben */
    background-size: 40px auto; /* etwas größer für Mobile */
    text-align: center; /* optional, wirkt harmonisch */
  }
}



/*PROJEKTE*/
.work-card .et_pb_main_blurb_image {
  overflow: hidden;
  position: relative;
}
.work-card .et_pb_main_blurb_image img {
  transition: transform .5s ease;
  display: block;
  width: 100%;
}
.work-card:hover .et_pb_main_blurb_image img {
  transform: scale(1.08);
}
/* Name erst auf Hover einblenden */
.work-card .et_pb_module_header {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  margin: 0;
  padding: 16px;
  color: #fff;
  background: linear-gradient(transparent, rgba(0,0,0,.55));
  opacity: 0;
  transition: opacity .4s ease;
}
.work-card:hover .et_pb_module_header {
  opacity: 1;
}


/* Karte */
.work-card { position: relative; }
.work-card .et_pb_blurb_content { position: relative; }

/* Bild: 1:1, Zoom + Abdunkeln auf Hover */
.work-card .et_pb_main_blurb_image {
  overflow: hidden;
  position: relative;
}
.work-card .et_pb_main_blurb_image img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}
.work-card:hover .et_pb_main_blurb_image img {
  transform: scale(1.08);
}
.work-card .et_pb_main_blurb_image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.35);   /* höher = dunkler */
  opacity: 0;
  transition: opacity .4s ease;
  pointer-events: none;
}
.work-card:hover .et_pb_main_blurb_image::after { opacity: 1; }

/* Titel: unten links über dem Bild, erscheint auf Hover */
.work-card .et_pb_blurb_container {
  position: absolute !important;   /* setzt sich gegen Divis Preset durch */
  left: 20px !important;
  right: 0 !important;
  bottom: 20px !important;
  top: auto !important;
  margin: 0;
  padding: clamp(24px, 3vw, 40px);
  z-index: 2 !important;
}
.work-card .et_pb_module_header {
  margin: 0;
  padding: 0;
  color: #fff;
  text-align: left;
  background: none;
  opacity: 0;
  transition: opacity .4s ease;
}
.work-card:hover .et_pb_module_header { opacity: 1; }

/* Mobile: weniger Abstand, Titel dauerhaft sichtbar, Bild leicht abgedunkelt */
@media (max-width: 767px) {
  .work-card .et_pb_blurb_container {
    padding: 25px;
  }
  .work-card .et_pb_module_header {
    opacity: 1;
  }
  .work-card .et_pb_main_blurb_image::after {
    opacity: 1;
    background: rgba(0,0,0,.2);
  }
}

/* === Rebranding-Altlast Schriften (Juli 2026) ====================
   Das Blogpost-Template und einzelne Presets referenzieren noch
   "General Sans" (altes Branding, nicht mehr geladen) - der Browser
   fiel auf Helvetica zurueck. Fettungen und Footer-Button wieder
   auf Bricolage. */
.et_pb_post_content p strong,
.et_pb_post_content li strong {
	font-family: "Bricolage Grotesque Medium", Helvetica, Arial, Lucida, sans-serif !important;
	font-weight: 600 !important;
}
body #page-container .et_pb_section .et_pb_button_0_tb_footer,
.preset--module--divi-text--bac0fqphss .et_pb_text_inner h2,
.preset--module--divi-text--bac0fqphss .et_pb_text_inner h3 {
	font-family: "Bricolage Grotesque Medium", Helvetica, Arial, Lucida, sans-serif !important;
}



/* ==========================================================================
   Mega-Menü luisaherrmann.de
   Fassung 7, 13.08.2026. Ersetzt alle vorherigen Fassungen komplett.

   Gegenüber Fassung 6:
   - Divis Hover-Unterstrich ist kein Textunterstrich, sondern ein eigenes
     Element unter dem Link (a::after). Das wird jetzt im Panel komplett
     entfernt, damit verschwindet der schwarze Strich unter den Überschriften.
   - Der orange Akzentstrich der Überschriften ist deshalb von a::after auf
     a::before umgezogen und sollte jetzt überhaupt erst sichtbar werden.

   Gegenüber Fassung 5:
   - Divis eigener Menü-Hover-Unterstrich wird im Panel komplett abgeschaltet.
     Er feuert auf "Link im gehoverten Listenpunkt", hovert man einen Eintrag,
     ist auch der Elternpunkt gehovert und die Spaltenüberschrift wurde
     mitunterstrichen. Außerdem war er schwarz, weil er aus Divis Regel kam
     und nicht aus dieser Datei. Jetzt gibt es im Panel nur noch den eigenen
     Unterstrich auf dem tatsächlich gehoverten Eintrag.

   Gegenüber Fassung 4:
   - Bricolage Grotesque explizit auf Überschriften und Einträge.
   - Überschriften in Medium 500 (auf 600 wechseln: eine Zeile, siehe unten).
   - Hover unterstreicht in Orangerot tief, direkt unter den Wörtern und bei
     zweizeiligen Einträgen unter beiden Zeilen, nicht nur der ersten.

   Aus Fassung 4 übernommen:
   - Alle Ebenen hell gezwungen (Divis Dropdown-Farbe lag auch auf inneren ul).
   - Icon je Eintrag über Klassen (lh-i-zahn, lh-i-arzt, lh-i-werkzeug,
     lh-i-monitor, lh-i-pin, lh-i-projekt, lh-i-pfeil).
   - Panel 960px, rechtsbündig unter dem Menü.

   Einfügen unter Divi → Theme-Optionen → Benutzerdefiniertes CSS
   oder in die style.css des Child-Themes.
   ========================================================================== */

/* --- Divis Unterstrich im Panel abschalten, auf allen Ebenen --------------- */
/* Deckt Normalzustand, gehoverte Elternpunkte und den Link selbst ab.        */

html body #main-header li.mega-menu ul a,
html body #main-header li.mega-menu ul li:hover > a,
html body #main-header li.mega-menu ul a:hover,
html body #et-top-navigation li.mega-menu ul a,
html body #et-top-navigation li.mega-menu ul li:hover > a,
html body #et-top-navigation li.mega-menu ul a:hover,
html body .et-menu li.mega-menu ul a,
html body .et-menu li.mega-menu ul li:hover > a,
html body .et-menu li.mega-menu ul a:hover {
  text-decoration: none !important;
}

/* Divi zeichnet den Hover-Unterstrich zusätzlich als eigenes Element unter
   dem Link (a::after). Das wird hier komplett entfernt. Die Icons der
   Einträge liegen auf a::before und bleiben davon unberührt, der
   Akzentstrich der Überschriften liegt deshalb ebenfalls auf a::before.     */
html body #main-header li.mega-menu ul a::after,
html body #et-top-navigation li.mega-menu ul a::after,
html body .et-menu li.mega-menu ul a::after {
  content: none !important;
  display: none !important;
}

html body #main-header li.mega-menu ul a,
html body #et-top-navigation li.mega-menu ul a,
html body .et-menu li.mega-menu ul a {
  border-bottom: 0 !important;
}

/* Die Spaltenüberschriften bleiben in jedem Zustand ohne Unterstrich */
html body #main-header li.mega-menu ul li.lh-mega-titel > a,
html body #main-header li.mega-menu ul li.lh-mega-titel:hover > a,
html body #et-top-navigation li.mega-menu ul li.lh-mega-titel > a,
html body #et-top-navigation li.mega-menu ul li.lh-mega-titel:hover > a,
html body .et-menu li.mega-menu ul li.lh-mega-titel > a,
html body .et-menu li.mega-menu ul li.lh-mega-titel:hover > a {
  text-decoration: none !important;
}

/* --- Alles Dunkle raus, auf allen Ebenen ---------------------------------- */

#main-header li.mega-menu ul,
#main-header li.mega-menu li,
#et-top-navigation li.mega-menu ul,
#et-top-navigation li.mega-menu li,
.et-menu li.mega-menu ul,
.et-menu li.mega-menu li {
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* --- Panel ---------------------------------------------------------------- */

#main-header .et-menu li.mega-menu > ul,
#main-header #top-menu li.mega-menu > ul,
#et-top-navigation .nav li.mega-menu > ul,
.et-menu li.mega-menu > ul {
  background-color: #FBFAF8 !important;
  border: 1px solid #E2DDE4 !important;
  border-radius: 0 14px 14px 14px !important;
  box-shadow: 0 24px 60px rgba(52, 40, 57, 0.12) !important;
  padding: 40px 36px 36px !important;
  width: 960px !important;
  left: auto !important;
  right: 0 !important;
}

/* --- Spalten -------------------------------------------------------------- */

#main-header .et-menu li.mega-menu > ul > li,
#main-header #top-menu li.mega-menu > ul > li,
#et-top-navigation .nav li.mega-menu > ul > li,
.et-menu li.mega-menu > ul > li {
  width: 33.333% !important;
  padding: 0 28px 0 0 !important;
}

/* --- Spaltenüberschriften ------------------------------------------------- */

#main-header li.mega-menu > ul > li.lh-mega-titel > a,
#et-top-navigation li.mega-menu > ul > li.lh-mega-titel > a,
.et-menu li.mega-menu > ul > li.lh-mega-titel > a {
  position: relative !important;
  pointer-events: none !important;
  cursor: default !important;
  color: #342839 !important;
  background-color: transparent !important;
  font-family: "Bricolage Grotesque", sans-serif !important;
  font-size: 19px !important;
  font-weight: 500 !important; /* für Semibold: 600 */
  letter-spacing: 0 !important;
  text-transform: none !important;
  padding: 0 0 18px 0 !important;
  margin-bottom: 14px !important;
  opacity: 1 !important;
}

/* Kurzer Akzentstrich unter der Überschrift.
   Liegt auf a::before, weil a::after oben stillgelegt ist.                   */
html body #main-header li.mega-menu > ul > li.lh-mega-titel > a::before,
html body #et-top-navigation li.mega-menu > ul > li.lh-mega-titel > a::before,
html body .et-menu li.mega-menu > ul > li.lh-mega-titel > a::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 8px !important;
  top: auto !important;
  transform: none !important;
  width: 30px !important;
  height: 2px !important;
  background: #D14B26 !important;
  border: 0 !important;
}

/* --- Einträge ------------------------------------------------------------- */

#main-header li.mega-menu > ul > li > ul > li > a,
#et-top-navigation li.mega-menu > ul > li > ul > li > a,
.et-menu li.mega-menu > ul > li > ul > li > a {
  position: relative !important;
  display: block !important;
  color: #342839 !important;
  background-color: transparent !important;
  font-family: "Bricolage Grotesque", sans-serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  padding: 10px 0 10px 30px !important;
  border-radius: 0 !important;
  opacity: 1 !important;
  text-decoration: none;
  transition: color 0.2s ease;
}

/* Hover: Text und Unterstrich in Orangerot tief. text-decoration folgt den
   Wörtern und bricht mit um, bei zweizeiligen Einträgen liegt die Linie also
   unter beiden Zeilen statt nur unter der ersten.
   Muss NACH dem Abschalt-Block oben stehen und schlägt ihn über die
   Spezifität der vollen Pfad-Selektoren.                                     */
html body #main-header li.mega-menu > ul > li > ul > li > a:hover,
html body #et-top-navigation li.mega-menu > ul > li > ul > li > a:hover,
html body .et-menu li.mega-menu > ul > li > ul > li > a:hover {
  color: #A23B17 !important;
  background-color: transparent !important;
  opacity: 1 !important;
  text-decoration-line: underline !important;
  text-decoration-color: #A23B17 !important;
  text-decoration-thickness: 1.5px !important;
  text-underline-offset: 5px !important;
}

/* --- Icons je Eintrag ------------------------------------------------------ */
/* Linienstil 1.6px in Mauve-Stein #675A62 (%23675A62 in der URL).
   Zum Umfärben die Farbe in der jeweiligen data-URL tauschen.               */

li.lh-mm > a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 17px;
  height: 17px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0.85;
}

/* Zahn */
li.lh-i-zahn > a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23675A62' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5.5c-1.5-1.6-3.8-2.2-5.7-1.2C4.2 5.4 3.4 8 4.3 10.3c.6 1.5 1 3.1 1.2 4.7l.5 4c.1.9 1.3 1.1 1.7.3l1.6-3.4c.5-1.1 2-1.1 2.6 0l1.6 3.4c.4.8 1.6.6 1.7-.3l.5-4c.2-1.6.6-3.2 1.2-4.7.9-2.3.1-4.9-2-6-1.9-1-4.2-.4-5.7 1.2z'/%3E%3C/svg%3E");
}

/* Arztkreuz */
li.lh-i-arzt > a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23675A62' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.5 4h5v5.5H20v5h-5.5V20h-5v-5.5H4v-5h5.5z'/%3E%3C/svg%3E");
}

/* Schraubenschlüssel */
li.lh-i-werkzeug > a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23675A62' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 0 0-5.4 5.4L4 17l3 3 5.3-5.3a4 4 0 0 0 5.4-5.4l-2.6 2.6-2.4-.6-.6-2.4z'/%3E%3C/svg%3E");
}

/* Monitor */
li.lh-i-monitor > a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23675A62' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='12' rx='1.5'/%3E%3Cpath d='M9 20h6M12 17v3'/%3E%3C/svg%3E");
}

/* Standort-Pin */
li.lh-i-pin > a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23675A62' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-6.1 7-11a7 7 0 1 0-14 0c0 4.9 7 11 7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
}

/* Projekt / Browserfenster */
li.lh-i-projekt > a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23675A62' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='1.5'/%3E%3Cpath d='M3 9h18M6 6.5h.01M9 6.5h.01'/%3E%3C/svg%3E");
}

/* Pfeil */
li.lh-i-pfeil > a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23675A62' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h16M13 5l7 7-7 7'/%3E%3C/svg%3E");
}

/* --- Mobil ---------------------------------------------------------------- */

.et_mobile_menu li.lh-mega-titel > a {
  pointer-events: none !important;
  cursor: default !important;
  color: #675A62 !important;
  font-size: 13px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

.et_mobile_menu li.mega-menu > ul > li > ul > li > a {
  color: #342839 !important;
}

/* Im Mobilmenü sitzen die Icons zu eng, dort etwas Platz schaffen */
.et_mobile_menu li.lh-mm > a {
  position: relative !important;
  padding-left: 30px !important;
}

/* --- Divi-Pixel-Hover-Effekt im Mega-Panel abschalten ----------------------
   Divi Pixel (Menüeffekt "Grow below left", Body-Klasse grow_below_left)
   legt per JavaScript ein span um jeden Menütext und zeichnet darauf eine
   wachsende 2px-Linie in #212121 (span::after). Die Regel trifft jedes li im
   Menü, also auch Überschriften und Einträge im Mega-Panel. Hier wird sie
   nur im Panel stillgelegt, das Hauptmenü behält seinen Effekt.            */
html body #top-menu li.mega-menu li > a > span::before,
html body #top-menu li.mega-menu li > a > span::after,
html body .et-menu li.mega-menu li > a > span::before,
html body .et-menu li.mega-menu li > a > span::after,
html body .et_pb_menu__menu > nav > ul > li.mega-menu li > a > span::before,
html body .et_pb_menu__menu > nav > ul > li.mega-menu li > a > span::after {
  content: none !important;
  display: none !important;
}


/* --- Mobil: Mega-Menü ausgeblendet (13.08.2026) ---------------------------
   Entscheidung: Das Mega-Menü gibt es vorerst nur am Desktop, mobil ist die
   Liste zu lang. Im Mobilmenü ist das komplette Untermenü von Webdesign
   ausgeblendet, der Punkt bleibt ein normaler Link auf /webdesign-nuernberg/.
   Divi erzwingt display:block per ID-Selektor, daher der html-body-Vorbau.  */

html body #main-header .et_mobile_menu li.mega-menu > ul,
html body .mobile_nav .et_mobile_menu li.mega-menu > ul,
html body .et_mobile_menu li.mega-menu > ul {
  display: none !important;
  visibility: hidden !important;
}


/* --- Aktiver Menüpunkt im Mega-Panel (13.08.2026) --------------------------
   Divi färbt den Link der gerade besuchten Seite mit doppelter ID-Spezifität
   (aktive Farbe des Headers, auf hellem Panel unsichtbar). Hier wird der
   aktive Eintrag im Panel wieder auf Aubergine gesetzt, Hover wie üblich.   */

html body #main-header #top-menu li.mega-menu ul li.current-menu-item > a,
html body #main-header #top-menu li.mega-menu ul li.current_page_item > a,
html body #main-header #top-menu li.mega-menu ul li.current-menu-ancestor > a,
html body #et-top-navigation #top-menu li.mega-menu ul li.current-menu-item > a,
html body #et-top-navigation #top-menu li.mega-menu ul li.current_page_item > a {
  color: #342839 !important;
  opacity: 1 !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  text-transform: none !important;
}

html body #main-header #top-menu li.mega-menu ul li.current-menu-item > a:hover,
html body #main-header #top-menu li.mega-menu ul li.current_page_item > a:hover,
html body #et-top-navigation #top-menu li.mega-menu ul li.current-menu-item > a:hover,
html body #et-top-navigation #top-menu li.mega-menu ul li.current_page_item > a:hover {
  color: #A23B17 !important;
}


/* --- Engere Laufweite im Mega-Panel (13.08.2026) ---------------------------
   Divis Menüstil gibt den Links 1px letter-spacing mit. Im Panel auf 0,
   inklusive der aktiven Einträge (doppelte ID-Spezifität nötig).            */

html body #main-header li.mega-menu > ul > li > ul > li > a,
html body #et-top-navigation li.mega-menu > ul > li > ul > li > a,
html body .et-menu li.mega-menu > ul > li > ul > li > a,
html body #main-header #top-menu li.mega-menu ul li.current-menu-item > a,
html body #main-header #top-menu li.mega-menu ul li.current_page_item > a,
html body #et-top-navigation #top-menu li.mega-menu ul li.current-menu-item > a,
html body #et-top-navigation #top-menu li.mega-menu ul li.current_page_item > a,
html body #main-header li.mega-menu > ul > li > ul > li > a:hover,
html body #et-top-navigation li.mega-menu > ul > li > ul > li > a:hover,
html body .et-menu li.mega-menu > ul > li > ul > li > a:hover,
html body #main-header #top-menu li.mega-menu ul li.current-menu-item > a:hover,
html body #main-header #top-menu li.mega-menu ul li.current_page_item > a:hover,
html body #et-top-navigation #top-menu li.mega-menu ul li.current-menu-item > a:hover,
html body #et-top-navigation #top-menu li.mega-menu ul li.current_page_item > a:hover {
  letter-spacing: 0 !important;
}


/* --- Spaltenüberschriften gegen Divis Aktiv-Stil absichern (13.08.2026) ----
   Ist eine Panel-Seite die gerade besuchte, gilt ihre Spaltenüberschrift als
   Elternpunkt (current-menu-ancestor) und erbt Divis 14px-Aktivgröße. Diese
   Regel hält die Überschriften in jedem Zustand auf 19px Medium.            */

html body #main-header #top-menu li.mega-menu ul li.lh-mega-titel > a,
html body #et-top-navigation #top-menu li.mega-menu ul li.lh-mega-titel > a {
  color: #342839 !important;
  font-size: 19px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  opacity: 1 !important;
}
