@media (max-width: 767px) {
    /* Make the parent column wrap a flex horizontal container */
    .elementor-column[data-id="4dec1a5f"] > .elementor-widget-wrap {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        gap: 12px !important;
        padding-left: calc(4vw) !important;
        padding-right: calc(4vw) !important;
        padding-bottom: 15px !important;
        box-sizing: border-box !important;
    }

    /* Hide horizontal scrollbar for clean UI */
    .elementor-column[data-id="4dec1a5f"] > .elementor-widget-wrap::-webkit-scrollbar {
        display: none !important;
    }
    .elementor-column[data-id="4dec1a5f"] > .elementor-widget-wrap {
        -ms-overflow-style: none !important;
        scrollbar-width: none !important;
    }

    /* Set each inner section (location card) width to 92% and equalize heights */
    .elementor-column[data-id="4dec1a5f"] > .elementor-widget-wrap > .elementor-inner-section {
        flex: 0 0 92% !important;
        width: 92% !important;
        max-width: 92% !important;
        scroll-snap-align: center !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        display: flex !important;
        flex-direction: column !important;
    }

    /* Force direct column elements within inner sections to stretch and fill heights */
    .elementor-column[data-id="4dec1a5f"] > .elementor-widget-wrap > .elementor-inner-section > .elementor-container {
        display: flex !important;
        flex-direction: column !important;
        flex: 1 1 auto !important;
        width: 100% !important;
    }

    .elementor-column[data-id="4dec1a5f"] > .elementor-widget-wrap > .elementor-inner-section > .elementor-container > .elementor-column {
        width: 100% !important;
        flex: 1 1 auto !important;
        display: flex !important;
        flex-direction: column !important;
    }

    .elementor-column[data-id="4dec1a5f"] > .elementor-widget-wrap > .elementor-inner-section > .elementor-container > .elementor-column > .elementor-widget-wrap {
        display: flex !important;
        flex-direction: column !important;
        flex: 1 1 auto !important;
        justify-content: space-between !important; /* Push buttons to the bottom */
    }

    /* Ensure consistent spacers/images at the top/bottom */
    .elementor-column[data-id="4dec1a5f"] .elementor-spacer {
        aspect-ratio: 16/10 !important;
        height: 200px !important;
    }

    /* Push buttons to the very bottom and align them */
    .elementor-column[data-id="4dec1a5f"] > .elementor-widget-wrap > .elementor-inner-section .elementor-button-wrapper {
        margin-top: auto !important;
    }

    /* Dynamic Dots Container */
    .locations-carousel-dots-42a53973 {
        display: flex;
        justify-content: center;
        gap: 8px;
        margin-top: 10px;
        width: 100%;
        padding-bottom: 5px;
    }

    .locations-carousel-dots-42a53973 .dot-42a53973 {
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background-color: #ccc;
        transition: background-color 0.3s ease, transform 0.3s ease;
        border: none;
        padding: 0;
        cursor: pointer;
    }

    .locations-carousel-dots-42a53973 .dot-42a53973.active-42a53973 {
        background-color: #6EC1E4; /* Theme Primary */
        transform: scale(1.2);
    }
}
