.elementor-577 .elementor-element.elementor-element-c8d4100{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.49;}.elementor-577 .elementor-element.elementor-element-c8d4100::before, .elementor-577 .elementor-element.elementor-element-c8d4100 > .elementor-background-video-container::before, .elementor-577 .elementor-element.elementor-element-c8d4100 > .e-con-inner > .elementor-background-video-container::before, .elementor-577 .elementor-element.elementor-element-c8d4100 > .elementor-background-slideshow::before, .elementor-577 .elementor-element.elementor-element-c8d4100 > .e-con-inner > .elementor-background-slideshow::before, .elementor-577 .elementor-element.elementor-element-c8d4100 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(0deg, #030308 11%, #FFFFFF00 53%);}.elementor-577 .elementor-element.elementor-element-267a03a{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-577 .elementor-element.elementor-element-267a03a:not(.elementor-motion-effects-element-type-background), .elementor-577 .elementor-element.elementor-element-267a03a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-e4db5e5 );}.elementor-577 .elementor-element.elementor-element-cbb6309{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 240px) 0px;}body.elementor-page-577:not(.elementor-motion-effects-element-type-background), body.elementor-page-577 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#010103;}@media(max-width:767px){.elementor-577 .elementor-element.elementor-element-c8d4100{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for container, class: .elementor-element-c8d4100 *//* =========================================================
   AKADEMIE – RESPONSIVER HERO

   Schriftgrößen:
   Desktop: 64 px
   Tablet:  50 px
   Mobil:   27 px

   Bildposition auf allen Geräten: mittig
========================================================= */

.elementor-577 .elementor-element.elementor-element-c8d4100 {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  box-sizing: border-box;

  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  align-items: stretch !important;

  /*
   * Der Hero bleibt innerhalb der sichtbaren Bildschirmhöhe.
   */
  height: calc(
    100vh - 65px - var(--wp-admin--admin-bar--height, 0px)
  ) !important;

  height: calc(
    100svh - 65px - var(--wp-admin--admin-bar--height, 0px)
  ) !important;

  min-height: 520px;

  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-attachment: scroll !important;
}


/* =========================================================
   DUNKLER VERLAUF HINTER DER ÜBERSCHRIFT
========================================================= */

.elementor-577 .elementor-element.elementor-element-c8d4100::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;

  background: linear-gradient(
    to bottom,
    rgba(9, 22, 36, 0) 52%,
    rgba(9, 22, 36, 0.18) 70%,
    rgba(9, 22, 36, 0.9) 100%
  );
}


/* =========================================================
   INHALT FEST UNTEN IM HERO POSITIONIEREN

   In Elementor alle Außenabstände des Inhaltscontainers
   auf 0 stellen.
========================================================= */

.elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-content {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 2;

  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    24px
    clamp(24px, 5.5vw, 110px)
    34px
    clamp(24px, 5.5vw, 110px) !important;

  box-sizing: border-box;
}


/* Elementor-Abstände sicher überschreiben */

.elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-content.elementor-element,
.elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-content.e-con {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
  margin-inline-start: 0 !important;
  margin-inline-end: 0 !important;
}


/* =========================================================
   SCHRIFTZUG „AKADEMIE“
   DESKTOP: 64 PX
========================================================= */

.elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-title,
.elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-title .elementor-widget-container {
  width: 100%;
  margin: 0 !important;
}

.elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-title .elementor-heading-title {
  margin: 0 !important;
  padding: 0 !important;

  color: #F5F4F0 !important;

  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 64px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: -0.02em !important;
  white-space: nowrap;

  text-shadow:
    0 3px 20px rgba(9, 22, 36, 0.65),
    0 1px 4px rgba(9, 22, 36, 0.8);
}


/* =========================================================
   BLAUE TRENNLINIE
========================================================= */

.elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-divider {
  width: 100%;
  margin: 0 !important;
}

.elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-divider .elementor-divider {
  padding: 10px 0 0 !important;
}

.elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-divider .elementor-divider-separator {
  width: 100% !important;

  border-block-start-width: 2px !important;
  border-block-start-style: solid !important;
  border-block-start-color: #4169E1 !important;
}


/* =========================================================
   TABLET
   Schriftgröße: 50 px
   Bildposition: mittig
========================================================= */

@media (max-width: 1024px) {

  .elementor-577 .elementor-element.elementor-element-c8d4100 {
    min-height: 500px;
    background-position: center center !important;
  }

  /*
   * Hebt den Schriftzug in den sofort sichtbaren Bereich.
   */
  .elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-content {
    padding:
      24px
      clamp(22px, 5vw, 52px)
      80px
      clamp(22px, 5vw, 52px) !important;
  }

  .elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-title .elementor-heading-title {
    font-size: 50px !important;
    line-height: 1 !important;
  }
}


/* =========================================================
   SMARTPHONE
   Schriftgröße: 27 px
   Bildposition: mittig
========================================================= */

@media (max-width: 767px) {

  .elementor-577 .elementor-element.elementor-element-c8d4100 {
    /*
     * Keine Mindesthöhe auf Mobilgeräten.
     * Der gesamte Hero bleibt direkt sichtbar.
     */
    min-height: 0;

    height: calc(
      100vh - 65px - var(--wp-admin--admin-bar--height, 0px)
    ) !important;

    height: calc(
      100svh - 65px - var(--wp-admin--admin-bar--height, 0px)
    ) !important;

    background-position: center center !important;
  }

  .elementor-577 .elementor-element.elementor-element-c8d4100::after {
    background: linear-gradient(
      to bottom,
      rgba(9, 22, 36, 0) 42%,
      rgba(9, 22, 36, 0.2) 65%,
      rgba(9, 22, 36, 0.95) 100%
    );
  }

  /*
   * Ersetzt den bisher manuell gesetzten Außenabstand.
   */
  .elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-content {
    padding:
      20px
      18px
      max(100px, calc(env(safe-area-inset-bottom) + 55px))
      18px !important;
  }

  .elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-title .elementor-heading-title {
    font-size: 27px !important;
    line-height: 1.05 !important;
    white-space: nowrap;
  }

  .elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-divider .elementor-divider {
    padding-block-start: 8px !important;
  }
}


/* =========================================================
   SEHR KLEINE SMARTPHONES
   Bildposition bleibt mittig
========================================================= */

@media (max-width: 380px) {

  .elementor-577 .elementor-element.elementor-element-c8d4100 {
    background-position: center center !important;
  }

  .elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-content {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }

  .elementor-577 .elementor-element.elementor-element-c8d4100 .ef-hero-title .elementor-heading-title {
    font-size: 27px !important;
  }
}/* End custom CSS */