/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/* Menu */
.menu-css {

  & .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    transition: all 0.2s ease-out;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    width: max-content;
    min-width: 240px;
    max-width: 300px;
    transform: translateY(10px);
    overflow: hidden;
    padding-top: 10px;

    & li:first-child a {
      border-radius: 5px 5px 0 0;
    }

    & li:last-child a {
      border-radius: 0 0 5px 5px;
    }

    & li:not(:last-child) a {
      border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    & a {
      background-color: var(--blue);
      color: var(--white);
      display: block;
      padding: 5px 10px;
      transition: all 0.2s ease;

      &:hover {
        background-color: rgba(0, 0, 0, 0.05);
        color: var(--blue);
      }
    }
  }

  & .menu-item-has-children {
    position: relative;

    &:hover {
      .sub-menu {
        transition: all 0.2s ease-out;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
        z-index: 10;
      }
    }
  }
}