@font-face {
    font-family: 'FontAwesome';
    src: url('../fonts/fontawesome-webfont.woff2') format('woff2'),
    url('../fonts/fontawesome-webfont.woff') format('woff'),
    url('../fonts/fontawesome-webfont.ttf') format('ttf');
}

@font-face {
    font-family: 'GROBOLD';
    src: url('../fonts/grobold.woff2') format('woff2'),
    url('../fonts/grobold.woff') format('woff'),
    url('../fonts/grobold.ttf') format('ttf');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

*, *:before, *:after {
    box-sizing: inherit;
}

::placeholder {
    color: #888888;
    font-family: 'GROBOLD', serif;
    font-size: 11pt;
}

a:link {
    color: black;
}

a:visited {
    color: black;
}

a:hover {
    color: black;
}

.background {
    display: table-cell;
    height: 100vh;
    vertical-align: middle;
}

.background img {
    height: 80%;
}

body {
    background-color: #074784;
    font-family: 'GROBOLD', sans-serif;
}

.error {
    color: #d61a1a;
    font-size: 12pt;
    text-align: justify;
}

.eye::before {
    content: "\f06e";
}

.eye-slash::before {
    content: "\f070";
}

.field-icon {
    cursor: pointer;
    display: inline-block;
    float: right;
    font-family: 'FontAwesome', sans-serif;
    font-size: inherit;
    margin-right: 10px;
    margin-top: -32px;
    position: relative;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    z-index: 2;
}

.form-label {
    display: block;
    margin-top: 10px;
    padding-bottom: 10px;
}

.header {
    float: left;
    margin-left: 25px;
    margin-top: 10px;
    width: 175px;
}

html {
    box-sizing: border-box;
}

img {
    max-width: 100%;
    max-height: 100%;
}

input {
    width: 100%;
    height: 40px;
    padding: 5px 10px;
    line-height: 20px;
    font-size: 16pt;
    color: #000000;
    border-radius: 2px 2px 2px 2px;
    border: 1px solid #888888;
}

input.readonly {
    background-color: #b1c8e7;
    border: none;
    padding: 5px 0;
}

input:focus-visible {
    outline: none;
}

.left-section {
    background-color: #b1c8e7;
    box-shadow: 10px 10px #182f4e;
    float: right;
    overflow: hidden;
    width: 600px;
}

.left-section-button {
    background-color: #074784;
    border: none;
    color: #FFFFFF;
    cursor: pointer;
    font-family: 'GROBOLD', serif;
    font-size: 16pt;
    padding: 5px;
    height: 40px;
    width: 100%;
}
.left-section-button:hover {
    background-color: #182f4e;
}

.left-section-link {
    cursor: pointer;
    font-size: 12pt;
    text-align: right;
    text-decoration: underline;
    width: 100%;
}

.left-section-form {
    font-size: 16pt;
    padding: 10px 20px;
    width: 100%;
}

.left-section-title {
    font-size: 32pt;
    margin-bottom: 10px;
    margin-top: 30px;
    text-align: center;
}

.note {
    color: #000;
    font-size: 12pt;
    text-align: justify;
}

.panel-left {
    display: table-cell;
    vertical-align: bottom;
    width: 50%;
}

.panel-right {
    display: table-cell;
    padding-left: 50px;
}

#password_strength_meter_wrapper {
    border: 1px solid #000;
    margin-top: 20px;
    width: 250px;
    height: 20px;
    border-radius: 3px;
    display: inline-block;
}

#password_strength_meter {
    width: 0;
    height: 18px;
}

.password-strength {
    color: #000;
    display: inline-block;
    font-size: 12pt;
    position: relative;
    text-align: center;
    top: -3px;
}

.spacer {
    padding-bottom: 10px;
}

.success {
    color: #1a8210;
    font-size: 12pt;
    text-align: justify;
}

.wrapper {
    display: table;
    position: absolute;
    top: 0;
    left: 0;
    height: 600px;
    table-layout: fixed;
    width: 100%;
}

.wrapper-content {
    display: table-row;
}

@media (min-height: 750px) {
    .panel-left {
        display: table-cell;
        vertical-align: middle;
    }
    .wrapper {
        height: 100%;
    }
}

@media (max-width: 1024px) {
    .wrapper {
        padding: 0 25px;
    }
    .left-section {
        margin: 0 0 20px;
        width: 100%;
    }
    .panel-left {
        width: 100%;
    }
    .panel-right {
        display: none;
    }
}