body {
  background-color: black !important;
  background: url('../img/grid-vertical-btt-light.png') black !important;
  background-position: bottom !important;
  background-repeat: repeat-x !important;
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,Liberation Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji !important;
  overflow-x: hidden;
  min-height: 70em;
  height: 100vh !important;
  font-size: 15px;
}

@media only screen and (max-width: 1493px){
  body {
    min-height: 80em;
  }
}

@media only screen and (max-width: 1260px){
  body {
    min-height: 85em;
  }
}

@media only screen and (max-width: 1136px){
  body {
    min-height: 90em;
  }
}

@media only screen and (max-width: 915px){
  body {
    min-height: 100em;
  }
}

@media only screen and (max-width: 667px){
  body {
    min-height: 110em;
  }
}

@media only screen and (max-width: 520px){
  body {
    min-height: 120em;
  }
}

#kc-form-buttons {
  margin-top: 10px !important;
}

.pf-l-stack {
  color: #0088ce !important;
}

hr {
  margin-top: 35px;
  margin-bottom: 35px;
  border: 0;
  border-top: 5px solid rgb(49, 49, 49) !important;
  border-radius: 10px !important;
}

.alert-error, .alert-warning, .alert-success {
  margin-bottom: 20px !important;
}

#kc-totp-settings li {
  margin-bottom: 15px !important;
}

.control-label {
  margin-bottom: 15px !important;
  font-size: 15px !important;
}

@media only screen and (max-width: 1300px){
  .control-label {
    font-weight: 300 !important;
    font-size: 14px !important;
  }
}

@media only screen and (max-width: 1300px){
  #kc-page-title{
    font-weight: 500 !important;
    font-size: 18px !important;
  }
}

/* Change content to change the title of the page*/

#kc-totp-secret-qr-code {
  max-width:125px !important;
  max-height:125px !important;
}

#input-error {
  color: red !important;
}
#input-error #text {
  margin-bottom: 20px;
}

#input-error-username {
  color: red !important;
}

.card-pf {
  width: 40% !important;
  margin-left: 10% !important;
  background-color: rgba(255, 255, 255, 1);
  border-radius: 10px;
  margin-top: 20px !important;
  float: left !important;
}

@media only screen and (max-width: 1300px){
  .card-pf {
    width: 90% !important;
    margin: auto !important;
    float: none !important;
    margin-left: 10px;
  }
}

.btn-default {
  margin-top: 25px !important;
  color: black !important;
}

.pf-c-alert__title {
  color: var(--pf-c-alert__title--Color) !important;
}

/*title banner size and colour*/
img.pf-c-brand.brand {
  background-image: url('../img/takgov.png') !important;
}

div#kc-header {
  width:100%;
  background-image: url('../img/takgov.png') !important;
  background-repeat: no-repeat;
  padding-top: 3.5em;
  padding-bottom: 5em;
  position: relative;
  left: 45.5%;
  margin: auto;
}

@media only screen and (max-width: 1300px){
  div#kc-header {
    left: 40% !important;
  }
}

@media only screen and (max-width: 885px){
  div#kc-header {
    left: 35% !important;
  }
}

@media only screen and (max-width: 500px){
  div#kc-header {
    left: 25% !important;
  }
}

@media only screen and (max-width: 670px){
  div#kc-header {
    left: 30% !important;
  }
}

@media only screen and (max-width: 420px){
  div#kc-header {
    left: 20% !important;
  }
}

@media only screen and (max-width: 350px){
  div#kc-header {
    left: 15% !important;
  }
}

div#kc-header::after {
  padding-top: 3px;
  color: white !important;
  font-size: 40px;
  font-weight: bold;
  line-height: 50px;
  margin-bottom: 15px;
  margin: auto !important;
}

div#kc-header-wrapper {
  display: none;
}

@media only screen and (max-width: 1300px){
  .login-pf-header {
    margin-bottom: 10px !important;
  }
}

.form-group {
  margin-bottom: 22px !important;
}

.doForgotPassword {
  margin-top: 15px !important;
}

div#kc-content {
  top: 20% !important;
  width: 95% !important;
  margin: auto !important;
}

.kcIntroWarningHeader {
  background-color: white;
  color: black;
  padding: 3px;
  padding-bottom: 7px;
  border-radius: 10px;
  margin: 5px;
  text-align: center;
  margin-bottom: 15px;
}

.kcIntroWarning {
  color: white;
  float: right;
  margin-right: 10%;
  width: 30%;
  font-size: 12px;
  background-color: rgba(0, 0, 0, 0.4);
  padding: 10px;
  border: gray solid 2px;
  border-radius: 10px;
}

@media only screen and (max-width: 1300px){
  .kcIntroWarning {
    width: 90% !important;
    float: none !important;
    margin-top: 50px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 20px !important;
  }
}

/* label change Username, Password text*/
div#kc-form label {
  color: black !important;
  display: block !important;
  font-size: 15px;
}
/**/
div#kc-form-login {
  text-align: center !important;
}

div#info-area {
  position: fixed;
  bottom: 0;
  left: 0;
  margin-top: 45px;
  background-color: rgba(0, 0, 0, 0.4);
  padding: 20px;
  width: 99%;
}

div#info-area p {
  margin-right: 30px;
  display: inline;
  text-shadow: none;
  font-size: 20px;
}

/*fields*/
input[type=text], input[type=password] {
  font-size: 14px !important;
  background: none !important;
  padding: 12px !important;
  width: 100% !important;
}

input[type=text]:hover, input[type=password]:hover {
  border-bottom-color: #0066CC !important;
  border-bottom-width: 2px !important;
  border-radius: 2px;
}

/*button*/
.input-group {
  position: relative;
  width: 100%;
}

.show-password-button {
  padding: 0 0.3em;
  margin: 3px 2px 0 0;
  height: 80%;
  position: absolute;
  right: 0;
  top: 0;
  background: rgba(0, 0, 0, 0) !important;
  --pf-c-button--after--BorderColor: #E7F0FE !important;
  z-index: 100;
}

.input-border {
  border: solid 1px;
  border-color: #f0f0f0 #f0f0f0 #8a8d90 #f0f0f0;
  border-radius: 3px;
}

.blank-borders {
  --pf-c-button--after--Border: none !important;
  --pf-c-button--after--BorderColor: white !important;
  --pf-c-form-control--BorderWidth: 0px !important;
}

.pf-c-button.pf-m-primary {
  width: 100% !important;
  margin: auto !important;
  padding: 5px !important;
}

.pf-c-button.pf-m-primary:hover {
  background-color: rgb(0, 0, 98) !important;
}

input[type=submit] {
  border: none;
  border-radius: 3px;
  background-color: rgb(40,53,147);
  box-shadow: 0px 0px 6px rgba(0,0,0,0.5);
  font-size: 20px !important;
  color: white;
  text-transform: none !important;
  padding: 4px !important;
  margin-top: 3em;
  width: 100%;
}

input[type=submit]:hover {
  background-color: rgba(255,255,255,0.8) !important;
}

div#kc-form-options div {
  display: inline-block;
  margin-right: 20px;
  font-size: 15px;
  padding-bottom: 5px;
}

div#kc-form-options div label {
  font-size: 15px;
}

div#kc-feedback {
  box-shadow: 0px 0px 6px rgba(0,0,0,0.5);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
}

div#kc-feedback-wrapper {
  padding: 1em;
}

div.feedback-success {
  background-color: rgba(155,155,255,0.1);
}

div.feedback-warning {
  background-color: rgba(255,175,0,0.1);
}

div.feedback-error {
  background-color: rgba(255,0,0,0.1);
}

#cancelTOTPBtn {
  margin-top: 20px;
}

#certificate_subjectDN {
  word-wrap: break-word !important;
}

#inputBoxes {
  display: flex;
  justify-content: space-between;
  margin: 30px auto;
  align-items: center;
  font-size: 1.6em;
  max-width: 12em;
}

#inputHeader {
  display: flex;
  justify-content: center;
}

.inputBox {
  height: 1.7em;
}

#submitButton {
  margin-top: 1.2em;
}

.account-help {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  flex-wrap: wrap
}