/* MAP Search Engine v2.0.0 */

.map-search-enhanced-wrap{
    position:relative!important;
    min-width:0;
}

.map-search-form{
    position:relative!important;
}

.map-search-form input[type="search"]{
    padding-right:54px!important;
}

.map-camera-search{
    position:absolute;
    top:50%;
    right:5px;
    z-index:4;
    width:36px!important;
    height:36px!important;
    padding:0!important;
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    transform:translateY(-50%);
    border:0!important;
    border-radius:50%!important;
    background:#eef4ff!important;
    color:#0b4ba8!important;
    cursor:pointer;
}

.map-camera-search svg{
    width:20px;
    height:20px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
}

.map-camera-search.is-loading{
    opacity:.6;
    cursor:wait;
}

.map-search-suggestions{
    position:absolute;
    top:calc(100% + 6px);
    left:0;
    right:0;
    z-index:100000;
    overflow:hidden;
    border:1px solid #dfe5ee;
    border-radius:10px;
    background:#fff;
    box-shadow:0 18px 45px rgba(8,31,73,.2);
}

.map-search-suggestions[hidden]{
    display:none!important;
}

.map-suggestion-item{
    min-height:60px;
    padding:7px 10px;
    display:grid;
    grid-template-columns:46px minmax(0,1fr) auto;
    align-items:center;
    gap:9px;
    color:#111827;
    text-decoration:none;
    border-bottom:1px solid #edf0f4;
}

.map-suggestion-item:last-child{
    border-bottom:0;
}

.map-suggestion-item:hover,
.map-suggestion-item.is-active{
    background:#f2f7ff;
}

.map-suggestion-image{
    width:46px;
    height:46px;
    border-radius:7px;
    object-fit:contain;
    background:#f5f6f8;
}

.map-suggestion-copy{
    min-width:0;
}

.map-suggestion-copy strong{
    display:block;
    overflow:hidden;
    color:#0a1f4d;
    font-size:12px;
    line-height:1.3;
    white-space:nowrap;
    text-overflow:ellipsis;
}

.map-suggestion-copy small{
    display:block;
    margin-top:3px;
    color:#667085;
    font-size:10px;
}

.map-suggestion-price{
    color:#d91c1c;
    font-size:13px;
    font-weight:900;
    white-space:nowrap;
}

.map-suggestion-empty{
    padding:13px;
    color:#667085;
    font-size:12px;
    text-align:center;
}

.map-live-support{
    position:relative;
    display:inline-flex;
    align-items:center;
}

.map-live-support-button{
    width:52px!important;
    height:52px!important;
    padding:0!important;
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(255,255,255,.35)!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.12)!important;
    color:#fff!important;
    cursor:pointer;
}

.map-live-support-button svg{
    width:26px;
    height:26px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.9;
}

.map-live-support-button:hover,
.map-live-support:focus-within .map-live-support-button{
    background:#fff!important;
    color:#0b4ba8!important;
}

.map-live-support-menu{
    position:absolute;
    top:calc(100% + 8px);
    right:0;
    z-index:100001;
    width:225px;
    padding:9px;
    display:none;
    border-radius:10px;
    background:#fff;
    box-shadow:0 18px 45px rgba(0,0,0,.22);
}

.map-live-support:hover .map-live-support-menu,
.map-live-support:focus-within .map-live-support-menu,
.map-live-support.is-open .map-live-support-menu{
    display:block;
}

.map-live-support-menu strong{
    display:block;
    padding:8px 10px;
    color:#0a1f4d;
    font-size:13px;
}

.map-live-support-menu a{
    min-height:36px;
    padding:7px 10px;
    display:flex;
    align-items:center;
    border-radius:7px;
    color:#344054;
    text-decoration:none;
    font-size:12px;
    font-weight:750;
}

.map-live-support-menu a:hover{
    background:#eef5ff;
    color:#0b4ba8;
}

.map-expert-link,
.map-top-right .map-expert-link{
    display:none!important;
}

@media(max-width:700px){
    .map-search-suggestions{
        position:fixed;
        top:auto;
        left:7px;
        right:7px;
        margin-top:5px;
    }

    .map-live-support-button{
        width:42px!important;
        height:42px!important;
    }

    .map-live-support-menu{
        position:fixed;
        top:88px;
        right:7px;
    }
}


/* v2.0.1 robust header integration */
.map-search-enhanced-wrap{
    width:100%;
}

.map-camera-search{
    background:#ef233c!important;
    color:#fff!important;
    border-radius:8px!important;
}

.map-camera-search:hover{
    background:#d71931!important;
    color:#fff!important;
}

.map-live-support{
    z-index:100005;
}

.map-live-support-menu{
    padding-top:12px;
}

.map-live-support-menu::before{
    content:"";
    position:absolute;
    top:-12px;
    right:0;
    width:70px;
    height:18px;
}

.map-live-support:hover .map-live-support-menu,
.map-live-support.is-open .map-live-support-menu{
    display:block!important;
}

.map-live-support-menu:hover{
    display:block!important;
}

.map-search-suggestions{
    max-height:430px;
    overflow-y:auto;
}

.map-search-suggestions.is-visible{
    display:block!important;
}

.map-search-suggestions[hidden]{
    display:none!important;
}
