body {
  background: url("../vital10-background-large.png") center center no-repeat;
  background-size: cover;
  min-height: 100vh;
  display: grid;
}

.body-container {
  margin-top: 60px;
  padding-bottom: 40px; }

.welcome-page li {
  list-style: none;
  padding: 4px; }

.logged-out-page iframe {
  display: none;
  width: 0;
  height: 0; }

.grants-page .card {
  margin-top: 20px;
  border-bottom: 1px solid lightgray; }
  .grants-page .card .card-title {
    font-size: 120%;
    font-weight: bold; }
    .grants-page .card .card-title img {
      width: 100px;
      height: 100px; }
  .grants-page .card label {
    font-weight: bold; }

.login-component .vital-10-logo-container {

  background-size: contain;
  display: flex;
  justify-content: center;
  transform: height 0.5s; }
  .login-component .vital-10-logo-container div {
    display: flex;
    justify-content: center;
    align-items: center; }
    .login-component .vital-10-logo-container div img {
      width: 150px; }

.login-component h1 {
  color: var(--brand-link, #0b9396);
  font-family: "Lusitana", serif; }

.password-wrap {
  position: relative; }

.password-rules {
  display: none;
  position: absolute;
  background-color: #FFF;
  color: #0a0a0a;
  border: 1px solid #cacaca;
  z-index: 999;
  padding: 0.5em;
  list-style-position: inside;
  top: 2.5em;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.27);
  width: calc(100% - 30px); }

input[type=password]:focus ~ .password-rules {
  display: block; }

.toggle-password-rules {
  position: absolute;
  left: calc(100% - 30px);
  top: 0;
  cursor: pointer;
  display: inline-block;
  color: #AAA;
  float: right; }

.caps-warning {
  color: #A00;
}

.hidden {
  display: none;
}

.correct {
  color: #0A0;
}