/** Colors **/
/** Typography **/
.header .toolbar-tray-open .toolbar-menu .menu-item--expanded ul {
  display: block; }

.header .logo {
  max-height: 85px; }
  .header .logo a {
    display: block; }
  .header .logo img {
    max-height: 85px; }

.header .main-menu {
  background: #044c7f;
  position: absolute;
  left: 100%;
  width: 0;
  top: 0;
  height: 100vh;
  -webkit-transition: width 300ms ease, -webkit-transform 300ms ease;
  transition: width 300ms ease, -webkit-transform 300ms ease;
  -o-transition: transform 300ms ease, width 300ms ease;
  transition: transform 300ms ease, width 300ms ease;
  transition: transform 300ms ease, width 300ms ease, -webkit-transform 300ms ease;
  overflow: hidden; }
  @media (min-width: 1025px) {
    .header .main-menu {
      background: none;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      position: static;
      height: auto;
      overflow: visible; } }
  .header .main-menu.menu-open {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
    overflow-y: scroll;
    padding-bottom: 40px !important;
    width: 70%; }
  .header .main-menu > .nice-menu {
    margin: 70px 12%;
    -ms-flex-item-align: start;
    align-self: flex-start;
    display: block; }
    @media (min-width: 1025px) {
      .header .main-menu > .nice-menu {
        margin: 0;
        -ms-flex-item-align: auto;
        align-self: auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; } }
    .header .main-menu > .nice-menu > li:nth-child(6),
    .header .main-menu > .nice-menu > li:nth-child(7) {
      width: 50%;
      float: left; }
      @media (min-width: 1025px) {
        .header .main-menu > .nice-menu > li:nth-child(6),
        .header .main-menu > .nice-menu > li:nth-child(7) {
          float: none;
          width: auto; } }
  .header .main-menu .main-menu__menu__has-child {
    position: relative; }
  .header .main-menu .main-menu__menu__child {
    background: #044c7f;
    position: relative;
    padding: 0 10px;
    margin-left: -10px; }
    @media (min-width: 1025px) {
      .header .main-menu .main-menu__menu__child {
        position: absolute;
        padding: 10px; } }
    .header .main-menu .main-menu__menu__child.menu-open {
      max-height: 100vh; }
    .header .main-menu .main-menu__menu__child li {
      margin: 5px 0 5px 10px; }
      @media (min-width: 1025px) {
        .header .main-menu .main-menu__menu__child li {
          margin: 5px 0; } }
  .header .main-menu a {
    color: #ffffff;
    display: table;
    margin-top: 10px; }
    .header .main-menu a.link-icon {
      border: 2px solid #ffffff;
      margin-top: 0;
      width: 40px;
      height: 40px;
      display: block; }
    .header .main-menu a.facebook {
      background-image: url("../images/facebook-white.svg"); }
    .header .main-menu a.twitter {
      background-image: url("../images/twitter-white.svg"); }
  .header .main-menu .parent-menu-arrow {
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0;
    color: #ffffff;
    -webkit-transition: -webkit-transform 300ms ease;
    transition: -webkit-transform 300ms ease;
    -o-transition: transform 300ms ease;
    transition: transform 300ms ease;
    transition: transform 300ms ease, -webkit-transform 300ms ease; }
    @media (min-width: 1025px) {
      .header .main-menu .parent-menu-arrow {
        display: none; } }
    .header .main-menu .parent-menu-arrow.menu-open {
      -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
      transform: rotate(90deg); }

.header .header-menu-toggle {
  cursor: pointer;
  margin: auto;
  width: 30px;
  height: 24px;
  z-index: 100; }
  @media (min-width: 1025px) {
    .header .header-menu-toggle {
      display: none; } }
  .header .header-menu-toggle .hamburger {
    background: #ffffff;
    width: 30px;
    height: 3px;
    position: relative;
    -webkit-transition: background 10ms 300ms ease;
    -o-transition: background 10ms 300ms ease;
    transition: background 10ms 300ms ease;
    -webkit-transform: translateY(12px);
    -ms-transform: translateY(12px);
    transform: translateY(12px); }
    .header .header-menu-toggle .hamburger::before, .header .header-menu-toggle .hamburger::after {
      -webkit-transition: top 300ms 350ms ease, -webkit-transform 300ms 50ms ease;
      transition: top 300ms 350ms ease, -webkit-transform 300ms 50ms ease;
      -o-transition: top 300ms 350ms ease, transform 300ms 50ms ease;
      transition: top 300ms 350ms ease, transform 300ms 50ms ease;
      transition: top 300ms 350ms ease, transform 300ms 50ms ease, -webkit-transform 300ms 50ms ease;
      position: absolute;
      background: #ffffff;
      width: 30px;
      height: 3px;
      content: ''; }
    .header .header-menu-toggle .hamburger::before {
      top: -9px; }
    .header .header-menu-toggle .hamburger::after {
      top: 9px; }
    .header .header-menu-toggle .hamburger.open {
      background: transparent; }
      .header .header-menu-toggle .hamburger.open::after, .header .header-menu-toggle .hamburger.open::before {
        -webkit-transition: top 300ms 50ms ease, -webkit-transform 300ms 350ms ease;
        transition: top 300ms 50ms ease, -webkit-transform 300ms 350ms ease;
        -o-transition: top 300ms 50ms ease, transform 300ms 350ms ease;
        transition: top 300ms 50ms ease, transform 300ms 350ms ease;
        transition: top 300ms 50ms ease, transform 300ms 350ms ease, -webkit-transform 300ms 350ms ease;
        top: 0; }
      .header .header-menu-toggle .hamburger.open::before {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg); }
      .header .header-menu-toggle .hamburger.open::after {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg); }

body:not(.frontpage) .site-header {
  background: #044c7f;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  padding: 10px 0;
  max-height: 100px; }
  @media (min-width: 1025px) {
    body:not(.frontpage) .site-header {
      max-height: none;
      padding: 25px 0; } }

.frontpage .header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 20;
  padding-top: 20px; }
  @media (min-width: 1025px) {
    .frontpage .header {
      padding-top: 70px; } }
  .frontpage .header .main-menu__menu__has-child .main-menu__menu__child {
    background: transparent; }
  .frontpage .header .main-menu__menu__has-child:hover .main-menu__menu__child {
    background: transparent; }
