.bibicin-cinema-map-page,
.bibicin-cinema-map-page * {
    box-sizing: border-box;
    color: #fff;
}

.bibicin-gmap-popup {
    color: #000;
}

.bibicin-gmap-popup * {
    color: #000;
}

.bibicin-cinema-map-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.bibicin-cinema-map-page__search {
    display: flex;
    gap: 8px;
}

.bibicin-cinema-map-page__search input[type="text"] {
    flex: 1;
    padding: 10px 12px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.bibicin-cinema-map-page__search button {
    padding: 10px 14px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    cursor: pointer;
}

.bibicin-cinema-map-page__layout {
    display: flex;
    gap: 24px;
    align-items: stretch;
}

.bibicin-cinema-map-page__map {
    flex: 0 0 55%;
    min-width: 420px;
}

.bibicin-cinema-map-page__map .bibicin-cinema-map,
.bibicin-cinema-map-page__map #bibicin-cinema-map,
.bibicin-cinema-map-page__map .leaflet-container {
    width: 100%;
    min-height: 520px;
    height: 520px;
}

.bibicin-cinema-map-page .leaflet-container {
    height: 520px !important;
}

.bibicin-cinema-map-page__results {
    flex: 1;
    min-width: 320px;
}

.bibicin-cinema-card {
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 16px;
    margin-bottom: 16px;
}

.bibicin-cinema-card__divider {
    border: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    margin: 12px 0;
}

.bibicin-cinema-card__programme-link {
    color: #fff;
    text-decoration: underline;
}

.bibicin-cinema-card__programme-link:visited {
    color: #fff;
}

.bibicin-cinema-card__programme-link:hover {
    color: #fff;
    opacity: .85;
}

.elementor-shortcode .bibicin-cinema-map-page {
    width: 100%;
}

@media (max-width: 768px) {
    .bibicin-cinema-map-page__layout {
        flex-direction: column;
    }

    .bibicin-cinema-map-page__map {
        flex: 1 1 auto;
        min-width: 0;
    }

    .bibicin-cinema-map-page__map .bibicin-cinema-map,
    .bibicin-cinema-map-page__map #bibicin-cinema-map,
    .bibicin-cinema-map-page__map .leaflet-container {
        height: 420px;
        min-height: 420px;
    }
}
