header {
  background-color: #343434;
  height: 50px;
  opacity: 0.98;
  top: 0;
  left: 0;
  width: 100%;
  position: absolute;
  z-index: 50;
}

header * a {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 600;
  font-size: 1rem;
  text-decoration: none;
  color: #e8eaea;
}

/** LOGO **/

header .logo {
  text-indent: -99999px;
  width: 35%;
  margin-left: .25rem;
  display: inline-block;
  position: relative;
  z-index: 2;
}

header .logo a {
  background: #fff url(/assets/images/home_logo.gif) no-repeat center;
  background-size: contain;
  border: 1px solid #fff;
  box-sizing: border-box;
  display: block;
  height: 2.5rem;
  margin: 5px;
  position: relative;
  width: 2.5rem;
}

/** NAV ICON **/

header .mobile-main-nav-icon,
header .search .search-icon {
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}

header .mobile-main-nav-icon {
  position: absolute;
  top: 0;
  right: 0;
  text-align: center;
  width: 50px;
  height: 50px;
  cursor: pointer;
  z-index: 10;
}
header .mobile-main-nav-icon .hamburger {
    background: #efaa00;
    height: 4px;
    left: 20%;
    position: absolute;
  	top: 50%;
    transition: 0.5s;
    width: 27px;
}
header .mobile-main-nav-icon .hamburger:before,
header .mobile-main-nav-icon .hamburger:after {
    background: #efaa00;
	content: '';
    height: 4px;
    position: absolute;
    transition: 0.5s;
    width: 27px;
}
header .mobile-main-nav-icon .hamburger:before {
	left: 0;
	top: -8px;
}
header .mobile-main-nav-icon .hamburger:after {
	left: 0;
	top: 8px;
}
header .mobile-main-nav-icon.on .hamburger {
	background-color: rgba(0,0,0,0);
}
header .mobile-main-nav-icon.on .hamburger:before{
	background-color: #343434;
	height: 7px;
	transform: rotate(45deg);
	top: 0;
}
header .mobile-main-nav-icon.on .hamburger:after{
	background-color: #343434;
	height: 7px;
	transform: rotate(135deg);
	top: 0;
}

header .mobile-main-nav-icon:after {
  /*content: "\f0c9";*/
}

header .mobile-main-nav-icon.on {
 	color: #343434;
  background-color: #efaa00;
}

header .mobile-main-nav-icon.on:after {
/*  content: "\f00d";*/
}

header .top-bar {
  display: none;
}

/** USER LOGOUT **/

header .single-logout {
  position: absolute;
  left:auto;
  right: 50px;
  top:0;
}
header .single-logout {
  padding: 1rem .5rem;
}
header .single-logout a {
  text-transform: uppercase;
  color: #efaa00;
}
header .single-logout a:hover {
  color: #e8eaea;
}

@media (max-width:855px) and (min-width: 768px)  {
  header nav .main-nav .main-nav-links > li a.nav-link {margin:0 .6rem !important;}
  header .profile {left:85% !important;}
}

/**PROFILE ICON **/

  header .profile * {box-sizing: border-box;}
    header .profile {
      display: block;
      z-index: 2;
      top: 14px;
      right:65px;
      position: absolute;
  }
  header .profile .usericon {
      font-family: FontAwesome5Solid;
      font-size: 1.7rem;
      color: #efaa00;
      cursor: pointer;
  }
  header .profile .usericon:before {
      content: "\f2bd";
  }
  header .profile .userdetails {
      background: #e8eaea;
      padding: 1rem;
      position: absolute;
      right: -45px;
      box-shadow: 6px 5px 10px -2px rgba(0,0,0,0.24);
      top: 50px;
      border: 1px solid #ccc;
      width: 290px;
      visibility: hidden;
      opacity: 0;
      transition: opacity .3s ease-in;
   }

   header .profile.on .userdetails {
    visibility: visible;
    opacity: 1;
   }

   header .profile .userdetails:before {
      border-top: 1px solid #ccc;
      border-left: 1px solid #ccc;
      background-color: #e8eaea;
      content: ' ';
      display: inline-block;
      height: 25px;
      position: absolute;
      right: 45px;
      top: -14px;
      transform: rotate(45deg);
      width: 25px;
      z-index: 0;
  }
  header .profile .userdetails .user {
      font-size: 1.125rem;
      font-weight: 600;
  }

  header .profile .userdetails .logout {margin-top:1rem;}
  header .profile .userdetails .logout ul {margin:0; padding: 0;}
  header .profile .userdetails .logout ul li {margin-bottom: .5rem;}
  header .profile .userdetails .logout a {
      display: block;
      line-height: 1.75rem;
      color: #cf0a2c;
  }
  header .profile .userdetails .logout a:hover {color: #cf0a2c;}
    header .profile .userdetails .logout a.logoutlink:after {
        content: "\f08b";
        font-family: FontAwesome5Solid;
        margin-left: .4rem;
        font-weight: 200;
    }

  

/** SEARCH **/

header nav .search-mobile,
header nav .search-mobile * {
  box-sizing: border-box;
}

header nav .search-mobile {
  padding: 1.5rem 1rem 0;
}

header nav .search-mobile #dnn_ctl00_ctl00_pnlSearch {
  padding-bottom: .5rem;
}

header nav .search-mobile .searchinput {
  background: #f9f9f9;
  border: none;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 1rem;
  font-style: italic;
  padding: .75rem .5rem;
  width: 100%;
}

header nav .search-mobile .resultList {
  padding: .5rem 0 0;
}

header .search {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
}

header .search .search-icon,
header .search .search-icon button {
  position: relative;
  float: right;
  height: 50px;
  width: 45px;
  text-align: center;
}

header .search .search-icon button {
  background: none;
  border: none;
  font-size: 0;
  color: transparent;
}
header .search .search-icon span {
  display: none;
}

header .search .search-icon button:after {
  content: "\f002";
  font-size: 1.5rem;
  color: #efaa00;
}
header .search.on .search-icon {
  background-color: #efaa00;
}
header .search.on .search-icon button:after {
  content: "\f00d";
  color: #343434;
}

    header .search .search-module input.searchinput {
        margin: 1rem;
        height: 30px;
        text-align: left;
        font-family: 'Source Sans Pro', sans-serif;
        font-style: italic;
        font-weight: 400;
        width: 80%;
        background-color: #e8eaea;
        border: none;
        border-bottom: solid #AEB3B5 1px;
        font-size: 17px;
    }

header .search .search-module span.search-module-icon:before {
	font: normal normal normal 24px FontAwesome5Solid;
	content: "\f002";
	color: #343434;
	cursor: pointer;
}

header .search div#results {
  padding: 0 1rem 1rem;
}

header .search div.results i {
  display: block;
  padding: 0 1rem;
}

ul.resultList {
  padding: 0 1rem 1rem;
}

ul.resultList li {
  padding-bottom: .35rem;
}

ul.resultList li a {
  color: #2c2c2c;
  font-weight: 400;
}
ul.resultList li span.lock,
ul.resultList li a.locked {
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMC42NTYiIGhlaWdodD0iMTUiIGJhc2VQcm9maWxlPSJ0aW55Ij48cGF0aCBmaWxsPSIjQ0YyMDJFIiBkPSJNNS4zMyAwQzIuNCAwIDAgMi40IDAgNS4zM1YxNWgxMC42NlY1LjMzQzEwLjY2IDIuNCA4LjI2IDAgNS4zMyAwem0uNzUgMTEuOHYuOThjMCAuNDItLjM0Ljc1LS43NS43NXMtLjc1LS4zMy0uNzUtLjc1di0xYy0uNDMtLjI1LS43Mi0uNy0uNzItMS4yNSAwLS44LjY2LTEuNDcgMS40Ny0xLjQ3czEuNDcuNjYgMS40NyAxLjQ3YzAgLjU0LS4zIDEtLjcyIDEuMjZ6bTMuNTctNC42NEgxVjUuMzNDMSAyLjkzIDIuOTYgMSA1LjM0IDFzNC4zMiAxLjk0IDQuMzIgNC4zM3YxLjgzeiIvPjwvc3ZnPg==) no-repeat center right;
  background-size: .5rem;
  padding-right: 1.25rem;
}

ul.resultList li a .highlight {
  color: #cf0a2c;
}

ul.resultList li:last-of-type {
  padding-top: 1.5rem;
}

ul.resultList li:last-of-type i {
  font-style: normal;
}

ul.resultList li:last-of-type a {
  color: #cf0a2c;
}

ul.resultList li:last-of-type a:after {
  content: '\00a0\203a';
}

/** MAIN NAV **/

header nav {
  display: none
}

header nav, header nav .main-nav{
  -webkit-transition: all 500ms;
  -moz-transition: all 500ms;
  -o-transition: all 500ms;
  transition: all 500ms;
}

header nav .main-nav, header .search .search-module {
  background-color: #e8eaea;
  width: 100%;
  position: relative;
  overflow: hidden;
}

header .search .search-module {
  display: block !important;
  overflow: hidden;
  top: 0;
  max-height: 0;
  -moz-transition: max-height .45s ease;
  -o-transition: max-height .45s ease;
  -webkit-transition: max-height .45s ease;
  transition: max-height .45s ease;
}

header .search.on .search-module {
  display: block;
  max-height: 50rem;
}

header nav .main-nav .main-nav-links {
  position: relative;
  list-style: none;
  display: flex;
  justify-content: space-around;
  flex-direction: column;
  margin: 1rem 0 0;
  padding: 0;
}

header nav ul {
  margin: 0;
  padding: 0;
}

header nav .main-nav .main-nav-links li {
  position: relative;
}

header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links li,
header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links > li:last-of-type {
  border-bottom: 1px solid #cdcdcd;
}

header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links > li:first-child {
  border-top: 1px solid #cdcdcd;
}

header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links li .nav-columnwrapper ul > li /*,
header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links li:last-of-type */ {
  border: none;
}

header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links li .nav-columnwrapper ul {
  margin-left: 1.5rem;
}

header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links li .nav-columnwrapper ul > li a {
  font-size: .85rem;
}

header nav .main-nav .main-nav-links > li .menu-toggle-mobile {
  display: inline-block;
  padding: .9rem;
  text-align: center;
}

header nav .main-nav .main-nav-links > li .menu-toggle-mobile:after {
  content: "\f0a3";
  color: #cf0a2c;
  font-family: 'social-icons';
  position: relative;
  top: 0;
  font-size: 1.25rem;
  right: 0;
}

header nav .main-nav .main-nav-links > li.hover .menu-toggle-mobile:after {
  content: "\f0a2";
}

header nav .main-nav .main-nav-links li a {
  color: #2c2c2c;
  margin: 1rem 0 1rem 1rem;
  display: inline-block;
  width: 80%;
  -webkit-font-smoothing: antialiased;
}

header nav .main-nav .main-nav-links li .nav-columnwrapper {
  display: none;
  background-color: #DBDCDB;
}

header nav .main-nav .main-nav-links li.hover .nav-columnwrapper {
  display: block;
  border-top: 4px solid #efaa00;
}

header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links li.hover .nav-columnwrapper {
  border-bottom: 4px solid #efaa00;
}

header nav .main-nav .main-nav-links .nav-columnwrapper li {
  border-bottom: 1px solid #D4D4D4;
}

header nav .top-bar-mobile {
  background: #e8eaea;
  display: block;
  overflow: hidden;
}

header nav .top-bar-mobile .nav-util {
  overflow: hidden;
  padding: 1rem 1rem 0;
}

header nav .top-bar-mobile .nav-util ul {
  display: flex;
  flex-wrap: wrap;
  margin: -.5em;
}

header nav .top-bar-mobile .nav-util ul li {
  flex: 1 0 5em;
  margin: .5em;
}

header nav .top-bar-mobile .nav-util ul li a {
  border: 1px solid #cf0a2c;
  color: #cf0a2c;
  display: block;
  line-height: 2.5rem;
  text-align: center;
  text-transform: uppercase;
}

header nav .top-bar-mobile .nav-util ul li a:active {
  background: #cf0a2c;
  color: #e8eaea;
}

header .mobile-main-nav-icon + nav {
  background: #e8eaea;
}

header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links li .nav-columnwrapper .more > ul {
  max-height: 0;
  overflow: hidden;
  transition: max-height .35rem ease;
}

header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links li .nav-columnwrapper .more.hover > ul {
  max-height: 350rem;
}

header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links li .nav-columnwrapper .more .menu-toggle-mobile {
  position: absolute;
  transform: rotate(180deg);
}

header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links li .nav-columnwrapper .more.hover > .menu-toggle-mobile {
  transform: none;
}

header .mobile-main-nav-icon.on + nav .main-nav .main-nav-links li .nav-columnwrapper .more > .menu-toggle-mobile:after {
  font-size: 1rem;
}
.persona-padding {
  margin-left: 80px !important;
  width: calc(100% - 80px) !important;
}
.persona-padding-sub-nav {
  width: calc(95vw - 80px) !important;
}
