body {
    padding-top: 96px;
    color: rgba(0, 0, 0, 0.7);
}

img {
    max-width: 100%;
}

p {
    color: rgba(0, 0, 0, 0.7);
}

a.skip-main {
    left: -999px;
    position: absolute;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    z-index: -999;
}

a.skip-main:focus, a.skip-main:active {
    color: #000;
    background-color: #e8e8e8;
    left: auto;
    top: 0;
    width: 200px;
    height: auto;
    overflow: auto;
    margin: 0;
    padding: 5px;
    text-align: center;
    font-size: 1.2em;
    z-index: 1031;
}

.logo img {
    max-width: 100px;
}

.page-title {
    color: rgba(0, 0, 0, 0.7) !important;
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
}

.home-banner {
    position: relative;
}

.home-banner h1 {
    position: absolute;
    color: #fff;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    font-size: 50px;
    letter-spacing: 1px;
    font-weight: 500;
}

#content {
    padding-top: 0;
}

.footer {
    font-size: 13px;
}

.footer a {
    display: block;
}

.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {
    color: #000000;
}

table {
    width: 100%;
    border: 1px solid #ddd;
    margin-bottom: 30px;
}

th {
    background: #f3f2f2;
}

th, td {
    padding: 7px 10px;
    vertical-align: top;
    border-bottom: 1px solid #ddd;
    border-right: 1px solid #ddd;
    font-size: 14px;
}

.news-date {
    color: #908d8d;
}


/* reCaptcha */
#recaptcha-div {
    width: min-content;
}

#recaptcha-error-message {
    color: red;
}

#recaptcha-error-message {
    color: transparent;
    /* display: none; */
}

.captcha-error small {
    color: red !important;
    /* display: block; */
}

#tok {
    height: 0;
}

/* Mainframe page styles */
.request-update-btn {
    color: blue;
    cursor: pointer;
}

.footer {
    background: #fff;
}

#content {
    margin-bottom: 1.2in;
}



/* Loading spinner -------------------- */

#loading {
    background: #ffffff;
    color: #666666;
    position: fixed;
    height: 100%;
    width: 100%;
    z-index: 5000;
    top: 0;
    left: 0;
    float: left;
    text-align: center;
    padding-top: 25%;
    opacity: .80;
  }
  #loading button {
    margin: 40px;
    padding: 5px 20px;
    cursor: pointer;
  }
  .spinner {
      margin: 0 auto;
      height: 64px;
      width: 64px;
      animation: rotate 0.8s infinite linear;
      border: 5px solid #fa4837;
      border-right-color: transparent;
      border-radius: 50%;
  }
  @keyframes rotate {
      0% {
          transform: rotate(0deg);
      }
      100% {
          transform: rotate(360deg);
      }
  }

/* Loading spinner END */