/* UI Developer: DoyleS */
  /* red */
  /* red - dark */

  /* gray - darker */
  /* gray - dark */
  /* gray */
  /* gray - light */
  /* gray - lighter */

  /* blue */
  /* yellow */
  /* blue - provided on 2021-10 */

/* Fonts */
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=PT+Sans:wght@400;700&display=swap');
@font-face {font-family: "facetselecticon";
  src:url("../system/production/assets/115081/original/facetselecticon.eot");
  src:url("../system/production/assets/115081/original/facetselecticon.eot?#iefix") format("embedded-opentype"),
  url("../system/production/assets/115082/original/facetselecticon.woff") format("woff"),
  url("../system/production/assets/115083/original/facetselecticon.ttf") format("truetype"),
  url("../system/production/assets/115084/original/facetselecticon.svg#facetselecticon") format("svg");font-weight: normal;font-style: normal;
}

/* Preloaders */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}xq
@-moz-keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
@-o-keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
@-webkit-keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
.preloader-wrapper {
    background: #fff;
    left: 0;
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 101;
}
.preloader {
    animation: spin 1s linear infinite;
    -moz-animation: spin 1s linear infinite;
    -webkit-animation: spin 1s linear infinite;
    border: 12px solid #999;
    border-left: 12px solid #eee;
    border-radius: 50%;
    height: 48px;
    left: 50%;
    position: absolute;
    top: 50%;
    width: 48px;
    transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
}
.preloader--search {
    display: none;
    position: relative;
}
.page-container {
    opacity: 0;
    transition: 1s;
    -moz-transition: 1s;
    -ms-transition: 1s;
    -o-transition: 1s;
    -webkit-transition: 1s;
}
.page-container.fadeIn { opacity: 1; }
.page-container-inner {
    position: relative;
    z-index: 1;
}
a.skip-main {
    height: 1px;
    left: -999px;
    overflow: hidden;
    position: absolute;
    top: auto;
    transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    -webkit-transition: none;
    width: 1px;
    z-index: -999;
}
a.skip-main:focus,
a.skip-main:active {
    display: block;
    height: auto;
    left: 0;
    overflow: auto;
    padding: 12px;
    position: relative;
    text-align: center;
    width: 100%;
    z-index: 1;
}
#main {
    display: block;
    position: relative;
    top: -200px;
    visibility: hidden;
}

/* Overwrites */
.row { max-width: 1230px; }
.row--wider { max-width: 1350px; }
.row--full-width { max-width: 100%; }
.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  /*margin-bottom: 1rem;*/
  padding-bottom: 75%;
  padding-bottom: 56.25%;
  overflow: hidden;
}
.responsive-embed iframe,
.responsive-embed object,
.responsive-embed embed,
.responsive-embed video,
.flex-video iframe,
.flex-video object,
.flex-video embed,
.flex-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.responsive-embed.widescreen,
.flex-video.widescreen {
    padding-bottom: 56.25%;
}

/* Template Content section */
.template-content.fixed { padding-top: 64px; }

/* General styles */
/* font sizes */
body {
    background: #fff;
    color: #222222;
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    overflow: hidden;
}
body.scroll { overflow-y: visible; }
body.no-scroll { overflow-y: hidden; }
h1, h2, h3, h4, h5, h6,
.heading-2,
.heading-3,
.heading-4,
.heading-5,
.heading-6 {
    color: #222222;
    display: block;
    font-family: 'Open Sans', sans-serif;
    margin: 0;
    padding: 0;
}
h1,
.heading-1 {
    background: #fff;
    color: #b30000;
    display: inline-block;
    font-size: 34px;
    font-weight: 800;
    line-height: 48px;
    padding: 0 8px;
}
h1 span,
.heading-1 span {
    background: #b30000;
    color: #fff;
    display: inline-block;
    margin-right: -8px;
    padding: 0 8px;
}
h2,
.heading-2 {
    color: #777777;
    font-size: 34px;
    font-weight: 300;
    line-height: 48px;
}
h3,
.heading-3 {
    font-size: 22px;
    font-weight: 400;
    line-height: 33px;
}
h3 strong,
.heading-3 strong {
    font-weight: 700;
}
h4,
.heading-4 {
    font-size: 18px;
    font-weight: 400;
    line-height: 27px;
}
h5,
.heading-5 {
    font-size: 14px;
    line-height: 22px;
}
p {
    font-size: 14px;
    line-height: 22px;
    margin: 0 0 20px 0;
}
ul, ol { margin: 0 0 20px 20px; }
ul li,
ol li {
    font-size: 14px;
    line-height: 22px;
}
a {
    color: #1e5a99;
    font-weight: 600;
    transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    -o-transition: 0.5s;
    -webkit-transition: 0.5s;
}
a:hover,
a:focus {
    color: #1e5a99;
    text-decoration: underline;
}
.background-dark a { color: #facd01; }
.background-dark a:hover,
.background-dark a:focus {
    color: #facd01;
}

/* Branded / Utility styles */
.opacity-10 { opacity: 0.1; }
.opacity-20 { opacity: 0.2; }
.opacity-30 { opacity: 0.3; }
.opacity-40 { opacity: 0.4; }
.opacity-50 { opacity: 0.5; }
.opacity-60 { opacity: 0.6; }
.opacity-70 { opacity: 0.7; }
.opacity-80 { opacity: 0.8; }
.opacity-90 { opacity: 0.9; }
.opacity-100 { opacity: 1; }

.opacity-hover-10:hover,
a:hover .opacity-hover-10 {
    opacity: 0.1;
}
.opacity-hover-20:hover,
a:hover .opacity-hover-20 {
    opacity: 0.2;
}
.opacity-hover-30:hover,
a:hover .opacity-hover-30 {
    opacity: 0.3;
}
.opacity-hover-40:hover,
a:hover .opacity-hover-40 {
    opacity: 0.4;
}
.opacity-hover-50:hover,
a:hover .opacity-hover-50 {
    opacity: 0.5;
}
.opacity-hover-60:hover,
a:hover .opacity-hover-60 {
    opacity: 0.6;
}
.opacity-hover-70:hover,
a:hover .opacity-hover-70 {
    opacity: 0.7;
}
.opacity-hover-80:hover,
a:hover .opacity-hover-80 {
    opacity: 0.8;
}
.opacity-hover-90:hover,
a:hover .opacity-hover-90 {
    opacity: 0.9;
}
.opacity-hover-100:hover,
a:hover .opacity-hover-100 {
    opacity: 1;
}

.background-white { background-color: #ffffff !important; }
.background-1 { background-color: #b30000 !important; }
.background-2 { background-color: #b32222 !important; }
.background-3 { background-color: #222222 !important; }
.background-4 { background-color: #3b3b3b !important; }
.background-5 { background-color: #777777 !important; }
.background-6 { background-color: #ebeaea !important; }
.background-7 { background-color: #f7f7f7 !important; }
.background-8 { background-color: #1e5a99 !important; }
.background-9 { background-color: #facd01 !important; }
.background-10 { background-color: #09AFBB !important; }
.background-dark,
.background-dark h2,
.background-dark .heading-2,
.background-dark h3,
.background-dark .heading-3,
.background-dark h4,
.background-dark .heading-4,
.background-dark h5,
.background-dark .heading-5 {
    color: #fff;
}
.background-is-image {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
.background-left { background-position: left center; }
.background-right { background-position: right center; }
.background-with-pattern { background: url('../system/production/assets/130057/original/pattern-bg.png') repeat center center; }
.background-is-fixed { background-attachment: fixed; }

.color-white { color: #ffffff !important; }
.color-1 { color: #b30000 !important; }
.color-2 { color: #b32222 !important; }
.color-3 { color: #222222 !important; }
.color-4 { color: #3b3b3b !important; }
.color-5 { color: #777777 !important; }
.color-6 { color: #ebeaea !important; }
.color-7 { color: #f7f7f7 !important; }
.color-8 { color: #1e5a99 !important; }
.color-9 { color: #facd01 !important; }
.color-10 { color: #09AFBB !important; }

.space-none { margin-bottom: 0; }
.space-xsmall { margin-bottom: 8px !important; }
.space-small { margin-bottom: 15px !important; }
.space-medium { margin-bottom: 30px !important; }
.space-large { margin-bottom: 60px !important; }
.space-xlarge { margin-bottom: 75px !important; }
.space-foundation { margin-bottom: .9375rem !important; }
.padded-xsmall { padding: 8px; }
.padded-small { padding: 15px; }
.padded-medium { padding: 30px; }
.padded-large { padding: 60px; }
.padded-xlarge { padding: 75px; }
.padded-h-xsmall {
    padding-left: 8px;
    padding-right: 8px;
}
.padded-h-small {
    padding-left: 15px;
    padding-right: 15px;
}
.padded-h-medium {
    padding-left: 30px;
    padding-right: 30px;
}
.padded-h-large {
    padding-left: 60px;
    padding-right: 60px;
}
.padded-h-xlarge {
    padding-left: 75px;
    padding-right: 75px;
}
.padded-v-xsmall {
    padding-bottom: 8px;
    padding-top: 8px;
}
.padded-v-small {
    padding-bottom: 15px;
    padding-top: 15px;
}
.padded-v-medium {
    padding-bottom: 30px;
    padding-top: 30px;
}
.padded-v-large {
    padding-bottom: 60px;
    padding-top: 60px;
}
.padded-v-xlarge {
    padding-bottom: 75px;
    padding-top: 75px;
}

.relative-container {
    position: relative;
    z-index: 1;
}
.layer-1 { z-index: 1; }
.layer-2 { z-index: 2; }
.layer-3 { z-index: 3; }
.layer-4 { z-index: 4; }
.layer-5 { z-index: 5; }

.full-height { height: 100%; }
.full-width { width: 100%; }

.image-round {
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    height: 150px;
    width: 150px;
}

.branded-button,
.branded-button-outer a {
    font-family: 'PT Sans', sans-serif;
    border-radius: 3px;
    display: inline-block;
    font-size: 13px;
    font-weight: 400;
    height: 32px;
    line-height: 32px;
    padding: 0 30px;
    margin: 0;
    text-align: center;
}
.branded-button:hover,
.branded-button-outer a:hover,
.branded-button:focus,
.branded-button-outer a:focus {
    box-shadow: 0 0 12px rgba(34,34,34,0.5);
    -moz-box-shadow: 0 0 12px rgba(34,34,34,0.5);
    -webkit-box-shadow: 0 0 12px rgba(34,34,34,0.5);
    text-decoration: none;
}
.branded-button-1,
.branded-button-1-outer a {
    /* blue on white */
    background-color: #fff;
    color: #1e5a99 !important;
}
.branded-button-1:hover,
.branded-button-1-outer a:hover,
.branded-button-1:focus,
.branded-button-1-outer a:focus {
    background-color: #ebeaea;
}

.branded-button-2,
.branded-button-2-outer a {
    /* white on blue */
    background-color: #1e5a99;
    color: #fff !important;
}
.branded-button-2:hover,
.branded-button-2-outer a:hover,
.branded-button-2:focus,
.branded-button-2-outer a:focus {
    opacity: 0.7;
}

.branded-button-3,
.branded-button-3-outer a {
    /* white on red */
    background-color: #b30000;
    color: #fff !important;
}
.branded-button-3:hover,
.branded-button-3-outer a:hover,
.branded-button-3:focus,
.branded-button-3-outer a:focus {
    background-color: #b32222;
}
.branded-overlap {
    position: relative;
    transform: translateY(50%);
    -moz-transform: translateY(50%);
    -webkit-transform: translateY(50%);
    z-index: 2;
}
.branded-image-overlap-outer {
    overflow: hidden;
    position: relative;
    z-index: 1;
}
.branded-image-overlap {
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: contain;
    height: 100%;
    position: absolute;
    right: 30px;
    top: 0;
    z-index: 1;
}
.branded-overlay {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    -o-transition: 0.5s;
    -webkit-transition: 0.5s;
    width: 100%;
}
.branded-search input[type="text"],
.branded-search input[type="submit"],
.branded-search select {
    background-color: #fff;
    border: 0.5px solid #222222;
    border-radius: 3px;
    font-size: 13px;
    font-weight: 400;
    height: 32px;
    line-height: 32px;
    padding: 0 15px;
    margin: 0;
}
.branded-search input[type="text"]:focus,
.branded-search input[type="submit"]:focus,
.branded-search select:focus {
    border: dashed 1px #f7f7f7 !important;
}
.branded-search textarea {
    height: 120px;
    resize: none;
}
.branded-video iframe,
.branded-video video {
    height: auto !important;
    width: 100% !important;
}
.branded-search input[type="submit"] {
    border: 0.5px solid #fff;
    color: #1e5a99;
    font-family: 'PT Sans', sans-serif;
    width: 100%;
}
.small-text {
    font-size: 12px;
    line-height: 14px;
}
.fontawesome { font-family: FontAwesome; }
.anchor-section {
    display: block;
    height: 0;
    position: relative;
    overflow: hidden;
    top: -60px;
    visibility: hidden;
}

/* Saved Jobs Alert */
.saved-jobs-alert-wrapper {
    background: rgba(34,34,34,0.5);
    display: none;
    left: 0;
    position: absolute;
    top: 0;
    z-index: 100;
}
.saved-jobs-alert {
    border-radius: 40px;
    -moz-border-radius: 40px;
    -webkit-border-radius: 40px;
    left: 50%;
    overflow: hidden;
    position: absolute;
    top: 50%;
    text-align: center;
    transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    width: 320px;
}
.saved-jobs-alert__check {
    font-size: 120px;
    line-height: 120px;
}
.saved-jobs-alert__check.removed { background: #8fd400 !important; } 

/* Header section */
.header-outer { background: #fff; }
.header-outer.fixed {
    box-shadow: 0 10px 20px rgba(0,0,0,0.2);
    -moz-box-shadow: 0 12px 24px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0 10px 20px rgba(0,0,0,0.2);
    left: 0;
    position: fixed;
    top: 0;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    -o-transition: 0.5s;
    -webkit-transition: 0.5s;
    width: 100%;
    z-index: 100;
}
.header__logo { line-height: 46px; }
.header__logo img { max-width: 130px; }
.header__search { width: 60px; }
.header__search-button a {
    border: 1px solid transparent;
    display: inline-block;
    font-size: 18px;
    line-height: 30px;
    width: 60px;
}
.header__search-button a:hover,
.header__search-button a:focus {
    border: dashed 1px #777777;
    text-decoration: none;
}
.header__search-form {
    background: #fff;
    display: block;
    height: 0;
    opacity: 1;
    overflow: hidden;
    padding: 30px;
    position: absolute;
    left: -100%;
    top: 65px;
    transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    -o-transition: 0.5s;
    -webkit-transition: 0.5s;
    width: 100%;
    z-index: -1;
}
.header__search-form.active {
    height: auto;
    left: 0;
    z-index: 100;
}
.header__search-form form {
    position: relative;
    z-index: 1;
}
.search-form--top__keyword,
.search-form--top__location,
.search-form--top__submit {
    float: left;
    width: 100%;
}
.search-form--top__keyword { margin: 0 0 12px 0; }
.search-form--top__location {
    margin: 0 1% 0 0;
    width: 89%;
}
.search-form--top__submit { width: 10%; }
.header__search input[type="text"] {
    border: 3px solid #ebeaea;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    font-size: 13px;
    height: 30px;
    line-height: 30px;
    margin: 0;
    padding: 0 30px 0 15px;
    padding: 0 15px;
    position: relative;
    z-index: 1;
}
.header__search input[type="submit"] {
    background: transparent;
    border: 0;
    color: #777777;
    font-size: 18px;
    line-height: 30px;
    /*margin: 0 15px;
    padding: 0 8px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;*/
}
.header__menu-links ul { margin: 0; }
.header__menu-links ul li {
    list-style: none;
    line-height: 30px;
}
.header__menu-links ul li a {
    color: #3b3b3b;
    font-size: 14px;
    line-height: 30px;
}
.header__menu-outer { width: 60px; }
.header__menu-mobile-button {
    cursor: pointer;
    text-align: center;
}
.header__menu-mobile-button a {
    border: 1px solid transparent;
    display: inline-block;
    font-size: 24px;
    line-height: 30px;
    width: 60px;
}
.header__menu-mobile-button a:hover,
.header__menu-mobile-button a:focus {
    border: dashed 1px #777777;
    text-decoration: none;
}
.header__menu {
    background: #fff;
    border-radius: 3px;
    display: block;
    height: 0;
    opacity: 1;
    overflow: hidden;
    position: absolute;
    right: -300px;
    top: 51px;
    transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    -o-transition: 0.5s;
    -webkit-transition: 0.5s;
    width: 270px;
    z-index: -1;
}
.header__menu.active {
    border: 5px solid #ebeaea;
    height: auto;
    right: 0;
    z-index: 100;
}
.header__menu ul { margin: 0; }
.header__menu ul li {
    border-top: solid 1px #ebeaea;
    line-height: 45px;
    list-style: none;
}
.header__menu ul li:first-child { border-top: 0; }
.header__menu ul li a {
    color: #3b3b3b;
    font-size: 14px;
    line-height: 45px;
}

/* Banner section */
.banner.no-banner { height: 300px; }
.banner__media { overflow: hidden; }
.banner--job .banner__media {
    left: 0;
    position: absolute;
    top: 0;
    z-index: 1;
}
.banner__media img,
.banner__media video {
    max-width: 400%;
    left: -200%;
    position: relative;
    width: 400%;
    z-index: 1;
}
.banner__media .banner__media-controls {
    bottom: 60px;
    position: absolute;
    right: -180%;
    text-align: right;
    width: 100%;
    z-index: 2;
}
.banner__media .banner__media-controls img { max-width: 55px; }
.banner__heading {
    left: 0;
    margin: 0;
    position: absolute;
    top: 25%;
    transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    z-index: 1;
}
.banner--job .banner__heading {
    padding: 60px 0;
    position: relative;
    top: 0;
    transform: none;
    -moz-transform: none;
    -webkit-transform: none;
    z-index: 2;

    top: 50%;
}
.banner__overlay {
    left: 0;
    position: absolute;
    top: 0;
}
.banner-search { margin: 20px 0; }
.search-arrow {
  background: rgba(43,43,43,0.5);
  bottom: 20px;
  font-size: 36px;
  line-height: 36px;
  left: 0;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  right: 0;
  text-align: center;
  width: 38px;
  z-index: 2;
}
.search-arrow a { color: #fff; }

.back-to-top {
    background: #3b3b3b;
    border-radius: 4px 4px 0 0;
    -moz-border-radius: 4px 4px 0 0;
    -webkit-border-radius: 4px 4px 0 0;
    bottom: 0;
    color: #fff;
    font-size: 24px;
    height: 35px;
    line-height: 35px;
    opacity: 0;
    position: fixed;
    right: 75px;
    text-align: center;
    width: 48px;
}
.back-to-top:hover,
.back-to-top:focus {
    background: #b30000;
    color: #fff;
    text-decoration: none;
}
.back-to-top.fixed {
    opacity: 1;
    z-index: 99999;
}

/* Search section */
.cs_jsearchform .ui-widget-content {
    border-bottom: 2px solid #eee !important;
    font-family: 'Open Sans', sans-serif;
}
.cs_jsearchform .ui-corner-all {
    border: medium none;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
}
.cs_jsearchform .ui-autocomplete-head {
    border-bottom: 2px solid #fff;
    font-size: 12px;
    line-height: 18px;
    margin: 0;
}
.cs_jsearchform .cs_srchresults_count { float: none; }
.cs_jsearchform .cs_srchresults_close {
    float: none;
    position: absolute;
    right: 8px;
    top: 6px;
}
.ui-menu .ui-menu-item a.ui-state-focus,
.ui-menu .ui-menu-item a.ui-state-active {
    background: #ebeaea;
    border: medium none;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    margin: 0;
}
.cs_jsearchform a.cs_mtitle,
.cs_jsearchform a.cs_mtitle.ui-state-focus,
.cs_jsearchform a.cs_mtitle.ui-state-active {
    border: medium none;
    font-size: 14px;
    line-height: 16px;
}
.cs_jsearchform .cs_mtitle .cs_mjob_title { position: relative; }
.cs_jsearchform .cs_mtitle .ui-icon {
    margin: 0;
    position: absolute;
    top: 0;
}
.cs_jsearchform .cs_mtitle .cs_mjob_titletext { width: 100%; }
.cs_jsearchform .cs_mtitle .cs_mjob_location { padding-left: 18px; }
.cs_jsearchform .ui-autocomplete-foot a,
.cs_jsearchform .ui-autocomplete-foot a.ui-state-focus,
.cs_jsearchform .ui-autocomplete-foot a.ui-state-active {
    font-size: 12px;
    line-height: 18px;
}
.cs_jsearchform .ui-autocomplete-notfound {
    font-size: 12px;
    line-height: 18px;
    padding: 4px;
    width: 100%;
}

/* Home page */
/* Job Category section */
.job-category__item,
.job-category__item-inner,
.cta__item {
    display: block;
}
.job-category__item-copy,
.cta__item-copy {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
}
.career-areas-item {
    display: inline-block;
    float: none !important;
    margin: 0 -0.2%;
    vertical-align: top;
}

/* Job Search Results page */
.featured-jobs-parent {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
}
.featured-jobs-parent .featured-jobs-item {
    max-width: 100%;
}
/* Facet section */
.facet-section h4 { position: relative; }
.facet-filter-results-button {
    color: #fff;
    text-align: center;
}
.facet-section__clear-all,
.facet-section-inner {
    display: none;
}
.facet-section.active .facet-section__clear-all,
.facet-section.active .facet-section-inner {
    display: block;
}
.facet-section__clear-all a { color: #fff; }
.facet-item { border-top: 1px solid #f0f2f4; }
.facet-item__heading a.heading-6 {
    cursor: pointer;
    display: block;
    position: relative;
}
.facet-item__options {
    overflow: hidden !important;
    position: relative !important;
}
.minus .facet-item__options { display: block; }
.plus .facet-item__options { display: none; }
.facet-item--expanded .facet-item__options {
    max-height: 200px;
    overflow-y: auto !important;
}
a.facet-item__show-more { display: inline-block; }
.facet-item__row--hidden { display: none; }
span.facet-item__heading-expand-collapse {
    bottom: 0;
    font-family: FontAwesome;
    font-size: 12px;
    position: absolute;
    right: 0;
    vertical-align: middle;
    width: 10%;
}
.facet-item--expanded span.facet-item__heading-expand-collapse:after { content: "\f068"; }
.facet-item--collapsed span.facet-item__heading-expand-collapse:after { content: "\f067"; }
.facet-item__options-item { position: relative; }
.facet-item__options-item a { display: block; }
.facet-item__options-item span { float: left; }
span.facet-item__option-item-count {
    vertical-align: top;
    width: 12%;
}
span.facet-item__option-item-label {
    margin: 0 2% 0 0;
    width: 76%;
}
span.facet-item__options-item-type {
    font-family: 'facetselecticon';
    font-size: 14px;
    width: 10%;
}
.facet-item__options-item-type--multi:after { content: "b"; }
.facet-item__options-item-type--selected.facet-item__options-item-type--multi:after { content: "o"; }
.facet-item__options-item-type--single:after { content: "f"; }
.facet-item__options-item-type--selected.facet-item__options-item-type--single:after { content: "g"; }
/* Candidate Notification */
/* New UI */
.MuiPaper-root {
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    padding: 30px;
}
.MuiPaper-root * {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px;
}
.MuiPaper-root h2 {
    font-size: 34px;
    line-height: 48px;
}
.MuiPaper-root .MuiDialogTitle-root { padding: 0; }
.MuiPaper-root .MuiDialogContent-root { padding: 0; }
.MuiPaper-root .CJN-Form > div { padding: 0; }
.MuiPaper-root .MuiFormControl-marginDense { margin: 15px 0; }
.MuiPaper-root .CJN-Form input[type="text"],
.MuiPaper-root .CJN-Form input[type="email"],
.MuiPaper-root .CJN-Form select {
    background-color: #fff;
    border-radius: 3px;
    font-size: 13px;
    font-weight: 400;
    height: 32px;
    line-height: 32px;
    margin: 0;
    padding: 0 15px;
    margin: 0;
}
.MuiInputLabel-outlined.MuiInputLabel-marginDense {
    font-size: 13px;
    line-height: 8px;
}
.MuiPaper-root .CJN-Form input[type="text"],
.MuiPaper-root .CJN-Form input[type="email"] {
    border: none;
    box-shadow: none;
}
.MuiPaper-root .CJN-Form select:focus { background-color: #fff; }
.MuiPaper-root .CJN-Form fieldset {
    border-radius: 3px;
}
.MuiPaper-root .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline { border-color: #222222; }
.MuiPaper-root .MuiDialogActions-root {
    display: block;
    padding: 0;
    text-align: right;
}
.MuiPaper-root button.MuiButton-containedPrimary,
.MuiPaper-root button.MuiButton-containedPrimary:hover,
.MuiPaper-root button,
.MuiPaper-root button:hover {
    font-family: 'PT Sans', sans-serif !important;
    border-radius: 3px;
    display: inline-block;
    font-size: 13px;
    font-weight: 400;
    height: 32px;
    line-height: 32px;
    padding: 0 30px;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    -o-transition: 0.5s;
    -webkit-transition: 0.5s;
    text-transform: none;
}
.MuiPaper-root button.MuiButton-containedPrimary {
    background-color: #1e5a99 !important;
    color: #fff !important;
}
.MuiPaper-root button.MuiButton-containedPrimary:hover,
.MuiPaper-root button.MuiButton-containedPrimary:focus {
    opacity: 0.7;
}
.MuiPaper-root button {
    background-color: #fff;
    color: #1e5a99 !important;
}
.MuiPaper-root button:hover,
.MuiPaper-root button:focus {
    background-color: #ebeaea;
}
.scrolloff { pointer-events: none; }
a.jobs-section__map-button { display: block; }
.jobs-section__map {
    height: 0;
    visibility: hidden;
}
.jobs-section__map.active {
    height: auto;
    margin: 0 0 24px 0;
    visibility: visible;
}
.jobs-section__map.invisible { margin: 0; }
.jobs-section__map .scrolloff { pointer-events: none; }
.jobs-section__map iframe { width: 100%; }
.jobs-section__paginate .disabled { display: none; }
.jobs-section__paginate .current {
    background: #b30000;
    color: #fff;
}
.jobs-section__paginate span,
.jobs-section__paginate a {
    border-radius: 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    display: inline-block;
    line-height: 36px;
    margin: 0;
    padding: 0 15px !important;
}
.jobs-section__paginate a:hover,
.jobs-section__paginate a:focus {
    background: #ebeaea;
    text-decoration: none;
}

/* Job Details page */
.job-details__heading a {
    margin: 12px;
    width: 240px;
}
.cs_share_text {
    display: inline-block;
    float: none;
    height: 32px;
    line-height: 32px;
    margin: 0;
}
.cs_share_container { float: none; }
.cs_share_email,
.cs_share_email--manual,
.cs_share_google,
.cs_share_twitter,
.cs_share_facebook,
.cs_share_linkedin {
    display: inline-block;
    float: none;
    height: 32px !important;
    margin-left: 15px;
    padding: 0;
    width: auto !important;
}
.cs_share_email--manual {
    line-height: 20px;
    overflow: hidden;
}
a.cs_email_btn,
a.cs_share_google_btn,
a.cs_share_twitter_btn,
a.cs_facebook_btn,
a.cs_share_linkedin_btn {
    background: #3b3b3b;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    color: #fff;
    display: inline-block;
    font-size: 18px;
    font-weight: 400;
    height: 32px !important;
    line-height: 32px;
    position: relative;
    text-align: center;
    width: 32px !important;
}
a.cs_email_btn:hover,
a.cs_share_google_btn:hover,
a.cs_share_twitter_btn:hover,
a.cs_facebook_btn:hover,
a.cs_share_linkedin_btn:hover,
a.cs_email_btn:focus,
a.cs_share_google_btn:focus,
a.cs_share_twitter_btn:focus,
a.cs_facebook_btn:focus,
a.cs_share_linkedin_btn:focus  {
    text-decoration: none;
    opacity: 0.7;
}
a.cs_email_btn:after,
a.cs_share_google_btn:after,
a.cs_share_twitter_btn:after,
a.cs_facebook_btn:after,
a.cs_share_linkedin_btn:after {
    font-family: FontAwesome;
}
a.cs_email_btn:after { content: "\f0e0"; }
a.cs_share_google_btn:after { content: "\f0d5"; }
a.cs_share_twitter_btn:after { content: "\f099"; }
a.cs_facebook_btn:after { content: "\f09a"; }
a.cs_share_linkedin_btn:after { content: "\f0e1"; }
.job-description .tabs { border: 0; }
.job-description .tabs .tabs-title {
    text-align: center;
    width: 25%;
}
.job-description .tabs .tabs-title a {
    background: #ebeaea;
    border-left: 1px solid #fff;
    color: #222222;
    font-size: 13px;
    font-weight: 700;
    line-height: 20px;
    padding: 10px;
}
.job-description .tabs .tabs-title:first-child a { border-left: 0; }
.job-description .tabs .tabs-title a:hover,
.job-description .tabs .tabs-title a:focus,
.job-description .tabs .tabs-title.is-active a {
    background: #b30000;
    color: #fff;
    text-decoration: none;
}
.job-description .tabs-content {
    background: #f7f7f7;
    padding: 15px;
}
.job-description .accordion { border: 0; }
.job-description li.accordion-item a.accordion-title {
    background: #ebeaea;
    color: #222222;
    font-size: 13px;
    font-weight: 700;
    line-height: 20px;
    padding: 10px;
}
.job-description li.accordion-item.is-active a.accordion-title,
.job-description li.accordion-item.is-active a:hover,
.job-description li.accordion-item.is-active a:focus,
.job-description .tabs .tabs-title.is-active a {
    background: #b30000;
    color: #fff;
    text-decoration: none;
}
.job-description .accordion-content {
    background: #f7f7f7;
    padding: 15px;
}
.job-description-inner-js {
    height: 500px;
    overflow: hidden;
    transition: 1s;
    -moz-transition: 1s;
    -ms-transition: 1s;
    -o-transition: 1s;
    -webkit-transition: 1s;
}
.job-description-inner-js.expanded {
    height: auto;
}
ul.career-progression::before,
ul.career-progression::after {
  content: ' ';
  display: table;
}
ul.career-progression::after { clear: both; }
ul.career-progression li {
    display: block;
    float: left;
    margin: 0 0 15px 0;
    padding: 0 30px;
    position: relative;
    width: 100%;
    z-index: 1;
}
ul.career-progression li::after {
    background: #b30000;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    content: '';
    height: 10px;
    left: 0;
    margin-top: 15px;
    position: absolute;
    top: 0;
    width: 10px;
    z-index: 2;
}
.career-progression__year {
    color: #b30000;
    font-weight: 700;
}
ul.career-progression li.career-progression__last::after { display: none; }
ul.career-progression li.career-progression__last img {
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    max-height: 150px;
    max-width: 150px;
    position: relative;
    z-index: 3;
}

/* Content pages */
.page-details .candidate-notification-link,
.page-details .pagination,
a.jobs-section__paginate-view-more {
    display: none;
}
.page-details .jobs-section__paginate-view-more { display: block; }

/* Footer section */
ul.footer__menu { margin-left: 0; }
ul.footer__menu li { list-style: none; }
ul.footer__menu li a { color: #3b3b3b; }
.footer__social-media a {
    color: #3b3b3b;
    display: inline-block;
    height: 30px;
    font-size: 24px;
    line-height: 30px;
    margin: 0 15px 0 0;
    text-align: center;
    vertical-align: middle;
}
.footer__social-media a:hover,
.footer__social-media a:focus {
    opacity: 0.7;
    text-decoration: none;
}
.footer__copy { border-top: 1px solid #777777; }

@media only screen and (min-width: 640px) {  
    .width-detector { width: 640px; }

    /* 640 Header section */
    .search-form--top__keyword,
    .search-form--top__location,
    .search-form--top__submit {
        margin: 0 1% 0 0;
        width: 44%;
    }
    .search-form--top__submit {
        margin: 0;
        width: 10%;
    }

    /* 640 Banner section */
    .banner__media img,
    .banner__media video {
        left: -100%;
        max-width: 200%;
        width: 200%;
    }
    .banner__media .banner__media-controls { right: -90%; }

    /* 640 Home page */
    .microsites__item:first-child { border-right: 1px solid #fff; }

    /* 640 Job Search Results page */
    .featured-jobs-parent .featured-jobs-item { max-width: 50%; }
    .facet-filter-results-button {
        background: transparent;
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        padding: 0;
        text-align: left;
    }
    .facet-section__clear-all,
    .facet-section-inner {
        display: block !important;
    }
    .facet-section__clear-all a { /*color: #5f9baf; */}
}
@media only screen and (min-width: 1024px) {
    .width-detector { width: 1024px; }

    /* 1024 Header section */
    .header__search {
        width: 350px;
        width: 500px;
    }
    .header__search-button { display: none; }
    .header__search-form {
        background: transparent !important;
        height: auto !important;
        padding: 0 !important;
        position: relative !important;
        left: 0 !important;
        top: 0 !important;
        z-index: 1 !important;
    }

    /* 1024 Banner section */
    .banner__media .banner__media-controls { right: 0%; }
    .banner__media img,
    .banner__media video {
        left: 0;
        max-width: 100%;
        width: 100%;
    }

    .banner__heading {
        left: 0;
        position: absolute;
        top: 40%;
        transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
    }
    .banner-search {
        margin: 0;
        position: absolute;
        bottom: -46px;
        width: 100%;
        z-index: 1;
    }

    /* 1024 Home page */
    .two-column-item__image {
        padding-right: 0;
    }
    .media-right .two-column-item__image {
        padding-left: 0;
        padding-right: .9375rem;
    }
    .two-column-item__copy {
        background: #ebeaea;
        height: 100%;
        position: relative;
        z-index: 1;
    } 
    .two-column-item__copy::before {
        background: #ebeaea;
        content: '';
        height: 100%;
        left: -15px;
        position: absolute;
        top: 0;
        width: 15px;
        z-index: 1;
    }
    .two-column-item__copy.background-white::before { background: #fff; }
    .two-column-item.media-right .two-column-item__copy::before {
        left: auto;
        right: -15px;
    }

    /* 1024 Job Search Results pgae */
    .featured-jobs-parent .featured-jobs-item { max-width: 25%; }

    /* 1024 Job Details page */
    ul.career-progression li {
        text-align: center;
        width: 20%;
    }
    ul.career-progression li::before {
        background: #777777;
        content: '';
        height: 1px;
        left: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        width: 100%;
        z-index: 1;
    }
    ul.career-progression li::after {
        left: 50%;
        margin-top: -5px;
        top: 50%;
        transform: translate(-50%);
        -moz-transform: translate(-50%);
        -webkit-transform: translate(-50%);
    }
    ul.career-progression li.career-progression__last::before { width: 50%; }
    ul.career-progression li.career-progression__last::after { display: none; }
    .career-progression__year { padding: 30px 0 45px 0; }

    /* 1024 Footer section */
    ul.footer__menu li {
        display: inline-block;
        line-height: 30px;
        margin: 0 15px 0 0;
    }
    ul.footer__menu li a { line-height: 30px; }
    .footer__social-media { text-align: right; }
    .footer__social-media a { margin: 0 0 0 15px; }
}
@media only screen and (min-width: 1440px) {
    /* 1440 Job Search Results page */
    .facet-section__clear-all {
        bottom: 0;
        position: absolute;
        right: 0;
    }
}