.auth-professional{
    min-height:100vh;
    margin:0;
    background:#edf4fb;
}

.auth-professional-shell{
    display:grid;
    min-height:100vh;
    grid-template-columns:minmax(360px,.92fr) minmax(430px,1.08fr);
}

.auth-showcase{
    position:relative;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    padding:38px clamp(30px,5vw,75px);
    background:
        radial-gradient(circle at 18% 15%,rgba(91,178,255,.3),transparent 19rem),
        radial-gradient(circle at 90% 85%,rgba(38,128,218,.25),transparent 20rem),
        linear-gradient(145deg,#082850,#0d4e96);
    color:#fff;
}

.auth-showcase::after{
    position:absolute;
    right:-100px;
    bottom:-115px;
    width:370px;
    height:370px;
    border:55px solid rgba(255,255,255,.045);
    border-radius:50%;
    content:"";
}

.auth-site-brand{
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    gap:11px;
    color:#fff;
}

.auth-site-brand img,
.auth-site-brand > span{
    display:grid;
    width:44px;
    height:44px;
    place-items:center;
    border-radius:13px;
    background:#fff;
    color:#145fae;
    object-fit:contain;
    padding:4px;
    font-weight:850;
}

.auth-site-brand strong{
    font-size:16px;
}

.auth-showcase-copy{
    position:relative;
    z-index:1;
    max-width:650px;
    margin:auto 0;
}

.auth-kicker,
.auth-form-kicker{
    color:#91ccff;
    font-size:10px;
    font-weight:850;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.auth-showcase h1{
    max-width:610px;
    margin:10px 0;
    font-size:clamp(34px,4.5vw,58px);
    line-height:1.05;
    letter-spacing:-.045em;
}

.auth-showcase p{
    max-width:600px;
    color:#d2e8fb;
    font-size:14px;
    line-height:1.7;
}

.auth-benefits{
    display:grid;
    gap:9px;
    margin-top:25px;
    color:#e9f5ff;
    font-size:12px;
    font-weight:650;
}

.auth-main-site{
    position:relative;
    z-index:1;
    color:#b8daf7;
    font-size:11px;
    font-weight:750;
}

.auth-form-panel{
    display:grid;
    place-items:center;
    padding:32px;
    background:
        radial-gradient(circle at 100% 0%,rgba(36,135,232,.08),transparent 23rem),
        #f8fbff;
}

.auth-form-wrap{
    width:min(430px,100%);
    padding:32px;
    border:1px solid #dbe7f3;
    border-radius:20px;
    background:#fff;
    box-shadow:0 25px 70px rgba(8,48,91,.1);
}

.auth-form-wrap h2{
    margin:4px 0;
    color:#102b4d;
    font-size:28px;
    letter-spacing:-.03em;
}

.auth-form-wrap > p{
    margin:0 0 22px;
    color:#687c94;
    font-size:12px;
}

.auth-form-kicker{
    color:#176bc0;
}

.auth-modern-form{
    display:grid;
    gap:15px;
}

.auth-modern-form label{
    display:grid;
    gap:6px;
}

.auth-modern-form label > span:first-child{
    color:#294969;
    font-size:11px;
    font-weight:750;
}

.auth-modern-form input{
    min-height:44px;
}

.auth-form-options{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.auth-form-options .check{
    display:flex!important;
    align-items:center;
    gap:7px;
    color:#5f748c;
    font-size:11px;
}

.auth-form-options a{
    font-size:11px;
    font-weight:750;
}

.auth-captcha-row{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:8px;
}

.auth-captcha-row .captcha{
    display:grid;
    min-width:115px;
    place-items:center;
    border:1px dashed #83b6e7;
    background:#edf7ff;
}

.auth-register-link{
    margin:18px 0 0!important;
    text-align:center;
}

.auth-security-note{
    display:grid;
    gap:2px;
    margin-top:20px;
    padding:11px;
    border:1px solid #dce9f5;
    border-radius:10px;
    background:#f6faff;
}

.auth-security-note strong{
    color:#234b75;
    font-size:10.5px;
}

.auth-security-note span{
    color:#6b7f96;
    font-size:9.5px;
}

.auth-mobile-brand{
    display:none;
}

@media(max-width:850px){
    .auth-professional-shell{
        grid-template-columns:1fr;
    }

    .auth-showcase{
        display:none;
    }

    .auth-form-panel{
        min-height:100vh;
        padding:18px;
    }

    .auth-form-wrap{
        padding:24px 20px;
    }

    .auth-mobile-brand{
        display:flex;
        align-items:center;
        justify-content:space-between;
        margin-bottom:28px;
    }

    .auth-mobile-brand strong{
        color:#153c66;
    }

    .auth-mobile-brand a{
        font-size:11px;
        font-weight:750;
    }
}
