.elementor-9490 .elementor-element.elementor-element-7d18df4{--display:flex;}.elementor-9490 .elementor-element.elementor-element-7d18df4:not(.elementor-motion-effects-element-type-background), .elementor-9490 .elementor-element.elementor-element-7d18df4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:rgba(255,255,255,0);}.elementor-9490 .elementor-element.elementor-element-0d8c55a{--display:flex;}.elementor-9490 .elementor-element.elementor-element-656d2d0{--display:flex;}.elementor-9490 .elementor-element.elementor-element-970bda4{--n-menu-dropdown-content-max-width:initial;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-distance-from-content:16px;--n-menu-open-animation-duration:500ms;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-dropdown-indicator-size:24px;--n-menu-toggle-icon-size:44px;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;}.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-9490 .elementor-element.elementor-element-970bda4.elementor-element{--order:99999 /* order end hack */;}}/* Start custom CSS for mega-menu, class: .elementor-element-970bda4 */@media (max-width: 1024px) {
  .e-n-menu-wrapper {
    max-height: calc(100dvh - 92px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }
}
@media (max-width: 1024px) {
  .elementor-location-header
    .elementor-widget-n-menu
    .e-n-menu[data-layout="dropdown"]
    .e-n-menu-wrapper {
    background-color: var(--color-background, #ffffff);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08);
    border-block-start: 1px solid var(--color-border, #e2e8f0);
    max-height: calc(100dvh - 92px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}/* End custom CSS */
/* Start custom CSS *//* =====================================================================
   crossdelta Header 2026 – Menü-Überarbeitung (Okt. 2026)
   Ergänzt die Element-Styles des Header-Templates 9490.
   Gilt nur dort, wo dieser Header geladen wird.
   ===================================================================== */

/* ---- Sticky Header ------------------------------------------------ */
.elementor-9490.elementor-location-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background-color: var(--color-background, #fcfcfc);
}
body.admin-bar .elementor-9490.elementor-location-header {
  top: var(--wp-admin--admin-bar--height, 32px);
}
@media (max-width: 600px) {
  body.admin-bar .elementor-9490.elementor-location-header { top: 0; }
}
/* Trennlinie + leichter Schatten erst nach dem Scrollen */
@keyframes cd-header-shadow {
  from { box-shadow: 0 1px 0 rgba(226, 232, 240, 0); }
  to   { box-shadow: 0 1px 0 var(--color-border, #e2e8f0), 0 8px 24px rgba(15, 23, 42, 0.06); }
}
@supports (animation-timeline: scroll()) {
  .elementor-9490.elementor-location-header {
    animation: cd-header-shadow linear both;
    animation-timeline: scroll(root);
    animation-range: 0 80px;
  }
}

/* ---- Menüpunkte: Farbe, Cursor ------------------------------------ */
.elementor-9490 .elementor-element-970bda4 {
  --n-menu-title-color-normal: var(--color-heading, #0f172a);
  --n-menu-dropdown-indicator-size: 16px;
  --n-menu-toggle-icon-size: 24px;
}
.elementor-9490 .elementor-element-970bda4 .e-n-menu-title-text {
  color: var(--color-heading, #0f172a);
}
.elementor-9490 .elementor-element-970bda4 .e-n-menu-title,
.elementor-9490 .elementor-element-970bda4 .e-n-menu-title .e-n-menu-title-container {
  cursor: pointer;
}

/* Aktiv-Zustand „Leistungen" auf allen Leistungsseiten und Unterseiten */
body:is(.page-id-9925, .page-id-10312, .page-id-9943, .page-id-10310,
        .parent-pageid-9925, .parent-pageid-10312, .parent-pageid-9943, .parent-pageid-10310)
  .elementor-9490 .elementor-element-970bda4 .e-n-menu-item:first-child .e-n-menu-title-text {
  color: var(--color-accent-dark, #a21435);
  text-decoration-color: currentColor;
}

/* ---- Dropdown-Pfeil: Outline-Chevron statt gefülltem Dreieck ------- */
.elementor-9490 .elementor-element-970bda4 .e-n-menu-dropdown-icon {
  color: var(--color-heading, #0f172a);
}
.elementor-9490 .elementor-element-970bda4 .e-n-menu-dropdown-icon svg {
  display: none !important;
}
.elementor-9490 .elementor-element-970bda4 .e-n-menu-dropdown-icon > span::before {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  background-color: currentColor;
  -webkit-mask: url(https://www.crossdelta.de/wp-content/uploads/2026/07/chevron-right-solid-full.svg) center / contain no-repeat;
          mask: url(https://www.crossdelta.de/wp-content/uploads/2026/07/chevron-right-solid-full.svg) center / contain no-repeat;
  transform: rotate(90deg);
}
.elementor-9490 .elementor-element-970bda4 .e-n-menu-dropdown-icon > .e-n-menu-dropdown-icon-opened::before {
  transform: rotate(-90deg);
}
.elementor-9490 .elementor-element-970bda4 .e-n-menu-title:hover .e-n-menu-dropdown-icon,
.elementor-9490 .elementor-element-970bda4 .e-n-menu-dropdown-icon[aria-expanded="true"] {
  color: var(--color-accent-dark, #a21435);
}

/* ---- Burger / Schließen: schlanke Outline-Icons im Button-Stil ----- */
.elementor-9490 .elementor-element-970bda4 .e-n-menu-toggle {
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  color: var(--color-heading, #0f172a);
  background-color: var(--color-background, #fcfcfc);
  border: 2px solid var(--color-border, #e2e8f0);
  border-radius: var(--radius-md, 16px);
  transition: border-color 0.2s, color 0.2s;
}
.elementor-9490 .elementor-element-970bda4 .e-n-menu-toggle:hover,
.elementor-9490 .elementor-element-970bda4 .e-n-menu-toggle[aria-expanded="true"] {
  color: var(--color-accent-dark, #a21435);
  border-color: var(--color-accent-dark, #a21435);
}
.elementor-9490 .elementor-element-970bda4 .e-n-menu-toggle svg {
  display: none !important;
}
.elementor-9490 .elementor-element-970bda4 .e-n-menu-toggle-icon::before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 6h16M4 12h16M4 18h16'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 6h16M4 12h16M4 18h16'/%3E%3C/svg%3E") center / contain no-repeat;
}
.elementor-9490 .elementor-element-970bda4 .e-n-menu-toggle-icon.e-close::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E");
}
@media (max-width: 767px) {
  .elementor-9490 .elementor-element-970bda4 .e-n-menu-toggle { width: 44px; height: 44px; }
}

/* ---- Desktop: Mega-Menü bei niedrigen Fenstern scrollbar ---------- */
@media (min-width: 1025px) {
  .elementor-9490 .elementor-element-970bda4 .e-n-menu-content > .e-con {
    max-height: calc(100dvh - 96px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}

/* ---- Tablet & Mobil: Menü-Panel ----------------------------------- */
@media (max-width: 1024px) {
  /* Panel öffnet unterhalb des Headers statt ihn zu überlappen */
  .elementor-9490 .elementor-element-970bda4 {
    --n-menu-toggle-icon-distance-from-dropdown: 24px;
  }
  .elementor-9490.elementor-location-header .elementor-element-970bda4 .e-n-menu-wrapper {
    top: calc(100% + 24px);
    max-height: calc(100dvh - 96px) !important;
    background-color: var(--color-background, #fcfcfc);
  }

  /* Leistungen-Untermenü bündig mit der obersten Ebene (16 px) */
  .elementor-9490 .elementor-element.elementor-element-7d18df4 {
    margin: 0;
    padding: 0;
    background-color: transparent;
  }
  .elementor-9490 .elementor-element.elementor-element-7d18df4 > .e-con-inner {
    padding: 0;
  }
  .elementor-9490 .elementor-element.elementor-element-d892747 {
    background-color: transparent;
  }
  .elementor-9490 .elementor-element.elementor-element-d892747 > .e-accordion-base > details > summary {
    padding-inline: 0;
  }

  /* Oberste Ebene im Stil des Leistungen-Akkordeons */
  .elementor-9490 .elementor-element-970bda4 .e-n-menu-title {
    min-height: 48px;
    padding: 12px var(--space-md, 16px);
    background-color: transparent !important;
    border-bottom: 1px solid var(--color-border, #e2e8f0);
    justify-content: space-between;
  }
  .elementor-9490 .elementor-element-970bda4 .e-n-menu-title .e-n-menu-title-container {
    flex: 1 1 auto;
  }
  .elementor-9490 .elementor-element-970bda4 .e-n-menu-title-text {
    font-weight: 600;
  }
  .elementor-9490 .elementor-element-970bda4 .e-n-menu-dropdown-icon > span::before {
    width: 16px;
    height: 16px;
  }

  /* CTA-Buttons im Menü: gleicher Radius wie alle Buttons */
  .elementor-9490 .elementor-element.elementor-element-d892747 > :last-child > :last-child > a {
    border-radius: var(--radius-md, 16px);
  }

  /* Abgedunkelter Hintergrund + Scroll-Sperre bei offenem Menü */
  body:has(.elementor-9490 .e-n-menu-toggle[aria-expanded="true"]) {
    overflow: hidden;
  }
  body:has(.elementor-9490 .e-n-menu-toggle[aria-expanded="true"])::after {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 99;
    background-color: rgba(15, 23, 42, 0.4);
  }
}/* End custom CSS */