.elementor-4772 .elementor-element.elementor-element-233e0e5{margin-top:100px;margin-bottom:100px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-4772 .elementor-element.elementor-element-8068ee6{text-align:center;}.elementor-4772 .elementor-element.elementor-element-8068ee6 .elementor-heading-title{color:#0C0E10;}.elementor-4772 .elementor-element.elementor-element-9b3bc6f{text-align:center;}.elementor-4772 .elementor-element.elementor-element-9b3bc6f .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:500;color:#0C0E10;}.elementor-4772 .elementor-element.elementor-element-6c0203c{text-align:center;}.elementor-4772 .elementor-element.elementor-element-6c0203c .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:400;color:var( --e-global-color-secondary );}/* Start custom CSS for shortcode, class: .elementor-element-20ad121 *//* ============================================================
   MAIN TWO COLUMN LAYOUT (MAP RIGHT, LIST LEFT)
   ============================================================ */
#wpsl-map-list-wrapper {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 30px !important;
    width: 100% !important;
    margin-top: 25px !important;
}

/* ============================================================
   LIST COLUMN — EXACT HEIGHT MATCH TO MAP
   ============================================================ */
#wpsl-result-list {
    width: 30% !important;              /* adjust if needed */
    min-width: 260px !important;
    height: 76vh !important;            /* SAME height as map */
    max-height: 85vh !important;
    display: flex !important;           /* allow children to flex */
    flex-direction: column !important;
    background: #f5f5f5 !important;
    padding: 18px !important;
    border-radius: 6px !important;
    box-sizing: border-box !important;
}

/* The REAL scroll container */
#wpsl-stores {
    flex: 1 1 auto !important;          /* take full remaining height */
    overflow-y: auto !important;        /* scroll internally */
    overflow-x: hidden !important;
    padding-right: 6px !important;
}

/* Remove empty block below list */
#wpsl-direction-details {
    display: none !important;
}

/* ============================================================
   MAP COLUMN — SAME HEIGHT AS LIST
   ============================================================ */
#wpsl-gmap {
    width: 70% !important;
    height: 85vh !important;
    max-height: 85vh !important;
    min-height: 600px !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

#wpsl-gmap iframe,
#wpsl-gmap canvas {
    width: 100% !important;
    height: 100% !important;
}

/* ============================================================
   LIST ITEM STYLING (Padding, spacing, colors)
   ============================================================ */
#wpsl-result-list ul li {
    padding: 18px 20px !important;
    background: #f7f7f7 !important;
    border-bottom: 1px solid #e1e1e1 !important;
    margin: 0 !important;
    border-radius: 4px !important;
}

#wpsl-result-list ul li:nth-child(even) {
    background: #ececec !important;
}

#wpsl-result-list strong,
#wpsl-result-list h4 {
    font-size: 18px !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
    display: block !important;
    color: #000 !important;
}

#wpsl-result-list .wpsl-store-location,
#wpsl-result-list .wpsl-store-location p {
    font-size: 14px !important;
    color: #555 !important;
    margin-bottom: 4px !important;
}

#wpsl-result-list .wpsl-store-distance {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #444 !important;
    margin: 10px 0 !important;
}

#wpsl-result-list .wpsl-directions,
#wpsl-result-list .wpsl-website {
    background: #6d6d6d !important;
    color: #fff !important;
    padding: 9px 20px !important;
    font-size: 13px !important;
    border-radius: 4px !important;
    display: inline-block !important;
    margin-top: 10px !important;
    text-decoration: none !important;
}

#wpsl-result-list .wpsl-directions:hover,
#wpsl-result-list .wpsl-website:hover {
    background: #000 !important;
}








/* ------------------------------------------------------
   MAKE SEARCH BAR A SINGLE HORIZONTAL ROW
------------------------------------------------------- */

/* Main search bar container */
.wpsl-search {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
}

/* Form becomes a horizontal flex line */
#wpsl-search-wrap form {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    gap: 30px !important;  /* spacing between sections */
}

/* Each label + field should NOT be stacked */
.wpsl-input,
.wpsl-select-wrap > div,
.wpsl-search-btn-wrap {
    display: flex !important;
    flex-direction: row !important; /* label + value side-by-side */
    align-items: center !important;
    gap: 10px !important;
    white-space: nowrap !important;
}

/* Prevent WP Store Locator from stacking labels above fields */
.wpsl-input label,
.wpsl-select-wrap label {
    margin-bottom: 0 !important;
}

/* Input field widths */
.wpsl-input input {
    width: 220px !important;
}

/* Dropdown width */
.wpsl-dropdown {
    min-width: 120px !important;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 1100px) {
    #wpsl-map-list-wrapper {
        flex-direction: column !important;
    }
    #wpsl-result-list,
    #wpsl-gmap {
        width: 100% !important;
        height: auto !important;
    }
}/* End custom CSS */