html {
    height: 100%;
}
body {
    height: 100%;
    margin: 0;
    padding: 0;
    background: white none;
    font-family: LatoRegular;
}
.login-panel {
    width: 50%;
    background-color: white;
    vertical-align: middle;
}
.full-height {
    height: 100%;
}
.input-container {
    position: relative;
    padding:0;
    margin:0;
    height: 100%;
    text-align: left;
}
.login-input {
    width: 90% !important;
    height: 35px !important;
    margin:0 !important;
    font-size: 16px !important;
    box-shadow: none !important;
    border: none !important;
    padding-left: 30px !important;
}
.login-input:focus {
    border: none !important;
    outline: none !important;
}
.login-title, .essence-title {
    color: darkgrey;
    font-family: LatoLight;
    font-weight: lighter;
    font-size: 28px;
    margin-bottom: 40px;
}
.input-cartidge {
    border: 4px solid lightgrey;
    border-radius: 4px;
    padding: 12px 12px;
}
.input-separator {
    border-top: 1px solid lightgrey;
    margin-top: 5px;
    margin-bottom: 5px;
}
.login-forgot-link {
    margin-top: 10px;
    margin-bottom: 40px;
    margin-left: 23px;
}
.login-forgot-link a, .login-forgot-link a:link, .login-forgot-link a:visited, .login-forgot-link a:hover, .login-forgot-link a:active {
     text-decoration: none;
 }
.clean-link, .clean-link:link, .clean-link:visited, .clean-link:hover, .clean-link:active {
    text-decoration: none;
}
.input-icon {
    margin-top: 8px;
    margin-left: 2px;
    width: 20px;
    height: 20px;
    position: absolute;
}
.input-icon img {
    height: 20px;
    width: 20px;
    margin-top: 4px;
}
.login-button {
    font-size: 16px;
    font-weight: 400;
    height: 40px;
    padding-left: 50px;
    padding-right: 50px;
    font-family: LatoLight;
}
@media (max-width: 768px) {
    .login-panel {
        padding: 10px;
        text-align: center;
    }
    .login-button {
        width: 100%;
    }
    .login-forgot-link {
        margin-left: 0px;
        margin-right: 0px;
    }
    .login-logo {
        width: 187px;
        height: 128px;
    }
    .background-panel {
        height: 130px;
    }
    .background-panel {
        background-image: url(/portal/public/essence/o_mobile.png);
        background-size: 100% auto;
        vertical-align: middle;
        text-align: center;
    }
}
@media (min-width: 767px) {
    .login-logo {
        width: 375px;
        height: 256px;
    }

    .login-logo-sbp {
        width: 524px;
        height: 166px;
        margin-top: -30%;
    }

    .login-form {
    }
    .login-panel {
        display: flex !important;
        flex-direction: column;
        justify-content: center;
    }
    .background-panel {
        background-image: url(/portal/public/essence/o_desktop.jpg);
        background-size: auto 100%;
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
}
@font-face {
    font-family: 'LatoRegular';
    src: url('/portal/public/essence/fonts/Lato-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'LatoBlack';
    src: url('/portal/public/essence/fonts/Lato-Black.ttf') format('truetype');
}
@font-face {
    font-family: 'LatoBold';
    src: url('/portal/public/essence/fonts/Lato-Bold.ttf') format('truetype');
}
@font-face {
    font-family: 'LatoItalic';
    src: url('/portal/public/essence/fonts/Lato-Italic.ttf') format('truetype');
}
@font-face {
    font-family: 'LatoLight';
    src: url('/portal/public/essence/fonts/Lato-Light.ttf') format('truetype');
}
@font-face {
    font-family: 'LatoThinItalicr';
    src: url('/portal/public/essence/fonts/Lato-ThinItalic.ttf') format('truetype');
}

.sbp-background-panel {
    background-image: url(/portal/public/sbp/fond-entier.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}