/*
 Theme Name:   Mein Theme Child
 Theme URI:    https://example.com
 Description:  Child Theme von Mein Theme
 Author:       Dein Name
 Template:     hello-biz
 Version:      1.0.0
*/


.fa-mittel,
.fa-large,
.fa-thin {
    color: var( --e-global-color-primary ) !important;
    font-size: 70px;
}

.fa-mittel {
  font-size: 30px;
}


.elementor-nav-menu--dropdown
{
/*
    padding-right: 15px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    */
    transform: translateX(-24px);
}

/*
.elementor-nav-menu--dropdown .menu-item 
{
    padding-right: 15px !important;
}
*/



/* Keyframes für sanftes Einfliegen */
@keyframes menuFadeUp {
  0% {
    opacity: 0;
    transform: translateY(12px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Grundanimation */
.elementor-nav-menu .menu-item {
  opacity: 0;
  animation: menuFadeUp 0.50s ease-out forwards;
  animation-delay: 0s; /* Globale Startverzögerung */
}

/* Stagger, schnell aber smooth: +0.08s je Item */
.elementor-nav-menu .menu-item:nth-child(1)  { animation-delay: 0.04s; }
.elementor-nav-menu .menu-item:nth-child(2)  { animation-delay: 0.08s; }
.elementor-nav-menu .menu-item:nth-child(3)  { animation-delay: 0.12s; }
.elementor-nav-menu .menu-item:nth-child(4)  { animation-delay: 0.16s; }
.elementor-nav-menu .menu-item:nth-child(5)  { animation-delay: 0.20s; }
.elementor-nav-menu .menu-item:nth-child(6)  { animation-delay: 0.24s; }
.elementor-nav-menu .menu-item:nth-child(7)  { animation-delay: 0.28s; }
.elementor-nav-menu .menu-item:nth-child(8)  { animation-delay: 0.32s; }
.elementor-nav-menu .menu-item:nth-child(9)  { animation-delay: 0.36s; }
.elementor-nav-menu .menu-item:nth-child(10) { animation-delay: 0.40s; }
.elementor-nav-menu .menu-item:nth-child(11) { animation-delay: 0.44s; }
.elementor-nav-menu .menu-item:nth-child(12) { animation-delay: 0.48s; }
.elementor-nav-menu .menu-item:nth-child(13) { animation-delay: 0.52s; }
.elementor-nav-menu .menu-item:nth-child(14) { animation-delay: 0.56s; }
.elementor-nav-menu .menu-item:nth-child(15) { animation-delay: 0.60s; }
.elementor-nav-menu .menu-item:nth-child(16) { animation-delay: 0.64s; }
.elementor-nav-menu .menu-item:nth-child(17) { animation-delay: 0.68s; }
.elementor-nav-menu .menu-item:nth-child(18) { animation-delay: 0.72s; }
.elementor-nav-menu .menu-item:nth-child(19) { animation-delay: 0.76s; }
.elementor-nav-menu .menu-item:nth-child(20) { animation-delay: 0.80s; }

/* Aufzählung */

.arrow-list {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
}

.arrow-list li {
    position: relative;
    padding-left: 50px; 
    list-style: none;
    margin-left: -40px;
    line-height: 1.5em !important;
    margin-top: 1.5em !important;
}

.arrow-list li::before {
    content: "\f058";
    font-family: "Font Awesome 7 Pro";
    font-weight: 300;
    position: absolute;
    left: 0;
    margin-left: 0px !important;
    top: 2px;
    font-size: 30px;
    color: var(--e-global-color-primary);
    margin-top: -2px;
}

.arrow-list-therapie li::before {
   font-size: 20px;
    margin-top: 0 !important;
}

.arrow-list-therapie li {
  margin-top: 0.5em !important;
  line-height: 1.5em !important;

}

.arrow-list-white {
  color: white !important
}

.arrow-list-white li {
  color: white !important
}

.arrow-list-white li::before {
  color: white !important
}


.check-list {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
}

.check-list li {
    position: relative;
    padding-left: 40px; /* Platz für dein Icon */
    list-style: none;
    margin-left: -40px;
    line-height: 1.5em !important;
    margin-top: 1.5em !important;
}

.check-list li::before {
    content: "\f00c";
    font-family: "Font Awesome 7 Pro";
    font-weight: 600;
    position: absolute;
    left: 0;
    margin-left: 0px !important;
    top: 2px;
    font-size: 20px;
    margin-top: -2px;
}




/* Kein BG auf Mobil */ 
@media (max-width: 1200px) {
.mobile-disable-bg {
  background-image: none !important;
}

.mobile-disable-bg p, 
.mobile-disable-bg h1,
.mobile-disable-bg h2, 
.mobile-disable-bg h3, 
.mobile-disable-bg h4,
.mobile-disable-bg ul, 
.mobile-disable-bg li,
.mobile-disable-bg ul,
.mobile-disable-bg .arrow-list li::before { 
  color: var(--e-global-color-primary) !important
}}





/* Layout */ 

  .mobile-padding {
    padding-left: 75px !important;
    padding-right: 75px !important;
  }

@media (max-width: 767px) {
  .mobile-padding {
    padding-left: 15vw !important;
    padding-right: 15vw !important;
  }
}


@media (max-width: 620px) {
  .mobile-padding {
    padding-left: 50px !important;
    padding-right: 50px !important;
  }
}


@media (max-width: 500px) {
  .mobile-padding {
    padding-left: 25px !important;
    padding-right: 25px !important;
  }
}


.max-650 {
  width: 100%;
  max-width: 650px;
}

.square img {
  width: 100%;
  aspect-ratio: 1/1 !important;  
  object-fit: cover !important;   
  border-radius: 999px !important;  
}



/* FADING ANIMATIONEN */
/* ##### ANIMATIONEN ##### */ 

.animated-me,
.animated-me2,
.animated-me3 {
  opacity: 0;
  transition: opacity 0.8s ease, transform 0.8s ease !important;
}

/* Von oben kommend sichtbar */

/* Von unten kommend sichtbar */
.animated-me3.enter-from-bottom,
.animated-me2.enter-from-bottom,
.animated-me.enter-from-bottom {
  opacity: 1;
  transform: translateY(0);
}

.animated-me3.exit-to-bottom,
.animated-me2.exit-to-bottom,
.animated-me.exit-to-bottom {
  opacity: 0;
  transform: translateY(100px);
}

.enter-from-top {
  opacity: 1;
  transform: translateY(0);
}

.exit-to-top {
  opacity: 0; /* NICHT 0! sonst instant disappearance */
  transform: translateY(-100px);
}

.elementor-editor-active .animated-me,
.elementor-editor-active .animated-me2,
.elementor-editor-active .animated-me3
{
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

.animated-me2.enter-from-bottom,
.animated-me2.enter-from-top {
  transition-delay: 200ms !important;
}

.animated-me3.enter-from-bottom,
.animated-me3.enter-from-top {
  transition-delay: 400ms !important;
}

@media (max-width: 767px) {
.animated-me2.enter-from-bottom,
.animated-me2.enter-from-top, 
.animated-me3.enter-from-bottom,
.animated-me3.enter-from-top {
transition-delay: 0ms !important;
}
}


  .zeiten-table {
    width: 100%;
    min-width: 200px;
    border-collapse: collapse;
    border: none;
    margin: 0;
    padding: 0;
  }
  .zeiten-table td {
    border: none;
    margin: 0;
    padding: 0 6px 0 0; /* rechts minimaler Abstand, links 0 */
    vertical-align: top;
  }
  .zeiten-table td:first-child {
    width: 50%;
  }
  .zeiten-table td:last-child {
    width: 50%;
  }

  .zuspirit {
    display:block!important;text-align:center!important;width:100%;
  }




/* <-------------------------------------  Devider -------------------------------------> */





 .wave .elementor-shape-top .elementor-shape-fill,
 .wave .elementor-shape-bottom .elementor-shape-fill {
    d: path("M 999.699 95.132 c -295.067 -4.267 -191.946 -87.31 -394.563 -90.42 c -182.209 0 -135.628 78.089 -372.637 87.679 C 67.315 99.009 0 25.8 0 25.8 V 100 h 1000 z") !important;
}

.svg-150 .elementor-shape svg {
width: 150% !important
}






/* <-------------------------------------  Ratgeber -------------------------------------> */




/* 1,3,5,... → HG primary, Text weiß */
.e-loop-item:nth-child(2n+1) .ratgeber-container {
    background-color: white;
    color: #ffffff;
}

.e-loop-item:nth-child(2n+1) .ratgeber-container h3,
.e-loop-item:nth-child(2n+1) .ratgeber-container p,
.e-loop-item:nth-child(2n+1) .ratgeber-container a {
    color: var(--e-global-color-primary) !important;
}

/* 2,4,6,... → HG weiß, Text primary */
.e-loop-item:nth-child(2n) .ratgeber-container {
   background-color: var(--e-global-color-primary);
   color: white !important;
}

.e-loop-item:nth-child(2n) .ratgeber-container h3,
.e-loop-item:nth-child(2n) .ratgeber-container div,
.e-loop-item:nth-child(2n) .ratgeber-container p,
.e-loop-item:nth-child(2n) .ratgeber-container a {
    color: white !important;
}

.loop-weiterlesen a {
    transition: letter-spacing 0.3s ease;
}

.loop-weiterlesen a:hover {
    letter-spacing: 3px;
}




/* <-------------------------------------  Slide In Phone -------------------------------------> */

#call-me-mob,
#call-me  {
    transform: translateX(-130%);
    opacity: 0;
    transition: transform .6s ease, opacity .6s ease;
}

#call-me-mob.visible,
#call-me.visible {
    transform: translateX(0);
    opacity: 1;
}







/* <-------------------------------------  Icon Tool Tips  -------------------------------------> */


    
.icon-wrapper {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 140px !important;
    height: 140px !important;
    transition:
        width 0.3s ease,
        height 0.3s ease,
        margin 0.3s ease,
        transform 0.4s ease !important;
    transform-origin: center center !important;
}

/* Hover: wächst aus der Mitte */
.icon-wrapper:hover {
    width: 160px !important;
    height: 160px !important;
    margin-left: -10px !important;
    margin-top: -10px !important;
}

/* Klick: dauerhaft gedreht + dauerhaft vergroessert */
.icon-wrapper.rotated {
    width: 180px !important;
    height: 180px !important;
    margin-left: -20px !important;
    margin-top: -20px !important;

    transform: rotate(45deg) !important;
}


/*
.icon-wrapper.rotated:hover {

 optional  falls du willst, dass Hover NICHT nochmal rotiert 
}
*/
.text-wrapper {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;   /* unsichtbar & nicht anklickbar */
    transition: opacity 0.3s ease !important;
}

.text-wrapper.visible {
    opacity: 1 !important;
    pointer-events: auto !important;   /* jetzt klickbar */
}

.text-wrapper {
    position: relative !important;
    opacity: 1 !important;                /* bleibt vollständig vorhanden */
    clip-path: inset(0 0 100% 0) !important; /* 100% von unten abgeschnitten → komplett unsichtbar */
    transition: clip-path 0.2s ease-out !important;
}
.text-wrapper.visible {
    clip-path: inset(0 0 0 0) !important;  /* vollständige Sichtbarkeit */
}


.hotspot { 
    width: 150px !important;
    height: 150px !important;
}

.text-wrapper {
    width: 350px !important;
}


@media (max-width: 1200px) {
  .hotspot {
    display: none !important;
  }
}



/* <-------------------------------------  Header   -------------------------------------> */



@media (max-width: 1199px) {
  .top-schmal,
  .top-breit {
    display: none !important;
  }

  .top-mittel {
    display: flex !important;
  }

}




@media  (min-width: 1200px) and (max-width: 1300px) {
.top-breit,
.top-mittel {
  display: none !important
}

.top-schmal {
  display: flex !important;
}

}

@media (min-width: 1301px) and (max-width: 1650px) {
  .top-schmal,
  .top-breit {
    display: none !important;
  }

  .top-mittel {
    display: flex !important;
  }

}


@media (min-width: 1651px) {
  .top-schmal,
  .top-mittel {
    display: none !important;
  }
  
  .top-breit {
    display: grid !important;
  }
}

@media (min-width: 1201px) and (max-width: 1450px) {
  .button-header {
    display: none !important;
  }
}


.hero-image-therapie {
      height: 100% !important;
    clip-path: ellipse(85% 120% at 90% 50%);

}


.hero {
  margin-top: 115px !important
}

@media (min-width:768px) {

.hero {
  margin-top: 118px !important
}


}

@media (min-width:1201px) {

.hero {
  margin-top: 125px !important
}


}



/* Grundzustand */
.menu-fade .elementor-nav-menu > li > a.elementor-item {
    animation: fadeInMenu 0.7s ease forwards !important;
}

/* Animation */
@keyframes fadeInMenu {
    to {
        opacity: 1 !important;
        transform: translateY(0) !important;
    }
}

/* Verzögerungen pro Item */
.menu-fade .elementor-nav-menu > li:nth-child(1) > a { animation-delay: 0.4s!important; }
.menu-fade .elementor-nav-menu > li:nth-child(2) > a { animation-delay: 0.6s !important; }
.menu-fade .elementor-nav-menu > li:nth-child(3) > a { animation-delay: 0.8s !important; }
.menu-fade .elementor-nav-menu > li:nth-child(4) > a { animation-delay: 1.2s !important; }
.menu-fade .elementor-nav-menu > li:nth-child(5) > a { animation-delay: 1.4s !important; }
.menu-fade .elementor-nav-menu > li:nth-child(6) > a { animation-delay: 1.6s !important; }
.menu-fade .elementor-nav-menu > li:nth-child(7) > a { animation-delay: 1.8s !important; }
.menu-fade .elementor-nav-menu > li:nth-child(8) > a { animation-delay: 2s !important; }
.menu-fade .elementor-nav-menu > li:nth-child(9) > a { animation-delay: 2.2s !important; }
.menu-fade .elementor-nav-menu > li:nth-child(10) > a { animation-delay: 2.4s !important; }
.menu-fade .elementor-nav-menu > li:nth-child(11) > a { animation-delay: 2.6s !important; }
.menu-fade .elementor-nav-menu > li:nth-child(12) > a { animation-delay: 2.8s !important; }



@media (min-width: 767px) {
.menu-top li.menu-item-has-children > a[aria-expanded="true"] + ul.sub-menu {
  left: 50% !important;
  transform: translateX(-50%) !important;
  right: auto !important;
}

.menu-top li.menu-item-2010 > a[aria-expanded="true"] + ul.sub-menu {
  display: grid !important;
  grid-template-rows: repeat(5, auto) !important;
  grid-auto-flow: column !important;
  gap: 0px !important;
  width: fit-content !important;
}

.menu-top li.menu-item-4088 > a[aria-expanded="true"] + ul.sub-menu {
  display: grid !important;
  grid-template-rows: repeat(5, auto) !important;
  grid-auto-flow: column !important;
  gap: 0px !important;
  width: fit-content !important;
}

}












/* <-------------------------------------  Footer   -------------------------------------> */

.home .footer-experts {
    display: none !important;
}

.right-clip {
    clip-path: ellipse(84% 100% at 15% 65%) !important;
}



/* <-------------------------------------  Footer   -------------------------------------> */


.horizontal {
   left: 50% !important; 
    transform: translateX(-50%) !important;
}




/* BELEGT DISPLAY NONE */

.belegt .belegt-gone {
  display: none !important;
}