html,
body {
    margin: 0px;
    padding: 0;
    height: 100%;
    font-family: 'Montserrat', sans-serif;
    background-color: rgba(0, 85, 150, 0.04);
}

legend {
    margin-bottom: 3rem;
}

.login-wrapper .login {
    position: relative;
    padding-top: 4rem;
    border-top: 5px solid #f88d2b;
}

.login-wrapper .app-brand {
    text-align-last: center;
    margin-bottom: 4rem;
}

.login-wrapper .login-icon {
    display: block;
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    background-color: #005596;
    text-align: center;
    position: absolute;
    top: -2.5rem;
    left: calc(50% - 2.5rem);
}

.login-wrapper .login-icon i {
    font-size: 1.5rem;
    line-height: 5rem;
    color: #ffffff;
}

.input-group-prepend {
    display: flex;
    margin-right: -1px;
}

.media {
    margin-top: 1rem;
    display: flex;
}

a {
    color: #007bff;
    text-decoration: none;
    background-color: transparent;
}

.validation-message {
    color: red;
    font-size: smaller;
}

.mfa-instruction {
    font-size: small;
}

.text-align-right {
    text-align: right;
}

.text-align-center {
    text-align: center;
}

.text-header-font {
    font-weight: 900;
}

.two-factor-code {
    text-align: center;
    font-weight: bolder;
}

.two-factor-code-large {
    text-align: center;
    font-weight: bolder;
    font-size: xx-large;
}

.setup-autenticator-title {
    margin-bottom: 2em;
    text-align: center;
}

.section {
    padding: 4rem 2rem;
}

.section .error {
    font-size: 150px;
    color: #004e59;
    text-shadow: 1px 1px 1px #044D5A, 2px 2px 1px #044D5A, 3px 3px 1px #044D5A, 4px 4px 1px #044D5A, 5px 5px 1px #044D5A, 6px 6px 1px #044D5A, 7px 7px 1px #044D5A, 8px 8px 1px #044D5A, 25px 25px 8px rgba(0,0,0, 0.2);
}

.page {
    margin: 2rem 0;
    font-size: 20px;
    color: #444;
}

.phi {
    display: flex;
    text-align: justify;
}

.phi input {
    width: 65px;
}

.phi p {
    padding-left: 5px;
}

.alert-warning-icon {
    padding-right: 5px;
    line-height: inherit !important;
}

.alert-text-padding {
    padding: 0.5rem 0.5rem !important;
}

.login-wrapper .login-icon,
.form-check-input:checked,
#return-to-login,
.btn-primary {
    background-color: #288dc2;
}

.btn-primary:hover,
.btn-primary:active {
    background-color: #288dc2;
    border-color: #288dc2;
}

.form-check-input:checked,
.btn-primary {
    border-color: #288dc2;
}

.text-primary,
a {
    color: #288dc2 !important;
}

.btn-primary:focus {
    background-color: #288dc2 !important;
    border-color: #288dc2 !important;
}

#return-to-login {
    color: #fff !important;
}

input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border: 1px solid rgba(40, 141, 194, 0.2);
    -webkit-box-shadow: 0 0 0px 1000px rgba(40, 141, 194, 0.2) inset;
    transition: background-color 5000s ease-in-out 0s;
}

.alert-warning {
    background-color: rgb(248, 141, 43, 0.2);
}