.elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container > span{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );font-style:var( --e-global-typography-accent-font-style );}.elementor-widget-mega-menu{--n-menu-title-font-size:var( --e-global-typography-accent-font-size );--n-menu-divider-color:var( --e-global-color-text );}.elementor-313 .elementor-element.elementor-element-22bd288{--display:flex;}.elementor-313 .elementor-element.elementor-element-38233c6{--display:flex;}.elementor-313 .elementor-element.elementor-element-58023a6{--display:flex;}.elementor-313 .elementor-element.elementor-element-ee6e9ef{--display:flex;}.elementor-313 .elementor-element.elementor-element-92a9380{--display:flex;}.elementor-313 .elementor-element.elementor-element-f09ff7f{--n-menu-dropdown-content-max-width:initial;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-distance-from-content:0px;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-font-size:1.05em;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-color:var( --e-global-color-07d749a );--n-menu-toggle-icon-color-hover:var( --e-global-color-primary );--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-color-active:var( --e-global-color-primary );--n-menu-toggle-icon-distance-from-dropdown:0px;--n-menu-title-normal-color-dropdown:var( --e-global-color-07d749a );--n-menu-title-active-color-dropdown:var( --e-global-color-primary );}.elementor-313 .elementor-element.elementor-element-f09ff7f > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title, .elementor-313 .elementor-element.elementor-element-f09ff7f > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container, .elementor-313 .elementor-element.elementor-element-f09ff7f > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container > span{font-family:"Jost", Sans-serif;font-weight:400;}.elementor-313 .elementor-element.elementor-element-f09ff7f {--n-menu-title-color-active:#FFFFFF;}@media(max-width:1024px){.elementor-widget-mega-menu{--n-menu-title-font-size:var( --e-global-typography-accent-font-size );}.elementor-313 .elementor-element.elementor-element-f09ff7f{--n-menu-heading-justify-content:center;--n-menu-title-flex-grow:initial;--n-menu-title-justify-content:initial;--n-menu-title-justify-content-mobile:center;--n-menu-title-font-size:1.2em;--n-menu-title-padding:20px 0px 20px 0px;--n-menu-toggle-icon-size:35px;--n-menu-toggle-icon-padding:0px 0px 0px 0px;--n-menu-toggle-icon-distance-from-dropdown:40px;}}@media(max-width:767px){.elementor-widget-mega-menu{--n-menu-title-font-size:var( --e-global-typography-accent-font-size );}.elementor-313 .elementor-element.elementor-element-f09ff7f{--n-menu-toggle-icon-size:25px;}}/* Start custom CSS */@keyframes intro-logo-open {

  /* Ausgangszustand:
     Das Logo bleibt zunächst in seiner normalen Größe */
  0% {
    -webkit-mask-size:
      100% 100%,
      var(--logo-size) auto;

    mask-size:
      100% 100%,
      var(--logo-size) auto;

    opacity: 1;
    visibility: visible;
  }

  /* Das Logo wächst sehr stark und öffnet die Fläche */
  72% {
    -webkit-mask-size:
      100% 100%,
      var(--intro-end-size) auto;

    mask-size:
      100% 100%,
      var(--intro-end-size) auto;

    opacity: 1;
    visibility: visible;
  }

  /* Verbleibende beige Zwischenräume ausblenden */
  99% {
    -webkit-mask-size:
      100% 100%,
      var(--intro-end-size) auto;

    mask-size:
      100% 100%,
      var(--intro-end-size) auto;

    opacity: 0;
    visibility: visible;
  }

  /* Overlay vollständig deaktivieren */
  100% {
    -webkit-mask-size:
      100% 100%,
      var(--intro-end-size) auto;

    mask-size:
      100% 100%,
      var(--intro-end-size) auto;

    opacity: 0;
    visibility: hidden;
  }
}

@keyframes intro-content-in {
  0% {
    transform: translate3d(0, 250px, 0);
    pointer-events: none;
  }

  1% {
    visibility: visible;
  }

  100% {
    transform: translate3d(0, 0, 0);
    pointer-events: auto;
  }
}

@keyframes intro-menu-in {
  0% {
    opacity: 0;
    visibility: hidden;
    transform: translate3d(0, -140px, 0);
    pointer-events: none;
  }

  1% {
    visibility: visible;
  }

  100% {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
    pointer-events: auto;
  }
}

/* Die Dreier-Sektion erzeugt die gemeinsame Scroll-Timeline */
.scroll-trio {
  --trio-distance: 30vh;

  view-timeline-name: --trio-scroll;
  view-timeline-axis: block;
}


/* Gemeinsame Einstellungen der bewegten Spalten */
.scroll-trio-left,
.scroll-trio-right {
  animation-duration: 1ms;
  animation-timing-function: linear;
  animation-fill-mode: both;

  animation-timeline: --trio-scroll;

  /*
   * Start: erster Kontakt mit dem unteren Viewportrand
   * Ende: vollständig über den oberen Viewportrand hinaus
   */
  animation-range: entry 0% exit 100%;

  will-change: translate;
}


/* Linke Spalte bewegt sich nach unten */
.scroll-trio-left {
  animation-name: trio-slide-down;
}


/* Rechte Spalte bewegt sich nach oben */
.scroll-trio-right {
  animation-name: trio-slide-up;
}


/* Normale Position → nach unten */
@keyframes trio-slide-down {
  from {
    translate: 0 0;
  }

  to {
    translate: 0 var(--trio-distance);
  }
}


/* Normale Position → nach oben */
@keyframes trio-slide-up {
  from {
    translate: 0 0;
  }

  to {
    translate: 0 calc(0px - var(--trio-distance));
  }
}


/* Fallback */
@supports not (animation-timeline: view()) {
  .scroll-trio-left,
  .scroll-trio-right {
    animation: none;
    translate: none;
  }
}


/* Reduzierte Bewegung */
@media (prefers-reduced-motion: reduce) {
  .scroll-trio-left,
  .scroll-trio-right {
    animation: none;
    translate: none;
  }
}

.word-reveal .word {
  opacity: 0.1;
  transition: opacity 0.1s linear;
}

.image-scale-in img {
  transform: scale(1);

  animation: image-scale linear both;
  animation-duration: 1ms;
  animation-timeline: view();
  animation-range: entry 0% entry 100%;
}

@keyframes image-scale {
  from {
    transform: scale(1);
  }

  to {
    transform: scale(1.05);
  }
}

.image-expand-sticky {
  overflow: hidden;
}

.image-left,
.image-center,
.image-right {
  will-change: transform;
}

.image-center {
  position: relative;
  z-index: 2;
  overflow: hidden !important;
  transform-origin: center center;
  border-radius: 500px;
}

.image-center .elementor-widget-container {
  overflow: hidden !important;
  border-radius: inherit;
}

.image-center img {
  display: block;
  width: 100%;
  border-radius: inherit !important;
}/* End custom CSS */