.main {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 100%;
}

.login {
    max-width: 100%;
    padding: 18px 30px 27px 30px;
    background: white;
    border-radius: 2px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.side-text {
    justify-self: end;
    align-self: center;
    margin-left: 50px;
}

.side-text {
    font-family: Geogrotesque-Bold;
    font-size: 68px;
    letter-spacing: -0.14px;
    line-height: 75px;
    color: white;
    text-transform: uppercase;
}

input {
    font-family: Geogrotesque-Regular;
    letter-spacing: -0.04px;
    font-size: 22px;
}

input {
    display: block;
    border:none;
    border-bottom: 1px solid #B8BABC;
    width: 100%;
    height: 44px;
    color: #4A4D52;
}

input::placeholder {
    color: #BFC1C2;
    opacity: 1;
    font-family: Geogrotesque-Regular;
}

input:focus {
    outline:none;
}

input[type=password] {
    font-family: none;
}

.login a {
    color: #316094;
    text-decoration: none;
}

a:hover {
    color: #316094;
}

.login h1 {
    margin-top: 0px;
    margin-bottom: 30px;
}

.login input {
    margin-bottom: 15px;
}

.login button {
    margin-top: 15px;
    margin-bottom: 15px;
}

#help-footer {
    font-size: 16px;
    font-family: Geogrotesque-Regular;
    letter-spacing: -0.03px;
    line-height: 19px;
    margin-top: 30px;
    margin-bottom: 0;
}

form>footer {
    margin-top: 30px;
}

.mobile-divider {
    display: none;
}

.main {
    font-size: 16px;
}

.alert-error {
    color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
    position: relative;
    padding: 0.5rem 0.75rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: 0.25rem;
}

@media (min-width: 651px) {
    .background {
        background: #E5E5E5;
        background: url("../img/background_img.jpg");
        background-size: cover;
        background-position: top center;
    }

    .login {
        max-width: 445px;
        margin: 90px 0 20px 0;
    }
}

@media (max-width: 850px) {
    .main {
        grid-template-columns: 1fr;
    }

    .side-text {
        display: none;
    }
}

@media (max-width: 650px) {
    .background {
        background: #E5E5E5;
        background: url("../img/background_img.jpg");
        background-size: cover;
        background-position: top center;
    }

    .login {
        margin: 90px 0 20px 0;
        padding: 10px 20px 15px 20px;
    }

    .mobile-divider {
        display: block;
        border: 1px solid gainsboro;
        margin: 50px -20px 0 -20px;
    }

    .login>footer {
        margin: 30px 0 50px 0;
    }

    #locale-show {
    }

    .navbar > div {
        display: block;
    }

    .navbar > .container > div > * {
        padding: 0;
        margin: 0;
    }
}

.layout {
    display: grid;
    grid-template-rows: minmax(90vh, 100%) auto;
}
