html, body, main {
  min-height: 100vh;
}

body main {
  display: flex;
  flex-direction: column;
}

body main header {
  background-color: #fff;
  height: 80px;
  display: flex;
  align-items: center;
  padding: 0 20px;
}

body main header .logo {
  height: 90%;
}

body main header .logo img {
  height: 100%;
}

body main header .text {
  margin-left: 20px;
  color: #3E4F59;
  display: flex;
  flex-direction: column;
}

body main header .text h3 {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
}

body main header .text span {
  font-weight: 500;
}

body main .page {
  flex-grow: 1;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

body main .page .container .login-box {
  border-radius: 8px;
  background-color: #D9E2E8;
  max-width: 500px;
  padding: 40px;
  margin: 0 auto;
}

@media (max-width: 700px) {
  body main .page .container .login-box {
    margin-top: 20px;
  }
}

body main .page .container .login-box .login-box-title {
  text-align: center;
  margin-bottom: 30px;
}

body main .page .container .login-box .login-box-title h3 {
  margin: 0;
  font-size: 20px;
}

body main .page .container .login-box .login-box-title h3 b {
  display: block;
}

body main .page .container .login-box .form-groups .form-group .form-control {
  height: 50px;
  padding: 0 20px;
}

body main .page .container .login-box .form-groups .form-group:not(:last-child) {
  margin-bottom: 20px;
}

body main .page .container .login-box .login-controls {
  margin: 20px 0 30px;
  display: flex;
  font-size: 13px;
}

body main .page .container .login-box .login-controls .form-check input {
  border: none;
}

body main .page .container .login-box .login-controls a {
  margin-left: auto;
  text-decoration: none;
  font-weight: 500;
}

body main .page .container .login-box .btn {
  width: 100%;
  height: 50px;
  text-align: center;
  justify-content: center;
}

body main .page .container .login-box .or-button {
  margin-top: 15px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

body main .page .container .login-box .or-button span {
  color: #1E88E5;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 500;
}

body main .page .container .login-box .or-button .btn {
  margin-top: 15px;
}

body main .page .container .developed-by {
  margin-top: 30px;
  text-align: center;
  color: #8FA1AA;
  font-size: 13px;
}

body main .page .container .login-box .message-error {
  margin: 10px -1px;
  color: red;
  font-weight: bold;
}