/**
 * ==============================================
 * IMMEDIA JOBS - Styles
 * ==============================================
 */
.jobsearch-loadmore a, .jobsearch-seemore a{
    display:block !important;
}

/**
 * ==============================================
 * Search Form (top part)
 * ==============================================
 */
button#jobsearch-go{
    padding:0;
    width:100%;
    background-color: #252d6c!important;
    color:#fff;
    border:none;

    cursor: pointer;
    font-family: "FS Elliot Web";
    font-size: 12px;
    font-weight: 800;
}
button#jobsearch-go i{
    margin-left: auto;
    margin-right: auto;
}

.jobsearch-searchform{
    padding:15px;
    padding-top:25px;
    padding-bottom:4px;
    /*padding-top:25px;
    padding-bottom:25px;*/
    margin-top:20px;
}

.jobsearch-searchform h1, .jobsearch-searchform h2.searchform-title{
    color:white;
    margin-top:0px;
    font-size: 4.5rem;
    font-weight: lighter;
    margin-bottom: 30px;
}

.jobsearch-lookup-container .column{
    flex:2 !important;

}
.jobsearch-lookup-container .field-column{
    flex:2 !important;
}
.jobsearch-lookup-container .button-column{
    flex:1 !important;
}


.jobsearch-size-mini .jobsearch-searchform h1, .jobsearch-size-mini .jobsearch-searchform h2.searchform-title{
    font-size: 3.5rem;

}

#input-group-search-location{
    border-collapse: collapse;
    overflow: hidden;
}

#input-group-search-location input, #input-group-search-location span{
    background:white;
    border:none;
}

.jobsearch-icon{
    width:24px;
    height:26px;
    max-width: 24px;
    filter: invert(84%) sepia(38%) saturate(5654%) hue-rotate(338deg) brightness(103%) contrast(94%);
}


.jobsearch-lookup-container{
	padding-right:var(--wp--preset--spacing--20);
	padding-left:var(--wp--preset--spacing--20);
	max-width:var(--wp--style--global--content-size);
	margin-right:auto !important;
	margin-left:auto !important;
}

.jobsearch-formfield{
    box-sizing: border-box;
    font-family: "FS Elliot Web";
    color: #3b3b3c !important;
    background-color: #fff !important;
    padding: 20px;
    /*border: solid 1px #3c3c3b;*/
    border:none !important;
    font-weight: 800;
    width:100%;
}
.jobsearch-formfield:focus-visible{
    outline-offset: none !important;
}
.jobsearch-formfield:focus{
    border: none;
    box-shadow: none;
}


#input-group-search-location i{
    font-size: 25px;
}

.jobsearch-searchform button[type=submit]{
    height:55px;
}

.jobsearch-size-mini .jobsearch-searchform h1{
    margin-bottom:30px;
    margin-top:5px;
}


.jobsearch-top-section{
    background:#D2D3E0;
}

body.home .jobsearch-top-section{
    background:transparent;
}

.jobsearch-size-mini .jobsearch-searchform{
    margin-top:0 !important;
}


ul.job_listings{
    border-top:none !important;
}
ul.job_listings li.job_listing{
    border-bottom: none !important;
}
.jobsearch-size-mini a.all-jobs-link{
    background-color: rgba(252, 206, 151, .5) !important;
    margin-top:20px;
    border:none !important; 
    padding:6px !important;
    padding-right:10px !important;
    padding-left:5px !important;
}
.jobsearch-size-mini a.all-jobs-link i{
    display: block;
    margin-right:5px;
    float:left;
}

/**
 * ==============================================
 * Search Form - AUTOCOMPLETE
 * ==============================================
 */
.autocomplete{
    position: relative;
    display: block;
}
.autocomplete input{
    width: 100%;
}

.autocomplete-items {
    position: absolute;
    border: none;
    z-index: 99;
    margin-top:-3px;
    top: 100%;
    left: 0;
    right: 0;
}

.autocomplete-items div {
    padding: 10px;
    cursor: pointer;
    background-color: #fff;
    border-bottom: 1px solid rgb(239, 239, 239);
}
.autocomplete-items div strong{
    color:inherit !important;
}

.autocomplete-items div:hover {
    /* When hovering an item: */
    background-color: #e9e9e9;
}
.autocomplete-active {
    /* When navigating through the items using the arrow keys: */
    background-color: rgb(180,180,180)  !important;
    color: #ffffff;
}

/**
 * ==============================================
 * Popular Searches
 * ==============================================
 */
.jobsearch-popular{
    padding-top:12px;
    padding-left:6px;
}
.jobsearch-popular p{
    margin-bottom:12px;
}

.jobsearch-popular ul{
    margin-left:-6px !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
}
.jobsearch-popular ul li{
    float:left;
    list-style-position: inside;
    list-style-image: none;
    list-style-type: none;
    margin-right:10px;
}
.jobsearch-popular ul a{
    color:white;
    padding-top:5px;
    padding-bottom: 8px;
    padding-left:10px;
    padding-right:10px;

    text-transform: uppercase;
    font-size: 13px !important;
    font-weight:500;

}
.jobsearch-popular ul a:hover,
    .jobsearch-popular ul a:focus,
    .jobsearch-popular ul a:active,
    .jobsearch-popular ul a:visited{
        color:white;
        text-decoration: none;
}

.jobsearch-popular ul a i{
    font-size: 18px;
    vertical-align: middle;
    margin-right:7px;
}

/**
 * ==============================================
 * Results Area
 * ==============================================
 */
.jobsearch-results-section{
    margin-top:30px;
}

/**
 * ==============================================
 * Results - Filters
 * ==============================================
 */
.filter-heading{
    font-size: 22px;
    margin-bottom:12px;
    margin-top:4px;
    font-weight: 400;
    color:white;
    font-family: "FS Elliot Web";
    font-weight: 800;
    text-transform: uppercase;
}


#filter-accordion{
    margin-bottom:5px;
}
#filter-accordion h4.panel-title{
    text-transform: uppercase;
    font-weight: bold;
    font-size: 14px;
}

#filter-accordion .panel{
    border:none;
    background-color: transparent !important;
    border-radius: 0 !important;
    margin-right:-15px;
    margin-left:-15px;
    padding-left:15px;
    padding-right:15px;
}

#filter-accordion .panel-heading{
    background-image: none;
    background-color: transparent !important;
    border:none !important;
    color:white;
    padding-left:0;
    padding-right:0;
}

#filter-accordion .panel-body{
    background-image: none;
    background-color: transparent !important;
    border:none !important;
    padding-top:8px;
    padding-bottom:8px;
    /*padding-right:20px;*/
    color:white;
    padding-left:0;
    padding-right:0;
}

#filter-accordion h4.panel-title a{
    display: block;
}

#filter-accordion h4.panel-title a:hover,
    #filter-accordion h4.panel-title a:active,
    #filter-accordion h4.panel-title a:visited,
    #filter-accordion h4.panel-title a:focus{
        text-decoration: none;
}

#filter-accordion h4.panel-title a span{
    float:right !important;
    font-weight: normal;
    font-size: 26px;
    margin-top:-11px;
}

#filter-accordion ul.jobsearch-filter-selector{
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-bottom:0;
    margin-top: 0;
}

.job-type::before{
    margin-right:0 !important;
}

#filter-accordion ul.jobsearch-filter-selector li{
    list-style-position: inside;
    list-style-image: none;
    list-style-type: none;
    margin-bottom:8px;
    display:block;
    font-size:14px;
}

.panel-group .panel{
    border:none;
    /*box-sizing: none !important;*/
    border-top:1px solid white !important;
}

#filter-accordion ul.jobsearch-filter-selector li a{
    display: block;
    color:white !important;
}

#filter-accordion ul.jobsearch-filter-selector li a:hover,
    #filter-accordion ul.jobsearch-filter-selector li a:active,
    #filter-accordion ul.jobsearch-filter-selector li a:visited,
    #filter-accordion ul.jobsearch-filter-selector li a:focus{
        text-decoration: none;
}

.jobsearch-filters{
    display: block;
    width:100%;
}

#filter-accordion ul.jobsearch-filter-selector li a span{
    float:right;
}


.panel-title a span:after{
    content: '-';
}

.panel-title a.collapsed span:after{
     content: '+';
}

.no-results{
    margin-top:45px;
    margin-bottom:30px;
    text-align: center;
    max-width:70%;
    margin-left:auto;
    margin-right:auto;
    font-size: 20px;
}

/**
 * ==============================================
 * Result Boxes
 * ==============================================
 */

.filter-column.column{
    max-width: 300px;
    background-color: #252D6C;
    color:white;
    padding-bottom:0 !important;
}

.filter-heading{

}

.jobsearch-list{
    margin-top:10px;
}

.jobsearch-item{
    position: relative;
    box-shadow: 0 2px 20px 3px rgb(0 0 0 / 10%);
    background-color: #FFFFFF;
     padding:15px;
    margin-bottom:35px;
}

.jobsearch-item.jobsearch-item-permanent:before,
.jobsearch-item.jobsearch-item-temporary:before{
	top:0;
    position:absolute;
	right:0;
}

.jobsearch-item p.jobsearch-jobtype{
    font-weight: bold;
    margin-bottom:0;
    font-size:14px;
}

.jobsearch-item h3{
    margin-top:8px;
    font-size: 25px;
}

div.jobsearch-info p{
    font-size:15px;
    float:left;
    margin-right:15px;
    margin-bottom:0;
}
div.jobsearch-info p:last-of-type{
    margin-right:0;
}

div.jobsearch-info .jobsearch-info-location{
    text-transform: uppercase;
    font-weight: bold;
}

div.jobsearch-description p{
    font-size:15px;
}

.jobsearch-item a.jobsearch-view{
    display:inline-block;
    padding:8px;
    padding-left:13px;
    padding-right:13px;
    color:white;
    text-transform: uppercase;
    font-size: 13px;
    margin-bottom:15px;
    margin-top:15px;
    font-weight: bold;
}

.jobsearch-item a.jobsearch-view i{
    margin-left:10px;
    transition: .6s;
    transition-timing-function: ease-in-out;
}

.jobsearch-item a.jobsearch-view:hover i{
    transform:translateX(6px);
}

.jobsearch-item a.jobsearch-view:hover,
.jobsearch-item a.jobsearch-view:visited,
.jobsearch-item a.jobsearch-view:focus,
.jobsearch-item a.jobsearch-view:active
{
    text-decoration: none;
}

/**
 * ==============================================
 * Results Area - Results
 * ==============================================
 */
 .jobsearch-list-top h2{
    font-size: 22px;
    margin-bottom:12px;
    margin-top:4px;
    font-weight: 400;
    float:left;
}

.jobsearch-list-top p.result_numbers{
    float:right;
    font-size: 15px;
    margin-top:10px;
    margin-bottom: 0;
}

ul#jobsearch-active-filters{
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-bottom:0;
}

ul#jobsearch-active-filters li{
    list-style-position: inside;
    list-style-image: none;
    list-style-type: none;
    margin-bottom:8px;
    margin-right: 8px;
    display:block;
    font-size:14px;
    float:left;
}

ul#jobsearch-active-filters li a{
    display: block;
    background-color:white;
    border: 1px solid rgba(8, 86, 92,.1);
    padding-top:5px;
    padding-bottom: 8px;
    padding-left:10px;
    padding-right:10px;
    font-size: 13px !important;
    font-weight:500;
}

ul#jobsearch-active-filters li a:hover,
    ul#jobsearch-active-filters li a:active,
    ul#jobsearch-active-filters li a:visited,
    ul#jobsearch-active-filters li a:focus{
        text-decoration: none;
}

ul#jobsearch-active-filters li a i{
    display: block;
    margin-top:3px;
    margin-right:6px;
    font-size: 14px;
    float:left;
    opacity:.8;
}


#input-group-search-location span.select2 {
    border:none !important;
    height:55px;
}

/*
    The following rules ensure the select2 box maintains it's correct width during page resizing (rotation, or window resizing etc).
*/
.select2-container {
    width: 100% !important;
    border-color:transparent !important;
}


/**
 * ==============================================
 * Helper Classes
 * ==============================================
 */
.noleftpadding{
    padding-left: 0 !important;
}
.norightpadding{
    padding-right: 0 !important;
}
.nopadding {
    padding: 0 !important;
}

.shortpadding{
    padding: 7px !important;
}
.shortleftpadding{
    padding-left: 7px !important;
}
.shortrightpadding{
    padding-right: 7px !important;
}

/**
 * ==============================================
 * Dot Flashing
 * ==============================================
 */
.dot-flashing {
    position: relative;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    background-color: #F89C2F;
    color: #F89C2F;
    animation: dotFlashing 1s infinite linear alternate;
    animation-delay: .5s;
    margin-left: auto;
    margin-right: auto;
    margin-top:30px;
    margin-bottom:30px;
}

.dot-flashing::before, .dot-flashing::after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 0;
}

.dot-flashing::before {
    left: -15px;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    background-color: #F89C2F;
    color: #F89C2F;
    animation: dotFlashing 1s infinite alternate;
    animation-delay: 0s;
}
  
.dot-flashing::after {
    left: 15px;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    background-color: #F89C2F;
    color: #F89C2F;
    animation: dotFlashing 1s infinite alternate;
    animation-delay: 1s;
}
  
@keyframes dotFlashing {
    0% {
        background-color: #F89C2F;
    }
    50%,
    100% {
        background-color: #fbc98e;
    }
}

/* SELECT 2 STUFF */
.select2.select2-container.select2-container--searchLocation.select2-container--below{
    width:100% !important; 

}

.select2-container--searchLocation .select2-dropdown--below {
    top: -56px;
    left:-1px !important;
}
.select2-container--searchLocation .select2-dropdown--below .select2-container--focus *{
/*    outline: none !important;
    border:none !important;*/
}

.select2-container--searchLocation .select2-results{
    background-color:white;
    border-bottom: 1px solid rgb(239, 239, 239);
    overflow-y:auto;
    max-height: 200px;
}
  

.select2-container--searchLocation .select2-results .select2-results__option{
    padding: 10px;
    cursor: pointer;
    background-color: #fff;
    border-bottom: 1px solid rgb(239, 239, 239);

    font-family: "FS Elliot Web";
    color: #3b3b3c !important;
    font-size:14px;


}

.select2-container--searchLocation .select2-results .select2-results__option:last-of-type{
    border-bottom:none !important;
}

.select2-container--searchLocation .select2-results .select2-results__option:hover{
    /*background-color: #e9e9e9;*/
}

.select2-container--searchLocation .select2-results .select2-results__option[aria-selected="true"]{
    /*background-color: rgb(180,180,180)  !important;*/
    /*font-weight: bold;    */
}

.select2-container--searchLocation .select2-results .select2-results__option--highlighted{
    /*background-color: #e9e9e9 !important;*/
    /*color: #11575C !important;*/
}

.select-box {
    position:relatove;
    display:block;
}

.select2-container--searchLocation .select2-selection__placeholder, .select2-container--searchLocation .select2-selection--single .select2-selection__rendered{
    color:rgb(102,102,102);
    font-size: 14px;
    margin-top: 10px;
    font-family: "FS Elliot Web" !important;
    color: #757575 !important;
    font-weight: 800 !important;
}

.select2-container--searchLocation .select2-selection--single .select2-selection__rendered{
    color: #3b3b3c !important;
}


.select2-container--searchLocation .select2-selection--single {
    background-color: #fff;
    outline: none !important;
    border: 0;
    height: 36px;
    line-height: 36px;
}

/*.select2-container--searchLocation .select2-selection--single .select2-selection__rendered {
    line-height: 34px;
    margin-top:10px;
}*/
  
.select2-container--searchLocation .select2-selection--single .select2-selection__arrow {
    top: 5px;
    display: none;
}
  
.select2-container--searchLocation .select2-dropdown--below .select2-search--dropdown .select2-search__field{
    border:none !important;
    width:100%;
    height:55px;
    font-size: 16px;
    color:rgb(102,102,102);
    margin-bottom: 0;
    padding-bottom: 0;
    background-color: transparent;
    padding-top:0 !important;
    margin-top:-3px !important;
    margin-left:-1px !important;
}
.select2-container--searchLocation .select2-dropdown--below .select2-search--dropdown .select2-search__field:focus{
    outline: none !important;
    box-shadow: none;
}

.select2-container--searchLocation .select2-selection__clear{
    float:right;
    font-weight: bold;
}

.select2-container--searchLocation.select2-container {
    height: 38px;
    border: solid 1px #ddd;
}
  
.select2-container--searchLocation #custom-select {
    height:38px;
    border: solid 1px #ddd;
}


a.clear-filters{
    color:white !important;
    font-size:14px;
    margin-bottom:10px;
    border:1px solid white;
    padding:5px;
    margin-right:auto;
    margin-left:auto;
    display:block;
    /*max-width:150px;*/
    text-align: center;
    text-transform: uppercase;
}

.jobsearch-loadmore a.loadmore{
    display: block;
    background-color: #252d6c;
    color: white;
    text-align: center;
    width:100%;
    max-width:200px;
    margin-right: auto;
    margin-left: auto;
    text-transform: uppercase;
    font-size: 14px;
    margin-top:10px;
    padding : 10px;
    font-family: "FS Elliot Web";
    font-weight: 800;

}


ul#jobsearch-active-filters{
    padding:13px !important;
}

ul#jobsearch-active-filters li a span.dashicons{
    margin-right:5px !important;
    font-size: 17px !important;

}

@media only screen and (max-width: 991px){

    .jobsearch-titlesearch.jobsearch-formfield{
        margin-bottom: 15px;
    }

    .shortleftpadding{
        padding-left: 15px !important;
    }
    .shortrightpadding{
        padding-right: 15px !important;
    }

    .noleftpadding{
        padding-left: 15px !important;
    }
    .norightpadding{
        padding-right: 15px !important;
    }

    .norightpadding-sm{
        padding-left: 0 !important;
    }

}

@media only screen and (min-width: 600px){
    .jobbox .thejob h3{
        margin-left:0 !important;
    }

    .jobbox .myrow>div{
        padding-top:0 !important;
        padding-bottom:0 !important;
        padding-left:0 !important;
    }


.filter-column{
    padding: 15px !important;

}

}

@media only screen and (max-width: 599px){

    .jobsearch-lookup-container .column{
        flex-direction: row !important;
        flex-basis: 100% !important;
        margin-bottom:15px;
        padding-right:0px;
    }

    #input-group-search-location{
        width:100%;
    }

    .jobsearch-titlesearch.jobsearch-formfield{
        margin-bottom: 0;
        padding-left:10px;
    }


    .jobsearch-results-section{
        margin-top:0px;
    }

    .filter-column.column{
        flex-direction: row !important;
        flex-basis: 100% !important;
        max-width: none;
        padding-right:15px;
        padding: 15px !important;
        padding-bottom:0 !important;
    }

    .jobbox .thejob h3{
        margin-left:0 !important;
        font-size:18px;
    }

    .jobbox .myrow>div{
        padding-top:0 !important;
        padding-bottom:0 !important;
        padding-left:0 !important;
    }

    .jobbox .myrow>div p{

        margin-top:8px;
        margin-bottom:6px;
    }

}