﻿* {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 0;
    outline: none;
    -webkit-appearance: none;
}


body, html {
    height: 100%;
}

body {
    font-size: 16px;
    background-color: #fff;
    color: #465668;
    display: flex;
    width: 100%;
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
}

a:active, a:hover {
    color: #547499;
}

a {
    color: #5488c4;
    text-decoration: none;
}

#app {
    flex: 1;
    font-family: Helvetica,Arial,sans-serif;
}

#app, .main {
    display: flex;
    height: 100%;
}

.sidebar {
    color: #fff;
    background: #d2bd7a url("../images/cover.jpg") no-repeat center center;
    background-size: cover;
    display: none;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.slogan-container {
    max-width: 450px;
    width: 100%;
    padding: 50px;
}

.slogan-title {
    font-weight: 600;
    font-size: 32px;
    line-height: 1;
}

.slogan-subtitle {
    font-size: 16px;
    line-height: 1.28;
}

.main {
    align-items: center;
    justify-content: center;
    padding: 30px;
    width: 100%;
}

.content {
    width: 100%;
    max-width: 330px;
    margin: auto 0;
    padding-bottom: 30px;
}

.content-header {
    text-align: center;
    margin-bottom: 30px;
}

.logo {
    display: block;
    margin-bottom: 15px;
}

.cta-subtitle, .cta-title {
    display: block;
}

.cta-title {
    font-weight: 600;
    font-size: 20px;
    line-height: 1.25;
    margin-bottom: 5px;
}

.cta-caption {
    font-size: 18px;
    line-height: 1.4;
}

.form-group {
    position: relative;
}

    .form-group + .form-group {
        margin-top: 20px;
    }

.form-control {
    font-size: 16px;
    width: 100%;
    height: 45px;
    line-height: 45px;
    border-radius: 3px;
    border: 2px solid #e9e9e9;
    -webkit-transition: border 225ms ease-out;
    transition: border 225ms ease-out;
}

    .form-control:active, .form-control:focus {
        border-color: #bababa;
    }

.form-group label {
    margin-bottom: 5px;
    display: block;
}

.form-group .form-control {
    display: block;
}

    .form-group .form-control[name=tbEmail] {
        position: relative;
        padding-left: 40px;
    }


.form-control-icon {
    pointer-events: none;
    position: absolute;
    z-index: 1;
    bottom: 0;
    height: 45px;
    width: 45px;
    background-position: 50%;
    background-repeat: no-repeat;
}

    .form-control-icon[data-type=email] {
        background-image: url("../Images/Icons/user.svg");
    }

.errormessage {
    margin-top: 20px;
    margin-bottom: -10px;
    color: #f8ac0c;
    line-height: 21px;
}

.btn {
    font-weight: 600;
    line-height: 41px;
    height: 41px;
    font-size: 15px;
    border-radius: 4px;
    background: transparent;
    text-transform: uppercase;
    position: relative;
}

.btn-primary {
    margin-top: 30px;
    color: #fff;
    background-color: #d2bd7a;
    width: 100%;
    transition: background-color 225ms ease-out;
    font-weight: 600 !important;
    font-size: 14px !important;
}

    .btn-primary:hover,
    .btn-primary:active {
        background-color: #b9a76b;
    }

.content-footer {
    text-align: center;
    margin-top: 30px;
}

.footer-navigation-item {
    display: block;
}

    .footer-navigation-item + .footer-navigation-item {
        margin-top: 10px;
    }

/* ------ RESPONSIVE ------ */
@media (min-width: 992px) {
    body {
        overflow: hidden;
    }

    .sidebar {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 40%;
    }

    .slogan-container {
        padding: 60px;
    }

    .slogan-title {
        font-size: 42px;
        margin-bottom: 10px;
    }

    .slogan-subtitle {
        font-size: 18px;
    }

    .main {
        width: 60%;
        justify-content: flex-start;
        padding-left: 120px;
        overflow-y: auto;
    }

    .content {
        padding-bottom: 0;
    }

    .content-header {
        text-align: left;
    }

    .content-footer {
        text-align: left;
    }
}
