html {
    font-size: 16px;
}

.login-layout {
    background: rgb(14,57,94);
    background: radial-gradient(circle at 20% 20%, rgba(14,57,94,1) 0%, rgba(10,37,61,1) 100%);
}

.login-info__logo {
    max-width: 200px;
}

.login-info__logo img {
    width: 100%;
}

.login-box {
    min-height: 500px;
}

.login-form {
    max-width: none;
}

.login-form .form__field-set {
    max-width: 280px;
}

.login-form--loading .login-form__remember {
    opacity: .6;
}

.locale-switcher-link {
    display: inline-block;
    margin-left: .25rem;
}

.locale-switcher-link.current {
    text-decoration: underline;
}

.login-form__external {
    margin: 2rem -2rem 0 -2rem;
    padding: 2rem 2rem 0 2rem;
    border-top: 1px solid #f2f5f8;
}

.login-form__external--astina-employee {
    padding-top: 0;
    border-top: 0;
}

.login-form__external-link {
    display: flex;
    align-items: center;
    color: #648199;
    font-size: 90%;
}

.login-form__external-link-icon {
    margin-right: .5rem;
}

.login-form__external-link-icon svg {
    fill: #648199;
}
.login-form__external-link:hover svg {
    fill: #003e6b;
}

.form__label--required {
    font-weight: 600;
}

.form__label--required:after {
    content: "✱";
    color: hsl(209, 23%, 60%);
    font-weight: 300;
    font-size: 50%;
    vertical-align: super;
}

@media (max-width: 991px) {

    .login-form {
        max-width: none;
    }

    .login-form,
    .login-info {
        margin: 4rem 2rem;
    }

    .login-box__info {
        order: 1;
        flex: 100%;
    }

    .login-box__form {
        order: 0;
        flex: 100%;
    }

    .login-form .form__field-set {
        max-width: none;
    }
}