section.find-a-retailer-section {
    overflow: visible !important;
    z-index: 100 !important;
    min-height: 100vh !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

section.find-a-retailer-section,
section.find-a-retailer-section [data-pagebuilder="section-container"] {
    padding-left: 0;
    padding-right: 0;
}

section.find-a-retailer-section [data-pagebuilder="section-container"], 
section.find-a-retailer-section [data-pagebuilder="row"], 
section.find-a-retailer-section [data-pagebuilder="column"] {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

section.find-a-retailer-section .retailer-list-box {
    position: sticky !important;
    /* top: calc(100px + 1.25rem) !important; */
    top: 100px !important;
}

section.find-a-retailer-section .retailer-map ul.retailer-list {
    display: block;
    list-style: none;
    margin: 0;
    padding: 1.25rem 0;
    height: auto !important;
    scroll-snap-type: y mandatory;
    z-index: 3 !important;
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item {
    background: var(--bs-light);
    padding: 1.25rem;
    text-align: left;
    scroll-snap-align: start;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item + li.retailer-list-item {
    margin-top: 1.25rem;
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-name,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-address,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-phone,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-distance-away,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-url, 
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-url a {
    color: var(--bs-dark);
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-name,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-address,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-phone,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-distance-away,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-url,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item button {
    display: block;
    margin: 0;
    transition: all 0.3s ease !important;
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item:hover .retailer-url a {
    transition: all 0.3s ease !important;
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-name {
    line-height: 1;
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-address,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-phone,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-distance-away {
    line-height: 1.5;
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-name {
    padding-top: 0.3125rem;
    padding-bottom: 0.3125rem;
    font-weight: 400;
    font-size: 24px !important;
    margin: 0;
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item .retailer-address {
    padding-top: 0.3125rem;
    padding-bottom: 0;
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item button {
    padding: 1.25rem 0 0.625rem 0 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    letter-spacing: 0.05em !important;
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item:hover {
    background: var(--bs-dark);
}

section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item:hover .retailer-name,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item:hover .retailer-address,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item:hover .retailer-phone,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item:hover .retailer-distance-away,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item:hover .retailer-url,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item:hover .retailer-url a,
section.find-a-retailer-section .retailer-map ul.retailer-list li.retailer-list-item:hover button {
    color: var(--bs-light);
    transition: all 0.3s ease !important;
}

section.find-a-retailer-section .retailer-map .retailer-map-container {
    background: var(--bs-default-bg-color);
}

section.find-a-retailer-section .retailer-map-box {
    position: sticky !important;
    top: calc(100px) !important;
    height: calc(100vh - calc(100px)) !important;
    width: 100%;
    z-index: 2 !important;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
}

@media(max-width:767px) {
    section.find-a-retailer-section .retailer-map-box {
        width: calc(100% + 2.5rem) !important;
        margin-left: -1.25rem !important;
        padding: 0 !important
    }
}

section.find-a-retailer-section .retailer-map-box .retailer-map-google-container {
    display: block;
    position: relative;
    height: 100%;
    width: 100%;
}

section.find-a-retailer-section .retailer-map .retailer-map-search {
    background: var(--bs-light);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 1.25rem;
    height: 100px;
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 0 60px 1px rgba(0,0,0,0.1);
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group {
    max-width: 700px;
    margin: 0 auto;
    height: 50px;
    position: relative;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .btn,
section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .form-control {
    height: 50px;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .form-control {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--bs-dark) !important;
    padding-left: 1.75rem;
    padding-right: 1rem;
    color: var(--bs-dark) !important;
    font-weight: bold !important;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .form-control::placeholder {
    color: var(--bs-dark) !important;
    opacity: 0.5 !important;
    font-weight: normal !important;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .form-control:focus {
    box-shadow: none !important;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .form-control:focus::placeholder {
    color: var(--bs-dark) !important;
    opacity: 1 !important;
    font-weight: normal !important;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .dropdown-toggle {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 1rem !important;
    margin-right: 1rem !important;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .dropdown-toggle::after {
    color: var(--bs-secondary) !important;
    font-size: 16px;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .dropdown-toggle:focus {
    box-shadow: none !important;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .dropdown-toggle-label {
    font-size: 13px !important;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .dropdown-toggle:focus .dropdown-toggle-label {
    color: var(--bs-secondary) !important;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .dropdown-toggle.show::after {
    transform: rotate(180deg);
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .dropdown-toggle.show + .dropdown-menu {
    margin-top: 4px !important;
}

section.find-a-retailer-section .retailer-map .retailer-map-search .input-group::before {
    font-family: "fontawesome-light";
    content: "\e926";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1rem;
    color: var(--bs-dark);
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: inherit;
    z-index: 5; 
}

@media(max-width:767px){
    section.find-a-retailer-section .retailer-map .retailer-map-search .input-group {
        flex-wrap: wrap !important;
        margin: -50px auto 0 auto !important;
    }
    section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .form-control {
        width: 100% !important;
    }
    section.find-a-retailer-section .retailer-map .retailer-map-search .input-group .btn-search-retailers {
        flex: 1 !important;
        font-size: 16px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* Google Map Info Window CSS tweaks */
section.find-a-retailer-section .gm-style .gm-style-iw,
section.find-a-retailer-section .google-map-info-window-content {
    font-family: "montserrat" !important;
}

section.find-a-retailer-section .gm-style .gm-style-iw strong,
section.find-a-retailer-section .google-map-info-window-content strong {
    font-weight: 600 !important;
    font-family: "montserrat" !important;
}

section.find-a-retailer-section .gm-style-iw button.gm-ui-hover-effect {
    width: 20px !important;
    height: 20px !important;
    top: -16px !important;
    right: 10px !important;
}

section.find-a-retailer-section .gm-style-iw button.gm-ui-hover-effect > img {
    width: 20px !important;
    height: 20px !important;
}

section.find-a-retailer-section .gm-style-iw {
    padding: 10px !important;
    margin: 0 !important;
}

section.find-a-retailer-section .gm-style-iw-d {
    overflow: visible !important;
    max-height: none !important;
}