@charset "UTF-8";
/**
 * @file
 * Styling for hamburger menu.
 *
 * Variables used: $darkest-gray, $action-color, $horizontal-bar-mode.
 *
 * @see templates/menu--hamburger.html.twig
 * @see templates/block/block--classic-main-menu.html.twig
 * @see js/source/hamburger-menu.js
 * @see classic_theme_suggestions_menu_alter()
 *
 * Based on:
 * @see http://refills.bourbon.io/#er-toc-id-13
 * @see https://codepen.io/jeremytubbs/pen/avdLgw
 */
/**
 * Drupal core's .visually-hidden
 *
 * Note the lack of !important on the position rule.
 * This allows us to change the position property after
 * *unhidding* an element using the unset-visually-hidden
 * mixin below.
 */
/* multi line truncation */
/**
 * Placeholder for dropdown!
 *
 * Selected option is grayed out to give it the look of a placeholder text.
 * This is good for unselected dropdowns where the top item says something like
 * 'Select ...'.  But it is not ideal where a value has been selected already.
 */
/**
 * Style overrides for jQueryUI datepicker.
 */
/**
 * Placeholder for dropdown!
 *
 * Selected option is grayed out to give it the look of a placeholder text.
 * This is good for unselected dropdowns where the top item says something like
 * 'Select ...'.  But it is not ideal where a value has been selected already.
 */
.menu--hamburger {
  min-height: 16px;
  z-index: 999;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }
  @media only screen and (min-width: 769px) {
    .menu--hamburger {
      -ms-flex-line-pack: start;
      align-content: flex-start;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start; } }
  .menu--hamburger .navigation-menu-button {
    color: #209cc0;
    line-height: 16px;
    text-decoration: none;
    width: 4rem;
    height: 4rem;
    width: 64px;
    height: 64px;
    position: relative;
    left: 0;
    top: -4rem;
    top: -64px;
    float: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
    .menu--hamburger .navigation-menu-button .burger {
      content: '';
      font-size: 0;
      position: absolute;
      width: 24px;
      height: 4px;
      background: #209cc0; }
      .menu--hamburger .navigation-menu-button .burger:before {
        position: absolute;
        width: 24px;
        height: 4px;
        background: #209cc0;
        top: -8px;
        left: 0;
        content: ""; }
      .menu--hamburger .navigation-menu-button .burger:after {
        position: absolute;
        width: 24px;
        height: 4px;
        background: #209cc0;
        top: 8px;
        left: 0;
        content: ""; }
    .menu--hamburger .navigation-menu-button:after {
      content: "Menu";
      position: absolute;
      top: 22%;
      left: 25%;
      font-size: .75rem;
      font-weight: lighter;
      text-indent: -1000em; }
    .menu--hamburger .navigation-menu-button:focus, .menu--hamburger .navigation-menu-button:hover {
      color: #091045; }
    @media only screen and (min-width: 769px) {
      .menu--hamburger .navigation-menu-button {
        display: none; } }
  .menu--hamburger nav.menu--navigation,
  .menu--hamburger .menu--navigation {
    float: none;
    min-height: 16px;
    z-index: 9999;
    position: absolute;
    top: 4rem;
    left: 0;
    right: 0;
    display: none;
    background-color: #fff; }
    @media only screen and (min-width: 769px) {
      .menu--hamburger nav.menu--navigation,
      .menu--hamburger .menu--navigation {
        position: initial;
        display: block; } }
    .menu--hamburger nav.menu--navigation .menu,
    .menu--hamburger .menu--navigation .menu {
      clear: both;
      display: none;
      margin: 0 auto;
      overflow: visible;
      padding: 0;
      width: 100%;
      z-index: 9999;
      padding: 10px 16px 22px 17px; }
      @media only screen and (min-width: 769px) {
        .menu--hamburger nav.menu--navigation .menu,
        .menu--hamburger .menu--navigation .menu {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
          -ms-flex-direction: row;
          flex-direction: row;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-pack: justify;
          -ms-flex-pack: justify;
          justify-content: space-between;
          padding: 0; } }
    .menu--hamburger nav.menu--navigation .menu .menu-item,
    .menu--hamburger .menu--navigation .menu .menu-item {
      background: #fff;
      display: block;
      line-height: 16px;
      overflow: hidden;
      text-align: left;
      width: 100%;
      z-index: 9999;
      border-bottom: 1px solid #ddd; }
      .menu--hamburger nav.menu--navigation .menu .menu-item:last-child,
      .menu--hamburger .menu--navigation .menu .menu-item:last-child {
        border-bottom: 0; }
      @media only screen and (min-width: 769px) {
        .menu--hamburger nav.menu--navigation .menu .menu-item,
        .menu--hamburger .menu--navigation .menu .menu-item {
          background: transparent;
          display: inline;
          line-height: 16px;
          text-decoration: none;
          width: auto;
          border-bottom: 0; } }
      .menu--hamburger nav.menu--navigation .menu .menu-item a.menu-link,
      .menu--hamburger .menu--navigation .menu .menu-item a.menu-link {
        color: #209cc0;
        display: inline-block;
        text-decoration: none;
        font-family: "Rubik";
        padding: 18px 0; }
        .menu--hamburger nav.menu--navigation .menu .menu-item a.menu-link:focus, .menu--hamburger nav.menu--navigation .menu .menu-item a.menu-link:hover,
        .menu--hamburger .menu--navigation .menu .menu-item a.menu-link:focus,
        .menu--hamburger .menu--navigation .menu .menu-item a.menu-link:hover {
          color: #0a151b; }
          @media only screen and (min-width: 769px) {
            .menu--hamburger nav.menu--navigation .menu .menu-item a.menu-link:focus, .menu--hamburger nav.menu--navigation .menu .menu-item a.menu-link:hover,
            .menu--hamburger .menu--navigation .menu .menu-item a.menu-link:focus,
            .menu--hamburger .menu--navigation .menu .menu-item a.menu-link:hover {
              color: #091045; } }
        @media only screen and (min-width: 769px) {
          .menu--hamburger nav.menu--navigation .menu .menu-item a.menu-link,
          .menu--hamburger .menu--navigation .menu .menu-item a.menu-link {
            padding: 0;
            padding-right: 1em; } }
  .menu--hamburger .more.menu-item {
    padding-right: 0;
    padding-left: 0; }
    @media only screen and (min-width: 769px) {
      .menu--hamburger .more.menu-item {
        padding-right: 1em; } }
    .menu--hamburger .more.menu-item > .menu > .menu-item:first-child .menu-link {
      padding-top: 1em; }
    .menu--hamburger .more.menu-item .menu-link {
      margin-right: 1em; }
    .menu--hamburger .more.menu-item > .menu-link {
      padding-right: 0.6em;
      padding-left: 0.8em; }
      @media only screen and (min-width: 769px) {
        .menu--hamburger .more.menu-item > .menu-link {
          padding-left: 0; } }
    .menu--hamburger .more.menu-item > .menu-link::after {
      position: absolute;
      top: auto;
      right: -4em;
      bottom: auto;
      left: auto;
      color: #209cc0;
      content: "\25BE"; }
  .menu--hamburger .more {
    overflow: visible;
    padding-right: 0; }
    .menu--hamburger .more .menu-link {
      padding-right: 0.8em; }
    .menu--hamburger .more > .menu-link {
      padding-right: 1.6em;
      position: relative; }
      @media only screen and (min-width: 769px) {
        .menu--hamburger .more > .menu-link {
          margin-right: 1em; } }
      .menu--hamburger .more > .menu-link::after {
        content: "›";
        font-size: 1.2em;
        position: absolute;
        right: 0.5em; }
    .menu--hamburger .more:focus > .submenu,
    .menu--hamburger .more:hover > .submenu {
      display: block; }
    @media only screen and (min-width: 769px) {
      .menu--hamburger .more {
        position: relative; } }
  .menu--hamburger .submenu {
    display: none;
    padding-left: 0; }
    @media only screen and (min-width: 769px) {
      .menu--hamburger .submenu {
        left: -1em;
        position: absolute;
        top: 1.5em; } }
    @media only screen and (min-width: 769px) {
      .menu--hamburger .submenu .submenu.fly-out-right {
        left: 11.8em;
        top: 0; } }
    @media only screen and (min-width: 769px) {
      .menu--hamburger .submenu .submenu.fly-out-left {
        left: -11.8em;
        top: 0; } }
    @media only screen and (min-width: 769px) {
      .menu--hamburger .submenu .submenu {
        left: 11.8em;
        top: 0; } }
    .menu--hamburger .submenu .menu-item {
      display: block;
      padding-right: 0;
      padding-left: 0; }
      @media only screen and (min-width: 769px) {
        .menu--hamburger .submenu .menu-item {
          line-height: 12.30769px; } }
      .menu--hamburger .submenu .menu-item .menu-link {
        display: inline-block;
        text-align: left;
        width: 100%;
        padding-left: 0.8em; }
        @media only screen and (min-width: 769px) {
          .menu--hamburger .submenu .menu-item .menu-link {
            background-color: #fff;
            padding-left: 1em;
            text-align: left;
            width: 12em; } }

/**
 * Menu is open.  Change burger button to an X shape.
 */
.menu--hamburger.is-open {
  /* Initially, only list the top level menu items in an open menu. */
  /* An active item in a submenu should expand that submenu. */ }
  .menu--hamburger.is-open .menu--navigation {
    display: block; }
  .menu--hamburger.is-open > .menu--navigation > .menu {
    display: block; }
  .menu--hamburger.is-open .menu-item--active-trail > .submenu {
    display: block; }
  .menu--hamburger.is-open .navigation-menu-button > .burger {
    background: transparent; }
    .menu--hamburger.is-open .navigation-menu-button > .burger:before {
      top: 0;
      -webkit-transform: rotateZ(-45deg);
      transform: rotateZ(-45deg); }
    .menu--hamburger.is-open .navigation-menu-button > .burger:after {
      top: 0;
      -webkit-transform: rotateZ(45deg);
      transform: rotateZ(45deg); }
  .menu--hamburger.is-open .navigation-menu-button:after {
    content: "Close";
    left: 20%; }

/*# sourceMappingURL=hamburger-menu.css.map */
