.elementor-85003 .elementor-element.elementor-element-9d4b15b .elementor-button-content-wrapper{flex-direction:row;}.elementor-85003 .elementor-element.elementor-element-19e31af .elementor-button-content-wrapper{flex-direction:row;}#elementor-popup-modal-85003 .dialog-widget-content{animation-duration:0.7s;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-85003{background-color:rgba(0,0,0,.8);justify-content:flex-end;align-items:flex-start;pointer-events:all;}#elementor-popup-modal-85003 .dialog-message{width:30vw;height:100vh;align-items:flex-start;}#elementor-popup-modal-85003 .dialog-close-button{display:flex;top:15px;}@media(max-width:1024px){#elementor-popup-modal-85003 .dialog-message{width:90vw;}}@media(max-width:767px){#elementor-popup-modal-85003 .dialog-message{width:100vw;}}/* Start custom CSS *//* ==========================================
   00. ELEMENTOR ATOMIC – PADDING RESET
   ========================================== */

.elementor .e-atomic-element.e-flexbox-base,
.elementor .e-atomic-element.e-grid-base,
.elementor .e-atomic-element.e-heading-base,
.elementor .e-atomic-element.e-paragraph-base {
    padding: 0;
}


/* ==========================================
   01. POPUP
   ========================================== */

/* Elementor Custom CSS: "#elementor-popup-modal-85003" bezeichnet das Popup-Element. */
#elementor-popup-modal-85003 {
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}


/* ==========================================
   02. POPUP – SCHLIESSEN
   ========================================== */

.smc-e-filter-popup .dialog-close-button,
.smc-e-filter-popup .dialog-close-button:focus,
.smc-e-filter-popup .dialog-close-button:focus-visible,
.smc-e-filter-popup .dialog-close-button:active {
    outline: none !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    background-color: transparent !important;
}

/* Eigenes X-Icon */

.smc-e-filter-popup .dialog-close-button .eicon-close::before {
    content: "";
    display: block;

    width: 1.8rem;
    height: 1.8rem;

    background-color: #fff;

    mask-repeat: no-repeat;
    mask-size: contain;
    mask-position: center;

    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    -webkit-mask-position: center;

    mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><path d="M 7.71875 6.28125 L 6.28125 7.71875 L 23.5625 25 L 6.28125 42.28125 L 7.71875 43.71875 L 25 26.4375 L 42.28125 43.71875 L 43.71875 42.28125 L 26.4375 25 L 43.71875 7.71875 L 42.28125 6.28125 L 25 23.5625 Z"/></svg>');

    -webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><path d="M 7.71875 6.28125 L 6.28125 7.71875 L 23.5625 25 L 6.28125 42.28125 L 7.71875 43.71875 L 25 26.4375 L 42.28125 43.71875 L 43.71875 42.28125 L 26.4375 25 L 43.71875 7.71875 L 42.28125 6.28125 L 25 23.5625 Z"/></svg>');
}

/* Position links außerhalb des Popups */

.smc-e-filter-popup .dialog-close-button {
    right: auto;
    left: -40px;
}


/* ==========================================
   03. POPUP – INHALT
   ========================================== */

#smc-popup {
    display: flex;
    flex-direction: column;
    align-items: stretch;

    gap: 0;

    box-sizing: border-box;

    width: 100%;
    min-width: 0;

    padding: 50px 30px 0;
}


/* ==========================================
   04. FILTER – HEADER
   ========================================== */

#smc-popup .smc-e-filter-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;

    gap: 8px;

    width: 100%;
    min-width: 0;

    margin: 0 0 25px 0;
    padding: 0;
}


/* ==========================================
   05. FILTER – ICON
   ========================================== */

#smc-popup .smc-e-filter-header .smc-e-filter-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 1.15rem;

    width: 1.15rem !important;
    height: 1.15rem !important;

    min-width: 1.15rem;
    min-height: 1.15rem;
}

#smc-popup .smc-e-filter-header .smc-e-filter-icon > svg {
    display: block;

    width: 100% !important;
    height: 100% !important;

    max-width: 100% !important;
    max-height: 100% !important;
}


/*
   05.1 FILTER – TITEL
   ------------------------------------------ */

#smc-popup .smc-e-filter-header .smc-e-filter-title {
    display: block;
    flex: 0 1 auto;

    font-size: 1.25rem !important;
    line-height: 1.25 !important;

    margin: 0 !important;
    padding: 0 !important;
}


/*
   05.2 POPUP – UMSCHALTBUTTONS / POSITION
   ------------------------------------------ */

#smc-popup .smc-popup-toggle-search,
#smc-popup .smc-popup-toggle-filter {
    margin-left: auto !important;
    width: fit-content !important;
}


/*
   05.3 POPUP – UMSCHALTBUTTONS / DESIGN
   ------------------------------------------ */

#smc-popup .smc-popup-toggle-search .elementor-button,
#smc-popup .smc-popup-toggle-filter .elementor-button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    gap: 8px;

    background: transparent !important;
    border: 1px solid var(--smc-hover-glass-bg) !important;
    border-radius: 50px !important;

    color: inherit !important;

    font-family: var(--global-font-family) !important;
    font-size: var(--global-font-size-default) !important;
    font-weight: var(--global-font-weight-regular) !important;
    line-height: var(--global-line-height-ui) !important;

    padding: 8px 14px !important;

    box-shadow: none !important;
}


/*
   05.4 POPUP – UMSCHALTBUTTONS / ICON
   ------------------------------------------ */

#smc-popup .smc-popup-toggle-search .elementor-button-icon,
#smc-popup .smc-popup-toggle-filter .elementor-button-icon,
#smc-popup .smc-popup-toggle-search .elementor-button-icon svg,
#smc-popup .smc-popup-toggle-filter .elementor-button-icon svg {
    color: currentColor !important;
}

#smc-popup .smc-popup-toggle-search .elementor-button-icon svg,
#smc-popup .smc-popup-toggle-filter .elementor-button-icon svg {
    fill: currentColor;
}


/*
   05.5 POPUP – UMSCHALTBUTTONS / HOVER
   ------------------------------------------ */

#smc-popup .smc-popup-toggle-search .elementor-button:hover,
#smc-popup .smc-popup-toggle-filter .elementor-button:hover {
    background: var(--smc-hover-glass-bg) !important;
}


/* ==========================================
   06. SUCHE – CONTAINER
   ========================================== */

/* Standard: Suggestions fehlen oder sind hidden */
#smc-popup .smc-e-live-search {
    position: relative;
    width: 100%;
    min-width: 0;
    margin: 0 0 45px 0;
}

/* Suggestions vorhanden und NICHT hidden */
#smc-popup:has(
    .smc-e-search-suggestions:not([hidden])
) .smc-e-live-search {
    margin-bottom: 25px;
}

#smc-popup .smc-e-live-search .smc-input {
    position: relative;
    display: block;

    width: 100%;
}


/* ==========================================
   08. SUCHE – EINGABEFELD
   ========================================== */

#smc-popup .smc-e-live-search
.smc-input input.smc-e-live-search-input.elementor-field {
    display: block;
    box-sizing: border-box;

    width: 100%;

    padding: 0 54px 0 48px !important;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath d='M 21 3 C 11.601563 3 4 10.601563 4 20 C 4 29.398438 11.601563 37 21 37 C 24.355469 37 27.460938 36.015625 30.09375 34.34375 L 42.375 46.625 L 46.625 42.375 L 34.5 30.28125 C 36.679688 27.421875 38 23.878906 38 20 C 38 10.601563 30.398438 3 21 3 Z M 21 7 C 28.199219 7 34 12.800781 34 20 C 34 27.199219 28.199219 33 21 33 C 13.800781 33 8 27.199219 8 20 C 8 12.800781 13.800781 7 21 7 Z'/%3E%3C/svg%3E") !important;

    background-repeat: no-repeat !important;
    background-position: 14px center !important;
    background-size: 24px 24px !important;
}


/* ==========================================
   09. SUCHE – LÖSCH-ICON UND SPINNER
   ========================================== */

#smc-popup .smc-e-live-search .smc-e-search-clear {
    width: 20px;
    height: 20px;
    padding: 0;
    border: 0;
    color: var(--e-global-color-f41b8e9);
    background-color: var(--e-global-color-f41b8e9);
    -webkit-tap-highlight-color: transparent;
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    z-index: 2;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath d='M 9.15625 6.3125 L 6.3125 9.15625 L 22.15625 25 L 6.21875 40.96875 L 9.03125 43.78125 L 25 27.84375 L 40.9375 43.78125 L 43.78125 40.9375 L 27.84375 25 L 43.6875 9.15625 L 40.84375 6.3125 L 25 22.15625 Z'/%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 50 50'%3E%3Cpath d='M 9.15625 6.3125 L 6.3125 9.15625 L 22.15625 25 L 6.21875 40.96875 L 9.03125 43.78125 L 25 27.84375 L 40.9375 43.78125 L 43.78125 40.9375 L 27.84375 25 L 43.6875 9.15625 L 40.84375 6.3125 L 25 22.15625 Z'/%3E%3C/svg%3E") center / contain no-repeat;

    cursor: pointer;
}


/* SUCHFELD – SPINNER */

#smc-popup .smc-e-live-search .smc-e-search-spinner {
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);

    width: 20px;
    height: 20px;
    box-sizing: border-box;

    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;

    color: var(--e-global-color-f41b8e9);
    animation: smc-e-search-spin 0.7s linear infinite;

    pointer-events: none;
}

#smc-popup .smc-e-live-search .smc-e-search-spinner[hidden] {
    display: none !important;
}

@keyframes smc-e-search-spin {
    to {
        transform: translateY(-50%) rotate(360deg);
    }
}

/* Lösch-Icon rechts im Suchfeld positionieren */

#smc-popup .smc-e-live-search .smc-input {
    position: relative;
}


/* ==========================================
   10. SUCHE – VORSCHLÄGE
   ========================================== */

#smc-popup .smc-e-search-suggestion {
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
}

#smc-popup .smc-e-search-suggestion::before {
    content: "";
    display: block;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;

    background-color: currentColor;

    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath d='M 21 3 C 11.601563 3 4 10.601563 4 20 C 4 29.398438 11.601563 37 21 37 C 24.355469 37 27.460938 36.015625 30.09375 34.34375 L 42.375 46.625 L 46.625 42.375 L 34.5 30.28125 C 36.679688 27.421875 38 23.878906 38 20 C 38 10.601563 30.398438 3 21 3 Z M 21 7 C 28.199219 7 34 12.800781 34 20 C 34 27.199219 28.199219 33 21 33 C 13.800781 33 8 27.199219 8 20 C 8 12.800781 13.800781 7 21 7 Z'/%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 50 50'%3E%3Cpath d='M 21 3 C 11.601563 3 4 10.601563 4 20 C 4 29.398438 11.601563 37 21 37 C 24.355469 37 27.460938 36.015625 30.09375 34.34375 L 42.375 46.625 L 46.625 42.375 L 34.5 30.28125 C 36.679688 27.421875 38 23.878906 38 20 C 38 10.601563 30.398438 3 21 3 Z M 21 7 C 28.199219 7 34 12.800781 34 20 C 34 27.199219 28.199219 33 21 33 C 13.800781 33 8 27.199219 8 20 C 8 12.800781 13.800781 7 21 7 Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* LIVE SEARCH */
#smc-popup .smc-e-live-search .smc-e-search-suggestions {
    margin-top: 12px;
}

/* LIVE SEARCH HEADING */
#smc-popup .smc-e-live-search .smc-e-suggestions-heading {
    font-weight: 600;
}

/* LIVE SEARCH SUGGESTION */
#smc-popup .smc-e-live-search .smc-e-search-suggestion {
    margin-top: 8px;
}


/* ==========================================
   11. FILTER – FORMULAR
   ========================================== */

#smc-popup form.smc-e-filters {
    display: flex;
    flex-direction: column;
    align-items: stretch;

    gap: 14px;

    width: 100%;
    min-width: 0;

    margin: 0;
    padding: 0;
}


/* ==========================================
   12. FILTER – WRAPPER
   ========================================== */

#smc-popup form.smc-e-filters > .smc-select,
#smc-popup form.smc-e-filters > .smc-input {
    display: block;

    box-sizing: border-box;

    width: 100%;
    max-width: 100%;
    min-width: 0;

    margin: 0;
    padding: 0;
}


/* ==========================================
   13. FILTER – FELDER
   ========================================== */

#smc-popup form.smc-e-filters
.smc-select select.elementor-field-textual,
#smc-popup form.smc-e-filters
.smc-input input[type="date"].elementor-field {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}


/* ==========================================
   14. FILTER – SELECT-ICON
   ========================================== */

#smc-popup form.smc-e-filters .smc-select {
    position: relative;
}

#smc-popup form.smc-e-filters
.smc-select select.elementor-field-textual {
    appearance: none !important;
    -webkit-appearance: none !important;

    background-image: var(--smc-icon-down) !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    background-size: 16px 16px !important;

    padding-right: 48px !important;
}


/* ==========================================
   15. FILTER – DATUM UND KALENDER-ICON
   ========================================== */

#smc-popup form.smc-e-filters
.smc-input:has(input[type="date"]) {
    position: relative;
}

#smc-popup form.smc-e-filters
.smc-input:has(input[type="date"])::after {
    content: "";
    position: absolute;

    right: 16px;
    top: 50%;
    transform: translateY(-50%);

    width: 20px;
    height: 20px;

    background-color: currentColor;

    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath d='M12 0C10.9 0 10 .9 10 2v2H4C2.9 4 2 4.9 2 6v40c0 1.1.9 2 2 2h42c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-6V2c0-1.1-.9-2-2-2h-2c-1.1 0-2 .9-2 2v2H16V2c0-1.1-.9-2-2-2zm0 2h2v6h-2zm24 0h2v6h-2zM4 6h6v2c0 1.1.9 2 2 2h2c1.1 0 2-.9 2-2V6h18v2c0 1.1.9 2 2 2h2c1.1 0 2-.9 2-2V6h6v7H4zm0 9h42v31H4zm6 4v23h30V19zm2 2h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5zM12 28h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5zM12 35h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5z'/%3E%3C/svg%3E");

    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath d='M12 0C10.9 0 10 .9 10 2v2H4C2.9 4 2 4.9 2 6v40c0 1.1.9 2 2 2h42c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-6V2c0-1.1-.9-2-2-2h-2c-1.1 0-2 .9-2 2v2H16V2c0-1.1-.9-2-2-2zm0 2h2v6h-2zm24 0h2v6h-2zM4 6h6v2c0 1.1.9 2 2 2h2c1.1 0 2-.9 2-2V6h18v2c0 1.1.9 2 2 2h2c1.1 0 2-.9 2-2V6h6v7H4zm0 9h42v31H4zm6 4v23h30V19zm2 2h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5zM12 28h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5zM12 35h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5zm7 0h5v5h-5z'/%3E%3C/svg%3E");

    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;

    -webkit-mask-position: center;
    mask-position: center;

    -webkit-mask-size: contain;
    mask-size: contain;

    pointer-events: none;
}


/* iOS Safari – Datumsfeld korrigieren */
@supports (-webkit-touch-callout: none) {
    #smc-popup form.smc-e-filters
    .smc-input input[type="date"].elementor-field {
        display: flex;
        align-items: center;
        width: 100%;
        height: var(--global-input-min-height) !important;
        min-height: var(--global-input-min-height) !important;
        box-sizing: border-box;
        -webkit-appearance: none;
        appearance: none;
        text-align: left;
    }

    #smc-popup form.smc-e-filters
    .smc-input input[type="date"]::-webkit-date-and-time-value {
        text-align: left;
    }
}



/* ==========================================
   16. ERGEBNIS – STATUS
   ========================================== */

#smc-popup .smc-e-count-status {
    display: block;
    width: 100%;
}

#smc-popup .smc-e-count-status:empty {
    display: none;
}


/* ==========================================
   17. ERGEBNIS – LINK-WRAPPER
   ========================================== */

#smc-popup .smc-e-filter-results {
    display: block;

    box-sizing: border-box;

    width: 100%;
    min-width: 0;

    margin: 0;
    padding: 0;
}

#smc-popup .smc-e-filter-results:has(.smc-e-count-link[hidden]) {
    display: none;
}


/* ==========================================
   18. ERGEBNIS – BUTTON
   ========================================== */

#smc-popup .smc-e-filter-results
.smc-e-count-link:not([hidden]) {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;

    margin: 30px 0 0 0;
}

#smc-popup .smc-e-count-link[hidden] {
    display: none !important;
}


/* ==========================================
   19. ERROR MESSAGE
   ========================================== */

#smc-popup .smc-e-navigation-error {
    color: var(--e-global-color-8336c6a);
}

/* ==========================================
   MOBILE – MAX. 767 PX
   ========================================== */

@media (max-width: 767px) {

    #smc-popup .smc-e-filter-header {
        margin-bottom: 32px;
    }

    #smc-popup .smc-e-live-search {
        margin-bottom: 32px;
    }

    #smc-popup .smc-e-filter-results
    .smc-e-count-link:not([hidden]) {
        min-height: 60px;
        margin-top: 20px;
        border-radius: 14px;
    }


    /* Close-Button: mobil rechts, schwarzes Icon */
    #smc-popup .dialog-close-button {
        left: auto !important;
        right: 20px !important;
    }

    #smc-popup .dialog-close-button .eicon-close::before {
        background-color: #000 !important;
    }

}


/* ==========================================
   REDUZIERTE BEWEGUNG
   ========================================== */

@media (prefers-reduced-motion: reduce) {

    #smc-popup .smc-e-live-search .smc-e-search-spinner {
        animation: none;
    }

    #smc-popup .smc-e-count-link {
        transition: none;
    }
}/* End custom CSS */