.ek-single-event-wrapper{
    width: 100%!important;
    margin: auto;
}

.ek-event-button {
    border-radius: var(--Button-button-radius, 4px) !important;
    background: var(--backgrounds-brand-02-bg-brand-02, #B4A7A2)!important;
}

.ek-card-bottom h3{
    color: var(--text-global-text-inverse, #FCF5F2)!important;

    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px; /* 140% */
    letter-spacing: -0.4px;
}

.ek-event-extra-info{
    color: var(--text-global-text-inverse, #FCF5F2)!important;
    border-top: 1px solid var(--borders-global-border-base, #BFB7B4) !important;

    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.event-detail-search-grid-two .ek-date-info-address{
    display: none;
}

.ek-date-info {
    display: flex;
    color: #EDF8FF;
    max-width: fit-content;
    border-radius: 5px;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 16px;
    flex-wrap: nowrap;
    gap: 5px;
    align-items: center;
}

.event-location-name{
    padding: 0;
    margin-left: 5px;
    margin-top: 0;
    margin-bottom: 0;
}
.event-location-address{
    padding: 0;
    margin-left: 5px;
    margin-top: 0;
    margin-bottom: 0;
}
.event-location-tags{
    display: flex;
    align-items: center;
    flex-direction: row;
    gap: 5px;
    margin-top: 4px;
    margin-left: 30px;
    flex-wrap: wrap;
}

.ek-event-dates{
    color: var(--text-global-text-inverse, #FCF5F2)!important;
    padding-top: 15px;
}

.ek-event-grid .ek-event-dates {
    border-top: 1px solid var(--borders-global-border-base, #BFB7B4)!important;
    padding-top: 15px;
}

.ek-event-badges-event-typ {
    position: absolute;
    top: 8px!important;
    left: 10px!important;;
}

.ek-event-badges-event-typ .ek-badge {
    border-radius: 4px!important;
}

.ek-event-button {
    color: var(--text-button-text-on-brand-02, #332E2E)!important;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 16px; /* 100% */
}

#ek-event-logo{
    right: 50px;
    bottom: -12px;
    z-index: 10;
    position: absolute;
    width: 192px;
    height: 192px;
    object-fit: contain;
    background-color: white;
    border-radius: 4px;
    box-shadow: 0px 6px 12px -6px rgba(24, 27, 31, 0.08), 0px 8px 24px -4px rgba(24, 27, 31, 0.04);
}

.ek-event-grid .ek-event-button {
    width: -webkit-fill-available;
    width: -moz-available;
    text-align: center;
}

.ek-detailsuche-wrapper .ek-event-button {
    width: -webkit-fill-available;
    width: -moz-available;
    text-align: center;
}

.related-events .ek-event-button {
    width: -webkit-fill-available;
    width: -moz-available;
    text-align: center;
}

/* Such-Button und Suchfeld */
#ek_event_search_button {
    z-index: 10;
    background-color: #fcf5f2ff!important;
}
/* Such-Button und Suchfeld */
#ek_event_search_button svg{
    fill: #000;
}








/* === Grundwerte, an den Button anpassen ===================== */
:root{
    /* reale Breite des Buttons inkl. Padding ⇒ bei Bedarf anpassen */
    --ek-btnW: 0px;
}

#ek_event_search_wrap{
    position: relative;
}

#ek_event_search_button{
    position: absolute;
    right: 0px;
}

/* === Suchfeld eingeklappt ================================== */
#ek_event_search{
    /* startet hinter dem Button */
    width:0;
    transform:translateX(var(--ek-btnW));
    overflow:hidden;
    margin-left: 35px;
    /* Animationen */
    transition:
            transform .2s linear,   /* kurzer Schwenk nach links  */
            width     .7s linear;   /* langsames Aufziehen         */

    /* optische Details wie bisher */
    height:10px;
    border-radius:38px;
    border:1px solid var(--borders-global-border-base,#665F5C);
    background:var(--backgrounds-global-bg-base,#fff);
}

/* === Suchfeld ausgeklappt ================================== */
#ek_event_search.expanded{
    width:200px;              /* Zielbreite */
    transform:translateX(0);  /* sofort linksbündig */
    padding-right:45px !important;
}














#ek_event_search_button{
    transition: border-radius 0.5s linear;
}

#ek_event_search_button.expanded-btn{
    transition: border-radius 0.5s;
    border-radius: 0px 40px 40px 0px;
    padding: 7.8px 13px !important;
    align-items: center;
    background-color: #332E2E!important;
    fill: #fff!important;
}

#ek_event_search_button.expanded-btn svg{
    fill: #fff!important;
}

/* Wrapper & Toggle */
.ek-detailsuche-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
}
.ek-display-toggle {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 5px;
}
.ek-display-toggle p {
    font-size: 10px;
    font-weight: bold;
}

/* Grid One Layout */
.event-detail-search-grid-one {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}
.event-detail-search-grid-one .ek-event-card {
    height: fit-content;
    width: 80%;
    margin-left: 15%;
    overflow: visible;
}
.event-detail-search-grid-one #ek-event-logo {
    left: -61px;
    top: 50px;
    width: 127px;
    height: 127px;
}
.event-detail-search-grid-one .ek-event-logo {
    /* Alternative Ansprache (z. B. im Media Query) */
    width: 127px;
    height: 127px;
}
.event-detail-search-grid-one .ek-card-top .img-cover {
    max-height: 0;
}
.event-detail-search-grid-one .ek-card-top .event-detail-search-grid-one {
    gap: 35px;
}
.event-detail-search-grid-one .event-detail-search-grid-one .ek-event-card {
    min-height: 260px;
}
.event-detail-search-grid-one .badge-container .ek-event-badges,
.event-detail-search-grid-one .ek-event-badges-event-badge,
.event-detail-search-grid-one .ek-event-button {
    display: none;
}
.event-detail-search-grid-one .ek-event-hero-text-main {
    padding: 10px 0 16px;
}
.event-detail-search-grid-one .ek-event-badges-event-typ {
    top: 185px !important;
    left: -52px !important;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex-wrap: wrap;
}
.event-detail-search-grid-one .ek-card-bottom {
    position: relative;
    padding: 35px 0 12px 95px;
    /*height: 260px;*/
    border-radius: 4px;
}
.event-detail-search-grid-one .ek-card-bottom h3 {
    margin: 2px 50px 2px 2px;
}
.event-detail-search-grid-one .ek-date-info {
    display: flex;
    align-items: center;
    padding: 28px 120px 0 0;
}
.event-detail-search-grid-one .event-location-address {
    color: var(--text-global-text-inverse, #FCFCFC);
    font: normal 400 12px/18px sans-serif;
}

/* Grid Two Layout */
.event-detail-search-grid-two {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.event-detail-search-grid-two .ek-event-hero-text-main {
    display: none;
}

.event-detail-search-grid-two-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.event-detail-search-grid-two-list .event-detail-search-img-a{
    display: none;
}

.event-detail-search-grid-two-list .ek-event-card{
}

.event-detail-search-grid-two-list #ek-event-logo{
    display: none;
}

.event-detail-search-grid-two-list .ek-event-dates{
    border-top: none!important;
}

.event-detail-search-grid-two-list .ek-event-hero-text-main {
    display: none;
}

.event-detail-search-grid-two-list .ek-date-info-address{
    display: none;
}

.event-detail-search-grid-two-list .ek-card-top {
    max-height: 195px!important;
    background: var(--backgrounds-global-bg-inverse, #332E2E);
}

.event-detail-search-grid-two-list .ek-card-bottom {
}

/* Gemeinsame Grid-Badges */
.event-detail-search-grid .ek-event-badges {
    display: flex;
    gap: 0;
    padding: 0;
    flex-wrap: nowrap;
    flex-direction: column;
    width: 100%;
}

/* Pagination */
.ek-pagination {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}
.ek-pagination .ek-pagination-arrow {
    display: flex;
    width: var(--Button-button-height, 48px);
    height: var(--Button-button-height, 48px);
    justify-content: center;
    align-items: center;

    border-radius: var(--Button-button-radius, 4px);
    border: 1px solid var(--borders-global-border-base, #665F5C);
    background: var(--backgrounds-global-bg-subtle, #FCF5F2);
}

.ek-event-button,
.ek-pagination-arrow{
    --btn-hover-shadow: 0px 8px 24px -4px #181b1f0a, 0px 6px 12px -6px #181b1f14, 0 0 0 1px var(--bg-page-body), 0 0 0 3px var(--border-base);
}

.ek-pagination .ek-pagination-arrow:hover,
.ek-pagination .ek-pagination-arrow:focus{
    box-shadow: var(--btn-hover-shadow);
}

/* Suchbereich */
.ek-detailsuche-wrapper .ek-search-section {
    font-size: 12px;
    font-weight: bold;
    text-align: center;
    white-space: nowrap;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    margin: auto;
    justify-content: flex-end;
    max-width: none !important;
    align-items: center;
    margin-left: 0px;
    margin-right: 0px;
}
.ek-detailsuche-wrapper .ek-search-section button {
    background-color: #332E2E;
}

#ek_event_search_button {
    border-radius: 40px 40px 40px 40px;
    padding: 12px 13px !important;
}

.ek-search-section button {
    padding: 10px 30px!important;
}

/* Month Filter */
.ek-month-filter {
    height: 0;
    overflow: hidden;
    transition: height 0.1s ease-in-out;
    z-index: 100;
    border-radius: 5px;
    position: absolute;
    width: 100%;
    color: var(--text-button-text-on-brand-02, #332E2E) !important;
    left: 0;
}

.ek-month-box, .ek-tax-filter button {
    border-radius: var(--Button-button-radius, 4px);
    border: 1px solid var(--borders-global-border-base, #665F5C);
    height: 90px;
    width: 90px;
    background-color: #ffffff00!important;
}

.ek-month-filter.open {
    height: 200px; /* Hier den gewünschten Zielwert einstellen */
    opacity: 1;
    pointer-events: auto;
}

.ek-display-toggle {
    transition: margin-top 0.8s ease-in-out;
    margin-top: 0;
    /* Keine absolute Positionierung */
}

.ek-display-toggle.open {
    margin-top: 185px;
}

.ek-month-scroller{
    /* padding-left: 120px;
    padding-right: 120px;*/
}


#toggleMonthFilter {
    display: flex;
    align-items: center;
    position: relative;
    border: none !important;
    background: #ffffff00 !important;
    font: bold 12px/normal "Roboto", Sans-serif;
    border-radius: 5px !important;
    padding: 13px 20px !important;
    color: #B4A7A2 !important;
}

/* Card-Bottom & Hero-Text */
.ek-card-bottom {
    background: var(--backgrounds-global-bg-inverse, #332E2E);
    color: white;
}

/* Datum & Uhrzeit */
.event-date-von {
    color: var(--text-global-text-inverse, #FCF5F2);
    font: bold 700 14px/20px sans-serif;
}

.event-date-bis {
    color: var(--text-global-text-inverse, #FCF5F2);
    font: bold 700 14px/20px sans-serif;
}

.event-time {
    color: var(--text-global-text-inverse, #FCF5F2);
    font: normal 400 12px/18px sans-serif;
}

/* Such-Container */
.ek-search-container {
    display: flex;
    flex-direction: row-reverse;
    position: relative;
    justify-content: center;
}

/* Tax Filter Button */
.ek-tax-filter button {
    max-height: 40px;
    width: max-content;
    display: flex;
    padding: 16px 24px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: 53px;
    border: 1px solid var(--borders-global-border-base, #665F5C);
    background-color: #ffffff;
    color: var(--text-global-text-base, #332E2E);
    font-weight: bold;
    font-size: 16px;
}

/* Toggle View */
#ek_toggle_view {
    display: flex;
    background-color: transparent;
    min-height: 44px;
    min-width: 66px;
    color: var(--text-global-text-base, #332E2E);
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
}
#ek_toggle_view p {
    font: normal 400 14px/20px sans-serif;
}

.swiper-pagination-bullet{
    width: 8px;
    height: 8px;
    border-radius: 8px;
    background: var(--icons-global-icon-inactive, #999290);
}

.swiper-pagination-bullet-active{
    width: 16px;
    height: 8px;
    border-radius: 8px;
    background: var(--icons-global-icon-base, #332E2E);
}

.event-detail-search-grid-two-list .ek-event-badges-event-typ {
    z-index: 1;
    position: relative;
    margin-bottom: 16px;
}

.event-detail-search-grid-two-list .badge-container {
    position: static;
}

.event-detail-search-grid-two-list .ek-event-badges-event-badge {
    display: none;
}

/* Media Queries */
@media only screen and (max-width: 1200px) {
    .event-detail-search-grid-two {
        grid-template-columns: 1fr;
    }
    .event-detail-search-grid-one {
        /* Logos & Kartenanpassungen */
        #ek-event-logo {
            left: 15px;
            top: -30px;
        }
        .ek-event-logo {
            left: 18px;
            top: -30px;
        }
        .ek-card-bottom {
            padding: 85px 0 0 16px;
        }
        .ek-event-badges-event-typ {
            top: 50px !important;
            left: 160px !important;
            flex-direction: row;
        }
        .ek-event-card {
            width: 100%;
            margin-left: 0;
        }
        .ek-event-extra-info {
            display: flex;
            flex-direction: column;
        }
        /* Zusätzliche Abstände */
        #ek-date-info {
            padding-top: 10px;
        }
        .ek-date-info {
            padding: 15px 50px 15px 0;
        }
    }

    .ek-search-container {
        flex-direction: column-reverse;
        position: relative;
    }

    .event-detail-search-grid-two-list .ek-card-bottom {
    }

    .event-detail-search-grid-two-list .ek-event-card {
    }

    .event-detail-search-grid-two-list .ek-event-badges-event-typ {
        left: 0px!important;
    }

    .event-detail-search-grid-one {
        gap: 45px;
    }

}

@media only screen and (max-width: 750px) {
    .event-detail-search-grid-two .ek-detailsuche-wrapper #ek-event-logo{
        display: none;
    }
}



/* OBERER TEIL: Bild & Badges */
.ek-card-top {
    position: relative;
    max-height: 300px;
}
.ek-card-top .img-cover {
    aspect-ratio: 250 / 180;
    width: 100%;
    height: 350px;
    max-height: 310px;
    object-fit: cover;
    object-position: center;
    transition: transform 0.3s ease-in-out;
}
.ek-event-card:hover .img-cover {
    transform: scale(1.05);
}

/* EVENT-DATEN & BUTTON */
.ek-event-dates {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    margin-bottom: 15px;
    color: #333;
}
.event-dates-svg {
    display: flex;
    align-items: center;
}
.event-dates-date {
    display: flex;
    flex-direction: column;
    max-width: 178px;
    font-size: 16px;
    font-weight: 600;
}
.event-time {
    font-weight: normal;
}
.ek-event-button {
    display: inline-block;
    background-color: #132A66;
    color: #fff;
    padding: 13px 30px;
    border-radius: 4px;
    text-decoration: none;
    font-size: 15px;
    transition: background-color 0.5s, border 0.5s;
}
.ek-event-button:hover,
.ek-event-button:focus,
.ek-pagination-arrow:hover,
.ek-pagination-arrow:focus{
    transition: background-color 0.5s, border 0.5s;
    box-shadow: var(--btn-hover-shadow);
    background-color: #a08c84!important;
}
.ek-event-button:active{
    border: 2px solid #b4a7a2;
}

.ek-event-grid .ek-event-button {
    width: -webkit-fill-available;
    width: -moz-available;
    text-align: center;
}

.ek-all-events-below{
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
}

.ek-event-button-all {
    border: none;
    box-shadow: inset 0 0 0 1px var(--borders-global-border-base, #665F5C)!important;
    box-sizing: border-box;

    display: inline-block;
    background-color: #132A66;
    padding: 13px 30px;
    text-decoration: none;

    border-radius: var(--Button-button-radius, 4px);
    background: var(--backgrounds-global-bg-subtle, #FCF5F2);

    color: var(--text-button-text-on-brand-02, #332E2E) !important;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 16px;

    cursor: pointer;
    transition: box-shadow 0.2s ease;
}

.ek-event-button-all:hover,
.ek-event-button-all:focus {
    box-shadow: inset 0 0 0 2px var(--borders-global-border-base, #665F5C)!important;
}


/* BADGE-CONTAINER */
.ek-event-grid .ek-event-badges {
    display: flex;
    gap: 0;
    padding: 0;
    flex-wrap: nowrap;
    flex-direction: column;
    width: 100%;
}
.badge-container {
    display: flex;
    gap: 0;
    padding: 0;
    flex-wrap: nowrap;
    flex-direction: column;
    width: 100%;
    position: absolute;
    bottom: 6px;
}
.badge-container .ek-badge-upgrade {
    margin-bottom: 15px;
    transition: padding 0.5s;
    border-top-left-radius: 0;
    border-top-right-radius: 5px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 5px;
}
.badge-container .ek-badge-upgrade:hover {
    padding-left: 30px;
}
.ek-event-badges-event-typ {
    position: absolute;
    top: -3px;
    left: 0;
}

/* UNTERER TEIL: Content */
.ek-card-bottom {
    height: 100%;
    position: relative;
    bottom: 0px;
    left: 0;
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.ek-card-bottom h3 {
    margin: 0 0 16px;
    font-size: 20px;
    font-weight: 700;
    color: #333;
}
.ek-event-grid .ek-event-dates {
    border-top: 1px solid rgba(20, 40, 108, 0.2);
    padding-top: 15px;
}

.ek-detailsuche-wrapper .ek-search-section button.left {
    position: absolute;
    left: 0;
    background: linear-gradient(270deg, var(--backgrounds-page-bg-page-body, #fcf5f200) 51.82%, rgb(252 245 242 / 0%) 100%);
    padding-right: 65px;
    height: 50%;
    padding-left: 8px !important;
    padding-right: 8px !important;
}
.ek-detailsuche-wrapper .ek-search-section button.right {
    position: absolute;
    right: 0;
    background: linear-gradient(270deg, var(--backgrounds-page-bg-page-body, #fcf5f200) 51.82%, rgb(252 245 242 / 0%) 100%);
    padding-left: 65px;
    height: 50%;
    padding-left: 8px !important;
    padding-right: 8px !important;
}