/* =========================
   ADVANCED AUTH POPUP
========================= */

.elementor-popup-modal .dialog-widget-content{

    overflow:hidden;
    border-radius:28px;

    background:#fff;

}

/* MAIN */

.instrava-auth-popup{

    display:flex;
    min-height:720px;

    font-family:Arial,sans-serif;

}

/* =========================
   LEFT VISUAL
========================= */

.instrava-auth-visual{

    width:50%;

    background:url('https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?q=80&w=1600')
    center center/cover no-repeat;

    position:relative;

}

.visual-overlay{

    position:absolute;
    inset:0;

    background:
    linear-gradient(
        180deg,
        rgba(0,0,0,.15),
        rgba(0,0,0,.45)
    );

}

.visual-content{

    position:absolute;

    left:60px;
    bottom:60px;

    z-index:2;

    color:#fff;

    max-width:420px;

}

.brand-tag{

    display:inline-block;

    padding:8px 16px;

    border-radius:30px;

    background:rgba(255,255,255,.15);

    backdrop-filter:blur(10px);

    font-size:12px;
    letter-spacing:2px;

    margin-bottom:24px;

}

.visual-content h2{

    font-size:52px;
    line-height:1.1;

    margin-bottom:24px;

    font-weight:600;

}

.visual-content p{

    font-size:16px;
    line-height:1.8;

    opacity:.92;

}

/* =========================
   RIGHT PANEL
========================= */

.instrava-auth-panel{

    width:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:70px;

    background:#fff;

}

.instrava-auth-box{

    width:100%;
    max-width:440px;

}

/* LOGO */

.auth-logo{

    font-size:28px;
    font-weight:700;

    margin-bottom:40px;

    letter-spacing:1px;

}

/* =========================
   TABS
========================= */

.instrava-auth-tabs{

    display:flex;

    background:#f4f4f4;

    padding:6px;

    border-radius:14px;

    margin-bottom:36px;

}

.tab-btn{

    flex:1;

    height:52px;

    border:none;
    background:none;

    border-radius:12px;

    font-size:15px;
    font-weight:600;

    cursor:pointer;

    transition:.3s;

}

.tab-btn.active{

    background:#111;
    color:#fff;

}

/* =========================
   TAB CONTENT
========================= */

.instrava-tab-content{

    display:none;

}

.instrava-tab-content.active{

    display:block;

}

/* =========================
   SOCIAL LOGIN
========================= */

.instrava-social-login{

    margin-bottom:28px;

}

.google-login-btn{

    width:100%;
    height:58px;

    border:1px solid #e5e5e5;

    border-radius:16px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;

    text-decoration:none;

    background:#fff;
    color:#111;

    transition:.3s;

    font-size:15px;
    font-weight:500;

}

.google-login-btn:hover{

    background:#f7f7f7;

}

.google-login-btn img{

    width:20px;
    height:20px;

}

/* =========================
   DIVIDER
========================= */

.instrava-divider{

    position:relative;

    text-align:center;

    margin:30px 0;

}

.instrava-divider::before{

    content:'';

    position:absolute;

    left:0;
    top:50%;

    width:100%;
    height:1px;

    background:#ececec;

}

.instrava-divider span{

    position:relative;

    background:#fff;

    padding:0 18px;

    color:#999;

    font-size:13px;

}

/* =========================
   INPUTS
========================= */

.floating-group{

    position:relative;

    margin-bottom:24px;

}

.floating-group input{

    width:100%;
    height:60px;

    border:1px solid #e5e5e5;
    border-radius:16px;

    padding:20px 18px 0;

    font-size:15px;

    background:#fff;

    transition:.3s;

}

.floating-group input:focus{

    border-color:#111;
    outline:none;

}

.floating-group label{

    position:absolute;

    left:18px;
    top:20px;

    color:#999;

    transition:.25s;

    pointer-events:none;

}

.floating-group input:focus + label,
.floating-group input:valid + label{

    top:10px;
    font-size:12px;

}

/* =========================
   TURNSTILE
========================= */

.cf-turnstile{

    margin-bottom:24px;

}

/* =========================
   BUTTON
========================= */

.auth-submit-btn{

    width:100%;
    height:60px;

    border:none;
    border-radius:16px;

    background:#111;
    color:#fff;

    font-size:15px;
    font-weight:600;

    cursor:pointer;

    transition:.3s;

}

.auth-submit-btn:hover{

    background:#222;

}

/* =========================
   FORGOT PASSWORD
========================= */

.forgot-password-link{

    text-align:center;

    margin-top:22px;

}

.forgot-password-link a{

    color:#777;

    text-decoration:none;

    font-size:14px;

}

.forgot-password-link a:hover{

    color:#111;

}

/* =========================
   MESSAGES
========================= */

.login-message,
.register-message{

    margin-top:20px;

    text-align:center;

}

/* =========================
   MOBILE
========================= */

@media(max-width:980px){

    .instrava-auth-popup{

        flex-direction:column;

    }

    .instrava-auth-visual{

        width:100%;
        min-height:320px;

    }

    .instrava-auth-panel{

        width:100%;
        padding:40px 24px;

    }

    .visual-content{

        left:30px;
        bottom:30px;

    }

    .visual-content h2{

        font-size:38px;

    }

}