:focus-visible:not(.unhighlighted), .focus {
  outline: none;
  box-shadow: 0 0 0 2px #000, 0 0 0 5px #b9dc0c;
}

:focus {
  z-index: 10000;
}

hr.lower {
  border-top: 2px solid #b9dc0c;
  width: 1009px;
  margin: 20px auto;
  display: none;
}

.skip-link-container:focus-within {
  width: auto;
  height: auto;

  & .skip-link {
    opacity: 1;
    background: #b9dc0c;
    margin: 16px;
    padding: 8px;
    text-decoration: underline;
    display: inline-block;
    position: absolute;
    color: #2a2a2a !important;
  }
}

.no-js {
  & .no-js-hide {
    display: none !important;
  }

  & .no-js-banner {
    margin-bottom: 16px;

    @media only screen and (width >= 960px) {
      margin-bottom: 24px;
    }

    text-align: center;
    background-color: #fff;
    border: 1px solid #ddd;
    padding: 8px 16px;

    & p {
      margin: 0;
      padding: 0;
    }
  }
}

body:not(.no-js) .lazybg {
  background-image: none !important;
}

@media print {
  .no-print {
    display: none !important;
  }
}
