.elementor-1283 .elementor-element.elementor-element-e3aba8e{--display:flex;--min-height:465px;--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:center;--align-items:center;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--overlay-opacity:0.6;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-1283 .elementor-element.elementor-element-e3aba8e:not(.elementor-motion-effects-element-type-background), .elementor-1283 .elementor-element.elementor-element-e3aba8e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://www.mozaiekwijchen.nl/wp-content/uploads/2026/03/Foto-theaterzaal-verkeleind.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-1283 .elementor-element.elementor-element-e3aba8e::before, .elementor-1283 .elementor-element.elementor-element-e3aba8e > .elementor-background-video-container::before, .elementor-1283 .elementor-element.elementor-element-e3aba8e > .e-con-inner > .elementor-background-video-container::before, .elementor-1283 .elementor-element.elementor-element-e3aba8e > .elementor-background-slideshow::before, .elementor-1283 .elementor-element.elementor-element-e3aba8e > .e-con-inner > .elementor-background-slideshow::before, .elementor-1283 .elementor-element.elementor-element-e3aba8e > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-secondary );--background-overlay:'';}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1283 .elementor-element.elementor-element-abc1cd4{margin:90px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 24px 0px 24px;}.elementor-1283 .elementor-element.elementor-element-abc1cd4.elementor-element{--align-self:flex-start;}.elementor-1283 .elementor-element.elementor-element-abc1cd4 .elementor-heading-title{font-family:var( --e-global-typography-heading_l-font-family ), Sans-serif;font-size:var( --e-global-typography-heading_l-font-size );font-weight:var( --e-global-typography-heading_l-font-weight );line-height:var( --e-global-typography-heading_l-line-height );color:var( --e-global-color-background );}.elementor-1283 .elementor-element.elementor-element-475305a{--display:flex;}.elementor-1283 .elementor-element.elementor-element-4f458a6{--spacer-size:55px;}.elementor-1283 .elementor-element.elementor-element-bd0a86e{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-1283 .elementor-element.elementor-element-c2a5663.elementor-element{--align-self:flex-start;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1283 .elementor-element.elementor-element-57a1eee{--display:flex;}.elementor-1283 .elementor-element.elementor-element-8614628{--spacer-size:55px;}@media(max-width:1024px){.elementor-1283 .elementor-element.elementor-element-e3aba8e{--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-1283 .elementor-element.elementor-element-abc1cd4 .elementor-heading-title{font-size:var( --e-global-typography-heading_l-font-size );line-height:var( --e-global-typography-heading_l-line-height );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(min-width:768px){.elementor-1283 .elementor-element.elementor-element-e3aba8e{--content-width:1280px;}}@media(max-width:767px){.elementor-1283 .elementor-element.elementor-element-e3aba8e{--min-height:0px;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:48px;--padding-bottom:48px;--padding-left:16px;--padding-right:16px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-1283 .elementor-element.elementor-element-abc1cd4 .elementor-heading-title{font-size:var( --e-global-typography-heading_l-font-size );line-height:var( --e-global-typography-heading_l-line-height );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}/* Start custom CSS for shortcode, class: .elementor-element-2018196 *//* Algemeen font */
.voorstellingen-lijst,
.voorstellingen-lijst * {
    font-family: 'Work Sans', sans-serif;
}

/* Kaart */
.voorstellingen-lijst {
    display: flex;
    flex-direction: column;
    gap: 15px;
            font-family: 'Work Sans', sans-serif;
}

.vs-kaart {
    display: flex;
    align-items: stretch;
    gap: 0;
    border-bottom: 1px solid #e0e0e0;
    background: #fff;
    transition: background 0.2s ease;
    min-height: 120px;
}

.vs-kaart:hover {
    background: #f7f7f7;
}

/* Afbeelding links */
.vs-afbeelding {
    width: 180px;
    min-width: 180px;
    overflow: hidden;
    flex-shrink: 0;
}

.vs-afbeelding-inner {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    min-height: 120px;
}

.vs-afbeelding-placeholder {
    background-color: #ddd;
}

/* Inhoud midden */
.vs-inhoud {
    flex: 1;
    padding: 15px 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.vs-datum {
    margin: 0 0 4px 0;
    font-size: 18px;
    font-weight: 600;
    color: #C81161;
    letter-spacing: 0.5px;
}

.vs-titel {
    margin: 0 0 4px 0;
    font-size: 23px;
    font-weight: 700;
    color: #111;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.vs-ondertitel {
    margin: 0 0 8px 0;
    font-size: 18px;
    font-weight: 400;
    color: #444;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.vs-labels {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.vs-label {
    font-size: 16px;
    color: #666;
    font-weight: 400;
}

/* Knop rechts */
.vs-actie {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 8px;
    padding: 15px 20px;
    flex-shrink: 0;
}

.tickets-knop {
    display: inline-block;
    padding: 10px 20px;
    background-color: #C81161;
    color: #fff !important;
    text-decoration: none;
    border-radius: 10px;
    text-transform: uppercase;
    font-family: 'Work Sans', sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.5px;
    transition: transform 0.3s ease;
    white-space: nowrap;
}

.tickets-knop:hover,
.tickets-knop:active,
.tickets-knop:focus {
    background-color: #C81161;
    color: #fff !important;
    transform: scale(1.05);
    text-decoration: none;
}

/* Responsive */
@media (max-width: 600px) {
    .vs-kaart {
        flex-wrap: wrap;
    }
    .vs-afbeelding {
        width: 100%;
        min-width: 100%;
        height: 200px;
    }
    .vs-actie {
        width: 100%;
        padding-top: 0;
        padding-bottom: 15px;
    }
}

.vs-actie a.bekijk-knop,
.vs-actie a.bekijk-knop:hover,
.vs-actie a.bekijk-knop:focus,
.vs-actie a.bekijk-knop:active {
    background-color: #C81161 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    display: block !important;
    padding: 10px 20px !important;
    border-radius: 10px !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    white-space: nowrap !important;
    transition: transform 0.3s ease !important;
    
}
.vs-actie a.bekijk-knop:hover {
    transform: scale(1.05) !important;
}

/* =====================
   FILTER BALK
   ===================== */
.vs-filterbalk {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    background: #f7f7f7;
    border-radius: 10px;
    margin-bottom: 32px;
}

.vs-filter-item {
    position: relative;
}

.vs-filter-input-wrapper {
    display: flex;
    align-items: center;
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 8px;
    padding: 8px 14px;
    gap: 8px;
    cursor: pointer;
    transition: border-color 0.2s;
}
.vs-filter-input-wrapper:focus-within {
    border-color: #C81160;
}

.vs-filter-icon {
    width: 18px;
    height: 18px;
    color: #C81160;
    flex-shrink: 0;
}

.vs-filter-input {
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.95rem;
    cursor: pointer;
    min-width: 160px;
    color: #333;
}
.vs-filter-input::placeholder {
    color: #999;
}

.vs-filter-wis {
    background: none;
    border: none;
    color: #999;
    cursor: pointer;
    font-size: 0.85rem;
    padding: 0 2px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
}
.vs-filter-wis:hover {
    color: #C81160;
}

/* Genre dropdown knop */
.vs-genre-knop {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 0.95rem;
    cursor: pointer;
    color: #333;
    transition: border-color 0.2s;
    min-width: 160px;
}
.vs-genre-knop:hover,
.vs-genre-knop[aria-expanded="true"],
.vs-genre-knop.heeft-selectie {
    border-color: #C81160;
    color: #C81160;
}
.vs-chevron {
    width: 16px;
    height: 16px;
    margin-left: auto;
    transition: transform 0.2s;
}
.vs-genre-knop[aria-expanded="true"] .vs-chevron {
    transform: rotate(180deg);
}

/* Genre dropdown panel */
.vs-genre-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    z-index: 100;
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 10px;
    min-width: 220px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.1);
    padding: 8px 0 0 0;
    overflow: hidden;
}
.vs-genre-dropdown.open {
    display: block;
}

.vs-genre-optie {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 16px;
    cursor: pointer;
    font-size: 0.95rem;
    color: #333;
    transition: background 0.15s;
}
.vs-genre-optie:hover {
    background: #fdf0f6;
}
.vs-genre-optie input[type="checkbox"] {
    accent-color: #C81160;
    width: 16px;
    height: 16px;
    cursor: pointer;
    flex-shrink: 0;
}

.vs-genre-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 16px;
    border-top: 1px solid #eee;
    margin-top: 4px;
    gap: 8px;
}
.vs-genre-reset {
    background: none;
    border: none;
    font-size: 0.85rem;
    color: #999;
    cursor: pointer;
    padding: 0;
}
.vs-genre-reset:hover {
    color: #C81160;
}
.vs-genre-toepassen {
    background: #C81160;
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 7px 16px;
    font-size: 0.9rem;
    cursor: pointer;
    font-weight: 600;
    transition: background 0.2s;
}
.vs-genre-toepassen:hover {
    background: #a00e4e;
}

/* Actieve filter tags */
.vs-actieve-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    width: 100%;
}
.vs-filter-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #fdf0f6;
    border: 1px solid #C81160;
    color: #C81160;
    border-radius: 20px;
    padding: 4px 12px;
    font-size: 0.85rem;
}
.vs-filter-tag button {
    background: none;
    border: none;
    color: #C81160;
    cursor: pointer;
    font-size: 0.8rem;
    padding: 0;
    line-height: 1;
}

/* Flatpickr stijl aanpassen */
.vs-flatpickr .flatpickr-day.selected,
.vs-flatpickr .flatpickr-day.selected:hover {
    background: #C81160;
    border-color: #C81160;
}
.vs-flatpickr .flatpickr-day:hover {
    background: #fdf0f6;
}

/* Geen resultaat melding */
.vs-geen-resultaat {
    padding: 20px;
    text-align: center;
    color: #666;
}/* End custom CSS */
/* Start custom CSS for spacer, class: .elementor-element-8614628 *//* Algemeen font */
.voorstellingen-lijst,
.voorstellingen-lijst * {
    font-family: 'Work Sans', sans-serif;
}

/* Kaart */
.voorstellingen-lijst {
    display: flex;
    flex-direction: column;
    gap: 15px;
            font-family: 'Work Sans', sans-serif;
}

.vs-kaart {
    display: flex;
    align-items: stretch;
    gap: 0;
    border-bottom: 1px solid #e0e0e0;
    background: #fff;
    transition: background 0.2s ease;
    min-height: 120px;
}

.vs-kaart:hover {
    background: #f7f7f7;
}

/* Afbeelding links */
.vs-afbeelding {
    width: 180px;
    min-width: 180px;
    overflow: hidden;
    flex-shrink: 0;
}

.vs-afbeelding-inner {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    min-height: 120px;
}

.vs-afbeelding-placeholder {
    background-color: #ddd;
}

/* Inhoud midden */
.vs-inhoud {
    flex: 1;
    padding: 15px 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.vs-datum {
    margin: 0 0 4px 0;
    font-size: 18px;
    font-weight: 600;
    color: #C81161;
    letter-spacing: 0.5px;
}

.vs-titel {
    margin: 0 0 4px 0;
    font-size: 23px;
    font-weight: 700;
    color: #111;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.vs-ondertitel {
    margin: 0 0 8px 0;
    font-size: 18px;
    font-weight: 400;
    color: #444;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.vs-labels {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.vs-label {
    font-size: 16px;
    color: #666;
    font-weight: 400;
}

/* Knop rechts */
.vs-actie {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 8px;
    padding: 15px 20px;
    flex-shrink: 0;
}

.tickets-knop {
    display: inline-block;
    padding: 10px 20px;
    background-color: #C81161;
    color: #fff !important;
    text-decoration: none;
    border-radius: 10px;
    text-transform: uppercase;
    font-family: 'Work Sans', sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.5px;
    transition: transform 0.3s ease;
    white-space: nowrap;
}

.tickets-knop:hover,
.tickets-knop:active,
.tickets-knop:focus {
    background-color: #C81161;
    color: #fff !important;
    transform: scale(1.05);
    text-decoration: none;
}

/* Responsive */
@media (max-width: 600px) {
    .vs-kaart {
        flex-wrap: wrap;
    }
    .vs-afbeelding {
        width: 100%;
        min-width: 100%;
        height: 200px;
    }
    .vs-actie {
        width: 100%;
        padding-top: 0;
        padding-bottom: 15px;
    }
}

.vs-actie a.bekijk-knop,
.vs-actie a.bekijk-knop:hover,
.vs-actie a.bekijk-knop:focus,
.vs-actie a.bekijk-knop:active {
    background-color: #C81161 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    display: block !important;
    padding: 10px 20px !important;
    border-radius: 10px !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    white-space: nowrap !important;
    transition: transform 0.3s ease !important;
    
}
.vs-actie a.bekijk-knop:hover {
    transform: scale(1.05) !important;
}

/* =====================
   FILTER BALK
   ===================== */
.vs-filterbalk {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    background: #f7f7f7;
    border-radius: 10px;
    margin-bottom: 32px;
}

.vs-filter-item {
    position: relative;
}

.vs-filter-input-wrapper {
    display: flex;
    align-items: center;
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 8px;
    padding: 8px 14px;
    gap: 8px;
    cursor: pointer;
    transition: border-color 0.2s;
}
.vs-filter-input-wrapper:focus-within {
    border-color: #C81160;
}

.vs-filter-icon {
    width: 18px;
    height: 18px;
    color: #C81160;
    flex-shrink: 0;
}

.vs-filter-input {
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.95rem;
    cursor: pointer;
    min-width: 160px;
    color: #333;
}
.vs-filter-input::placeholder {
    color: #999;
}

.vs-filter-wis {
    background: none;
    border: none;
    color: #999;
    cursor: pointer;
    font-size: 0.85rem;
    padding: 0 2px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
}
.vs-filter-wis:hover {
    color: #C81160;
}

/* Genre dropdown knop */
.vs-genre-knop {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 0.95rem;
    cursor: pointer;
    color: #333;
    transition: border-color 0.2s;
    min-width: 160px;
}
.vs-genre-knop:hover,
.vs-genre-knop[aria-expanded="true"],
.vs-genre-knop.heeft-selectie {
    border-color: #C81160;
    color: #C81160;
}
.vs-chevron {
    width: 16px;
    height: 16px;
    margin-left: auto;
    transition: transform 0.2s;
}
.vs-genre-knop[aria-expanded="true"] .vs-chevron {
    transform: rotate(180deg);
}

/* Genre dropdown panel */
.vs-genre-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    z-index: 100;
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 10px;
    min-width: 220px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.1);
    padding: 8px 0 0 0;
    overflow: hidden;
}
.vs-genre-dropdown.open {
    display: block;
}

.vs-genre-optie {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 16px;
    cursor: pointer;
    font-size: 0.95rem;
    color: #333;
    transition: background 0.15s;
}
.vs-genre-optie:hover {
    background: #fdf0f6;
}
.vs-genre-optie input[type="checkbox"] {
    accent-color: #C81160;
    width: 16px;
    height: 16px;
    cursor: pointer;
    flex-shrink: 0;
}

.vs-genre-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 16px;
    border-top: 1px solid #eee;
    margin-top: 4px;
    gap: 8px;
}
.vs-genre-reset {
    background: none;
    border: none;
    font-size: 0.85rem;
    color: #999;
    cursor: pointer;
    padding: 0;
}
.vs-genre-reset:hover {
    color: #C81160;
}
.vs-genre-toepassen {
    background: #C81160;
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 7px 16px;
    font-size: 0.9rem;
    cursor: pointer;
    font-weight: 600;
    transition: background 0.2s;
}
.vs-genre-toepassen:hover {
    background: #a00e4e;
}

/* Actieve filter tags */
.vs-actieve-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    width: 100%;
}
.vs-filter-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #fdf0f6;
    border: 1px solid #C81160;
    color: #C81160;
    border-radius: 20px;
    padding: 4px 12px;
    font-size: 0.85rem;
}
.vs-filter-tag button {
    background: none;
    border: none;
    color: #C81160;
    cursor: pointer;
    font-size: 0.8rem;
    padding: 0;
    line-height: 1;
}

/* Flatpickr stijl aanpassen */
.vs-flatpickr .flatpickr-day.selected,
.vs-flatpickr .flatpickr-day.selected:hover {
    background: #C81160;
    border-color: #C81160;
}
.vs-flatpickr .flatpickr-day:hover {
    background: #fdf0f6;
}

/* Geen resultaat melding */
.vs-geen-resultaat {
    padding: 20px;
    text-align: center;
    color: #666;
}/* End custom CSS */