/* ==========================================================
   SEARCH COMPONENT
   Version : 2.0
   Mobile First
========================================================== */

.search-wrapper{

    width:100%;
    max-width:760px;
    margin:0 auto;
    position:relative;
    z-index:90;

}

.search-box{

    position:relative;

}

.search-input{

    width:100%;
    height:62px;

    border:none;
    border-radius:50px;

    padding-left:24px;
    padding-right:145px;

    font-size:16px;

    background:#fff;

    transition:
        box-shadow .25s,
        border-color .25s,
        transform .15s;

}

.search-input:focus{

    outline:none;

    box-shadow:
        0 0 0 .25rem rgba(13,202,240,.25),
        0 10px 30px rgba(0,0,0,.08);

}

.search-button{

    position:absolute;

    top:7px;
    right:8px;

    height:48px;

    border-radius:40px;

    padding:0 26px;

    white-space:nowrap;

}


/* ==========================================================
   SEARCH RESULT PANEL
========================================================== */

.search-results{

    position:absolute;
    top:calc(100% + 10px);
    left:0;

    width:100%;

    background:#fff;

    border-radius:18px;

    overflow:hidden;
    overflow-y:auto;

    max-height:420px;

    border:1px solid rgba(0,0,0,.08);

    box-shadow:0 18px 45px rgba(0,0,0,.18);

    z-index:9999;

    animation:searchDropdown .18s ease;
}

.search-results.show{

    display:block;

}


/* ==========================================================
   EACH ITEM
========================================================== */

.search-results a{

    display:block;

    text-decoration:none;

    color:#222;

    border:none;

    padding:14px 18px;

    transition:
        background .15s,
        padding-left .15s;

}

.search-results a:hover{

    background:#f8fbfd;

    padding-left:24px;

}

.search-results .fw-semibold{

    font-size:15px;

}

.search-results small{

    display:block;

    margin-top:2px;

    color:#6c757d;

}


/* ==========================================================
   SCROLLBAR
========================================================== */

.search-results::-webkit-scrollbar{

    width:8px;

}

.search-results::-webkit-scrollbar-thumb{

    background:#d8d8d8;

    border-radius:20px;

}

.search-results::-webkit-scrollbar-thumb:hover{

    background:#bcbcbc;

}


/* ==========================================================
   ANIMATION
========================================================== */

@keyframes searchDropdown{

    from{

        opacity:0;

        transform:translateY(-8px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width:768px){

    .search-wrapper{

        width:100%;

    }

    .search-input{

        height:56px;

        font-size:15px;

        padding-left:18px;

        padding-right:105px;

    }

    .search-button{

        top:6px;

        right:6px;

        height:44px;

        padding:0 18px;

        font-size:14px;

    }

    .search-results{

        max-height:55vh;

        border-radius:16px;

    }

}


/* ==========================================================
   SMALL MOBILE
========================================================== */

@media (max-width:480px){

    .search-input{

        padding-right:90px;

        font-size:14px;

    }

    .search-button{

        padding:0 15px;

        font-size:13px;

    }

}
