/* Authentication experience */

body.signin-page,
body.signup-page {
    --auth-screen-height: 100%;
    --auth-panel-width: 474px;
    --auth-copy: #6f7f8f;
    --auth-border: #dce5ef;
    background: #ffffff;
    overflow-x: hidden !important;
}

body.signin-page,
body.signup-page,
body.signin-page .scrollable-page,
body.signup-page .scrollable-page,
.auth-scrollable-page,
.auth-layout,
.auth-layout__panel,
.auth-layout__visual {
    min-height: var(--auth-screen-height, 900px);
}

.auth-layout {
    display: grid;
    grid-template-columns: 474px auto;
    background: #ffffff;
}

.auth-layout__panel {
    box-sizing: border-box;
    background: #ffffff;
    border-right: 1px solid #edf2f7;
}

.auth-layout__panel-inner {
    box-sizing: border-box;
    width: 474px;
    min-height: var(--auth-screen-height, 900px);
    padding: 38px 44px 28px 44px;
    display: flex;
    flex-direction: column;
}

.auth-layout__brand {
    margin-bottom: 54px;
}

.auth-layout__brand img {
    display: block;
    max-width: 228px;
    max-height: 74px;
    width: auto;
    height: auto;
}

.auth-layout__brand-mark {
    width: 54px;
    height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: #234092;
    color: #ffffff;
    font-size: 24px;
    font-weight: 700;
}

.auth-layout__brand-copy {
    margin-top: 14px;
    color: #1f2d3d;
    font-size: 22px;
    font-weight: 700;
    line-height: 28px;
}

.auth-layout__eyebrow {
    display: none;
}

.auth-layout__intro {
    margin-bottom: 28px;
}

.auth-layout__intro h1 {
    margin: 0 0 14px;
    color: #222f3e;
    font-size: 30px;
    font-weight: 700;
    line-height: 38px;
}

.auth-layout__intro p {
    margin: 0;
    max-width: 332px;
    color: var(--auth-copy);
    font-size: 15px;
    line-height: 26px;
}

.auth-form-card,
.auth-form-body {
    width: auto;
    background: transparent;
    box-shadow: none;
    border: 0;
    padding: 0;
}

.signin-page .auth-form .form-group,
.signup-page .auth-form .form-group {
    margin-bottom: 14px;
}

.signin-page .auth-form label,
.signup-page .auth-form label {
    margin-bottom: 6px;
    color: #33475b;
    font-size: 14px;
    font-weight: 500;
    line-height: 22px;
}

.signin-page .auth-form .form-control,
.signup-page .auth-form .form-control {
    height: 42px;
    padding: 10px 14px;
}

.signin-page .auth-form textarea.form-control,
.signup-page .auth-form textarea.form-control {
    min-height: 90px;
    height: 90px;
}

.auth-form-links {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 18px;
    color: var(--auth-copy);
    font-size: 14px;
    line-height: 22px;
}

.auth-form-links--stack {
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
}

.auth-extension-slot {
    margin-top: 16px;
}

.auth-inline-options {
    display: flex;
    align-items: center;
    gap: 26px;
    flex-wrap: wrap;
}

.auth-inline-option,
.auth-inline-check {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    color: #4e5e6a;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
}

.auth-inline-option .form-check-input,
.auth-inline-check .form-check-input {
    margin-top: 0;
    margin-right: 0;
}

.auth-check-group {
    margin-top: 6px;
}

.auth-inline-check {
    align-items: flex-start;
}

.auth-inline-check span {
    display: inline-block;
    color: var(--auth-copy);
}

.signin-page .alert,
.signup-page .alert {
    border-radius: 4px;
}

.signin-page .g-recaptcha,
.signup-page .g-recaptcha {
    transform-origin: left top;
}

.auth-layout__visual {
    position: relative;
    overflow: hidden;
    background: #11233a;
}

.auth-layout__visual-media,
.auth-layout__visual-gradient {
    position: absolute;
    inset: 0;
}

.auth-layout__visual-media {
    background-color: #11233a;
}

.auth-layout__visual-media-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: calc(50% + var(--auth-bg-offset-x, 0px)) calc(50% + var(--auth-bg-offset-y, 0px));
    transform: scale(var(--auth-bg-scale, 1));
    transform-origin: center center;
}

.auth-layout__visual-gradient {
    background: linear-gradient(90deg, rgba(17, 35, 58, 0.06) 0px, rgba(17, 35, 58, 0) 160px);
}

.auth-layout--signup .auth-layout__visual-gradient {
    background:
        linear-gradient(0deg, rgba(227, 182, 72, 0.30) 0px, rgba(227, 182, 72, 0.30) 100%),
        linear-gradient(90deg, rgba(227, 182, 72, 0.12) 0px, rgba(227, 182, 72, 0) 180px);
}

.auth-layout__visual-content {
    display: none;
}

@media (max-width: 1199px) {
    .auth-layout {
        grid-template-columns: 454px auto;
    }

    .auth-layout__panel-inner {
        width: 454px;
        padding: 34px 34px 24px 34px;
    }
}

@media (max-width: 991px) {
    .auth-layout {
        display: block;
    }

    .auth-layout__panel {
        border-right: 0;
    }

    .auth-layout__panel-inner {
        width: auto;
        max-width: 620px;
        min-height: 0;
        padding: 28px 18px 32px 18px;
    }

    .auth-layout__brand {
        margin-bottom: 32px;
    }

    .auth-layout__visual {
        display: none;
    }
}

@media (max-width: 767px) {
    .auth-layout__intro h1 {
        font-size: 28px;
        line-height: 34px;
    }

    .auth-layout__intro p {
        max-width: none;
        line-height: 28px;
    }

    .auth-form-links {
        align-items: flex-start;
        justify-content: flex-start;
        flex-direction: column;
    }

    .auth-inline-options {
        gap: 14px;
        flex-direction: column;
        align-items: flex-start;
    }
}
