/* ============================================================
  Styles for components that are shared across the whole site.
  Individual SCSS files in this directory are separate libraries
  that are added in templates, etc.
  ============================================================ */
/* ============================================================
  Preprocessors, fonts, variables.
  These ITCSS naming conventions and structure are inspired by Lindsay Grizzard's article on Medium: https://medium.com/gusto-design/creating-the-perfect-css-system-fa38f5bcdd9e
  ============================================================ */
/* ============================================================
  Vendor-specific styles.
  ============================================================ */
/* ============================================================
  Breakpoints
  ============================================================ */
/* ============================================================
  Colors
  ============================================================ */
/* Opacity Mixin for background color only */
/* ============================================================
  Styles for fonts/typefaces.
  ============================================================ */
@import url("https://fonts.googleapis.com/css2?family=Red+Hat+Text:wght@400;500;700&display=swap");
/* ============================================================
  Placeholders for repeat styles.
  ============================================================ */
.search-box > div {
  max-width: 1220px;
  margin: 0 auto;
  padding: 0 1em; }
  @media (min-width: 1025px) {
    .search-box > div {
      padding: 2em; } }
  @media (min-width: 1440px) {
    .search-box > div {
      padding: 2em 0; } }


.nomargin {
  margin: 0 !important; }


.nopadding {
  padding: 0 !important; }


.nospacing {
  margin: 0 !important;
  padding: 0 !important; }

.hideClass {
  display: none; }

.showClass {
  display: block; }

::placeholder {
  color: #404040;
  opacity: 1;
  font-family: "Red Hat Text", sans-serif !important;
  font-size: 1.125rem; }

/* ============================================================
  Styles for accordions and the image + text paragraph.
  ============================================================ */
.accordion-container .accordion-item {
  margin: 0 0 0.75rem;
  border-bottom: 2px solid rgba(151, 151, 151, 0.25); }
  .accordion-container .accordion-item .anchor {
    display: block;
    position: relative;
    top: -120px;
    visibility: hidden; }
  .accordion-container .accordion-item a {
    color: #3c5f96; }
    .accordion-container .accordion-item a.button {
      color: #fff; }
    .accordion-container .accordion-item a:hover {
      color: #164046; }

.accordion-container .ui-state-default,
.accordion-container .ui-accordion-content {
  background: transparent;
  border: 0; }
  .accordion-container .ui-state-default .icon-link__group .icon-link__group__content,
  .accordion-container .ui-accordion-content .icon-link__group .icon-link__group__content {
    grid-template-columns: repeat(2, 1fr); }
    .accordion-container .ui-state-default .icon-link__group .icon-link__group__content .icon-link__item__icon,
    .accordion-container .ui-accordion-content .icon-link__group .icon-link__group__content .icon-link__item__icon {
      padding: 1rem 1.2rem; }

.accordion-container .title {
  border: 0;
  color: #3c5f96;
  display: flex;
  justify-content: space-between;
  align-content: center;
  align-items: center;
  font-size: 1.25rem;
  font-weight: 500;
  padding: 0.5rem 0.75rem;
  position: relative; }
  .accordion-container .title span {
    display: block;
    max-width: 90%; }
  .accordion-container .title svg {
    font-size: 1.25rem; }
  .accordion-container .title .fa-sort-up {
    display: none; }
  .accordion-container .title.ui-state-active .fa-sort-down {
    display: none; }
  .accordion-container .title.ui-state-active .fa-sort-up {
    display: block; }

.accordion-container .body,
.paragraph--type--image-text .body {
  font-family: "Red Hat Text", sans-serif;
  line-height: 1.5; }
  .accordion-container .body.ui-accordion-content,
  .paragraph--type--image-text .body.ui-accordion-content {
    padding: 1rem; }
  .accordion-container .body .txt,
  .paragraph--type--image-text .body .txt {
    overflow: hidden; }
    .accordion-container .body .txt ul,
    .accordion-container .body .txt ol,
    .paragraph--type--image-text .body .txt ul,
    .paragraph--type--image-text .body .txt ol {
      margin: 1rem; }

/* ============================================================
  Styles for cards.
  ============================================================ */
.card--grid-container {
  display: block; }
  @media (min-width: 768px) {
    .card--grid-container {
      display: grid;
      grid-template-columns: repeat(3, minmax(250px, 1fr)); }
      .card--grid-container .paragraph--type--card-item {
        margin-bottom: 2rem;
        flex-basis: 33%;
        width: 100%; } }

.card {
  background: #eee;
  display: flex;
  flex-direction: column;
  margin: 0 0 1.5rem;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  margin: 0 0 2.5rem;
  height: 100%; }
  @media (min-width: 666px) {
    .card {
      margin: 0 1rem 1.5rem; } }
  .card:hover {
    text-decoration: none; }
  .card .card--content h3 {
    color: #000;
    font-size: 1.5rem;
    font-weight: 500;
    margin: 1rem; }
  .card .card--content button {
    width: 100%;
    margin: 2rem 2rem;
    max-width: -webkit-fill-available; }
  .card .card--content.sidebar {
    background: #eee;
    border-top: 7px solid #437e93;
    padding: 1.5rem; }
    .card .card--content.sidebar h2 {
      border-bottom: 0;
      color: #404040;
      font-family: "Red Hat Text", sans-serif;
      font-size: 1.625rem;
      font-weight: 700;
      line-height: 1.3;
      margin: 0 0 1em; }
    .card .card--content.sidebar h3 {
      color: #404040;
      font-size: 1.75rem;
      margin: 0 0 0.5rem; }
    .card .card--content.sidebar p {
      line-height: 1.75; }
      .card .card--content.sidebar p strong {
        color: #4a5978; }
  .card .card--content.newsletter {
    background: #eee;
    margin: 1em 0;
    padding: 1.5rem; }
    .card .card--content.newsletter h3 {
      color: #404040;
      font-size: 1.75rem;
      margin: 0 0 0.5rem; }
    .card .card--content.newsletter input {
      margin: 1rem 0; }
  .card .card--content h5 {
    margin: 1.25rem 0; }
  .card .card--content.report-issue p strong {
    color: #3c5f96; }
  .card a.cta {
    font-weight: 500;
    margin: 0;
    padding: 0; }
  .card .title,
  .card .body {
    margin: 1rem;
    word-break: break-word; }

a.card:hover .card--content .title {
  color: #164046; }

a.card .card--content .title {
  color: #3c5f96;
  font-size: 1.25rem; }

a.card .card--content .body {
  color: #404040;
  font-weight: 400; }

.card__menu {
  padding: 0 1rem;
  margin-bottom: 5rem; }
  .card__menu h2,
  .card__menu h3,
  .card__menu h4 {
    color: #3c5f96;
    font-family: "Red Hat Text", sans-serif;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.3;
    margin: 0 0 1rem 0; }
  .card__menu .menu li {
    margin: 0 0 1.8em; }
    .card__menu .menu li a {
      font-family: "Red Hat Text", sans-serif;
      text-decoration: none;
      display: block;
      font-size: 1.125rem;
      padding: 0 0 0 0.5rem;
      margin: 0 0 0 -0.5rem;
      color: #3c5f96;
      border: 0; }
    .card__menu .menu li.is-active > a {
      color: #3c5f96;
      font-weight: 700;
      border-left: solid 0.2rem #3c5f96; }
    .card__menu .menu li ul {
      margin: 0.5rem 0 0 1rem; }
    .card__menu .menu li li.is-active ul.menu {
      margin-left: 2rem; }
    .card__menu .menu li .menu-item--expanded.menu-item--active-trail .menu .menu-item--active-trail a {
      display: block;
      font-weight: 700;
      border-left: solid 0.2rem #3c5f96; }
    .card__menu .menu li .menu-item--expanded.menu-item--active-trail .menu .menu-item--expanded .menu a {
      display: block;
      font-weight: 400; }
      .card__menu .menu li .menu-item--expanded.menu-item--active-trail .menu .menu-item--expanded .menu a::before {
        content: " "; }
    .card__menu .menu li .menu-item--expanded.menu-item--active-trail .menu .menu-item--expanded .menu-item--active-trail a {
      display: block;
      font-weight: 700;
      border-left: solid 0.2rem #3c5f96; }

.layout-sidebar-first .card__menu {
  border-right: solid 2px #eee; }

.layout-sidebar-first .sidebar-block {
  border-right: solid 0.15rem #eee; }

.layout-sidebar-second .card__menu {
  border-left: solid 0.2rem #eee; }

.layout-sidebar-second .sidebar-block {
  border-left: solid 0.2rem #eee; }
  .layout-sidebar-second .sidebar-block div {
    margin-left: 1rem; }
    .layout-sidebar-second .sidebar-block div .paragraph--view-mode--reusable-component h2 {
      font-size: 1.5rem; }

#block-featured-menu-sidebar-right {
  border-left: 2px solid #eee; }
  #block-featured-menu-sidebar-right h2,
  #block-featured-menu-sidebar-right .featured-menu-container {
    margin-left: 1rem; }

#block-featured-menu-sidebar-left {
  border-right: solid 0.15rem #eee; }
  #block-featured-menu-sidebar-left h2,
  #block-featured-menu-sidebar-left .featured-menu-container {
    margin-right: 1rem; }

/* ============================================================
  Styles for exposed filters.
  ============================================================ */
/* ============================================================
  Styles for Icon & Link Paragraphs
  ============================================================ */
.icon-link__group__content {
  display: grid;
  grid-template-columns: auto;
  grid-gap: 2rem; }
  @media (min-width: 768px) {
    .icon-link__group__content {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1025px) {
    .icon-link__group__content {
      grid-template-columns: repeat(3, 1fr); } }

.icon-link__item {
  align-items: flex-start;
  display: flex; }
  .icon-link__item:hover h3 {
    color: #4a5978;
    text-decoration: underline; }
  .icon-link__item:hover .icon-link__item__icon {
    background: #4a5978; }
    .icon-link__item:hover .icon-link__item__icon svg {
      color: #fff; }
  .icon-link__item__icon {
    background: #eee;
    border: 0;
    border-radius: 100%;
    font-size: 2.5rem;
    padding: 1rem;
    text-decoration: none; }
    .icon-link__item__icon svg {
      margin: 0; }
  .icon-link__item__text {
    margin: .25rem 0 .25rem 1rem; }
    .icon-link__item__text h3 {
      color: #3c5f96;
      font-size: 1.5rem;
      margin: 0; }
    .icon-link__item__text p {
      color: #404040;
      font-size: 1rem;
      font-weight: 400;
      margin: 0; }

.paragraph--type--icon-title-item {
  font-size: 1.125rem;
  margin: 0 0 .5rem; }
  .paragraph--type--icon-title-item svg {
    color: #3c5f96; }

.taxonomy-icon-wrapper {
  display: flex;
  font-size: 1.125rem;
  margin: 0 0 .5rem; }

/* ============================================================
  Styles for the iframe paragraph
  ============================================================ */
.paragraph--type--esri-embed {
  margin: 2rem 0;
  width: 100%; }
  .paragraph--type--esri-embed .fullscreen {
    float: right;
    margin: 0.5rem 0; }
  .paragraph--type--esri-embed iframe {
    width: 100%; }

.paragraph--type--image .img-wrap {
  display: block;
  margin: 0 auto 1rem;
  width: 100%; }
  @media (min-width: 666px) {
    .paragraph--type--image .img-wrap.left {
      float: left;
      margin: .5rem 1rem 1rem 0;
      max-width: 50%; } }
  @media (min-width: 666px) {
    .paragraph--type--image .img-wrap.right {
      float: right;
      margin: .5rem 0 1rem 1rem;
      max-width: 50%; } }
  @media (min-width: 666px) {
    .paragraph--type--image .img-wrap.center {
      max-width: 100%; } }
  @media (min-width: 768px) {
    .paragraph--type--image .img-wrap.small {
      max-width: 20%; } }
  @media (min-width: 768px) {
    .paragraph--type--image .img-wrap.medium {
      max-width: 35%; } }
  @media (min-width: 768px) {
    .paragraph--type--image .img-wrap.large {
      max-width: 50%; } }
  .paragraph--type--image .img-wrap.full {
    max-width: 100%;
    width: 100%; }
    .paragraph--type--image .img-wrap.full.left, .paragraph--type--image .img-wrap.full.right {
      float: unset;
      margin: 0 auto 1rem; }
  .paragraph--type--image .img-wrap .caption {
    margin: .5rem auto;
    display: block;
    text-align: left;
    font-style: italic; }
    .paragraph--type--image .img-wrap .caption a {
      color: #3c5f96;
      text-decoration: underline; }
      .paragraph--type--image .img-wrap .caption a:hover {
        color: #fff;
        background: #3c5f96;
        text-decoration: none; }

/* ============================================================
  Styles for the links paragraph
  ============================================================ */
@media (min-width: 768px) {
  .paragraph--type--links .link-wrap {
    columns: 2; } }

.paragraph--type--links .link-wrap a {
  display: block;
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.5;
  padding-bottom: 0.5rem; }
  @media (min-width: 444px) {
    .paragraph--type--links .link-wrap a {
      line-height: 2; } }

.outline__item {
  padding: 1rem 1rem 2rem;
  margin: 3rem 0;
  display: flex;
  flex-direction: column; }
  @media (min-width: 768px) {
    .outline__item {
      flex-direction: row; } }
  .outline__item--counter {
    font-family: "Red Hat Text", sans-serif;
    font-weight: 500;
    border: 0.163rem solid #979797;
    color: #4a5978;
    border-radius: 50%;
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    flex: 0 0 auto;
    margin: 1.5rem 1rem 1rem; }

/* ============================================================
  Styles for the search bar (in the menu).
  ============================================================ */
.search-trigger {
  background: transparent;
  border: 0;
  color: #404040;
  cursor: pointer;
  display: none !important;
  font-family: "Red Hat Text", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  margin: 0;
  padding: 0;
  text-align: left; }
  @media (min-width: 1025px) {
    .search-trigger {
      display: inline-block !important; }
      .search-trigger:hover {
        border: 0;
        color: #164046;
        text-decoration: underline; } }
  @media (min-width: 768px) {
    .search-trigger {
      font-size: 1.125rem; } }
  .search-trigger svg {
    position: relative;
    top: .1rem; }

.search-box {
  display: none;
  padding: .75rem;
  transform: scaleY(0);
  width: 100%;
  z-index: 10; }
  @media (min-width: 1025px) {
    .search-box {
      background: #4a5978;
      border-top: 0.1875rem solid #eee;
      display: block;
      position: absolute;
      transform: scaleY(0);
      transform-origin: top;
      transition: transform .3s;
      width: 100%;
      margin: 0 auto; } }
  .menu-open .search-box {
    display: block;
    height: 5rem;
    position: absolute;
    top: 6rem;
    transform: scaleY(1);
    z-index: 400; }
    @media (min-width: 1025px) {
      .menu-open .search-box {
        display: none; } }
  .search-box.active {
    transform: scaleY(1); }
  .search-box > div {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between; }
    @media (min-width: 1025px) {
      .search-box > div {
        padding: 1rem 0; } }
  .search-box form {
    flex: 1;
    position: relative; }
    .search-box form .search-form-text {
      display: flex;
      align-items: center; }
    .search-box form label {
      display: none; }
      @media (min-width: 1025px) {
        .search-box form label {
          display: block;
          font-size: 1.25rem;
          margin: 0 1rem 0 0; } }
      .translated-ltr .search-box form label,
      .translater-rtl .search-box form label {
        font-size: 1rem; }
    .search-box form input {
      background-image: none;
      font-family: "Red Hat Text", sans-serif;
      font-size: 1rem;
      margin: 0;
      padding: 1.25rem; }
      @media (min-width: 1025px) {
        .search-box form input {
          font-size: 1.125rem; } }
    .search-box form .search-form-submit {
      display: inline-block;
      position: absolute;
      top: .1875rem;
      right: 0; }
      .search-box form .search-form-submit button {
        background: transparent;
        border: 0;
        color: #4a5978;
        margin: 0;
        padding: .5rem 1rem; }
        .search-box form .search-form-submit button:hover {
          color: #164046; }
        @media (min-width: 1025px) {
          .search-box form .search-form-submit button {
            padding: .75rem 1rem; } }
  .search-box .close {
    display: none; }
    @media (min-width: 1025px) {
      .search-box .close {
        background: transparent;
        display: flex;
        margin: 0 0 0 4rem;
        padding: 0; }
        .search-box .close:hover {
          color: #bacae4; }
        .search-box .close svg {
          font-size: 1.8rem;
          margin: 0 .5rem; } }

/* ============================================================
  TRANSLATION STYLES
  Styles used for the translation component on the website.
  This will contain the styles for the button and container
  in the header, and also any overrides of the default styles
  provided by the translation service.
  ============================================================ */
.translate__button {
  background: none;
  border: 0;
  color: #fff;
  font-size: 1.125rem;
  font-weight: 500;
  margin: 0;
  padding: 0;
  text-decoration: none; }
  .menu-open .translate__button {
    border-top: 0.0625rem solid #eee;
    display: block;
    text-align: left;
    width: 100%;
    padding-top: 1rem; }
  @media (min-width: 1025px) {
    .translate__button {
      color: #3c5f96;
      font-size: 1rem;
      text-align: center;
      width: initial; } }
  .translate__button:hover {
    background: none;
    border: 0;
    color: #bacae4; }
    @media (min-width: 1025px) {
      .translate__button:hover {
        color: #4a5978; } }

.translate__container {
  display: none;
  margin: 1rem;
  width: 100%; }
  @media (min-width: 1025px) {
    .translate__container {
      background: #fff;
      border: 0.063rem solid #3c5f96;
      box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.3);
      margin: 0;
      max-width: 12rem;
      position: absolute;
      right: 0;
      top: 1.75rem;
      z-index: 100; } }

.weglot-container {
  width: 100%; }
  .weglot-container .wg-list.country-selector {
    width: 100%; }
    .weglot-container .wg-list.country-selector .wgcurrent {
      font-size: 1rem; }
      .weglot-container .wg-list.country-selector .wgcurrent a {
        display: block;
        padding: .25rem .5rem;
        text-decoration: none;
        white-space: nowrap; }
        .menu-open .weglot-container .wg-list.country-selector .wgcurrent a {
          color: #fff; }
    .weglot-container .wg-list.country-selector ul {
      display: block; }
    .weglot-container .wg-list.country-selector li.wg-li {
      display: block;
      font-size: 1rem; }
      .weglot-container .wg-list.country-selector li.wg-li a {
        color: #fff;
        display: block;
        padding: .25rem .5rem;
        text-decoration: none; }
        @media (min-width: 1025px) {
          .weglot-container .wg-list.country-selector li.wg-li a {
            color: #3c5f96; } }
        .weglot-container .wg-list.country-selector li.wg-li a:hover {
          color: #bacae4; }
          @media (min-width: 1025px) {
            .weglot-container .wg-list.country-selector li.wg-li a:hover {
              color: #4a5978; } }
  .weglot-container svg {
    color: #78dbac !important; }
    @media (min-width: 1025px) {
      .weglot-container svg {
        color: #279360; } }

/* ============================================================
  Styles for general Views
  ============================================================ */
.views-element-container footer {
  background: none;
  margin: initial; }

.paragraph--type--view {
  position: relative; }

/* ============================================================
  Styles for the hero banner area on the front page and
  department pages.
  ============================================================ */
.hero--wrapper {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  margin-top: .5rem; }
  @media (min-width: 1025px) {
    .hero--wrapper {
      display: block;
      margin-top: 2rem; } }
  .hero--wrapper .hero--image img {
    object-fit: cover;
    max-height: 150px; }
    @media (min-width: 1025px) {
      .hero--wrapper .hero--image img {
        max-height: 380px; } }
  .hero--wrapper .hero--banner {
    padding: 0 1rem 1rem;
    text-align: center; }
    @media (min-width: 1025px) {
      .hero--wrapper .hero--banner {
        position: absolute;
        bottom: 0;
        display: flex;
        flex-direction: initial;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        padding: 0 2rem;
        margin: 0; } }
    .hero--wrapper .hero--banner--title {
      color: #fff;
      font-size: 1.75rem; }
    .hero--wrapper .hero--banner .button {
      background: #fff;
      border: 0.163rem solid #fff;
      display: flex;
      justify-content: center;
      align-content: center;
      align-items: center;
      padding: .75rem 3rem; }
    .hero--wrapper .hero--banner.brand-blue-bg {
      background: #3c5f96;
      background: rgba(60, 95, 150, 0.9); }
      .hero--wrapper .hero--banner.brand-blue-bg .button {
        color: #3c5f96; }
        .hero--wrapper .hero--banner.brand-blue-bg .button:hover {
          background: #3c5f96;
          color: #fff; }
    .hero--wrapper .hero--banner.brand-dark-blue-bg {
      background: #4a5978;
      background: rgba(74, 89, 120, 0.9); }
      .hero--wrapper .hero--banner.brand-dark-blue-bg .button {
        color: #4a5978; }
        .hero--wrapper .hero--banner.brand-dark-blue-bg .button:hover {
          background: #4a5978;
          color: #fff; }
    .hero--wrapper .hero--banner.gray-bg {
      background: #404040;
      background: rgba(64, 64, 64, 0.9); }
      .hero--wrapper .hero--banner.gray-bg .button {
        color: #404040; }
        .hero--wrapper .hero--banner.gray-bg .button:hover {
          background: #404040;
          color: #fff; }
    .hero--wrapper .hero--banner.extra-light-gray-bg {
      background: #eee;
      background: rgba(238, 238, 238, 0.9); }
      .hero--wrapper .hero--banner.extra-light-gray-bg h2 {
        color: #404040; }
      .hero--wrapper .hero--banner.extra-light-gray-bg .button {
        color: #404040; }
        .hero--wrapper .hero--banner.extra-light-gray-bg .button:hover {
          background: #404040;
          color: #fff; }
    .hero--wrapper .hero--banner.brand-blue-bg .library-hero-link, .hero--wrapper .hero--banner.brand-dark-blue-bg .library-hero-link, .hero--wrapper .hero--banner.gray-bg .library-hero-link, .hero--wrapper .hero--banner.extra-light-gray-bg .library-hero-link {
      color: #fff;
      font-size: 1.25rem; }
      .hero--wrapper .hero--banner.brand-blue-bg .library-hero-link:hover, .hero--wrapper .hero--banner.brand-dark-blue-bg .library-hero-link:hover, .hero--wrapper .hero--banner.gray-bg .library-hero-link:hover, .hero--wrapper .hero--banner.extra-light-gray-bg .library-hero-link:hover {
        text-decoration: underline; }

.highlight-container {
  margin: 0 0 1.5rem;
  padding: 2rem 2.5rem; }
  .highlight-container.brand-blue-bg h3, .highlight-container.brand-dark-blue-bg h3, .highlight-container.gray-bg h3 {
    margin-top: 0;
    color: #fff; }
  .highlight-container.brand-blue-bg .cta, .highlight-container.brand-dark-blue-bg .cta, .highlight-container.gray-bg .cta {
    margin-bottom: 0;
    color: #fff;
    text-decoration: underline; }
  .highlight-container.brand-blue-bg a:not(.cta):not(.button), .highlight-container.brand-dark-blue-bg a:not(.cta):not(.button), .highlight-container.gray-bg a:not(.cta):not(.button) {
    color: #fff; }
    .highlight-container.brand-blue-bg a:not(.cta):not(.button):hover, .highlight-container.brand-dark-blue-bg a:not(.cta):not(.button):hover, .highlight-container.gray-bg a:not(.cta):not(.button):hover {
      text-decoration: none; }
  .highlight-container.brand-blue-bg .button, .highlight-container.brand-dark-blue-bg .button {
    background: #fff;
    border: 0.163rem solid #4a5978;
    color: #4a5978; }
    .highlight-container.brand-blue-bg .button:hover, .highlight-container.brand-dark-blue-bg .button:hover {
      background: #4a5978;
      border: 0.163rem solid #fff;
      color: #fff; }
  .highlight-container .button {
    padding: .75rem 3rem;
    min-width: auto; }

/* ============================================================
  Styles for Featured Menu
  Used for the "I want to..." blocks.
  ============================================================ */
.featured-menu-wrapper {
  display: block;
  width: 100%;
  margin: 2rem;
  padding: 1rem 2rem 4rem;
  background: #eee; }
  @media (min-width: 888px) {
    .featured-menu-wrapper {
      position: relative;
      max-width: 48.75rem; } }
  .featured-menu-wrapper.active {
    display: block; }
  .featured-menu-wrapper button {
    background: #4a5978;
    border: 0.163rem solid #fff;
    border-radius: 0;
    color: #fff;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    font-weight: 800;
    margin: 0;
    padding: .75rem;
    text-align: left;
    text-decoration: none;
    width: 100%; }
    .featured-menu-wrapper button svg {
      font-size: 1rem; }
    .featured-menu-wrapper button .fa-chevron-up {
      display: none; }
    .featured-menu-wrapper button.active .fa-chevron-down {
      display: none; }
    .featured-menu-wrapper button.active .fa-chevron-up {
      display: block; }
  .featured-menu-wrapper a {
    background: #4a5978;
    border-bottom: 0;
    color: #fff;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: space-between;
    padding: .5rem;
    text-align: left;
    text-decoration: none; }
    .featured-menu-wrapper a svg {
      opacity: .5; }
    .featured-menu-wrapper a:hover {
      background: #437e93; }
      .featured-menu-wrapper a:hover svg {
        opacity: 1; }
  .featured-menu-wrapper label {
    font-size: 2rem;
    margin: 0 0 1.5rem; }
  .featured-menu-wrapper .featured-menu-container {
    display: flex; }
    .featured-menu-wrapper .featured-menu-container button {
      padding: .75rem 2.5rem;
      font-weight: 500;
      border: 0;
      width: auto; }
    .featured-menu-wrapper .featured-menu-container select {
      margin-right: 1rem;
      border: 0;
      font-size: 1.25rem;
      font-style: italic; }

/* ============================================================
  Styles for webforms. Most of the universal styles will
  be within 3-atoms/_form-elements.scss, but these are
  webform-specific overrides.
  ============================================================ */
.webform-submission-form .webform-required {
  margin: 1rem 0; }

.webform-submission-form .webform-element-description {
  font-family: "Red Hat Text", sans-serif;
  margin: .5rem 0; }

.webform-submission-form .webform-button--submit {
  margin-top: 1rem; }

.webform-submission-form .msg,
.webform-submission-form > .form-item {
  margin: 1rem 0; }

.webform-submission-form .form-select,
.webform-submission-form .js-form-type-select {
  margin-bottom: 1rem; }
  .webform-submission-form .form-select select,
  .webform-submission-form .js-form-type-select select {
    border: 0.163rem solid #979797;
    border-radius: .5rem;
    padding: .75rem 2rem .75rem .75rem;
    width: auto; }

.webform-submission-form .js-form-type-radio {
  margin-top: .5rem; }
  .webform-submission-form .js-form-type-radio label {
    display: inline;
    font-family: "Red Hat Text", sans-serif;
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1.5; }

.webform-submission-form .js-form-type-checkbox {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  align-content: center; }
  .webform-submission-form .js-form-type-checkbox input[type="checkbox"] {
    margin: .5rem;
    width: auto; }
  .webform-submission-form .js-form-type-checkbox label {
    display: inline-block;
    font-family: "Red Hat Text", sans-serif;
    font-size: 1.125rem;
    line-height: 1.5;
    font-weight: 400;
    margin: 0; }

.webform-submission-form .tableselect th:first-child,
.webform-submission-form .tableselect td:first-child {
  text-align: center;
  width: 3rem; }
  .webform-submission-form .tableselect th:first-child input.form-checkbox,
  .webform-submission-form .tableselect td:first-child input.form-checkbox {
    margin: .5rem 0; }

.webform-submission-form .webform-tableselect-sort tr.draggable td:first-of-type {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  width: 4.5rem; }
  .webform-submission-form .webform-tableselect-sort tr.draggable td:first-of-type a.tabledrag-handle {
    display: flex;
    float: inherit;
    margin: 0;
    height: 2rem;
    width: 2.5rem; }
    .webform-submission-form .webform-tableselect-sort tr.draggable td:first-of-type a.tabledrag-handle .handle {
      background-position: center center;
      margin: 0;
      padding: 0;
      width: 100%;
      height: 100%; }
  .webform-submission-form .webform-tableselect-sort tr.draggable td:first-of-type .js-form-type-checkbox {
    width: 100%; }
    .webform-submission-form .webform-tableselect-sort tr.draggable td:first-of-type .js-form-type-checkbox input {
      margin: .5rem 0;
      padding: 1rem; }

.webform-submission-form .webform-tableselect-sort tr.draggable .js-form-type-select {
  margin-bottom: 0; }

.webform-submission-form .datepicker {
  margin: 0 2rem 2rem 0; }

/*# sourceMappingURL=molecules.css.map */
