/*
 * DO NOT EDIT THIS FILE.
 * See the following change record for more information,
 * https://www.drupal.org/node/2815083
 * @preserve
 */

/**
 * @file
 * Nav Primary.
 */

/*
  Media query breakpoints.
  Processed by postcss/postcss-custom-media.
*/

/* Navigation related breakpoints */

/* Grid related breakpoints */

/* Grid shifts from 6 to 14 columns. */

/* Width of the entire grid maxes out. */

/*
  Custom CSS properties.

  These are "compiled" by postcss/postcss-custom-properties for IE11 compatibility.
*/

:root {

  /* Typography */

  /* Layout */

  /* Drupal administrative toolbar heights and width. */

  /*
    Grid helpers.

    These variables help authors apply widths and negative margins to break items out of
    the grid, while still conforming to the larger grid system.

    Note we cannot change the values of these custom properties within media queries,
    as they are processed by postcss/postcss-custom-properties (for IE11 compatibility),
    which does not support that functionality. Therefore, we need a separate custom
    property for each breakpoint. 😭
  */ /* Approximate width of a scrollbar. Doesn't have to be perfect. */

  /* Grid gap across various breakpoints. */

  /* Column counts at various breakpoints. */

  /* Count of grid-gaps at various breakpoints. */

  /* Width of the entire grid at various breakpoints. */

  /* Width of a grid column at various breakpoints */

  /* Layout helpers */ /* Black */ /* Black 1 */ /* Black 2 */ /* Black 3 */ /* Gray Dark */ /* Gray medium */ /* Gray medium 1 */ /* Gray medium 2 */ /* Black 4 */ /* Gray light */ /* Gray light 1 */ /* Gray light 2 */ /* Blue dark */ /* Blue dark 2 */ /* Blue medium */ /* Blue bright */ /* Blue bright 5 */ /* White */ /* Red */ /* Gold */ /* Green */

  /* Shadows */

  /* Radius */

  /* Outlines */

  /* Header */

  /* Width of slide out navigation */

  /* Border radius */

  /* Form */
}

.primary-nav__menu {
  list-style: none;
}

[dir] .primary-nav__menu-item {
  margin-bottom: 9px;
}

[dir] .primary-nav__menu-item:last-child {
    margin-bottom: 0;
  }

.primary-nav__menu-item.primary-nav__menu-item--has-children {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

.primary-nav__menu-item.primary-nav__menu-item--has-children .primary-nav__menu-link--link,
    .primary-nav__menu-item.primary-nav__menu-item--has-children .primary-nav__menu-link--nolink {
      /* Ensure that long text doesn't make the mobile expand button wrap. */
      max-width: calc(100% - 54px);
    }

@media (min-width: 1200px) {
        body:not(.is-always-mobile-nav) .primary-nav__menu-item.primary-nav__menu-item--has-children .primary-nav__menu-link--link, body:not(.is-always-mobile-nav) .primary-nav__menu-item.primary-nav__menu-item--has-children .primary-nav__menu-link--nolink {
          max-width: none;
        }
      }

@media (min-width: 1200px) {
      body:not(.is-always-mobile-nav) .primary-nav__menu-item.primary-nav__menu-item--has-children {
        flex-wrap: nowrap; /* Ensure that subnav toggle button doesn't wrap underneath link. */
      }
    }

.primary-nav__menu-link {
  flex-grow: 1;
  text-decoration: none;
  letter-spacing: -0.0625rem;
  color: #0d1214;
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 2.25rem;
}

.primary-nav__menu-link:hover {
    color: inherit;
  }

@media (min-width: 1200px) {
    body:not(.is-always-mobile-nav) .primary-nav__menu-link {
      letter-spacing: 0.02em;
      font-size: 1rem;
      line-height: 1.6875rem;
    }
  }

.primary-nav__menu-link--nolink {
  color: #6e7172;
  font-weight: normal;
}

[dir] .primary-nav__menu-link--nolink {
  padding: 9px 0;
}

.primary-nav__menu-link--button {
  position: relative;
}

[dir] .primary-nav__menu-link--button {
  padding: 0;
  cursor: pointer;
  border: 0;
  background: transparent;
}

/* Plus icon for mobile navigation. */

.primary-nav__menu-link--button.primary-nav__menu-link--has-children:before,
    .primary-nav__menu-link--button.primary-nav__menu-link--has-children:after {
      position: absolute;
      top: 20px;
      width: 18px;
      height: 0;
      content: "";
    }

[dir] .primary-nav__menu-link--button.primary-nav__menu-link--has-children:before, [dir] .primary-nav__menu-link--button.primary-nav__menu-link--has-children:after {
      border-top: solid 3px #2494db;
    }

[dir=ltr] .primary-nav__menu-link--button.primary-nav__menu-link--has-children:before, [dir=ltr] .primary-nav__menu-link--button.primary-nav__menu-link--has-children:after {
  right: 9px;
    }

[dir=rtl] .primary-nav__menu-link--button.primary-nav__menu-link--has-children:before, [dir=rtl] .primary-nav__menu-link--button.primary-nav__menu-link--has-children:after {
      left: 9px;
    }

.primary-nav__menu-link--button.primary-nav__menu-link--has-children:after {
      transition: opacity 0.2s;
    }

[dir=ltr] .primary-nav__menu-link--button.primary-nav__menu-link--has-children:after {
  transform: rotate(90deg);
    }

[dir=rtl] .primary-nav__menu-link--button.primary-nav__menu-link--has-children:after {
      transform: rotate(-90deg);
    }

.primary-nav__menu-link--button.primary-nav__menu-link--has-children[aria-expanded="true"]:after {
      opacity: 0;
    }

@media (min-width: 1200px) {
        body:not(.is-always-mobile-nav) .primary-nav__menu-link--button.primary-nav__menu-link--has-children[aria-expanded="true"]:after {
          opacity: 1;
        }
      }

@media (min-width: 1200px) {
      [dir=ltr] body:not(.is-always-mobile-nav) .primary-nav__menu-link--button.primary-nav__menu-link--has-children {
    padding-right: 9px;
      }
      [dir=rtl] body:not(.is-always-mobile-nav) .primary-nav__menu-link--button.primary-nav__menu-link--has-children {
        padding-left: 9px;
      }

        body:not(.is-always-mobile-nav) .primary-nav__menu-link--button.primary-nav__menu-link--has-children:before {
          content: none;
        }

        /* Chevron icon for desktop navigation. */
        body:not(.is-always-mobile-nav) .primary-nav__menu-link--button.primary-nav__menu-link--has-children:after {
          position: absolute;
          top: 50%;
          width: 8px;
          height: 8px;
        }
        [dir] body:not(.is-always-mobile-nav) .primary-nav__menu-link--button.primary-nav__menu-link--has-children:after {
          border-top: 0;
          border-bottom: solid 2px currentColor;
        }
        [dir=ltr] body:not(.is-always-mobile-nav) .primary-nav__menu-link--button.primary-nav__menu-link--has-children:after {
    left: 100%;
    transform: translateY(-50%) rotate(45deg);
    border-right: solid 2px currentColor;
        }
        [dir=rtl] body:not(.is-always-mobile-nav) .primary-nav__menu-link--button.primary-nav__menu-link--has-children:after {
          right: 100%;
          transform: translateY(-50%) rotate(-45deg);
          border-left: solid 2px currentColor;
        }
    }

.primary-nav__menu-link-inner {
  position: relative;
  display: inline-flex;
  align-items: center;
}

[dir] .primary-nav__menu-link-inner {
  padding: 9px 0;
}

.primary-nav__menu-link-inner:after {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 0;
    content: "";
    transition: transform 0.2s;
  }

[dir] .primary-nav__menu-link-inner:after {
    transform: scaleX(0);
    border-top: solid 5px #2494db;
  }

[dir=ltr] .primary-nav__menu-link-inner:after {
  left: 0;
  transform-origin: left;
  }

[dir=rtl] .primary-nav__menu-link-inner:after {
    right: 0;
    transform-origin: right;
  }

@media (min-width: 1200px) {
      [dir] body:not(.is-always-mobile-nav) .primary-nav__menu-link-inner:after {
        transform-origin: center;
        border-top-width: 9px;
      }
    }

.primary-nav__menu-link-inner:hover,
  .primary-nav__menu-link-inner:focus {
    outline: 0;
  }

[dir] .primary-nav__menu-link-inner:hover:after, [dir] .primary-nav__menu-link-inner:focus:after {
      transform: scaleX(1);
    }

@media (min-width: 1200px) {
      [dir] body:not(.is-always-mobile-nav) .primary-nav__menu-link--level-2 .primary-nav__menu-link-inner {
        padding: 9px 0;
      }

        [dir] body:not(.is-always-mobile-nav) .primary-nav__menu-link--level-2 .primary-nav__menu-link-inner:after {
          border-top-width: 3px;
        }

        [dir=ltr] body:not(.is-always-mobile-nav) .primary-nav__menu-link--level-2 .primary-nav__menu-link-inner:after {
    transform-origin: left;
        }

        [dir=rtl] body:not(.is-always-mobile-nav) .primary-nav__menu-link--level-2 .primary-nav__menu-link-inner:after {
          transform-origin: right;
        }
    }

@media (min-width: 1200px) {
    [dir] body:not(.is-always-mobile-nav) .primary-nav__menu-link-inner {
      padding: 36px 0;
    }
  }

/*
  Top level specific styles.
*/

[dir] .primary-nav__menu--level-1 {
  margin: 0;
  padding: 0;
}

@media (min-width: 1200px) {
    body:not(.is-always-mobile-nav) .primary-nav__menu--level-1 {
      display: flex;
      align-items: stretch;
    }
    [dir=ltr] body:not(.is-always-mobile-nav) .primary-nav__menu--level-1 {
    margin-right: 18px;
    }
    [dir=rtl] body:not(.is-always-mobile-nav) .primary-nav__menu--level-1 {
      margin-left: 18px;
    }
  }

@media (min-width: 1200px) {
    body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1 {
      position: relative; /* Anchor secondary menu */
      display: flex;
      align-items: center;
      width: -webkit-max-content;
      width: max-content;
      max-width: 200px;
    }
    [dir] body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1 {
      margin: 0;
    }

      [dir=ltr] body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1:not(:last-child) {
    margin-right: 36px;
      }

      [dir=rtl] body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1:not(:last-child) {
        margin-left: 36px;
      }
        html:not(.js) body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1:hover .primary-nav__menu--level-2 {
          visibility: visible;
          opacity: 1;
        }
        html[dir=ltr]:not(.js) body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1:hover .primary-nav__menu--level-2 {
    transform: translate(-50%, 0);
        }
        html[dir=rtl]:not(.js) body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1:hover .primary-nav__menu--level-2 {
          transform: translate(50%, 0);
        }

      /*
        Cannot combine the focus-within pseudoselector with other selectors,
        because it will break IE11 and MS Edge.
      */
        html:not(.js) body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1:focus-within .primary-nav__menu--level-2 {
          visibility: visible;
          opacity: 1;
        }
        html[dir=ltr]:not(.js) body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1:focus-within .primary-nav__menu--level-2 {
    transform: translate(-50%, 0);
        }
        html[dir=rtl]:not(.js) body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1:focus-within .primary-nav__menu--level-2 {
          transform: translate(50%, 0);
        }
  }

.primary-nav__menu-link--level-1 {
  position: relative;
  display: flex;
}

/*
  Secondary menu specific styles.
*/

.primary-nav__menu--level-2 {
  visibility: hidden;
  overflow: hidden;
  flex-basis: 100%;
  max-height: 0;
  transition: opacity 0.2s, visibility 0.2s, max-height 0.2s;
  opacity: 0;
}

[dir=ltr] .primary-nav__menu--level-2 {
  margin-left: -18px;
  padding-left: 45px;
  border-left: solid 18px #2494db;
}

[dir=rtl] .primary-nav__menu--level-2 {
  margin-right: -18px;
  padding-right: 45px;
  border-right: solid 18px #2494db;
}

html:not(.js) .primary-nav__menu--level-2 {
    visibility: visible;
    max-height: none;
    opacity: 1;
  }

.primary-nav__menu--level-2.is-active {
    visibility: visible;
    max-height: none;
    opacity: 1;
  }

[dir] .primary-nav__menu--level-2.is-active {
    margin-top: 27px;
  }

@media (min-width: 1200px) {
      [dir] body:not(.is-always-mobile-nav) .primary-nav__menu--level-2.is-active {
        margin-top: 0;
      }
    }

@media (min-width: 700px) {

[dir=ltr] .primary-nav__menu--level-2 {
    margin-left: -54px;
    padding-left: 54px
}

[dir=rtl] .primary-nav__menu--level-2 {
    margin-right: -54px;
    padding-right: 54px
}
  }

@media (min-width: 1200px) {
    body:not(.is-always-mobile-nav) .primary-nav__menu--level-2 {
      position: absolute;
      z-index: 5; /* Appear above search container. */
      top: calc(100% - 9px);
      visibility: hidden;
      overflow: visible;
      width: 250px;
      max-height: none;
      transition: none;
      opacity: 0; /* Transparent borders useful for Windows High Contrast mode. */
    }
    [dir] body:not(.is-always-mobile-nav) .primary-nav__menu--level-2 {
      margin-top: 0;
      padding: 54px 36px;
      border-top: solid #2494db 9px;
      border-bottom: solid 1px transparent;
      border-radius: 0 0 2px 2px;
      background: #fff;
      box-shadow: 0 1px 36px rgba(0, 0, 0, 0.08);
    }
    [dir=ltr] body:not(.is-always-mobile-nav) .primary-nav__menu--level-2 {
    left: 50%;
    margin-left: 0;
    transform: translate(-50%, -20px);
    border-right: solid 1px transparent;
    border-left: solid 1px transparent;
    }
    [dir=rtl] body:not(.is-always-mobile-nav) .primary-nav__menu--level-2 {
      right: 50%;
      margin-right: 0;
      transform: translate(50%, -20px);
      border-left: solid 1px transparent;
      border-right: solid 1px transparent;
    }

      /* Arrow */
      body:not(.is-always-mobile-nav) .primary-nav__menu--level-2:after {
        position: absolute;
        bottom: calc(100% + 9px);
        width: 0;
        height: 0;
        content: "";
      }
      [dir] body:not(.is-always-mobile-nav) .primary-nav__menu--level-2:after {
        border-bottom: solid 10px #2494db;
      }
      [dir=ltr] body:not(.is-always-mobile-nav) .primary-nav__menu--level-2:after {
    left: 50%;
    transform: translateX(-50%);
    border-right: solid 10px transparent;
    border-left: solid 10px transparent;
      }
      [dir=rtl] body:not(.is-always-mobile-nav) .primary-nav__menu--level-2:after {
        right: 50%;
        transform: translateX(50%);
        border-left: solid 10px transparent;
        border-right: solid 10px transparent;
      }

      body:not(.is-always-mobile-nav) .primary-nav__menu--level-2.is-active {
        visibility: visible;
        opacity: 1;
      }

      [dir=ltr] body:not(.is-always-mobile-nav) .primary-nav__menu--level-2.is-active {
    transform: translate(-50%, 0);
      }

      [dir=rtl] body:not(.is-always-mobile-nav) .primary-nav__menu--level-2.is-active {
        transform: translate(50%, 0);
      }

      /*
       * Only apply transition styles to menu when JS is loaded. This
       * works around https://bugs.chromium.org/p/chromium/issues/detail?id=332189
       */
      html.js body:not(.is-always-mobile-nav) .primary-nav__menu--level-2 {
        transition: visibility 0.2s, transform 0.2s, opacity 0.2s;
      }
  }

.primary-nav__menu-link--level-2 {
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.125rem;
}

@media (min-width: 1200px) {
    body:not(.is-always-mobile-nav) .primary-nav__menu-link--level-2 {
      display: block;
    }
  }
