.elementor-10105 .elementor-element.elementor-element-8e124cc{--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;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:var( --e-global-color-secondary );--border-color:var( --e-global-color-secondary );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:12px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1000;}.elementor-10105 .elementor-element.elementor-element-8e124cc:not(.elementor-motion-effects-element-type-background), .elementor-10105 .elementor-element.elementor-element-8e124cc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-6f094c9 );}.elementor-10105 .elementor-element.elementor-element-b4362b9{--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:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:-6px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10105 .elementor-element.elementor-element-b4362b9.e-con{--align-self:center;}.elementor-10105 .elementor-element.elementor-element-464dbff{--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-start;--align-items: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-10105 .elementor-element.elementor-element-464dbff.e-con{--align-self:flex-start;}.elementor-10105 .elementor-element.elementor-element-2650f1c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 20px;}.elementor-10105 .elementor-element.elementor-element-2650f1c .elementor-icon-wrapper{text-align:center;}.elementor-10105 .elementor-element.elementor-element-2650f1c.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-10105 .elementor-element.elementor-element-2650f1c.elementor-view-framed .elementor-icon, .elementor-10105 .elementor-element.elementor-element-2650f1c.elementor-view-default .elementor-icon{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-10105 .elementor-element.elementor-element-2650f1c.elementor-view-framed .elementor-icon, .elementor-10105 .elementor-element.elementor-element-2650f1c.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-10105 .elementor-element.elementor-element-2650f1c .elementor-icon{font-size:20px;}.elementor-10105 .elementor-element.elementor-element-2650f1c .elementor-icon svg{height:20px;}.elementor-10105 .elementor-element.elementor-element-582e7c5{--display:flex;--justify-content:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:5px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10105 .elementor-element.elementor-element-1d504b1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;text-align:end;}.elementor-10105 .elementor-element.elementor-element-1d504b1 img{width:68%;}.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-10105 .elementor-element.elementor-element-8e124cc{--content-width:1260px;}.elementor-10105 .elementor-element.elementor-element-582e7c5{--width:33%;}}@media(max-width:1200px) and (min-width:768px){.elementor-10105 .elementor-element.elementor-element-582e7c5{--width:22%;}}@media(max-width:1024px) and (min-width:768px){.elementor-10105 .elementor-element.elementor-element-b4362b9{--width:77%;}.elementor-10105 .elementor-element.elementor-element-582e7c5{--width:23%;}}@media(max-width:1366px){.elementor-10105 .elementor-element.elementor-element-8e124cc{--padding-top:10px;--padding-bottom:10px;--padding-left:2px;--padding-right:20px;}.elementor-10105 .elementor-element.elementor-element-2650f1c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 20px;}.elementor-10105 .elementor-element.elementor-element-2650f1c .elementor-icon{font-size:18px;}.elementor-10105 .elementor-element.elementor-element-2650f1c .elementor-icon svg{height:18px;}}@media(max-width:1200px){.elementor-10105 .elementor-element.elementor-element-8e124cc{--padding-top:10px;--padding-bottom:10px;--padding-left:15px;--padding-right:20px;}.elementor-10105 .elementor-element.elementor-element-1d504b1 img{width:1000px;}}@media(max-width:1024px){.elementor-10105 .elementor-element.elementor-element-8e124cc{--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:20px;}.elementor-10105 .elementor-element.elementor-element-1d504b1 img{width:100%;}}@media(max-width:768px){.elementor-10105 .elementor-element.elementor-element-8e124cc{--padding-top:10px;--padding-bottom:10px;--padding-left:15px;--padding-right:15px;}.elementor-10105 .elementor-element.elementor-element-2650f1c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 20px;}.elementor-10105 .elementor-element.elementor-element-2650f1c .elementor-icon{font-size:15px;}.elementor-10105 .elementor-element.elementor-element-2650f1c .elementor-icon svg{height:15px;}}@media(max-width:767px){.elementor-10105 .elementor-element.elementor-element-8e124cc{--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;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-10105 .elementor-element.elementor-element-b4362b9{--width:52%;}.elementor-10105 .elementor-element.elementor-element-2650f1c .elementor-icon{font-size:16px;}.elementor-10105 .elementor-element.elementor-element-2650f1c .elementor-icon svg{height:16px;}.elementor-10105 .elementor-element.elementor-element-582e7c5{--width:47%;--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-10105 .elementor-element.elementor-element-1d504b1 img{width:80%;}}/* Start custom CSS for shortcode, class: .elementor-element-d9fce85 *//**************************************
 * Hauptmenü (Top-Level)
 **************************************/
.custom-main-nav-list {
    display: flex;
    align-items: center;
    justify-content: center; /* ggf. anpassen */
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 1px; /* Abstand zwischen den Menüpunkten */
    background-color: #ffffff; /* immer weiß */
}

.custom-main-nav-list > li {
    position: relative; /* für Submenü-Positionierung */
}

/* Top-Level-Links */
.custom-main-nav-list > li > a {
    font-family: Arial, sans-serif;
    font-size: 17px;
    font-weight: 500;
    text-transform: uppercase;
    color: #4D4D4D;
    text-decoration: none;
    white-space: nowrap;
    position: relative;
    padding: 13px 18px;        /* vertikal 13px, horizontal 18px */
    background-color: #ffffff; /* immer weiß */
}

/* Unterstreichungs-Effekt (Zeigerbreite 4px) */
.custom-main-nav-list > li > a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;                 /* direkt am unteren Rand der Box */
    width: 0;
    height: 4px;               /* Zeigerbreite 4 */
    background-color: #EC7404; /* Akzentfarbe */
    transition: width .25s ease;
}

/* Hover & aktiv: Unterstrich #EC7404, Text #4D4D4D */
.custom-main-nav-list > li:hover > a::after,
.custom-main-nav-list > li.current-menu-item > a::after,
.custom-main-nav-list > li.current-menu-ancestor > a::after {
    width: 100%;
}

.custom-main-nav-list > li > a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 4px;                /* vorher: bottom: 0; */
    width: 0;
    height: 4px;
    background-color: #EC7404;
    transition: width .25s ease;
}


.custom-main-nav-list > li:hover > a,
.custom-main-nav-list > li.current-menu-item > a,
.custom-main-nav-list > li.current-menu-ancestor > a {
    color: #4D4D4D;
}

/**************************************
 * Submenü (Dropdown)
 **************************************/
.custom-main-nav-list .sub-menu {
    position: absolute;
    top: calc(100% + 6px);   /* vorher: top: 100%; */
    top: 100%;
    left: 0;
    z-index: 9999;
    min-width: 220px;
    list-style: none;
    margin: 8px 0 0 0;
    padding: 10px 0;
    background-color: #ffffff; /* immer weiß */
    box-shadow: 0 10px 25px rgba(0,0,0,.12);
    border-radius: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition:
        opacity .18s ease,
        transform .18s ease,
        visibility 0s linear .18s;
}

/* Submenü-Items */
.custom-main-nav-list .sub-menu li {
    position: relative;
}

.custom-main-nav-list .sub-menu a {
    display: block;
    padding: 8px 20px;
    font-family: Arial, sans-serif;
    font-size: 17px;
    font-weight: 400;
    text-transform: uppercase;
    color: #4D4D4D;            /* Text #4D4D4D */
    text-decoration: none;     /* kein Unterstrich */
    background-color: #ffffff; /* immer weiß */
    white-space: nowrap;
}

/* Hover im Submenü: nur Hintergrund oder Farbe ändern, aber KEIN Unterstrich */
.custom-main-nav-list .sub-menu a:hover {
    background-color: #ffffff;
    color: #4D4D4D;
}

/* Submenü anzeigen */
.custom-main-nav-list > li:hover > .sub-menu,
.custom-main-nav-list > li:focus-within > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition:
        opacity .18s ease,
        transform .18s ease,
        visibility 0s;
}

/* Falls es Sub-Submenüs gibt: rechts raus */
.custom-main-nav-list .sub-menu .sub-menu {
    top: 0;
    left: 100%;
    margin-left: 0;
}

/**************************************
 * Responsive Beispiel (optional anpassen)
 **************************************/
@media (max-width: 1024px) {
    .custom-main-nav-list {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
    .custom-main-nav-list .sub-menu {
    display: none;
}

.custom-main-nav-list.is-open .sub-menu {
    display: block;
    position: static;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    background: transparent;
    margin: 0;
    padding-left: 15px;
}

}

/* Burger standardmäßig ausblenden */
.nav-toggle-button {
    display: none;
}

/******************************************
 * MOBILE
 ******************************************/
@media (max-width:1024px) {

    .custom-main-nav {
        position: relative;
    }

    .nav-toggle-button {
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 5px;

        width: 40px;
        height: 40px;

        padding: 0;
        margin: 0;

        border: 0;
        background: transparent;
        cursor: pointer;
    }

    .nav-toggle-button span {
        display: block;
        width: 28px;
        height: 3px;
        background: #4D4D4D;
    }

    /* Menü geschlossen */
    .custom-main-nav-list {
        display: none;
    }

    /* Menü geöffnet */
   .custom-main-nav-list.is-open {

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;

    position: fixed;

    top: 70px;
    left: 0;

    width: 100vw;
    height: auto;
    max-height: calc(100vh - 70px);

    background: #ffffff;

    padding: 22px 30px 30px 30px;

    overflow-y: auto;

    box-sizing: border-box;
    z-index: 99999;
}


.nav-toggle-button {
    background: transparent !important;
    box-shadow: none !important;
}

.nav-toggle-button,
.nav-toggle-button:hover,
.nav-toggle-button:focus,
.nav-toggle-button:active {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

    .custom-main-nav-list > li {
        width: 100%;
    }

    .custom-main-nav-list > li > a {
        display: block;
        width: 100%;
        padding: 5px 0;
    }

    .custom-main-nav-list .sub-menu {
        position: static;
        display: block;

        opacity: 1;
        visibility: visible;
        transform: none;

        box-shadow: none;
        background: transparent;

        margin: 0;
        padding-left: 15px;
    }

    .custom-main-nav-list .sub-menu a {
        font-size: 15px;
        padding: 10px 0;
    }

    .custom-main-nav-list > li > a::after {
        display: none;
    }
}/* End custom CSS */