﻿/* Breadcrumbs */
#breadcrumbsinner
{
    margin:0 auto;
    padding:0 16px;
}
#breadcrumbs ul
{
    list-style-type:none;
    margin:0;
    padding:10px 0;
    font-size:14px;
    line-height:18px;
}
#breadcrumbs ul li
{
    display:inline-block;
    margin:0;
    padding:0;
    font-size:11px;
}
#breadcrumbs ul li:not(:last-child)::after
{
    position: relative;
    margin: 0 .75rem;
    opacity: 1;
    content: ">";
    color: #77787b;
    font-weight:700;
}
#breadcrumbs ul li a
{
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 0;
    color: #000;
    text-transform: none;
    display: inline-block;
    text-decoration:none;
}
#breadcrumbs ul li a:hover
{
    text-decoration:underline;
}


.wrapper #subheader #subheadercontainer
{
    position:relative;
    margin:0 auto;
}
.wrapper #subheader #subheadercontainer #subheadertitle
{
    margin-left:20px;
    padding:30px 0 0;
}
.wrapper #subheader #subheadercontainer #subheadertitle h1
{
    font-family: "Milo Black","Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;
    color:#EB0A19;
    margin:0;
    font-size:36px;
    line-height:40px;
}

/* Homepage hero image */
.wrapper.homepage #subheader
{
    margin-bottom:40px;
}
.wrapper.homepage #subheader #subheaderhero
{
    /*background-image: set in CMS.Master*/
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 550px;
    position: relative;
}
.wrapper.homepage #subheader #subheadercontainer #subheadertitle
{
    padding:30px;
    background-color:#fff;
    width:700px;
    position:absolute;
    bottom:0;
    left:0;
}


/* CMS main nav */
#mainwidgets #mainwidgetmenu ul
{
    list-style:none;
    padding:0;
    margin:0;
}
#mainwidgets #mainwidgetmenu ul li:hover
{
    background-color:#f5f5f7;
}
#mainwidgets #mainwidgetmenu ul li a
{
    display: block;
    padding:10px;
    text-decoration:none;
}
#mainwidgets #mainwidgetmenu ul li a::before
{
    display: inline-block;
    content: "\f0da";
    color: #3a3b48;
    font-size: 16px;
    margin-right: 20px;
    font-family: "FontAwesomePro";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}



#mainwidgets .mainwidgetrightbutton
{
    margin:0px;
}

/* Logon widget */
#mainwidgets #mainwidgetlogonbtn
{
    margin-top:0px;
    float:right;
}
#mainwidgets #mainwidgetlogonbtn .cssbutton
{
    margin-right:0px;
}

/* Vacancy Search widget */
#mainwidgets .mainwidgetvacancysearch
{
    padding-bottom:30px;
}
#mainwidgets #mainwidgetvacancysearchbtn
{
    text-align:right;
}
#mainwidgets #mainwidgetvacancysearchbtn .cssbutton
{
    margin-right:0px;
}

/* Latest Vacancies widget */
#mainwidgets #mainwidgetlatestvacancieslist
{
    padding:0;
    margin:12px 0 12px 20px;
    list-style-type:none;
}

/* "Left Nav" image */
#mainwidgets #mainwidgetimage
{
    text-align:center;
}
#mainwidgets #mainwidgetimage img
{
    width:100%;
    vertical-align:text-bottom;
}

/* Job widgets */
#mainwidgets #mainwidgetjobyoutube
{
    float: none;
    clear: both;
    width: 100%;
    position: relative;
    padding-bottom: 56.25%;
    /*padding-top: 25px; Enable this for 4:3 layout*/
    height: 0;
}
#mainwidgets #mainwidgetjobyoutube object,
#mainwidgets #mainwidgetjobyoutube embed
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border:0;
}
#mainwidgets #mainwidgetjobimage
{
    text-align:center;
}
#mainwidgets #mainwidgetjobimage img
{
    width:100%;
    vertical-align:text-bottom;
}


/* Logos */
#logos
{
    margin:0 auto;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:center;
}
#logos img
{
    margin:0 15px 20px;
}


/* RSS Feed  */
.rssfeeditem, .searchwidgetrssfeed
{
    background-image:url(../../../images/rssfeed.gif);
    background-repeat:no-repeat;
    background-position:left center;
    line-height:1.5em;
    padding-left:22px;
}
.searchwidgetrssfeed
{
    background-position:right center;
    line-height:normal;
    padding-left:0;
    padding-right:22px;
}


/* Logon grid */
.logongrid #logongridouter
{
    display: -ms-flexbox;
    display: flex;
    flex-wrap:wrap;
}
.logongrid .logongridpanel
{
    -ms-flex: 1 1 calc(50% - 40px);
    flex: 1 1 calc(50% - 40px);
    margin: 0 0 40px 40px;
    padding: 10px 10px 60px 10px;
    position:relative;
    -webkit-box-shadow: 0 8px 12px 4px rgba(58,59,72,.2);
    -moz-box-shadow: 0 8px 12px 4px rgba(58,59,72,.2);
    box-shadow: 0 8px 12px 4px rgba(58,59,72,.2);
}
.logongrid .logongridpanel:nth-child(2n+1)
{
    margin-left:0;
}
.logongrid .logongridpanel .logongridheader
{
    font-size:1.3em;
    color:#141098;
    margin-bottom:5px;
}
.logongrid .logongridpanel .logongridbuttons
{
    position:absolute;
    bottom:5px;
    right:10px;
}
.logongrid .logongridpanel .logongridbuttons .cssbutton
{
    margin-right:0;
}


/* Vacancy list sort/show */
.vacancylistsortby
{
    display:inline-block;
    margin:5px 20px 0 0;
    white-space:nowrap;
}
.vacancylistshow
{
    display:inline-block;
    margin:5px 20px 0 0;
    white-space:nowrap;
}

/* Vacancy List - in table form */
.vacancylist
{
    width:100%;
    display:table;
}
.vacancylist .vacancylistheader
{
    display:table-row;
    background-color: #606060;
}
.vacancylist .vacancylistrow
{
    display:table-row;
}
.vacancylist .vacancylistrow > div
{
    border-bottom:1px solid #d0d0d0;
}
.vacancylist .vacancylistrow:last-child > div
{
    border-bottom:0;
}
.vacancylist .vacancylistrowalt
{
    background-color:#f8f8f8;
}
.vacancylist .vacancylistheader > div,
.vacancylist .vacancylistsubheader > div,
.vacancylist .vacancylistrow > div
{
    display:table-cell;
    padding:4px;
}
.vacancylist .vacancylistheader > div
{
    color:#fff;
    border-left:1px solid #fff;
}
.vacancylist .vacancylistheader > div:first-child
{
    border-left:0;
}
.vacancylist .vacancylistrow > div span:first-child
{
    display:none;
}
.vacancylist .vacancylistheader > div:nth-child(1),
.vacancylist .vacancylistrow > div:nth-child(1)
{
    width:60%;
}
.vacancylist .vacancylistheader > div:nth-child(2),
.vacancylist .vacancylistrow > div:nth-child(2)
{
    width:25%;
}
.vacancylist .vacancylistheader > div:nth-child(3),
.vacancylist .vacancylistrow > div:nth-child(3)
{
    width:15%;
    min-width:100px;
}
/* The subheader needs to "span" rows, which isn't possible with CSS display rules */
.vacancylist .vacancylistsubheader
{
    display:table;
    background-color:#e0e0e0;
    width:100%;
    margin-top:4px;
}

.vacancyHeader dt
{
    font-weight:700;
    margin: 10px 0 0 0;
}
.vacancyHeader dd
{
    margin:0;
}
.vacancyHeader dd + dd
{
    margin-top:5px;
}

.vacancyDiv
{
    margin:12px 0;
    overflow:hidden;
}
.vacancyEmailFriend
{
    display:inline-block;
    padding-top:5px;
    margin:0 10px 10px 0;
}
.vacancyApply
{
    display:inline-block;
    float:right;
}
.vacancySocial
{
    text-align:right;
    padding:5px 0;
}



.vacancydetailswidgetbutton {
    text-align:right;
}
.vacancydetailswidgetbutton .cssbutton {
    margin:0;
}


/* FAQ */
.faqsearchbutton
{
    text-align:right
}
.faqsearchbutton .cssbutton
{
    margin-right:0;
}


/* Jobs by Email */
.gridtabledark tr:first-child
{
    background-color:#e0e0e0;
}

@media screen and (max-width:1439px)
{
    .wrapper #subheader #subheadercontainer #subheadertitle
    {
        margin-left:15px;
    }
}

@media screen and (max-width:1199px)
{
    .wrapper #subheader #subheadercontainer #subheadertitle
    {
        margin-left:40px;
        margin-right:40px;
    }
    .wrapper.homepage #subheader #subheadercontainer #subheadertitle
    {
        margin-left:15px;
    }
}

@media screen and (max-width:1023px)
{
    .wrapper.homepage #subheader #subheaderhero
    {
        height:350px;
    }
    .wrapper.homepage #subheader #subheadercontainer #subheadertitle
    {
        margin-left:40px;
        width:500px;
    }
}

@media screen and (max-width:639px)
{
    #breadcrumbs
    {
        display:none;
    }

    .wrapper #subheader #subheadercontainer #subheadertitle
    {
        margin-left:20px;
        margin-right:20px;
        text-align:center;
    }
    .wrapper #subheader #subheadercontainer #subheadertitle h1
    {
        font-size:20px;
        line-height:22px;
    }

    .wrapper.homepage #subheader #subheaderhero
    {
        height:225px;
    }
    .wrapper.homepage #subheader #subheadercontainer #subheadertitle
    {
        bottom:-50px;
        width:auto;
        margin-left:20px;
        margin-right:20px;
    }
}



/* Medium - m
    
    
    ain takes up entire width, widgets takeup 50% */
@media screen and (max-width:799px)
{
}

/* Small - main takes up entire width, widgets take up entire width */
@media screen and (max-width:499px)
{
    /* Logon grid */
    .logongrid .logongridpanel
    {
        -ms-flex: 0 1 100%;
        flex: 0 1 100%;
        margin-left:0;
    }

    
    /* Vacancy List - in list form */
    .vacancylist
    {
        width:100%;
        display:block;
    }
    .vacancylist .vacancylistheader
    {
        display:none;
    }
    .vacancylist .vacancylistrow
    {
        display:block;
        border-bottom:1px solid #d0d0d0;
    }
    .vacancylist .vacancylistrow:last-child
    {
        border-bottom:0;
    }
    .vacancylist .vacancylistrowalt
    {
        background-color:#f8f8f8;
    }
    .vacancylist .vacancylistheader > div,
    .vacancylist .vacancylistsubheader > div,
    .vacancylist .vacancylistrow > div
    {
        display:block !important;
        width:auto !important;
        border:0;
    }
    .vacancylist .vacancylistrow > div span:first-child
    {
        display:inline;
        font-style:italic;
        padding-right:5px;
    }
    /* The subheader needs to "span" rows, which isn't possible with CSS display rules */
    .vacancylist .vacancylistsubheader
    {
        display:block;
        margin-top:5px;
        background-color:#e0e0e0;
    }
}