.elementor-61 .elementor-element.elementor-element-22492b57{--display:flex;--position:absolute;--padding-top:0px;--padding-bottom:15px;--padding-left:0px;--padding-right:0px;top:0px;--z-index:1000;}.elementor-61 .elementor-element.elementor-element-22492b57:not(.elementor-motion-effects-element-type-background), .elementor-61 .elementor-element.elementor-element-22492b57 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}body:not(.rtl) .elementor-61 .elementor-element.elementor-element-22492b57{left:0px;}body.rtl .elementor-61 .elementor-element.elementor-element-22492b57{right:0px;}.elementor-61 .elementor-element.elementor-element-3988d3a0{--display:flex;--min-height:150px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:50px;--padding-right:50px;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-61 .elementor-element.elementor-element-44873ff6{width:var( --container-widget-width, 15% );max-width:15%;--container-widget-width:15%;--container-widget-flex-grow:0;text-align:start;}.elementor-61 .elementor-element.elementor-element-44873ff6.elementor-element{--align-self:center;}.elementor-61 .elementor-element.elementor-element-44873ff6 img{width:100%;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-61 .elementor-element.elementor-element-a849d57 .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-61 .elementor-element.elementor-element-a849d57 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-61 .elementor-element.elementor-element-a849d57 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-61 .elementor-element.elementor-element-a849d57 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-61 .elementor-element.elementor-element-a849d57 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-61 .elementor-element.elementor-element-a849d57 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var( --e-global-color-primary );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-61 .elementor-element.elementor-element-a849d57 .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:767px){.elementor-61 .elementor-element.elementor-element-22492b57{--padding-top:25px;--padding-bottom:10px;--padding-left:25px;--padding-right:25px;}.elementor-61 .elementor-element.elementor-element-3988d3a0{--min-height:85px;--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-61 .elementor-element.elementor-element-44873ff6{--container-widget-width:40%;--container-widget-flex-grow:0;width:var( --container-widget-width, 40% );max-width:40%;text-align:start;}.elementor-61 .elementor-element.elementor-element-44873ff6.elementor-element{--align-self:center;}.elementor-61 .elementor-element.elementor-element-44873ff6 img{width:100%;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-61 .elementor-element.elementor-element-a849d57 .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-61 .elementor-element.elementor-element-a849d57 .elementor-nav-menu--main .elementor-item{padding-left:0px;padding-right:0px;}.elementor-61 .elementor-element.elementor-element-a849d57{--e-nav-menu-horizontal-menu-item-margin:calc( 16px / 2 );}.elementor-61 .elementor-element.elementor-element-a849d57 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:16px;}}/* Start custom CSS *//* === Basis: gleicher Button-Rahmen === */
.icon-btn{
  width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;
  padding:0;border:0;background:transparent;cursor:pointer;line-height:1;vertical-align:middle;
}

/* === Toggle: SPANLESS, nur 2 Pseudoelemente === */
.menu-toggle, .menu-toggle--pure{
  position:relative; width:30px; height:30px; color:#000;
}
.menu-toggle > *, .menu-toggle--pure > *{ display:none; } /* falls Elementor intern Content einfügt */

/* die beiden Striche */
.menu-toggle::before,
.menu-toggle::after,
.menu-toggle--pure::before,
.menu-toggle--pure::after{
  content:"";
  position:absolute;
  left:6px; right:6px; height:2px; border-radius:1px; background:currentColor;
  top:50%;
  transform:translateY(-50%);          /* Start: horizontale Linie */
  opacity:1;
  will-change: transform, opacity;
  transition: transform 260ms cubic-bezier(.4,0,.2,1), opacity 180ms ease;
}

/* Burger-Zustand: ::before = drei Linien (Mitte + oben/unten via shadow), ::after unsichtbar */
.menu-toggle::before,
.menu-toggle--pure::before{ box-shadow: 0 -6px 0 0 currentColor, 0 6px 0 0 currentColor; }
.menu-toggle::after,
.menu-toggle--pure::after { opacity:0; }

/* Aktiv: X — Box-Shadow sofort aus, beide Balken rotieren gegeneinander */
.menu-toggle.is-active::before,
.menu-toggle--pure.is-active::before{
  box-shadow:none;                       /* sofort weg, keine Animation nötig */
  transform:translateY(-50%) rotate(45deg);
}
.menu-toggle.is-active::after,
.menu-toggle--pure.is-active::after{
  opacity:1;
  transform:translateY(-50%) rotate(-45deg);
}

/* optional: Klick-Feedback */
.menu-toggle:active, .menu-toggle--pure:active{ transform: scale(0.97); }
@media (prefers-reduced-motion: reduce){
  .menu-toggle::before, .menu-toggle::after,
  .menu-toggle--pure::before, .menu-toggle--pure::after{
    transition:none;
  }
}
/* Lupe (optional saubere Linien) */
.magnifier .mg-glass,
.magnifier .mg-handle{
  stroke: black;
  stroke-width: 2;
  stroke-linecap: round;
}
.search-toggle:hover {
  background: #fff /* Farbe wechseln */
/* --- Basis: versteckte Leisten --- */
}
.header-searchbar,
.header-menubar {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  transition: max-height 280ms ease, opacity 200ms ease;
  will-change: max-height, opacity;
  z-index: inherit; /* vom Header erben */
}

/* Inhalte hübsch einrücken */
.header-searchbar .elementor-search-form__container,
.header-menubar .elementor-nav-menu--main,
.header-menubar .elementor-container,
.header-menubar .e-con {
  max-width: 1200px;
  margin: 0 auto;
  padding: 12px 16px;
}

/* --- Sichtbar-Zustände --- */
.header--search-open .header-searchbar {
  opacity: 1;
  pointer-events: auto;
  max-height: 140px; /* an deine Suchleisten-Höhe anpassen */
}

.header--menu-open .header-menubar {
  opacity: 1;
  pointer-events: auto;
  /* Menü kann größer sein: */
  max-height: 70vh; /* groß genug für mehrere Menüzeilen / Mega-Menü */
}
 Option: Body-Scroll sperren, wenn Menü offen (für Mobile)
.body--locked {
  overflow: hidden;
}

/* Cursor/States für die Toggle-Icons */
.search-toggle,
.menu-toggle { cursor: pointer; }

.search-toggle.is-active,
.menu-toggle.is-active {
  filter: brightness(0.85);
  /* oder: transform: scale(0.96); */
}

/* Mobile Feinschliff */
@media (max-width: 767px) {
  .header--search-open .header-searchbar {
    max-height: 180px;
  }
  .header--menu-open .header-menubar {
    min-height: 100vh;
  }
}/* End custom CSS */