.elementor-37 .elementor-element.elementor-element-c25f7ec{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:100;}.elementor-37 .elementor-element.elementor-element-7003b5b{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:90px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-37 .elementor-element.elementor-element-76f70f4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-76f70f4.elementor-element{--align-self:center;}.elementor-37 .elementor-element.elementor-element-030cde5{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.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-weight:var( --e-global-typography-text-font-weight );}.elementor-37 .elementor-element.elementor-element-3adc64c{width:var( --container-widget-width, 100% );max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;border-style:none;border-radius:0px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-3adc64c.elementor-element{--align-self:center;--order:1;--flex-grow:0;--flex-shrink:0;}.elementor-37 .elementor-element.elementor-element-3adc64c img{width:300px;}.elementor-37 .elementor-element.elementor-element-e1fc770{--display:flex;--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;--justify-content:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:90px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-37 .elementor-element.elementor-element-b02d7c9{margin:0px -20px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-b02d7c9.elementor-element{--align-self:center;}.elementor-37 .elementor-element.elementor-element-b02d7c9 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;color:#F5F5F7;}.elementor-37 .elementor-element.elementor-element-b02d7c9 .elementor-heading-title a:hover, .elementor-37 .elementor-element.elementor-element-b02d7c9 .elementor-heading-title a:focus{color:#3620FF;}.elementor-37 .elementor-element.elementor-element-5726854{margin:0px -20px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-5726854.elementor-element{--align-self:center;}.elementor-37 .elementor-element.elementor-element-5726854 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;color:#F5F5F7;}.elementor-37 .elementor-element.elementor-element-5726854 .elementor-heading-title a:hover, .elementor-37 .elementor-element.elementor-element-5726854 .elementor-heading-title a:focus{color:#3620FF;}.elementor-37 .elementor-element.elementor-element-68af430{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-37 .elementor-element.elementor-element-5b0e962{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.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-37 .elementor-element.elementor-element-accc1ab .elementor-menu-toggle{margin:0 auto;}.elementor-37 .elementor-element.elementor-element-accc1ab .elementor-nav-menu .elementor-item{font-family:"Poppins", Sans-serif;font-size:15px;font-weight:300;}.elementor-37 .elementor-element.elementor-element-accc1ab .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;padding-left:0px;padding-right:0px;}.elementor-37 .elementor-element.elementor-element-accc1ab .elementor-nav-menu--main .elementor-item:hover,
					.elementor-37 .elementor-element.elementor-element-accc1ab .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-37 .elementor-element.elementor-element-accc1ab .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-37 .elementor-element.elementor-element-accc1ab .elementor-nav-menu--main .elementor-item:focus{color:#3620FF;fill:#3620FF;}.elementor-37 .elementor-element.elementor-element-accc1ab .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#86868B;}.elementor-37 .elementor-element.elementor-element-accc1ab{--e-nav-menu-horizontal-menu-item-margin:calc( 60px / 2 );}.elementor-37 .elementor-element.elementor-element-accc1ab .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:60px;}.elementor-37 .elementor-element.elementor-element-96fc4e5{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:100;}.elementor-37 .elementor-element.elementor-element-036d66f{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:90px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-37 .elementor-element.elementor-element-b1327f6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-b1327f6.elementor-element{--align-self:center;}.elementor-37 .elementor-element.elementor-element-e5b5207{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-37 .elementor-element.elementor-element-c4db525{width:var( --container-widget-width, 100% );max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;border-style:none;border-radius:0px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-c4db525.elementor-element{--align-self:center;--order:1;--flex-grow:0;--flex-shrink:0;}.elementor-37 .elementor-element.elementor-element-c4db525 img{width:300px;}.elementor-37 .elementor-element.elementor-element-b64bf9a{--display:flex;--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;--justify-content:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:90px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-37 .elementor-element.elementor-element-99837e6{margin:0px -20px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-99837e6.elementor-element{--align-self:center;}.elementor-37 .elementor-element.elementor-element-99837e6 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:17px;font-weight:400;color:#F5F5F7;}.elementor-37 .elementor-element.elementor-element-99837e6 .elementor-heading-title a:hover, .elementor-37 .elementor-element.elementor-element-99837e6 .elementor-heading-title a:focus{color:#3620FF;}.elementor-37 .elementor-element.elementor-element-0c9b450{margin:0px -20px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-0c9b450.elementor-element{--align-self:center;}.elementor-37 .elementor-element.elementor-element-0c9b450 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:17px;font-weight:400;color:#F5F5F7;}.elementor-37 .elementor-element.elementor-element-0c9b450 .elementor-heading-title a:hover, .elementor-37 .elementor-element.elementor-element-0c9b450 .elementor-heading-title a:focus{color:#3620FF;}.elementor-37 .elementor-element.elementor-element-e19cd55{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-37 .elementor-element.elementor-element-9c68299{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-37 .elementor-element.elementor-element-1f6b7c4 .elementor-menu-toggle{margin:0 auto;}.elementor-37 .elementor-element.elementor-element-1f6b7c4 .elementor-nav-menu .elementor-item{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:300;}.elementor-37 .elementor-element.elementor-element-1f6b7c4 .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;padding-left:0px;padding-right:0px;}.elementor-37 .elementor-element.elementor-element-1f6b7c4 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-37 .elementor-element.elementor-element-1f6b7c4 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-37 .elementor-element.elementor-element-1f6b7c4 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-37 .elementor-element.elementor-element-1f6b7c4 .elementor-nav-menu--main .elementor-item:focus{color:#3620FF;fill:#3620FF;}.elementor-37 .elementor-element.elementor-element-1f6b7c4 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#86868B;}.elementor-37 .elementor-element.elementor-element-1f6b7c4{--e-nav-menu-horizontal-menu-item-margin:calc( 60px / 2 );}.elementor-37 .elementor-element.elementor-element-1f6b7c4 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:60px;}.elementor-37 .elementor-element.elementor-element-ce006b7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-37 .elementor-element.elementor-element-96fc4e5{--width:100%;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-37 .elementor-element.elementor-element-036d66f{--width:15%;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-37 .elementor-element.elementor-element-b1327f6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:5px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-e5b5207{--width:70%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-37 .elementor-element.elementor-element-c4db525{margin:-10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-c4db525 img{width:220px;}.elementor-37 .elementor-element.elementor-element-b64bf9a{--width:15%;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-37 .elementor-element.elementor-element-99837e6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-0c9b450{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-37 .elementor-element.elementor-element-4e5570a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}}@media(min-width:768px){.elementor-37 .elementor-element.elementor-element-7003b5b{--content-width:100%;}.elementor-37 .elementor-element.elementor-element-030cde5{--content-width:100%;}.elementor-37 .elementor-element.elementor-element-e1fc770{--content-width:100%;}}/* Start custom CSS for container, class: .elementor-element-c25f7ec *//* ===============================
   FIFTYNINE HEADER – SECTION CSS (90px fix)
   + Admin-Bar-Fix
   =============================== */

/* Basis: diese Section ist der Header */
.elementor-37 .elementor-element.elementor-element-c25f7ec{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;

  width: 100%;
  height: 90px;                      /* FIXE Headerhöhe */
  z-index: 9999;

  padding-inline: clamp(24px, 5vw, 60px);
  padding-top: 0;
  padding-bottom: 0;

  background: transparent;
  backdrop-filter: none;
  box-shadow: none;

  transform: translateY(0);
  transition:
    transform .35s ease,
    background-color .35s ease,
    backdrop-filter .35s ease,
    box-shadow .35s ease;
}

/* Innerer Container: immer volle Höhe, Inhalt zentriert */
.elementor-37 .elementor-element.elementor-element-c25f7ec .elementor-container,
.elementor-37 .elementor-element.elementor-element-c25f7ec .e-con{
  height: 100%;
  min-height: 0;
  display: flex;
  align-items: center;               /* vertikal mittig */
  justify-content: space-between;
}

/* Widgets im Header ohne Extra-Margins nach oben/unten */
.elementor-37 .elementor-element.elementor-element-c25f7ec .elementor-widget{
  margin-top: 0;
  margin-bottom: 0;
}

/* Logo an Headerhöhe anpassen (Bild oder Text) */
.elementor-37 .elementor-element.elementor-element-c25f7ec .fn-header-logo{
  display: inline-flex;
  align-items: center;
}

.elementor-37 .elementor-element.elementor-element-c25f7ec .fn-header-logo img{
  max-height: 52px;                  /* passt komfortabel in 90px-Header */
  height: auto;
  width: auto;
  display: block;
}

.elementor-37 .elementor-element.elementor-element-c25f7ec .fn-header-logo .elementor-heading-title{
  font-size: clamp(22px, 2.6vw, 30px);
  line-height: 1;                    /* keine extra Höhe */
  white-space: nowrap;
}

/* =================================
   FLOATING-START (Seite ganz oben)
   ================================= */
body.fn-header-floating .elementor-37 .elementor-element.elementor-element-c25f7ec{
  transform: translateY(48px);      /* kompletter Header 48px nach unten */
  background: transparent;
  backdrop-filter: none;
  box-shadow: none;
}

/* =================================
   STICKY (nach dem Scroll)
   ================================= */
body.fn-header-stuck .elementor-37 .elementor-element.elementor-element-c25f7ec{
  transform: translateY(0);
  background: rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(25px);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.55);
}

/* NEU:
   Wenn Menü offen UND Header sticky:
   -> Header-Hintergrund transparent, kein Doppel-Dunkel-Effekt */
body.fn-menu-open.fn-header-stuck .elementor-37 .elementor-element.elementor-element-c25f7ec{
  background: transparent;
  backdrop-filter: none;
  box-shadow: none;
}

/* =================================
   ADMIN-BAR-FIX (nur wenn du eingeloggt bist)
   ================================= */

/* Desktop: WP-Admin-Bar ~32px hoch */
body.admin-bar .elementor-37 .elementor-element.elementor-element-c25f7ec{
  top: 32px;
}

/* Mobile / kleinere Screens: WP-Admin-Bar höher (~46px) */
@media (max-width: 782px){
  body.admin-bar .elementor-37 .elementor-element.elementor-element-c25f7ec{
    top: 46px;
  }
}


/* ===============================
   MENÜ-ICON (2 HORIZONTALE STRICHE -> X)
   =============================== */

/* HTML-Widget links mit:
   <div class="fn-menu-toggle" ...></div>
*/
.elementor-37 .elementor-element.elementor-element-c25f7ec .fn-menu-toggle{
  width: 26px;
  height: 20px;
  position: relative;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Fokus für Tastatur */
.elementor-37 .elementor-element.elementor-element-c25f7ec .fn-menu-toggle:focus-visible{
  outline: 2px solid rgba(255,255,255,0.7);
  outline-offset: 3px;
}

/* ZWEI HORIZONTALE, DÜNNE & LÄNGERE LINIEN */
.elementor-37 .elementor-element.elementor-element-c25f7ec .fn-menu-toggle::before,
.elementor-37 .elementor-element.elementor-element-c25f7ec .fn-menu-toggle::after{
  content: "";
  position: absolute;

  width: 25px;                      /* etwas länger */
  height: 1px;                      /* dünn */
  border-radius: 999px;
  background: #ffffff;

  left: 50%;
  transform-origin: center;
  transition:
    transform .30s ease,
    opacity .20s ease,
    background-color .20s ease;
}

/* Obere & untere Linie im geschlossenen Zustand */
.elementor-37 .elementor-element.elementor-element-c25f7ec .fn-menu-toggle::before{
  top: 50%;
  transform: translate(-50%, -4px) rotate(0deg);  /* oben */
}

.elementor-37 .elementor-element.elementor-element-c25f7ec .fn-menu-toggle::after{
  top: 50%;
  transform: translate(-50%, 4px) rotate(0deg);   /* unten */
}

/* Hover-Effekt */
.elementor-37 .elementor-element.elementor-element-c25f7ec .fn-menu-toggle:hover::before,
.elementor-37 .elementor-element.elementor-element-c25f7ec .fn-menu-toggle:hover::after{
  background-color: #f5f5f5;
}

/* X-Zustand beim offenen Menü */
body.fn-menu-open .elementor-37 .elementor-element.elementor-element-c25f7ec .fn-menu-toggle::before{
  transform: translate(-50%, 0) rotate(45deg);
}

body.fn-menu-open .elementor-37 .elementor-element.elementor-element-c25f7ec .fn-menu-toggle::after{
  transform: translate(-50%, 0) rotate(-45deg);
}


/* ===============================
   RESPONSIVE (Optional)
   =============================== */

@media (max-width: 1024px){
  /* etwas mehr "hängender" Effekt auf Tablet/Mobil */
  body.fn-header-floating .elementor-37 .elementor-element.elementor-element-c25f7ec{
    transform: translateY(90px);
  }
}
/* Container für Sprachumschalter positionieren */
.lang-switch-col {
  position: relative;
}

/* DE- und EN-Widget exakt übereinander rechts ausrichten */
.lang-switch-btn {
  position: absolute;
  top: 50%;
  right: 0;          /* Abstand vom rechten Rand, ggf. auf 10px ändern */
  transform: translateY(-50%);
  margin: 0;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5b0e962 *//* ===============================
   FIFTYNINE OVERLAY-MENÜ – SECTION CSS
   =============================== */

/* Basis: Diese Section ist der Overlay-Bereich oben */
.elementor-37 .elementor-element.elementor-element-5b0e962{
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: auto;        /* KEIN Vollbild, nur oben */
  z-index: 50;         /* Header liegt drüber (9999) */

  display: flex;
  align-items: flex-start;
  justify-content: center;

  opacity: 0;
  transform: translateY(-10%);
  pointer-events: none;

  background: rgba(0, 0, 0, 0.25);   /* wie Sticky-Header */
  backdrop-filter: blur(25px);

  transition:
    opacity .10s ease,
    transform .80s ease;
}

/* Zustand 1: oben (Floating-Header) – Menü sitzt ~30px unter Logo */
body.fn-menu-open.fn-header-floating .elementor-37 .elementor-element.elementor-element-5b0e962{
  /* 80px Shift + 90px Header + ~30px Abstand ≈ 200px */
  padding-top: 200px;
  padding-bottom: 40px;

  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* Zustand 2: Sticky-Header – Menü fährt weniger weit runter */
body.fn-menu-open.fn-header-stuck .elementor-37 .elementor-element.elementor-element-5b0e962{
  /* 90px Header + ~30px Abstand ≈ 150px */
  padding-top: 150px;
  padding-bottom: 40px;

  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* Nav-Widget darin zentrieren & stylen */
.elementor-37 .elementor-element.elementor-element-5b0e962 .elementor-nav-menu,
.elementor-37 .elementor-element.elementor-element-5b0e962 .elementor-widget-nav-menu{
  text-align: center;
}

.elementor-37 .elementor-element.elementor-element-5b0e962 .elementor-nav-menu--main{
  display: inline-flex;
  flex-direction: column;
  gap: 18px;
}

/* Links im Overlay */
.elementor-37 .elementor-element.elementor-element-5b0e962 a{
  font-size: clamp(22px, 3vw, 32px);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  color: #ffffff;      /* Vollweiß */
}

/* HOVER: bleibt voll weiß, keine Abdunklung */
.elementor-37 .elementor-element.elementor-element-5b0e962 a:hover{
  color: #ffffff;
  opacity: 1;
}

/* kein Active-Strich */


/* ===============================
   RESPONSIVE (Optional)
   =============================== */

@media (max-width: 1024px){
  body.fn-menu-open.fn-header-floating .elementor-37 .elementor-element.elementor-element-5b0e962{
    /* 90 (Shift) + 90 (Header) + 30 (Abstand) = 210 */
    padding-top: 210px;
  }
}

@media (max-width: 768px){
  .elementor-37 .elementor-element.elementor-element-5b0e962 .elementor-nav-menu--main{
    gap: 12px;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-96fc4e5 *//* ===============================
   FIFTYNINE HEADER – SECTION CSS (90px fix)
   =============================== */

/* Basis */
#fiftynine-header-main-mobile{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;

  width: 100%;
  height: 90px;
  z-index: 9999;

  padding-inline: clamp(24px, 5vw, 60px);

  background: transparent;
  backdrop-filter: none;
  box-shadow: none;

  transform: translateY(0);
  transition:
    transform .35s ease,
    background-color .35s ease,
    backdrop-filter .35s ease,
    box-shadow .35s ease;
}

/* Innerer Container */
#fiftynine-header-main-mobile .elementor-container,
#fiftynine-header-main-mobile .e-con{
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#fiftynine-header-main-mobile .elementor-widget{
  margin: 0;
}

/* Logo */
#fiftynine-header-main-mobile .fn-header-logo{
  display: inline-flex;
  align-items: center;
}

#fiftynine-header-main-mobile .fn-header-logo img{
  max-height: 52px;
  height: auto;
  display: block;
}

#fiftynine-header-main-mobile .fn-header-logo .elementor-heading-title{
  font-size: clamp(22px, 2.6vw, 30px);
  line-height: 1;
  white-space: nowrap;
}

/* =================================
   FLOATING-START (Seite ganz oben)
   ================================= */

/* 🔥 NEU: Floating nur noch 12px */
body.fn-header-floating #fiftynine-header-main-mobile{
  transform: translateY(0px);
  background: transparent;
  backdrop-filter: none;
  box-shadow: none;
}

/* Sticky */
body.fn-header-stuck #fiftynine-header-main-mobile{
  transform: translateY(0);
  background: rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(25px);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.55);
}

/* Menü offen */
body.fn-menu-open.fn-header-stuck #fiftynine-header-main-mobile{
  background: transparent;
  backdrop-filter: none;
  box-shadow: none;
}

/* Admin Bar Fix */
body.admin-bar #fiftynine-header-main-mobile{
  top: 32px;
}

@media (max-width: 782px){
  body.admin-bar #fiftynine-header-main-mobile{
    top: 46px;
  }
}

/* ===============================
   Menü-Icon
   =============================== */

#fiftynine-header-main-mobile .fn-menu-toggle{
  width: 24px;
  height: 20px;
  position: relative;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#fiftynine-header-main-mobile .fn-menu-toggle:focus-visible{
  outline: 2px solid rgba(255,255,255,0.7);
  outline-offset: 3px;
}

#fiftynine-header-main-mobile .fn-menu-toggle::before,
#fiftynine-header-main-mobile .fn-menu-toggle::after{
  content: "";
  position: absolute;

  width: 24px;
  height: 1px;
  border-radius: 999px;
  background: #ffffff;

  left: 50%;
  transform-origin: center;
  transition:
    transform .30s ease,
    opacity .20s ease,
    background-color .20s ease;
}

#fiftynine-header-main-mobile .fn-menu-toggle::before{
  top: 50%;
  transform: translate(-50%, -4px) rotate(0deg);
}

#fiftynine-header-main-mobile .fn-menu-toggle::after{
  top: 50%;
  transform: translate(-50%, 4px) rotate(0deg);
}

#fiftynine-header-main-mobile .fn-menu-toggle:hover::before,
#fiftynine-header-main-mobile .fn-menu-toggle:hover::after{
  background-color: #f5f5f5;
}

body.fn-menu-open #fiftynine-header-main-mobile .fn-menu-toggle::before{
  transform: translate(-50%, 0) rotate(45deg);
}

body.fn-menu-open #fiftynine-header-main-mobile .fn-menu-toggle::after{
  transform: translate(-50%, 0) rotate(-45deg);
}

/* ===============================
   RESPONSIVE – FLOATING halbiert
   =============================== */

@media (max-width: 1024px){
  /* 🔥 NEU: Floating jetzt 22px statt 45px */
  body.fn-header-floating #fiftynine-header-main-mobile{
    transform: translateY(0px);
  }
}

/* Language Switch */
#fiftynine-header-main-mobile .lang-switch-col{
  position: relative;
}

#fiftynine-header-main-mobile .lang-switch-btn{
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c68299 *//* ===============================
   FIFTYNINE OVERLAY-MENÜ – MOBILE (SECTION 6)
   Container-Klasse: fn-overlay-menu-mobile
   Wichtig: Menü-Layout-Regeln nur auf Mobile aktiv!
   =============================== */

.elementor-37 .elementor-element.elementor-element-9c68299{
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: auto;
  z-index: 50;

  display: flex;
  align-items: flex-start;
  justify-content: center;

  opacity: 0;
  transform: translateY(-10%);
  pointer-events: none;

  background: rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(25px);

  transition: opacity .10s ease, transform .80s ease;
  padding-bottom: 40px;
}

/* Floating */
body.fn-menu-open.fn-header-floating .elementor-37 .elementor-element.elementor-element-9c68299{
  padding-top: 165px;
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* Sticky */
body.fn-menu-open.fn-header-stuck .elementor-37 .elementor-element.elementor-element-9c68299{
  padding-top: 165px;
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* Auf Desktop/Tablets: Mobile-Overlay wirklich komplett deaktivieren */
@media (min-width: 768px){
  .elementor-37 .elementor-element.elementor-element-9c68299{
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

/* =========================================================
   NUR MOBILE: Menü als vertikale, exakt zentrierte Liste
   ========================================================= */
@media (max-width: 767px){

  /* internen Elementor-Hamburger im Overlay killen */
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-menu-toggle,
  .elementor-37 .elementor-element.elementor-element-9c68299 button.elementor-menu-toggle{
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  /* Dropdown-Container aus (wir zeigen die Liste direkt) */
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu--dropdown{
    display: none !important;
  }

  /* Nav Bereich zentriert */
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-widget-nav-menu,
  .elementor-37 .elementor-element.elementor-element-9c68299 nav{
    width: 100%;
    text-align: center !important;
  }

  /* UL/LI Reset (gegen "schräg"/Einrückung) */
  .elementor-37 .elementor-element.elementor-element-9c68299 ul,
  .elementor-37 .elementor-element.elementor-element-9c68299 ol{
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  /* Wrapper / UL als Column */
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu--main,
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu,
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu--main > ul,
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu > ul{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    width: 100% !important;
  }

  /* LI voll breit, damit es exakt mittig wirkt */
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu--main li,
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu li{
    display: block !important;
    width: 100% !important;
  }

  /* Links als Block + zentriert -> kein “schräg” mehr */
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu a,
  .elementor-37 .elementor-element.elementor-element-9c68299 a{
    display: block !important;
    width: 100% !important;
    text-align: center !important;

    font-size: clamp(22px, 6vw, 32px);
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    color: #ffffff;
  }

  .elementor-37 .elementor-element.elementor-element-9c68299 a:hover{
    color: #ffffff;
    opacity: 1;
  }

  /* etwas enger */
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu--main,
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu{
    gap: 12px !important;
  }
}
/* === FINALER FEINSCHLIFF: Mobile Menü horizontal exakt zentrieren === */
@media (max-width: 767px){

  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu--main,
  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu{
    align-items: center !important;
  }

  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu li{
    display: flex !important;
    justify-content: center !important;
  }

  .elementor-37 .elementor-element.elementor-element-9c68299 .elementor-nav-menu a{
    margin-left: auto !important;
    margin-right: auto !important;
  }

}
@media (max-width: 767px){

  /* Overlay im offenen Zustand vollhoch -> keine sichtbare Blur-Kante unten */
  body.fn-menu-open.fn-header-floating .elementor-37 .elementor-element.elementor-element-9c68299,
  body.fn-menu-open.fn-header-stuck .elementor-37 .elementor-element.elementor-element-9c68299{
    bottom: 0 !important;        /* statt bottom:auto */
    height: 100vh !important;    /* volle Viewport-Höhe */
    padding-bottom: max(24px, env(safe-area-inset-bottom)) !important;
  }

}/* End custom CSS */