/* ==========================================================================
   PROFEAT Map Filters – Custom Filter Header UI
   v1.0.0
   ========================================================================== */

/* ---------- Container ---------- */
.profeat-map-header {
    background: transparent;
    padding: 12px 0 0;
    position: relative;
    z-index: 10;
}

/* ---------- Search Bar ---------- */
.profeat-search-bar {
    position: relative;
    max-width: 480px;
    margin: 0 0 12px;
    padding: 0;
}

.profeat-search-bar .profeat-search-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #888;
    pointer-events: none;
    width: 18px;
    height: 18px;
}

.profeat-search-input {
    width: 100%;
    background: #1e1e1e;
    border: 1px solid #333;
    border-radius: 999px;
    padding: 12px 20px 12px 40px;
    color: #e8e8ec;
    font-size: 14px;
    font-family: inherit;
    outline: none;
    transition: border-color 0.2s;
}

.profeat-search-input::placeholder {
    color: #777;
}

.profeat-search-input:focus {
    border-color: #7031ed;
}

/* ---------- Pill Filters ---------- */
.profeat-pill-filters {
    display: flex;
    gap: 10px;
    padding: 0 16px;
    max-width: 480px;
    margin: 0 0 12px;
}

.profeat-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #1e1e1e;
    border: 1px solid #333;
    border-radius: 999px;
    padding: 8px 18px;
    color: #e8e8ec;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
    white-space: nowrap;
    font-family: inherit;
}

.profeat-pill:hover {
    background: #2a2a2a;
    border-color: #444;
}

.profeat-pill.is-active {
    background: #2a2a2a;
    border-color: #fff;
}

.profeat-pill.has-value {
    background: #7031ed;
    border-color: #7031ed;
    color: #fff;
}

.profeat-pill svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

.profeat-pill-label {
    text-transform: uppercase;
}

.profeat-pill-value {
    font-weight: 400;
    opacity: 0.85;
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.profeat-pill-clear {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    background: rgba(255,255,255,0.2);
    border-radius: 50%;
    font-size: 10px;
    line-height: 1;
    margin-left: 4px;
    cursor: pointer;
}

.profeat-pill-clear:hover {
    background: rgba(255,255,255,0.4);
}

/* ---------- Dropdowns (shared) ---------- */
.profeat-dropdown {
    position: absolute;
    left: 0;
    top: 100%;
    background: #1a1a1a;
    border: 1px solid #333;
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.6);
    z-index: 1000;
    width: 360px;
    max-width: calc(100vw - 32px);
    padding: 16px;
    margin-top: 8px;
    color: #e8e8ec;
}

.profeat-dropdown-search {
    width: 100%;
    background: #2a2a2a;
    border: 1px solid #444;
    border-radius: 999px;
    padding: 10px 16px;
    font-size: 14px;
    color: #e8e8ec;
    outline: none;
    margin-bottom: 12px;
    font-family: inherit;
}

.profeat-dropdown-search::placeholder {
    color: #777;
}

.profeat-dropdown-search:focus {
    border-color: #7031ed;
}

.profeat-dropdown-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #777;
    text-transform: uppercase;
    margin-bottom: 8px;
    padding: 0 4px;
}

/* ---------- City Dropdown ---------- */
.profeat-dropdown--city .profeat-dropdown-list {
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 240px;
    overflow-y: auto;
}

.profeat-dropdown--city .profeat-dropdown-list::-webkit-scrollbar {
    width: 4px;
}

.profeat-dropdown--city .profeat-dropdown-list::-webkit-scrollbar-track {
    background: transparent;
}

.profeat-dropdown--city .profeat-dropdown-list::-webkit-scrollbar-thumb {
    background: #444;
    border-radius: 2px;
}

.profeat-dropdown--city .profeat-dropdown-list li {
    padding: 10px 12px;
    border-radius: 14px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    transition: background 0.15s;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #e8e8ec;
}

.profeat-dropdown--city .profeat-dropdown-list li:hover {
    background: #2a2a2a;
}

.profeat-dropdown--city .profeat-dropdown-list li.is-selected {
    background: rgba(112, 49, 237, 0.2);
    color: #a78bfa;
    font-weight: 600;
}

.profeat-dropdown--city .profeat-dropdown-list li .city-icon {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    color: #666;
}

.profeat-dropdown--city .profeat-dropdown-list li.is-selected .city-icon {
    color: #a78bfa;
}

/* ---------- Date Dropdown ---------- */
.profeat-date-presets {
    display: flex;
    gap: 8px;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

.profeat-date-preset {
    background: #2a2a2a;
    border: 1px solid #444;
    border-radius: 999px;
    padding: 8px 16px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    cursor: pointer;
    color: #e8e8ec;
    transition: background 0.15s, border-color 0.15s;
    font-family: inherit;
}

.profeat-date-preset:hover {
    background: #333;
}

.profeat-date-preset.is-active {
    background: #7031ed;
    border-color: #7031ed;
    color: #fff;
}

.profeat-flatpickr-container {
    margin: 0 -8px;
}

/* Flatpickr overrides aligned with the feat modal dark theme */
.profeat-dropdown--date .flatpickr-calendar {
    box-shadow: 0 8px 24px rgba(0,0,0,0.5) !important;
    border: 1px solid #333 !important;
    background: #1a1a1a !important;
    width: 100% !important;
    font-family: inherit !important;
}

.profeat-dropdown--date .flatpickr-calendar.inline {
    box-shadow: none !important;
    border: none !important;
}

.profeat-dropdown--date .flatpickr-months {
    padding: 0 4px;
}

.profeat-dropdown--date .flatpickr-months .flatpickr-month,
.profeat-dropdown--date .flatpickr-current-month .flatpickr-monthDropdown-months {
    color: #e8e8ec !important;
    fill: #e8e8ec !important;
    background: #1a1a1a !important;
}

.profeat-dropdown--date .flatpickr-current-month {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #e8e8ec !important;
}

.profeat-dropdown--date .flatpickr-current-month input.cur-year {
    color: #e8e8ec !important;
}

.profeat-dropdown--date .flatpickr-months .flatpickr-prev-month,
.profeat-dropdown--date .flatpickr-months .flatpickr-next-month {
    color: #999 !important;
    fill: #999 !important;
}

.profeat-dropdown--date .flatpickr-months .flatpickr-prev-month:hover,
.profeat-dropdown--date .flatpickr-months .flatpickr-next-month:hover {
    color: #7031ed !important;
    fill: #7031ed !important;
}

.profeat-dropdown--date .flatpickr-months .flatpickr-prev-month svg,
.profeat-dropdown--date .flatpickr-months .flatpickr-next-month svg {
    fill: currentColor !important;
}

.profeat-dropdown--date .flatpickr-weekdays {
    background: transparent !important;
}

.profeat-dropdown--date .flatpickr-weekday {
    color: #888 !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    background: transparent !important;
}

.profeat-dropdown--date .flatpickr-day {
    color: #e8e8ec !important;
    border-radius: 8px !important;
    max-width: 36px !important;
    height: 36px !important;
    line-height: 36px !important;
}

.profeat-dropdown--date .flatpickr-day:hover,
.profeat-dropdown--date .flatpickr-day:focus {
    background: #333 !important;
    border-color: #333 !important;
}

.profeat-dropdown--date .flatpickr-day.today {
    border-color: #7031ed !important;
}

.profeat-dropdown--date .flatpickr-day.selected,
.profeat-dropdown--date .flatpickr-day.selected:hover,
.profeat-dropdown--date .flatpickr-day.startRange,
.profeat-dropdown--date .flatpickr-day.endRange {
    background: #7031ed !important;
    border-color: #7031ed !important;
    color: #fff !important;
}

.profeat-dropdown--date .flatpickr-day.inRange {
    background: rgba(112, 49, 237, 0.2) !important;
    border-color: transparent !important;
    box-shadow: -5px 0 0 rgba(112, 49, 237, 0.2), 5px 0 0 rgba(112, 49, 237, 0.2) !important;
}

.profeat-dropdown--date .flatpickr-day.flatpickr-disabled,
.profeat-dropdown--date .flatpickr-day.prevMonthDay,
.profeat-dropdown--date .flatpickr-day.nextMonthDay {
    color: #555 !important;
}

.profeat-dropdown--date .flatpickr-innerContainer {
    border-bottom: none !important;
}

.profeat-dropdown--date .flatpickr-rContainer {
    width: 100%;
}

.profeat-dropdown--date .flatpickr-days {
    width: 100% !important;
}

.profeat-dropdown--date .dayContainer {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
}

/* ---------- Price Dropdown ---------- */
.profeat-price-content {
    padding: 8px 0;
}

.profeat-price-range-wrap {
    position: relative;
    height: 40px;
    display: flex;
    align-items: center;
}

.profeat-price-range {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: 4px;
    background: linear-gradient(to right, #7031ed var(--range-pct, 100%), #333 var(--range-pct, 100%));
    border-radius: 2px;
    outline: none;
    cursor: pointer;
}

.profeat-price-range::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #7031ed;
    cursor: pointer;
    border: 3px solid #1a1a1a;
    box-shadow: 0 1px 4px rgba(0,0,0,0.4);
}

.profeat-price-range::-moz-range-thumb {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #7031ed;
    cursor: pointer;
    border: 3px solid #1a1a1a;
    box-shadow: 0 1px 4px rgba(0,0,0,0.4);
}

.profeat-price-labels {
    display: flex;
    justify-content: space-between;
    margin-top: 8px;
}

.profeat-price-label-left,
.profeat-price-label-right {
    font-size: 12px;
    font-weight: 600;
    color: #666;
    text-transform: uppercase;
}

.profeat-price-label-right {
    color: #7031ed;
}

.profeat-price-display {
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    color: #e8e8ec;
    margin-bottom: 12px;
}

.profeat-price-display .profeat-price-currency {
    font-size: 16px;
    color: #666;
}

/* ---------- Music Banner ---------- */
.profeat-music-banner {
    background: #1e1e1e;
    border-radius: 16px;
    padding: 24px 28px;
    margin: 16px auto 16px;
    max-width: 480px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    overflow: hidden;
    position: relative;
}

.profeat-music-banner-text {
    flex: 1;
    min-width: 0;
}

.profeat-music-banner-text h2 {
    font-size: 18px;
    font-weight: 700;
    color: #e8e8ec;
    margin: 0 0 6px;
    line-height: 1.3;
}

.profeat-music-banner-text p {
    font-size: 13px;
    color: #888;
    margin: 0 0 16px;
}

.profeat-music-banner-buttons {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.profeat-music-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 18px;
    border-radius: 999px;
    border: 1px solid #444;
    background: transparent;
    color: #e8e8ec;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
    font-family: inherit;
}

.profeat-music-btn:hover {
    border-color: #fff;
    background: rgba(255,255,255,0.05);
}

.profeat-music-btn svg {
    width: 18px;
    height: 18px;
}

.profeat-music-btn--spotify:hover {
    border-color: #1DB954;
    color: #1DB954;
}

.profeat-music-btn--apple:hover {
    border-color: #FC3C44;
    color: #FC3C44;
}

.profeat-music-banner-art {
    flex-shrink: 0;
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 64px;
    opacity: 0.3;
}

/* ---------- Hide native TEC search/date bar ---------- */
.tribe-events-pro-map .tribe-events-header__events-bar,
.tribe-events-c-search,
.tribe-events-c-events-bar__search-container {
    /* Hide native TEC search — our custom search replaces it */
}

/* TEC Events Bar: keep visible for view selector, hide search form */
.tribe-events-c-events-bar__search {
    display: none !important;
}

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
    .profeat-map-header {
        padding: 12px 0 0;
    }

    .profeat-search-bar {
        margin-bottom: 12px;
    }

    .profeat-pill-filters {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding-bottom: 4px;
    }

    .profeat-pill-filters::-webkit-scrollbar {
        display: none;
    }

    .profeat-dropdown {
        position: fixed;
        top: auto;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        border-radius: 16px 16px 0 0;
        max-height: 70vh;
        overflow-y: auto;
        padding-bottom: calc(16px + env(safe-area-inset-bottom));
    }

    .profeat-music-banner {
        flex-direction: column;
        text-align: center;
        margin: 12px 16px;
        padding: 20px;
    }

    .profeat-music-banner-buttons {
        justify-content: center;
    }

    .profeat-music-banner-art {
        width: 60px;
        height: 60px;
        font-size: 48px;
    }

    .profeat-music-banner-text h2 {
        font-size: 16px;
    }
}

/* ---------- Dropdown overlay for mobile ---------- */
.profeat-dropdown-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.5);
    z-index: 99;
}

.profeat-dropdown-overlay.is-visible {
    display: block;
}

/* ---------- Filter bar visual tweaks (integrate with existing DICE cards) ---------- */
/* The filter-bar section from TEC/profeat-filter-bar should flow below the header */
.tribe-events .tribe-events-l-container {
    padding-top: 0 !important;
}

/* Fix: map header sits above TEC container, so we need proper spacing */
.profeat-map-header + .tribe-events-l-container,
.profeat-map-header ~ .tribe-events-l-container {
    padding-top: 0;
}

/* ==========================================================================
   FIX: Override BuddyBoss flex grid to stack header + TEC container vertically
   ========================================================================== */
.bb-grid.site-content-grid:has(.profeat-map-header) {
    flex-wrap: wrap;
}

.bb-grid.site-content-grid > .profeat-map-header {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
}

.bb-grid.site-content-grid > .tribe-events-view--map {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Align search bar and pills to the left */
.profeat-search-bar {
    max-width: 480px;
    padding: 0;
}
.profeat-pill-filters {
    max-width: none;
    padding: 0;
}

.profeat-music-banner {
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}

/* Ensure TEC filter bar pills (category DICE cards) display in a row */
.tribe-events-view--map .tribe-filter-bar__filters-slide {
    display: flex !important;
    flex-wrap: wrap;
    gap: 8px;
}

.tribe-events-view--map .tribe-filter-bar__filters-slider-container {
    overflow: visible !important;
}

/* Map should take full available width */
.tribe-events-pro-map {
    width: 100%;
}

/* ==========================================================================
   FIX: Hide TEC native header (redundant with our custom header)
   ========================================================================== */

/* Hide the "Évènements" heading + TEC search bar wrapper */
.tribe-events-view--map .tribe-events-header__top {
    display: none !important;
}

/* Hide TEC header title */
.tribe-events-view--map .tribe-events-header__title {
    display: none !important;
}

/* Reduce spacing between our header and the map content */
.profeat-map-header {
    padding-bottom: 0;
}

/* Tighten filter bar section (category pills area) */
.tribe-events-view--map .tribe-filter-bar {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 12px !important;
}

/* Make map taller */
.tribe-events-pro-map .tribe-events-pro-map__map {
    min-height: 600px;
}

/* Remove extra top padding from TEC container */
.tribe-events-view--map .tribe-events-l-container {
    padding-top: 0 !important;
}

.tribe-events-view--map .tribe-events-c-events-bar {
    display: none !important;
}

/* Show the header container but hide its title row */
.tribe-events-view--map .tribe-events-header {
    display: block !important;
}

/* Hide the TEC title "Évènements" and subtitle */
.tribe-events-view--map .tribe-events-header .tribe-events-header__title-wrapper,
.tribe-events-view--map .tribe-events-header .tribe-events-header__title,
.tribe-events-view--map .tribe-events-header > h1,
.tribe-events-view--map .tribe-events-header > h2:not(.tribe-filter-bar__form-heading) {
    display: none !important;
}

/* Hide the TEC "Évènements" title section completely */
.tribe-events-view--map .tribe-events-header__content-title {
    display: none !important;
}

/* Hide TEC events bar search section */
.tribe-events-view--map .tribe-events-header__events-bar {
    display: none !important;
}

/* Reduce gap between our header and filter bar / map */
.tribe-events-view--map .tribe-events-l-container > .tribe-events-header {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Tighten the filter bar wrapper */
.tribe-events-view--map .tribe-filter-bar {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Remove excess space above map row */
.tribe-events-view--map .tribe-events-pro-map {
    margin-top: 0 !important;
}

/* ==========================================================================
   FIX: Banner inside TEC container needs higher specificity
   ========================================================================== */
.tribe-events-l-container .profeat-music-banner {
    background: #1e1e1e;
    border-radius: 16px;
    padding: 24px 28px;
    margin: 12px 0 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    overflow: hidden;
    position: relative;
}

.tribe-events-l-container .profeat-music-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 18px;
    border-radius: 999px;
    border: 1px solid #444;
    background: transparent;
    color: #e8e8ec;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    cursor: pointer;
    font-family: inherit;
}

.tribe-events-l-container .profeat-music-btn svg {
    width: 18px;
    height: 18px;
}

.tribe-events-l-container .profeat-music-banner-text h2 {
    font-size: 18px;
    font-weight: 700;
    color: #e8e8ec;
    margin: 0 0 6px;
    line-height: 1.3;
}

.tribe-events-l-container .profeat-music-banner-text p {
    font-size: 13px;
    color: #888;
    margin: 0 0 16px;
}

/* ==========================================================================
   PROFEAT Map Layout Refresh
   Normalize the top rail, category row, banner, and map onto one spacing system.
   ========================================================================== */

.profeat-map-header,
.tribe-events-view--map {
    --profeat-map-shell-max: 1320px;
    --profeat-map-shell-gutter: 24px;
    --profeat-map-rail-width: 456px;
    --profeat-map-section-gap: 24px;
    --profeat-map-stack-gap: 16px;
}

body.profeat-gb-preview--concept .profeat-map-header,
body.profeat-gb-preview--concept .tribe-events-view--map {
    --profeat-map-shell-max: 1180px;
}

.bb-grid.site-content-grid:has(.profeat-map-header) {
    row-gap: 0 !important;
}

.bb-grid.site-content-grid > .profeat-map-header,
.bb-grid.site-content-grid > .tribe-events-view--map {
    width: 100% !important;
}

.profeat-map-header {
    width: min(var(--profeat-map-shell-max), calc(100vw - (var(--profeat-map-shell-gutter) * 2)));
    max-width: none;
    margin: 0 auto var(--profeat-map-section-gap);
    padding: 22px 0 0;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    column-gap: 12px;
    row-gap: var(--profeat-map-stack-gap);
    z-index: 60;
    isolation: isolate;
}

body.profeat-gb-preview--concept .tribe-events-view--map {
    width: min(var(--profeat-map-shell-max), calc(100vw - (var(--profeat-map-shell-gutter) * 2))) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.profeat-search-bar,
.profeat-pill-filters {
    margin: 0;
    padding: 0;
}

.profeat-search-bar {
    order: 2;
    flex: 0 0 min(100%, var(--profeat-map-rail-width));
    width: min(100%, var(--profeat-map-rail-width));
    max-width: none;
    margin-left: 0;
}

.profeat-search-bar .profeat-search-icon {
    left: 18px;
    width: 18px;
    height: 18px;
    color: #8a8a93;
}

.profeat-search-input {
    min-height: 46px;
    padding: 12px 18px 12px 46px;
    background: linear-gradient(180deg, rgba(39, 39, 42, 0.95) 0%, rgba(30, 30, 32, 0.95) 100%);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
    color: #f3f3f5;
    font-size: 15px;
}

.profeat-search-input::placeholder {
    color: #9b9ba3;
}

.profeat-pill-filters {
    order: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    width: auto;
    max-width: min(100%, calc(var(--profeat-map-shell-max) - var(--profeat-map-rail-width) - 48px));
    justify-content: flex-start;
}

.profeat-pill {
    min-height: 44px;
    padding: 0 16px;
    background: linear-gradient(180deg, #252528 0%, #1f1f22 100%);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
    color: #f0f0f2;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.04em;
}

.profeat-pill:hover,
.profeat-pill.is-active,
.profeat-pill.has-value {
    background: #2a2a2e;
    border-color: rgba(255, 255, 255, 0.16);
    color: #fff;
}

.profeat-pill-value {
    opacity: 1;
    font-weight: 600;
}

.profeat-pill-clear {
    width: 18px;
    height: 18px;
    margin-left: 2px;
    background: rgba(255, 255, 255, 0.12);
}

.profeat-pill-clear:hover {
    background: rgba(255, 255, 255, 0.2);
}

.profeat-dropdown {
    width: 320px;
    max-width: min(320px, calc(100vw - 32px));
    padding: 18px;
    margin-top: 10px;
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.45);
    z-index: 120;
}

.profeat-dropdown-search {
    min-height: 44px;
    padding: 0 16px;
    margin-bottom: 14px;
    background: #252528;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.profeat-dropdown-label {
    margin-bottom: 10px;
    padding: 0 2px;
    color: #8f8f98;
    letter-spacing: 0.12em;
}

.profeat-dropdown--city .profeat-dropdown-list li {
    padding: 12px;
    border-radius: 10px;
}

.profeat-date-presets {
    gap: 10px;
    margin-bottom: 18px;
}

.profeat-date-preset {
    min-height: 38px;
    padding: 0 14px;
    background: #252528;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.profeat-price-content {
    padding: 4px 0 0;
}

.profeat-price-display {
    font-size: 20px;
    margin-bottom: 16px;
}

.tribe-events-view--map .tribe-events-l-container {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.tribe-events-view--map .tribe-filter-bar,
.tribe-events-view--map .profeat-music-banner,
.tribe-events-view--map .tribe-events-pro-map {
    width: 100%;
    max-width: none;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
}

.tribe-events-view--map {
    padding-top: 0 !important;
}

.tribe-events-view--map .tribe-filter-bar {
    padding: 0 !important;
    margin-top: 0 !important;
    margin-bottom: var(--profeat-map-section-gap) !important;
}

.tribe-events-view--map .tribe-filter-bar__form {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}

.tribe-events-view--map .tribe-filter-bar__filters-slider-container {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    padding: 0 !important;
}

.tribe-events-view--map .tribe-filter-bar__filters-slider-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 14px 12px !important;
    transform: none !important;
}

.tribe-events-view--map .tribe-filter-bar__filters-slider-nav {
    display: none !important;
}

.tribe-events-view--map .tribe-filter-bar__filters-slide {
    display: block !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.tribe-events-view--map .profeat-music-banner {
    margin-top: 0 !important;
    margin-bottom: var(--profeat-map-section-gap) !important;
    padding: 28px 32px;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    background: linear-gradient(90deg, #171719 0%, #1d1d20 100%);
}

.tribe-events-view--map .profeat-music-banner-text h2 {
    font-size: 17px;
    margin-bottom: 8px;
}

.tribe-events-view--map .profeat-music-banner-text p {
    margin-bottom: 14px;
    color: #9a9aa1;
}

.tribe-events-view--map .profeat-music-banner-art {
    width: 72px;
    height: 72px;
    font-size: 44px;
    opacity: 0.22;
}

.tribe-events-view--map .tribe-events-pro-map {
    margin-top: 0 !important;
    margin-bottom: var(--profeat-map-section-gap) !important;
    overflow: hidden;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    background: #141416;
}

body.page-id-4516 .tribe-events-view--map .tribe-events-l-container {
    padding-bottom: 40px !important;
}

body.page-id-4516 .elementor-element.elementor-element-61db6fc {
    min-height: auto !important;
    padding-top: 56px !important;
    padding-bottom: 128px !important;
}

body.page-id-4516 .elementor-element.elementor-element-d1a4989,
body.page-id-4516 .elementor-element.elementor-element-310fe6b,
body.page-id-4516 .elementor-element.elementor-element-41e73db {
    display: none !important;
}

@media (max-width: 768px) {
    body.profeat-concept-tabs-page {
        --profeat-admin-bar-height: 0px;
        --profeat-concept-tabs-shell-height: calc(100svh - var(--profeat-admin-bar-height));
        --profeat-concept-brand-bar-height: calc(57px + env(safe-area-inset-top));
        --profeat-concept-map-frame-height: calc(var(--profeat-concept-tabs-shell-height) - var(--profeat-concept-brand-bar-height));
        --profeat-concept-tabs-nav-height: calc(57px + env(safe-area-inset-bottom));
        --profeat-concept-content-frame-height: calc(var(--profeat-concept-tabs-shell-height) - var(--profeat-concept-brand-bar-height) - var(--profeat-concept-tabs-nav-height));
    }

    body.profeat-concept-tabs-page.admin-bar {
        --profeat-admin-bar-height: 46px;
    }

    .profeat-concept-brand-bar {
        display: none;
        position: fixed;
        top: var(--profeat-admin-bar-height);
        right: 0;
        left: 0;
        z-index: 1005;
        height: var(--profeat-concept-brand-bar-height);
        padding-top: env(safe-area-inset-top);
        box-sizing: border-box;
        background: rgba(0, 0, 0, 0.98);
        border-bottom: 2px solid #7031ed;
    }

    body.profeat-concept-tabs-page.profeat-concept-tabs-ready .profeat-concept-brand-bar {
        display: block;
    }

    .profeat-concept-brand-bar__inner {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        padding: 0 18px;
    }

    .profeat-concept-brand-bar__logo {
        display: block;
        width: min(78vw, 320px);
        max-width: 100%;
        max-height: 32px;
        height: auto;
        object-fit: contain;
    }

    .profeat-concept-tabs-nav {
        display: none;
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1004;
        gap: 0;
        align-items: center;
        justify-content: stretch;
        min-height: var(--profeat-concept-tabs-nav-height);
        box-sizing: border-box;
        padding: 0 0 env(safe-area-inset-bottom);
        border: 0;
        border-radius: 0;
        background: rgba(8, 8, 14, 0.94);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 -18px 36px rgba(0, 0, 0, 0.42);
        backdrop-filter: blur(16px);
        -webkit-backdrop-filter: blur(16px);
    }

    body.profeat-concept-tabs-page.profeat-concept-tabs-ready .profeat-concept-tabs-nav {
        display: flex;
    }

    .profeat-concept-tabs-nav__button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 1 1 0;
        position: relative;
        min-height: 57px;
        padding: 0 18px;
        border: 0;
        border-radius: 0;
        background: transparent;
        color: rgba(255, 255, 255, 0.52);
        -webkit-appearance: none;
        appearance: none;
        -webkit-tap-highlight-color: transparent;
        font-family: "Unbounded", sans-serif;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 0.02em;
        text-transform: uppercase;
        transition: color 0.18s ease;
    }

    .profeat-concept-tabs-nav__button::after {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        height: 3px;
        background: transparent;
        transition: background 0.18s ease;
    }

    .profeat-concept-tabs-nav__button:hover,
    .profeat-concept-tabs-nav__button:focus,
    .profeat-concept-tabs-nav__button:active {
        background: transparent;
        color: rgba(255, 255, 255, 0.52);
    }

    .profeat-concept-tabs-nav__button.is-active {
        color: #ffffff;
    }

    .profeat-concept-tabs-nav__button.is-active:hover,
    .profeat-concept-tabs-nav__button.is-active:focus,
    .profeat-concept-tabs-nav__button.is-active:active {
        background: transparent;
        color: #ffffff;
    }

    .profeat-concept-tabs-nav__button.is-active::after {
        background: #7031ed;
    }

    .profeat-concept-tabs-nav__button:focus-visible {
        outline: 2px solid rgba(255, 255, 255, 0.46);
        outline-offset: 2px;
    }

    body.profeat-concept-tabs-page.profeat-concept-tabs-ready .mobile-bottom-nav {
        display: none !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tabs-ready #masthead {
        display: none !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tabs-ready .site-content {
        padding-top: 0 !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map {
        overflow: hidden !important;
        overscroll-behavior: none;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map footer.elementor-location-footer,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-concept-pre-map,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-concept-post-map {
        display: none !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map #page,
    body.profeat-concept-tabs-page.profeat-concept-tab-map #content,
    body.profeat-concept-tabs-page.profeat-concept-tab-map #content > .container,
    body.profeat-concept-tabs-page.profeat-concept-tab-map #content > .container > .bb-grid,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .bb-grid,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .bb-grid-cell,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .site-main,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .entry-content,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .elementor {
        height: var(--profeat-concept-tabs-shell-height);
        min-height: var(--profeat-concept-tabs-shell-height);
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map #content > .container,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .bb-grid.site-content-grid {
        width: 100vw !important;
        max-width: 100vw !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-concept-map-section {
        display: flex !important;
        flex-direction: column;
        align-items: stretch;
        width: 100vw !important;
        max-width: 100vw !important;
        height: var(--profeat-concept-map-frame-height);
        min-height: var(--profeat-concept-map-frame-height);
        margin-top: var(--profeat-concept-brand-bar-height) !important;
        margin-right: calc(50% - 50vw) !important;
        margin-left: calc(50% - 50vw) !important;
        padding: 0 !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-concept-map-section .elementor-widget-spacer {
        display: none !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-concept-map-section .elementor-widget-shortcode,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-concept-map-section .elementor-widget-container,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-concept-map-section .elementor-shortcode,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-concept-map-section .tribe-events-view--map,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-concept-map-section .tribe-events-l-container,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-concept-map-section .tribe-events-pro-map {
        box-sizing: border-box;
        display: flex !important;
        flex: 1 1 auto;
        flex-direction: column;
        min-height: 0;
        height: 100%;
        width: 100%;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-concept-map-section .elementor-shortcode {
        position: relative;
        min-height: 100%;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-map-header {
        position: absolute;
        inset: 0 0 auto 0;
        z-index: 30;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 18px 16px 0;
        pointer-events: none;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-search-bar,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-mobile-actions {
        width: calc(100vw - 32px);
        max-width: none;
        margin-right: auto !important;
        margin-left: auto !important;
        pointer-events: auto;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-search-bar {
        margin-bottom: 12px !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-map-header .profeat-pill-filters,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-map-header button,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-map-header input,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-map-header .profeat-dropdown,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .profeat-map-header .profeat-dropdown-overlay {
        pointer-events: auto;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .tribe-events-view--map {
        position: relative;
        min-height: 0;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .tribe-events-view--map .tribe-events-l-container {
        min-height: 0;
        padding-bottom: var(--profeat-concept-tabs-nav-height) !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .tribe-events-view--map .tribe-events-header {
        display: none !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .tribe-events-pro .tribe-events-pro-map__map,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .tribe-events-pro-map .tribe-events-pro-map__map {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        height: 100% !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-map .tribe-events-pro-map__map-container,
    body.profeat-concept-tabs-page.profeat-concept-tab-map .tribe-events-pro-map__google-maps-premium {
        height: 100% !important;
        border-radius: 0 !important;
        touch-action: none !important;
        overscroll-behavior: contain;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-concept .profeat-concept-map-section {
        display: none !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-concept #page {
        padding-top: var(--profeat-concept-brand-bar-height);
        padding-bottom: var(--profeat-concept-tabs-nav-height);
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-concept .profeat-concept-hero-section {
        display: flex !important;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        width: 100vw !important;
        max-width: 100vw !important;
        min-height: var(--profeat-concept-content-frame-height);
        margin-right: calc(50% - 50vw) !important;
        margin-left: calc(50% - 50vw) !important;
        padding: 0 !important;
        overflow: hidden;
        background: #000;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-concept .profeat-concept-hero-section > .elementor-element-d7b3b49 {
        display: none !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-concept .profeat-concept-hero-video-widget {
        flex: 0 0 auto;
        width: 100vw !important;
        max-width: 100vw !important;
        height: var(--profeat-concept-content-frame-height);
        min-height: var(--profeat-concept-content-frame-height);
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden;
        background: #000;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-concept .profeat-concept-hero-video-widget .elementor-widget-container,
    body.profeat-concept-tabs-page.profeat-concept-tab-concept .profeat-concept-hero-video-widget .elementor-wrapper {
        width: 100%;
        height: 100%;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-concept .profeat-concept-hero-video-widget video.elementor-video,
    body.profeat-concept-tabs-page.profeat-concept-tab-concept .profeat-concept-hero-video-widget iframe {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        background: #000;
    }

    body.profeat-concept-tabs-page.profeat-concept-tab-concept .profeat-concept-hero-section > .elementor-widget:not(.profeat-concept-hero-video-widget) {
        width: min(100%, calc(100vw - 32px));
        max-width: calc(100vw - 32px);
        margin-right: auto !important;
        margin-left: auto !important;
        box-sizing: border-box;
    }

    body.profeat-events-shortcode-route {
        --profeat-admin-bar-height: 0px;
        --profeat-mobile-site-header: 0px;
        --profeat-mobile-map-bottom-nav: calc(76px + env(safe-area-inset-bottom));
    }

    body.profeat-events-shortcode-route.admin-bar {
        --profeat-admin-bar-height: 46px;
    }

    body.profeat-events-shortcode-route #masthead,
    body.profeat-events-shortcode-route .elementor-element.elementor-element-e9b1ff5,
    body.profeat-events-shortcode-route .elementor-element.elementor-element-61db6fc,
    body.profeat-events-shortcode-route .elementor-element.elementor-element-013e757,
    body.profeat-events-shortcode-route footer.elementor-location-footer {
        display: none !important;
    }

    body.profeat-events-shortcode-route #page,
    body.profeat-events-shortcode-route #content,
    body.profeat-events-shortcode-route #content > .container,
    body.profeat-events-shortcode-route .bb-grid,
    body.profeat-events-shortcode-route .bb-grid-cell,
    body.profeat-events-shortcode-route .site-main,
    body.profeat-events-shortcode-route .entry-content,
    body.profeat-events-shortcode-route .elementor {
        margin: 0 !important;
        padding: 0 !important;
    }

    body.profeat-events-shortcode-route #content > .container,
    body.profeat-events-shortcode-route .bb-grid.site-content-grid {
        width: 100vw !important;
        max-width: 100vw !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.profeat-events-shortcode-route .elementor-element.elementor-element-781fc9a {
        width: 100vw !important;
        max-width: 100vw !important;
        margin-right: calc(50% - 50vw) !important;
        margin-left: calc(50% - 50vw) !important;
        padding: 0 !important;
        min-height: calc(100svh - var(--profeat-admin-bar-height) - var(--profeat-mobile-site-header));
        display: flex !important;
        align-items: stretch;
    }

    body.profeat-events-shortcode-route .elementor-element.elementor-element-dee81b6,
    body.profeat-events-shortcode-route .elementor-element.elementor-element-dee81b6 .elementor-widget-container,
    body.profeat-events-shortcode-route .elementor-element.elementor-element-dee81b6 .elementor-shortcode {
        display: flex !important;
        flex: 1 1 auto;
        flex-direction: column;
        width: 100%;
        min-height: 100%;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.profeat-events-shortcode-route .profeat-map-header {
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 16px 16px 0;
    }

body.profeat-events-shortcode-route .profeat-search-bar,
body.profeat-events-shortcode-route .profeat-mobile-actions,
body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-header {
    width: calc(100vw - 32px);
    max-width: none;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.profeat-events-shortcode-route .profeat-map-header .profeat-pill-filters,
body.profeat-events-shortcode-route .profeat-map-header .profeat-dropdown--city,
body.profeat-events-shortcode-route .profeat-map-header .profeat-dropdown--date,
body.profeat-events-shortcode-route .profeat-map-header .profeat-dropdown--price,
body.profeat-events-shortcode-route .profeat-map-header .profeat-dropdown-overlay,
body.profeat-concept-tabs-page .profeat-map-header .profeat-pill-filters,
body.profeat-concept-tabs-page .profeat-map-header .profeat-dropdown--city,
body.profeat-concept-tabs-page .profeat-map-header .profeat-dropdown--date,
body.profeat-concept-tabs-page .profeat-map-header .profeat-dropdown--price,
body.profeat-concept-tabs-page .profeat-map-header .profeat-dropdown-overlay,
body.profeat-events-shortcode-route .profeat-mobile-actions {
    display: none !important;
}

body.profeat-concept-tabs-page .profeat-mobile-actions {
    display: none !important;
}

body.profeat-events-shortcode-route .tribe-events-view--map {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
        min-height: 0;
        width: 100%;
        padding: 0 !important;
    }

    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-l-container {
        display: flex;
        flex: 1 1 auto;
        flex-direction: column;
        min-height: 0;
        padding: 0 0 var(--profeat-mobile-map-bottom-nav) !important;
    }

    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map {
        display: flex !important;
        flex: 1 1 auto;
        flex-direction: column;
        min-height: 0;
        width: 100% !important;
        margin: 0 !important;
    }

    body.profeat-events-shortcode-route .tribe-events-pro .tribe-events-pro-map__map,
    body.profeat-events-shortcode-route .tribe-events-pro-map .tribe-events-pro-map__map {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        height: auto !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    body.profeat-events-shortcode-route .tribe-events-pro-map__map-container,
    body.profeat-events-shortcode-route .tribe-events-pro-map__google-maps-premium {
        height: 100% !important;
        border-radius: 0 !important;
    }

    .profeat-map-header,
    .tribe-events-view--map {
        --profeat-map-shell-max: 100vw;
        --profeat-map-shell-gutter: 16px;
        --profeat-map-rail-width: 100%;
        --profeat-map-section-gap: 20px;
        --profeat-map-stack-gap: 14px;
    }

    .profeat-map-header {
        margin-bottom: 20px;
        padding-top: 16px;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-start;
    }

    .profeat-search-input {
        font-size: 13.5px;
    }

    .profeat-search-bar {
        order: 1;
        flex: 0 0 auto;
        width: 100%;
        margin-left: 0;
    }

    .profeat-pill-filters {
        order: 2;
        flex-wrap: nowrap;
        gap: 10px;
        width: 100%;
        max-width: none;
    }

    .profeat-pill {
        padding: 0 14px;
    }

    .profeat-dropdown {
        width: 100%;
        max-width: 100%;
        border-radius: 18px 18px 0 0;
    }

    .tribe-events-view--map .profeat-music-banner {
        padding: 22px 20px;
        border-radius: 18px;
    }

    .tribe-events-view--map .tribe-events-pro-map {
        border-radius: 18px;
    }
}

/* ==========================================================================
   Mobile Map First Pass
   Push the map toward a TooGoodToGo-style screen on small screens:
   compact top rail, segmented view switch, and a map-first layout.
   ========================================================================== */

.profeat-mobile-actions {
    display: none;
}

@media (max-width: 768px) {
    .profeat-map-header {
        width: calc(100vw - 32px);
        margin: 0 auto 12px;
        padding-top: 14px;
        column-gap: 12px;
        row-gap: 12px;
        align-items: center;
    }

    .profeat-search-bar {
        order: 1;
        flex: 1 1 auto;
        width: auto;
    }

    .profeat-search-bar .profeat-search-icon {
        left: 16px;
        color: #7b8f93;
    }

    .profeat-search-input {
        min-height: 52px;
        padding: 0 18px 0 44px;
        border-radius: 16px;
        border: 1px solid rgba(17, 73, 77, 0.12);
        background: rgba(248, 250, 247, 0.96);
        box-shadow: 0 18px 38px rgba(6, 28, 29, 0.12);
        color: #173235;
        font-size: 16px;
    }

    .profeat-search-input::placeholder {
        color: #728386;
    }

    .profeat-mobile-actions {
        order: 2;
        display: flex;
        gap: 10px;
        flex: 0 0 auto;
    }

    .profeat-mobile-action {
        width: 52px;
        height: 52px;
        border: 1px solid rgba(17, 73, 77, 0.12);
        border-radius: 16px;
        background: rgba(248, 250, 247, 0.96);
        color: #0e6468;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 18px 38px rgba(6, 28, 29, 0.12);
        transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
    }

    .profeat-mobile-action svg {
        width: 22px;
        height: 22px;
    }

    .profeat-mobile-action:active,
    .profeat-mobile-action[aria-expanded="true"] {
        background: #e7f4f2;
        box-shadow: 0 12px 28px rgba(6, 28, 29, 0.14);
        transform: translateY(1px);
    }

    .profeat-pill-filters {
        order: 3;
        display: none;
        width: 100%;
        padding: 14px;
        gap: 10px;
        border-radius: 24px;
        background: rgba(248, 250, 247, 0.96);
        box-shadow: 0 18px 44px rgba(6, 28, 29, 0.16);
        backdrop-filter: blur(18px);
    }

    .profeat-map-header.is-mobile-filters-open .profeat-pill-filters {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .profeat-pill[data-filter="city"] {
        display: none;
    }

    .profeat-map-header .profeat-pill {
        justify-content: center;
        min-height: 50px;
        padding: 0 14px;
        border-radius: 16px;
        border: 1px solid rgba(17, 73, 77, 0.1);
        background: #ffffff;
        color: #17494d;
        box-shadow: none;
    }

    .profeat-map-header .profeat-pill svg {
        color: currentColor;
    }

    .profeat-map-header .profeat-pill:hover,
    .profeat-map-header .profeat-pill.is-active,
    .profeat-map-header .profeat-pill.has-value {
        background: #e7f4f2;
        border-color: rgba(14, 100, 104, 0.22);
        color: #0e6468;
    }

    .profeat-dropdown-overlay {
        background: rgba(6, 20, 22, 0.34);
        backdrop-filter: blur(2px);
    }

    .profeat-dropdown {
        background: #f7faf8;
        border: 0;
        border-radius: 28px 28px 0 0;
        box-shadow: 0 -24px 60px rgba(6, 20, 22, 0.2);
        color: #173235;
        padding: 24px 20px calc(24px + env(safe-area-inset-bottom));
    }

    .profeat-dropdown-search {
        min-height: 48px;
        background: #ffffff;
        border: 1px solid rgba(17, 73, 77, 0.1);
        color: #173235;
    }

    .profeat-dropdown-search::placeholder,
    .profeat-dropdown-label,
    .profeat-price-label-left {
        color: #7c8c90;
    }

    .profeat-dropdown--city .profeat-dropdown-list li {
        color: #173235;
    }

    .profeat-dropdown--city .profeat-dropdown-list li:hover,
    .profeat-dropdown--city .profeat-dropdown-list li.is-selected {
        background: #e7f4f2;
        color: #0e6468;
    }

    .profeat-date-preset {
        background: #ffffff;
        border: 1px solid rgba(17, 73, 77, 0.1);
        color: #17494d;
    }

    .profeat-date-preset.is-active,
    .profeat-price-label-right {
        color: #0e6468;
    }

    .profeat-date-preset.is-active {
        background: #dff1ef;
        border-color: rgba(14, 100, 104, 0.26);
    }

    .profeat-dropdown--date .flatpickr-calendar,
    .profeat-dropdown--date .flatpickr-months .flatpickr-month,
    .profeat-dropdown--date .flatpickr-current-month .flatpickr-monthDropdown-months {
        background: #f7faf8 !important;
    }

    .profeat-dropdown--date .flatpickr-current-month,
    .profeat-dropdown--date .flatpickr-current-month input.cur-year,
    .profeat-dropdown--date .flatpickr-day,
    .profeat-price-display {
        color: #173235 !important;
    }

    .profeat-dropdown--date .flatpickr-day.selected,
    .profeat-dropdown--date .flatpickr-day.selected:hover,
    .profeat-dropdown--date .flatpickr-day.startRange,
    .profeat-dropdown--date .flatpickr-day.endRange,
    .profeat-price-range::-webkit-slider-thumb,
    .profeat-price-range::-moz-range-thumb {
        background: #0e6468 !important;
        border-color: #f7faf8 !important;
    }

    .profeat-price-range {
        background: linear-gradient(to right, #0e6468 var(--range-pct, 100%), rgba(17, 73, 77, 0.14) var(--range-pct, 100%));
    }

    .tribe-events-view--map .tribe-filter-bar,
    .tribe-events-view--map .profeat-music-banner,
    .tribe-events-view--map .tribe-events-c-subscribe-dropdown__container,
    .tribe-events-view--map .tribe-events-pro-map__event-column,
    .tribe-events-view--map .tribe-events-pro-map__nav {
        display: none !important;
    }

    .tribe-events-view--map .tribe-events-l-container {
        padding: 0 0 calc(96px + env(safe-area-inset-bottom)) !important;
    }

    .tribe-events-view--map .tribe-events-header,
    .tribe-events-view--map .tribe-events-header__events-bar,
    .tribe-events-view--map .tribe-events-c-events-bar {
        display: block !important;
    }

    .tribe-events-view--map .tribe-events-header {
        width: calc(100vw - 32px);
        margin: 0 auto 12px !important;
        padding: 0 !important;
    }

    .tribe-events-view--map .tribe-events-header__content-title,
    .tribe-events-view--map .tribe-events-header__events-bar > h2,
    .tribe-events-view--map .tribe-events-c-events-bar__search-button,
    .tribe-events-view--map .tribe-events-c-events-bar__search-container,
    .tribe-events-view--map .tribe-events-c-events-bar__filter-button-container {
        display: none !important;
    }

    .tribe-events-view--map .tribe-events-header__events-bar,
    .tribe-events-view--map .tribe-events-c-events-bar {
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .tribe-events-view--map .tribe-events-c-events-bar__views {
        display: block !important;
        margin: 0 !important;
    }

    .tribe-events-view--map .tribe-events-c-view-selector {
        display: flex;
        align-items: stretch;
        padding: 4px;
        border-radius: 18px;
        background: rgba(248, 250, 247, 0.96);
        box-shadow: 0 18px 38px rgba(6, 28, 29, 0.12);
    }

    .tribe-events-view--map .tribe-events-c-view-selector__button {
        order: 2;
        flex: 1 1 50%;
        min-height: 52px;
        margin: 0 !important;
        border-radius: 14px;
        background: #0e6468;
        color: #ffffff;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0;
    }

    .tribe-events-view--map .tribe-events-c-view-selector__button-text {
        position: static !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        overflow: visible !important;
        clip: auto !important;
        clip-path: none !important;
        white-space: normal !important;
        color: inherit !important;
        font-size: 16px;
        font-weight: 700;
    }

    .tribe-events-view--map .tribe-events-c-view-selector__button-icon,
    .tribe-events-view--map .tribe-events-c-view-selector__button-icon-caret-svg,
    .tribe-events-view--map .tribe-events-c-view-selector__list-item-icon {
        display: none !important;
    }

    .tribe-events-view--map .tribe-events-c-view-selector__content {
        order: 1;
        position: static !important;
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        pointer-events: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        flex: 1 1 50%;
        min-width: 0;
    }

    .tribe-events-view--map .tribe-events-c-view-selector__list {
        display: flex;
        height: 100%;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .tribe-events-view--map .tribe-events-c-view-selector__list-item--map,
    .tribe-events-view--map .tribe-events-c-view-selector__list-item--month,
    .tribe-events-view--map .tribe-events-c-view-selector__list-item--day,
    .tribe-events-view--map .tribe-events-c-view-selector__list-item--photo {
        display: none !important;
    }

    .tribe-events-view--map .tribe-events-c-view-selector__list-item--list {
        display: flex !important;
        flex: 1 1 auto;
        min-width: 0;
    }

    .tribe-events-view--map .tribe-events-c-view-selector__list-item-link {
        flex: 1 1 auto;
        min-height: 52px;
        border-radius: 14px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: transparent;
        color: #184f52;
        font-size: 16px;
        font-weight: 700;
        text-decoration: none;
    }

    .tribe-events-view--map .tribe-events-pro-map {
        width: 100% !important;
        margin: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        overflow: visible !important;
        display: block !important;
    }

    .tribe-events-pro .tribe-events-pro-map__map,
    .tribe-events-pro-map .tribe-events-pro-map__map {
        width: 100% !important;
        flex: none !important;
        min-height: 520px !important;
        height: clamp(520px, calc(100vh - 244px), 760px) !important;
        border-radius: 28px 28px 0 0;
        box-shadow: 0 26px 52px rgba(6, 28, 29, 0.14);
        overflow: hidden;
    }

    .tribe-events-pro-map__map-container,
    .tribe-events-pro-map__google-maps-premium {
        height: 100% !important;
        border-radius: inherit;
    }

    /* Keep the base Google map visible even if custom marker JS misses init. */
    .tribe-events-pro-map__google-maps-premium {
        opacity: 1 !important;
        visibility: visible !important;
        transition: none !important;
    }

}

/* Temporary production mitigation:
   hide broken custom city/date/price controls on the live map surfaces
   while keeping search + TEC category filters visible. */
body.profeat-events-shortcode-route .profeat-map-header .profeat-pill-filters,
body.profeat-events-shortcode-route .profeat-map-header [data-filter="city"],
body.profeat-events-shortcode-route .profeat-map-header [data-filter="date"],
body.profeat-events-shortcode-route .profeat-map-header [data-filter="price"],
body.profeat-events-shortcode-route .profeat-map-header .profeat-dropdown--city,
body.profeat-events-shortcode-route .profeat-map-header .profeat-dropdown--date,
body.profeat-events-shortcode-route .profeat-map-header .profeat-dropdown--price,
body.profeat-events-shortcode-route .profeat-map-header .profeat-dropdown-overlay,
body.profeat-events-shortcode-route .profeat-mobile-actions,
body.profeat-gb-preview--map .profeat-map-header .profeat-pill-filters,
body.profeat-gb-preview--map .profeat-map-header [data-filter="city"],
body.profeat-gb-preview--map .profeat-map-header [data-filter="date"],
body.profeat-gb-preview--map .profeat-map-header [data-filter="price"],
body.profeat-gb-preview--map .profeat-map-header .profeat-dropdown--city,
body.profeat-gb-preview--map .profeat-map-header .profeat-dropdown--date,
body.profeat-gb-preview--map .profeat-map-header .profeat-dropdown--price,
body.profeat-gb-preview--map .profeat-map-header .profeat-dropdown-overlay,
body.profeat-gb-preview--map .profeat-mobile-actions,
body.profeat-concept-tabs-page .profeat-map-header .profeat-pill-filters,
body.profeat-concept-tabs-page .profeat-map-header [data-filter="city"],
body.profeat-concept-tabs-page .profeat-map-header [data-filter="date"],
body.profeat-concept-tabs-page .profeat-map-header [data-filter="price"],
body.profeat-concept-tabs-page .profeat-map-header .profeat-dropdown--city,
body.profeat-concept-tabs-page .profeat-map-header .profeat-dropdown--date,
body.profeat-concept-tabs-page .profeat-map-header .profeat-dropdown--price,
body.profeat-concept-tabs-page .profeat-map-header .profeat-dropdown-overlay,
body.profeat-concept-tabs-page .profeat-mobile-actions {
    display: none !important;
}

body.profeat-gb-preview--map .profeat-map-header {
    width: min(1400px, calc(100vw - 32px));
    max-width: none;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.profeat-gb-preview--map .profeat-search-bar,
body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-header {
    width: calc(100vw - 32px);
    max-width: none;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.profeat-gb-preview--map .profeat-search-bar {
    width: min(100%, var(--profeat-map-rail-width));
    margin-left: 0 !important;
    margin-right: auto !important;
}

body.profeat-gb-preview--map .tribe-filter-bar__filters-slider-wrapper,
body.profeat-events-shortcode-route .tribe-filter-bar__filters-slider-wrapper,
body.profeat-concept-tabs-page .tribe-filter-bar__filters-slider-wrapper,
body.profeat-gb-preview--map .tribe-filter-bar__filters-slide,
body.profeat-events-shortcode-route .tribe-filter-bar__filters-slide,
body.profeat-concept-tabs-page .tribe-filter-bar__filters-slide,
body.profeat-gb-preview--map .tribe-filter-bar-c-filter,
body.profeat-events-shortcode-route .tribe-filter-bar-c-filter,
body.profeat-concept-tabs-page .tribe-filter-bar-c-filter {
    position: relative !important;
    overflow: visible !important;
}

body.profeat-gb-preview--map .tribe-filter-bar .tribe-filter-bar-c-filter__container,
body.profeat-events-shortcode-route .tribe-filter-bar .tribe-filter-bar-c-filter__container,
body.profeat-concept-tabs-page .tribe-filter-bar .tribe-filter-bar-c-filter__container {
    display: none !important;
    visibility: hidden !important;
    position: absolute !important;
    top: calc(100% + 8px) !important;
    left: 0 !important;
    bottom: auto !important;
    z-index: 120 !important;
}

body.profeat-gb-preview--map .tribe-filter-bar .tribe-filter-bar-c-filter--open .tribe-filter-bar-c-filter__container,
body.profeat-events-shortcode-route .tribe-filter-bar .tribe-filter-bar-c-filter--open .tribe-filter-bar-c-filter__container,
body.profeat-concept-tabs-page .tribe-filter-bar .tribe-filter-bar-c-filter--open .tribe-filter-bar-c-filter__container {
    display: block !important;
    visibility: visible !important;
}

/* Keep the TEC Google map container alive on desktop map shells too.
   The earlier height/reveal block above is currently nested in the mobile media
   section, so re-state the critical rules here without a media condition. */
body.profeat-gb-preview--map .tribe-events-pro-map__map-container,
body.profeat-gb-preview--map .tribe-events-pro-map__google-maps-premium,
body.profeat-events-shortcode-route .tribe-events-pro-map__map-container,
body.profeat-events-shortcode-route .tribe-events-pro-map__google-maps-premium,
body.profeat-concept-tabs-page .tribe-events-pro-map__map-container,
body.profeat-concept-tabs-page .tribe-events-pro-map__google-maps-premium {
    height: 100% !important;
    min-height: 100% !important;
}

body.profeat-gb-preview--map .tribe-events-pro-map__google-maps-premium,
body.profeat-events-shortcode-route .tribe-events-pro-map__google-maps-premium,
body.profeat-concept-tabs-page .tribe-events-pro-map__google-maps-premium {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: none !important;
}

@media (min-width: 1024px) {
    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: stretch;
        overflow: hidden;
        border-radius: 24px;
        background: #151518;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__map,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__map,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__map {
        flex: 0 0 62% !important;
        width: 62% !important;
        min-width: 0;
        min-height: 720px !important;
        height: 720px !important;
        border-radius: 24px 0 0 24px !important;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-column,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-column,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-column {
        display: flex !important;
        flex: 0 0 38% !important;
        flex-direction: column;
        width: 38% !important;
        min-width: 0;
        min-height: 720px !important;
        height: 720px !important;
        overflow: hidden;
        background: #161617;
        border-left: 1px solid rgba(255, 255, 255, 0.08);
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-cards-wrapper,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-cards-wrapper,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-cards-wrapper {
        flex: 1 1 auto;
        min-height: 0;
        overflow-y: auto;
        overflow-x: hidden;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-cards,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-cards,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-cards {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-card-wrapper,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-card-wrapper,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-card-wrapper {
        margin: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-card-button,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-card-button,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-card-button {
        display: block;
        width: 100%;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent !important;
        text-align: left;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-card,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-card,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-card {
        width: 100%;
        padding: 0;
        background: transparent;
        border: 0;
        box-shadow: none;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-row,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-row,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-row {
        display: grid !important;
        grid-template-columns: 78px minmax(0, 1fr);
        align-items: stretch;
        width: 100%;
        min-height: 156px;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-row > *,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-row > *,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-row > * {
        min-width: 0;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-date-tag,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-date-tag,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-date-tag {
        display: flex;
        align-items: flex-start;
        justify-content: center;
        padding: 18px 8px 0 18px;
        background: transparent;
        border: 0;
    }

    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-date-tag,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-date-tag {
        flex: 0 0 78px;
        width: 78px;
        min-width: 78px;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-date-tag-datetime,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-date-tag-datetime,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-date-tag-datetime {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-date-tag-month,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-date-tag-month,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-date-tag-month {
        color: rgba(255, 255, 255, 0.6) !important;
        font-family: var(--pf-font-mono, "Space Mono", monospace);
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-date-tag-daynum,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-date-tag-daynum,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-date-tag-daynum {
        color: #f6f4ff !important;
        font-family: var(--pf-font-display, "Unbounded", sans-serif);
        font-size: 36px;
        font-weight: 700;
        line-height: 0.92;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-wrapper,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-wrapper,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-wrapper {
        padding: 18px 12px 18px 0;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 168px;
        align-items: center;
        column-gap: 12px;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-details,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-details,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-details {
        display: flex;
        flex-direction: column;
        min-width: 0;
        padding-right: 0;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-event-author,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-event-author,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-event-author {
        display: flex;
        align-items: center;
        gap: 8px;
        order: 1;
        margin: 0 0 10px !important;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-event-author img,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-event-author img,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-event-author img {
        width: 32px;
        height: 32px;
        border-radius: 999px;
        flex: 0 0 32px;
        object-fit: cover;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-event-author a,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-event-author a,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-event-author a {
        color: #7b4dff !important;
        font-family: var(--pf-font-body, "Instrument Sans", sans-serif);
        font-size: 15px;
        font-weight: 700;
        line-height: 1.1;
        text-decoration: none;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-datetime-wrapper,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-datetime-wrapper,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-datetime-wrapper {
        order: 2;
        margin: 0 0 8px;
        color: rgba(255, 255, 255, 0.7) !important;
        font-size: 14px;
        font-weight: 500;
        line-height: 1.35;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-title,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-title,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-title {
        order: 3;
        margin: 0 0 8px;
        color: #f6f4ff !important;
        font-family: var(--pf-font-body, "Instrument Sans", sans-serif);
        font-size: 17px;
        font-weight: 700;
        line-height: 1.3;
        text-transform: none;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-venue,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-venue,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-venue {
        order: 4;
        margin: 0;
        color: rgba(255, 255, 255, 0.74) !important;
        font-size: 14px;
        line-height: 1.45;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-venue-title,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-venue-title,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-venue-title {
        color: #f6f4ff !important;
        font-style: italic;
        font-weight: 700;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-actions--spacer,
    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-card-spacer,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-actions--spacer,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-card-spacer,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-actions--spacer,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-card-spacer {
        display: none !important;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-featured-image-wrapper,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-featured-image-wrapper,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-featured-image-wrapper {
        display: flex !important;
        align-items: center;
        justify-content: flex-end;
        width: 168px !important;
        min-width: 168px !important;
        padding: 0 18px 0 0;
        overflow: visible !important;
        visibility: visible !important;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-featured-image-wrapper.tribe-common-a11y-hidden,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-featured-image-wrapper.tribe-common-a11y-hidden,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-featured-image-wrapper.tribe-common-a11y-hidden {
        clip: auto !important;
        clip-path: none !important;
        height: auto !important;
        margin: 0 !important;
        position: static !important;
        width: auto !important;
        white-space: normal !important;
        visibility: visible !important;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__event-featured-image,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__event-featured-image,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__event-featured-image {
        display: block;
        width: 172px;
        min-width: 172px;
        height: 98px;
        border-radius: 14px;
        object-fit: cover;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24);
        visibility: visible !important;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-pro-map__nav,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-pro-map__nav,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-pro-map__nav {
        display: flex !important;
        flex: 0 0 74px;
        align-items: center;
        width: 100%;
        min-height: 74px;
        margin: 0;
        padding: 0 20px;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        background: #161617;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-c-nav__list,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-c-nav__list,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-c-nav__list {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-c-nav__list-item--today,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-c-nav__list-item--today,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-c-nav__list-item--today {
        display: none !important;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-c-nav__prev,
    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-c-nav__next,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-c-nav__prev,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-c-nav__next,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-c-nav__prev,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-c-nav__next {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 0;
        border: 0;
        background: transparent;
        color: rgba(255, 255, 255, 0.7) !important;
        font-size: 14px;
        font-weight: 500;
        text-decoration: none;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-c-nav__prev:hover,
    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-c-nav__next:hover,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-c-nav__prev:hover,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-c-nav__next:hover,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-c-nav__prev:hover,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-c-nav__next:hover {
        color: #ffffff !important;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-c-nav__next[disabled],
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-c-nav__next[disabled],
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-c-nav__next[disabled] {
        opacity: 0.56;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-c-nav__prev-icon-svg,
    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-c-nav__next-icon-svg,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-c-nav__prev-icon-svg,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-c-nav__next-icon-svg,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-c-nav__prev-icon-svg,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-c-nav__next-icon-svg {
        width: 11px;
        height: 11px;
        fill: currentColor;
    }

    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-c-nav__prev-label-plural,
    body.profeat-gb-preview--map .tribe-events-view--map .tribe-events-c-nav__next-label-plural,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-c-nav__prev-label-plural,
    body.profeat-events-shortcode-route .tribe-events-view--map .tribe-events-c-nav__next-label-plural,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-c-nav__prev-label-plural,
    body.profeat-concept-tabs-page .tribe-events-view--map .tribe-events-c-nav__next-label-plural {
        position: static !important;
        width: auto !important;
        height: auto !important;
        margin: 0 4px 0 0 !important;
        overflow: visible !important;
        clip: auto !important;
        clip-path: none !important;
        white-space: normal !important;
    }
}
