/*============  Search form  =============*/
.js-search
{
    position: relative;
}
.js-search.active .toggle
{
    color: #fff;
    -webkit-border-bottom-right-radius: 0;
    -moz-border-radius-bottomright: 0;
            border-bottom-right-radius: 0;
    -webkit-border-bottom-left-radius: 0;
    -moz-border-radius-bottomleft: 0;
            border-bottom-left-radius: 0;
    background: #737373;
}
.js-search.active .toggle:before
{
    content: '\f002';
}
.js-search.active .search-form
{
    display: block;

    width: 200px;

    border: 4px solid #737373;
}
.js-search.active .search-form .input
{
    padding: 6px 30px 6px 10px;
}
.js-search .toggle
{
    font: 400 18px 'FontAwesome';
    line-height: 40px;

    position: relative;
    z-index: 2;

    display: block;

    width: 40px;
    height: 40px;

    cursor: pointer;
    text-align: center;

    color: #fff;
    -webkit-border-radius: 20px;
       -moz-border-radius: 20px;
            border-radius: 20px;
    background: #00c0ff;
}
.js-search .toggle:hover
{
    color: #fff;
    background: #737373;
}
.js-search .toggle:before
{
    content: '\f002';
}
.js-search .search-form
{
    position: absolute;
    z-index: 1;
    top: 100%;
    right: 0;

    display: none;

    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}
.js-search .search-form .input
{
    font: [object Object],[object Object];
    line-height: 20px;

    position: relative;

    display: block;

    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;

    color: #000;
    background-color: #fff;
}
.js-search .search-form a
{
    font: normal 12px 'FontAwesome';
    line-height: 12px;

    position: absolute;
    top: 50%;
    right: 7px;

    width: 12px;
    height: 12px;
    margin-top: -6px;

    cursor: pointer;
    text-decoration: none;

    color: #737373;
}
.js-search .search-form a:before
{
    content: '\f054';
}
.js-search .search-form a:hover
{
    text-decoration: none;

    color: #ff8503;
}
.js-search .search-form input
{
    font: inherit;
    line-height: inherit;

    display: block;
    overflow: hidden;

    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;

    vertical-align: baseline;

    color: inherit;
    border: none;
    -webkit-border-radius: 0;
       -moz-border-radius: 0;
            border-radius: 0;
    outline: none;
    background-color: transparent;

    -webkit-appearance: none;
}
@media (max-width: 979px)
{
    .js-search .toggle
    {
        display: none !important;
    }
    .js-search .search-form
    {
        position: relative;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;

        display: inline-block;

        width: 50%;

        border: 4px solid #737373;
    }
    .js-search .search-form .input
    {
        padding: 6px 30px 6px 10px;
    }
}
@media (max-width: 767px)
{
    .js-search .search-form
    {
        display: block;

        width: 100%;
    }
}
