.elementor-19 .elementor-element.elementor-element-b4b428e{--display:flex;--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:flex-end;--align-items: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;--z-index:999;}.elementor-19 .elementor-element.elementor-element-b4b428e:not(.elementor-motion-effects-element-type-background), .elementor-19 .elementor-element.elementor-element-b4b428e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#12171800;}.elementor-19 .elementor-element.elementor-element-403e04a{--display:flex;--min-height:60px;--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;border-style:solid;--border-style:solid;border-width:0px 0px 0.5px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0.5px;--border-left-width:0px;border-color:#FFFFFFB0;--border-color:#FFFFFFB0;--border-radius:0px 0px 0px 0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-19 .elementor-element.elementor-element-9a96e9f{--display:flex;--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-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-19 .elementor-element.elementor-element-404a60f{text-align:left;}.elementor-19 .elementor-element.elementor-element-404a60f img{width:120px;}.elementor-widget-image .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-19 .elementor-element.elementor-element-3fb9eb7{text-align:left;}.elementor-19 .elementor-element.elementor-element-3fb9eb7 img{width:122px;}.elementor-19 .elementor-element.elementor-element-c0b97c8{--display:flex;--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:flex-end;--align-items: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-19 .elementor-element.elementor-element-c2fa1a2 .elementor-menu-toggle{margin:0 auto;}.elementor-19 .elementor-element.elementor-element-6f84af9 img{width:60px;}.elementor-19 .elementor-element.elementor-element-cceb2a6{--display:flex;--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:flex-end;--align-items: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-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-19 .elementor-element.elementor-element-ed4e62f .elementor-button{background-color:var( --e-global-color-c337fe4 );font-family:"Roboto", Sans-serif;font-size:13px;font-weight:500;fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-radius:50px 50px 50px 50px;padding:6px 20px 6px 20px;}.elementor-19 .elementor-element.elementor-element-1850d67 img{width:30px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-19 .elementor-element.elementor-element-9a96e9f{--width:50%;}.elementor-19 .elementor-element.elementor-element-c0b97c8{--width:25%;}.elementor-19 .elementor-element.elementor-element-cceb2a6{--width:25%;}}@media(max-width:1024px) and (min-width:768px){.elementor-19 .elementor-element.elementor-element-9a96e9f{--width:50%;}.elementor-19 .elementor-element.elementor-element-c0b97c8{--width:20%;}}@media(max-width:1024px){.elementor-19 .elementor-element.elementor-element-b4b428e{--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}}@media(max-width:767px){.elementor-19 .elementor-element.elementor-element-9a96e9f{--width:35%;}.elementor-19 .elementor-element.elementor-element-404a60f img{width:135px;}.elementor-19 .elementor-element.elementor-element-c0b97c8{--width:0%;}.elementor-19 .elementor-element.elementor-element-cceb2a6{--width:50%;}.elementor-19 .elementor-element.elementor-element-ed4e62f .elementor-button{padding:6px 10px 6px 10px;}}/* Start custom CSS for theme-site-logo, class: .elementor-element-404a60f *//* Mobile-only image resize */
@media (max-width: 767px) {
  .elementor-19 .elementor-element.elementor-element-404a60f img {
    width: 90px !important;
    height: auto !important;
  }
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-3fb9eb7 *//* Mobile-only image resize */
@media (max-width: 767px) {
  .elementor-19 .elementor-element.elementor-element-3fb9eb7 img {
    width: 90px !important;
    height: auto !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-403e04a *//* Mobile-only background + padding adjustment */
@media (max-width: 767px) {
  .elementor-19 .elementor-element.elementor-element-403e04a {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}/* End custom CSS */
/* Start custom CSS *//* ---------------------------------
   FADE-IN NAVIGATION
---------------------------------- */

.underline-animate {
  opacity: 0;
  animation: navFadeIn 0.6s ease 0.7s both;
}

@keyframes navFadeIn {
  to { opacity: 1; }
}

/* ---------------------------------
   HEADER BASIS
---------------------------------- */

.headerbar {
  background: transparent;
  padding: 0;
  margin: 0;
  box-shadow: none;
  transition: background-color 0.35s ease,
              box-shadow 0.35s ease,
              padding 0.35s ease;
}

/* Innerer Container: Logo + Menü am unteren Rand ausrichten */
.headerbar .elementor-container {
  display: flex;
  align-items: flex-end;
  padding: 0 !important;
  margin: 0 !important;
}

/* Widgets und Spalten: keine Abstände */
.headerbar .elementor-widget,
.headerbar .elementor-column,
.headerbar .elementor-widget-wrap {
  margin: 0 !important;
  padding: 0 !important;
}

/* ---------------------------------
   STICKY STATE
---------------------------------- */

.elementor-sticky--effects.headerbar {
  background: #ffffff;
  box-shadow: 0 2px 10px rgba(0,0,0,0.08);
  padding: 0;
  height: auto;
}

/* Container im Sticky-State: Inhalt nach oben */
.elementor-sticky--effects.headerbar .elementor-container {
  align-items: flex-start !important;
}

/* Sticky immer oben */
.elementor-sticky--active.headerbar {
  z-index: 999;
}

/* Admin-Bar Fix */
.admin-bar .elementor-sticky--active.headerbar { top: 32px; }
@media (max-width: 782px) {
  .admin-bar .elementor-sticky--active.headerbar { top: 46px; }
}

/* ---------------------------------
   LOGO SWITCH – Full → Icon
---------------------------------- */

/* Wrapper mit beiden Logos */
.headerbar .logo-switcher {
  display: flex;
}

/* Bilder als Block */
.logo-full,
.logo-icon {
  display: block;
  transition: opacity 0.6s ease,
              max-height 0.6s ease,
              transform 0.6s ease;
  overflow: hidden;
}

/* --- Zustand 1: Seite oben / großes Logo --- */
.headerbar .logo-full {
  opacity: 1;
  max-height: 140px;
  transform: translateY(0);
}
.headerbar .logo-icon {
  opacity: 0;
  max-height: 0;
  transform: translateY(10px);
}

/* --- Zustand 2: Sticky / nur Icon --- */
.elementor-sticky--effects.headerbar .logo-full {
  opacity: 0;
  max-height: 0;
  transform: translateY(-10px);
}

.elementor-sticky--effects.headerbar .logo-icon {
  opacity: 1;
  max-height: 90px;
  transform: translateY(0);
  margin-top: 0 !important;
}

/* Menü smooth (optional) */
.elementor-sticky--effects.headerbar .elementor-nav-menu {
  transition: padding 0.25s ease, margin 0.25s ease;
}

/* ---------------------------------
   MOBILE FIX – always dark header
---------------------------------- */

@media (max-width: 767px) {
  /* Header auf Mobile: sofort dunkel, kein Übergang */
  .headerbar {
    background: #121719 !important;
    box-shadow: none !important;
    transition: none !important;
  }

  /* Sticky-Zustand: gleiche Optik beibehalten */
  .elementor-sticky--effects.headerbar {
    background: #121719 !important;
    box-shadow: none !important;
    padding: 0 !important;
    height: auto !important;
  }
}/* End custom CSS */