﻿:root {
  --brand-color: #15467b;
}

.text-brand {
  color: var(--brand-color) !important;
}

.text-bg-brand {
  background-color: var(--brand-color) !important;
  color: #FFF !important;
}

.sidebar .nav-link.active {
  background-color: var(--brand-color) !important;
}

.btn-brand {
  background-color: var(--brand-color) !important;
  color: #FFF !important;
}

.welcome-page .logo {
  width: 64px;
}

.dashboard a i.bi {
  --bs-btn-color: var(--brand-color);
  color: var(--brand-color) !important;
}

textarea.disco-doc,
code.language-csharp {
  /* cross-platform monospace stack */
  font-family: Consolas, "Liberation Mono", Menlo, "Courier New", Courier, monospace; /* ultimate fallback */
  font-size: 0.9rem;
  line-height: 1.4;
  padding: 0.5rem;
  overflow-x: auto;
  white-space: pre;
  word-wrap: normal;
  font-size: small;
}

code.language-csharp {
  font-size: smaller;
}

.sidebar {
  background: linear-gradient(160deg, #b8e1f5, #ffffff, #ffffff, #ffffff, #b8e1f5, #84caeb, #58b8e2, #3fa1d5);
  box-shadow: 3px 0px 10px 0px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 3px 0px 10px 0px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 3px 0px 10px 0px rgba(0, 0, 0, 0.5);
}

@media (max-width: 576px) {
  .sidebar {
    max-width: 80px !important;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .sidebar .nav-link {
    justify-content: center;
  }
}
@media (min-width: 577px) {
  .sidebar {
    max-width: 280px !important;
  }
}
.icon-banner {
  width: 32px;
}

.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;
}

.page-consent div.client-logo > img {
  max-height: 48px;
}

.discovery-document {
  height: 700px;
}
.discovery-document pre {
  max-height: fit-content;
}
.discovery-document pre code {
  font-size: 0.9em;
  padding: 0;
  margin: 0;
}

/*Custom CSS Starts here*/
.hero-image img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 1vh;
}
@media (max-width: 576px) {
  .hero-image img {
    width: 80%;
    padding-top: 5vh;
  }
}
@media (min-width: 577px) {
  .hero-image img {
    width: 60%;
    padding-top: 0.1vh;
  }
}

.loader {
  color: #FFF;
  display: inline-block;
  position: relative;
  /*font-size: 48px;
  font-family: Arial, Helvetica, sans-serif;*/
  box-sizing: border-box;
  padding-right: 0.25rem;
}
.loader:after {
  content: "";
  width: 5px;
  height: 5px;
  background: currentColor;
  position: absolute;
  bottom: 10px;
  right: -5px;
  box-sizing: border-box;
  animation: animloader 1s linear infinite;
}

@keyframes animloader {
  0% {
    box-shadow: 10px 0 rgba(255, 255, 255, 0), 20px 0 rgba(255, 255, 255, 0);
  }
  50% {
    box-shadow: 10px 0 white, 20px 0 rgba(255, 255, 255, 0);
  }
  100% {
    box-shadow: 10px 0 white, 20px 0 white;
  }
}
.sign-up-page h1 {
  text-align: center;
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 34px;
  line-height: 31px;
  letter-spacing: 0.02em;
  color: #14477B;
}
.sign-up-page p {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 29px;
  text-align: center;
  color: #37A4DC;
  margin-top: 3vh;
}
@media (max-width: 576px) {
  .sign-up-page .sign-up-form {
    width: 90%;
  }
}
@media (min-width: 577px) {
  .sign-up-page .sign-up-form {
    width: 80%;
  }
}
.sign-up-page .sign-up-form {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.sign-up-page .sign-up-form input {
  background: #FFFFFF;
  opacity: 0.75;
  box-shadow: 2.65px 1.76px 7.06px rgba(1, 1, 1, 0.64);
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
}
.sign-up-page .sign-up-form label {
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 20px;
  line-height: 31px;
  letter-spacing: 0.02em;
  color: #14477B;
}
.sign-up-page .sign-up-form .btn-primary {
  display: block;
  width: 200px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1vh;
  background: #14477B;
  box-shadow: 2.81px 1.88px 7.5px rgba(1, 1, 1, 0.64);
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 41px;
  text-align: center;
  color: #FFFFFF;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
}

@media (max-width: 576px) {
  .login-page .login-form {
    width: 90%;
  }
}
@media (min-width: 577px) {
  .login-page .login-form {
    width: 65%;
  }
}
.login-page .login-form {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.login-page .login-form label {
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 18px;
  line-height: 31px;
  letter-spacing: 0.02em;
  color: #14477B;
}
.login-page .login-form input:not(.form-check-input) {
  background: #FFFFFF;
  opacity: 0.75;
  box-shadow: 2.65px 1.76px 7.06px rgba(1, 1, 1, 0.64);
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
}
.login-page .login-form .form-check-input {
  margin-top: 0.5rem;
}
.login-page .login-form .forgot-password {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-size: 18px;
  line-height: 29px;
  text-align: right;
  color: #37A4DC;
}
.login-page .login-form .btn-primary {
  display: block;
  width: 200px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1vh;
  background: #14477B;
  box-shadow: 2.81px 1.88px 7.5px rgba(1, 1, 1, 0.64);
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 41px;
  text-align: center;
  color: #FFFFFF;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
}

.forgot-password-page h1 {
  text-align: center;
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 34px;
  line-height: 31px;
  letter-spacing: 0.02em;
  color: #14477B;
}
.forgot-password-page p {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 29px;
  text-align: center;
  color: #37A4DC;
  margin-top: 3vh;
}
.forgot-password-page .btn-primary {
  display: block;
  width: 200px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 5vh;
  background: #14477B;
  box-shadow: 2.81px 1.88px 7.5px rgba(1, 1, 1, 0.64);
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 41px;
  text-align: center;
  color: #FFFFFF;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
}
.forgot-password-page .btn-secondary {
  display: block;
  width: 200px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 5vh;
  background: #37A4DC;
  box-shadow: 2.81px 1.88px 7.5px rgba(1, 1, 1, 0.64);
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 41px;
  text-align: center;
  color: #FFFFFF;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
}
@media (max-width: 576px) {
  .forgot-password-page .forgot-password-form {
    width: 90%;
  }
}
@media (min-width: 577px) {
  .forgot-password-page .forgot-password-form {
    width: 60%;
  }
}
.forgot-password-page .forgot-password-form {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.forgot-password-page .forgot-password-form label {
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 20px;
  line-height: 31px;
  letter-spacing: 0.02em;
  color: #14477B;
}
.forgot-password-page .forgot-password-form input {
  background: #FFFFFF;
  opacity: 0.75;
  box-shadow: 2.65px 1.76px 7.06px rgba(1, 1, 1, 0.64);
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
}

.reset-password-page h1 {
  text-align: center;
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 34px;
  line-height: 31px;
  letter-spacing: 0.02em;
  color: #14477B;
}
.reset-password-page p {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 29px;
  text-align: center;
  color: #37A4DC;
  margin-top: 3vh;
}
@media (max-width: 576px) {
  .reset-password-page .reset-password-form {
    width: 90%;
  }
}
@media (min-width: 577px) {
  .reset-password-page .reset-password-form {
    width: 60%;
  }
}
.reset-password-page .reset-password-form {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.reset-password-page .reset-password-form input {
  background: #FFFFFF;
  opacity: 0.75;
  box-shadow: 2.65px 1.76px 7.06px rgba(1, 1, 1, 0.64);
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
}
.reset-password-page .reset-password-form label {
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 20px;
  line-height: 31px;
  letter-spacing: 0.02em;
  color: #14477B;
}
.reset-password-page .reset-password-form .btn-primary {
  display: block;
  width: 200px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1vh;
  background: #14477B;
  box-shadow: 2.81px 1.88px 7.5px rgba(1, 1, 1, 0.64);
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 41px;
  text-align: center;
  color: #FFFFFF;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
}

.email-verification-page h1 {
  text-align: center;
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 34px;
  line-height: 31px;
  letter-spacing: 0.02em;
  color: #14477B;
}
@media (max-width: 576px) {
  .email-verification-page .email-verification-confirmation-form {
    width: 90%;
  }
}
@media (min-width: 577px) {
  .email-verification-page .email-verification-confirmation-form {
    width: 60%;
  }
}
.email-verification-page .email-verification-confirmation-form {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.email-verification-page p {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 29px;
  text-align: center;
  color: #37A4DC;
  margin-top: 3vh;
}
.email-verification-page .btn-primary {
  display: block;
  width: 200px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1vh;
  background: #14477B;
  box-shadow: 2.81px 1.88px 7.5px rgba(1, 1, 1, 0.64);
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 41px;
  text-align: center;
  color: #FFFFFF;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
}

.pending-approval-page h1 {
  text-align: center;
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 34px;
  line-height: 31px;
  letter-spacing: 0.02em;
  color: #14477B;
}
.pending-approval-page .email-verification-request-form {
  display: block;
  width: 60%;
  margin-left: auto;
  margin-right: auto;
}
.pending-approval-page p {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 29px;
  text-align: center;
  color: #37A4DC;
  margin-top: 3vh;
}
.pending-approval-page .btn-primary {
  display: block;
  width: 200px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1vh;
  background: #14477B;
  box-shadow: 2.81px 1.88px 7.5px rgba(1, 1, 1, 0.64);
  font-family: "PT Sans";
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 41px;
  text-align: center;
  color: #FFFFFF;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
}
