*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

body{
    background:#050505;
}

.login-section{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px 20px;
    background:#050505;
    overflow:hidden;
    position:relative;
}

.login-section::before{
    content:'';
    position:absolute;
    width:450px;
    height:450px;
    border-radius:50%;
    background:#1f2937;
    top:-200px;
    left:-150px;
    filter:blur(140px);
    opacity:.25;
}

.login-section::after{
    content:'';
    position:absolute;
    width:400px;
    height:400px;
    border-radius:50%;
    background:#374151;
    bottom:-180px;
    right:-150px;
    filter:blur(140px);
    opacity:.20;
}

.login-container{
    width:100%;
    max-width:1300px;

    display:grid;
    grid-template-columns:1fr 500px;

    gap:60px;

    align-items:center;

    position:relative;
    z-index:2;
}

/* LEFT */

.login-badge{
    display:inline-block;

    padding:10px 18px;

    border-radius:50px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    color:#d1d5db;

    margin-bottom:20px;
}

.login-left h1{
    color:#fff;

    font-size:clamp(40px,5vw,70px);

    line-height:1.1;

    margin-bottom:20px;
}

.login-left h1 span{
    display:block;
    color:#9ca3af;
}

.login-left p{
    color:#9ca3af;

    line-height:1.9;

    font-size:17px;

    max-width:600px;

    margin-bottom:40px;
}

.login-features{
    display:flex;
    flex-direction:column;
    gap:20px;
}

.feature{
    display:flex;
    align-items:center;
    gap:15px;

    color:#d1d5db;
}

.feature i{
    width:50px;
    height:50px;

    border-radius:14px;

    background:#111;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#fff;
}

/* LOGIN CARD */

.login-card{
    background:rgba(255,255,255,.03);

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(20px);

    border-radius:30px;

    padding:40px;
}

.login-card h2{
    color:#fff;

    font-size:34px;

    margin-bottom:30px;
}

.form-group{
    margin-bottom:20px;
}

.form-group label{
    display:block;

    color:#d1d5db;

    margin-bottom:10px;

    font-size:14px;
}

.input-box{
    display:flex;
    align-items:center;

    background:#111;

    border:1px solid rgba(255,255,255,.08);

    border-radius:14px;

    padding:0 15px;
}

.input-box i{
    color:#9ca3af;
}

.input-box input{
    width:100%;

    background:none;

    border:none;

    outline:none;

    color:#fff;

    padding:16px 12px;
}

.login-options{
    display:flex;
    justify-content:space-between;
    align-items:center;

    margin:20px 0;
}

.login-options label,
.login-options a{
    color:#9ca3af;
    font-size:14px;
    text-decoration:none;
}

.login-btn{
    width:100%;

    padding:16px;

    border:none;

    border-radius:14px;

    background:#fff;

    color:#000;

    font-size:16px;

    font-weight:700;

    cursor:pointer;
}

.divider{
    text-align:center;

    color:#6b7280;

    margin:25px 0;
}

.google-btn{
    width:100%;

    padding:15px;

    border-radius:14px;

    border:1px solid rgba(255,255,255,.08);

    background:#111;

    color:#fff;

    cursor:pointer;

    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
}

.signup-text{
    text-align:center;

    margin-top:25px;

    color:#9ca3af;
}

.signup-text a{
    color:#fff;
    text-decoration:none;
}

/* TABLET */

@media(max-width:992px){

    .login-container{
        grid-template-columns:1fr;
    }

    .login-left{
        text-align:center;
    }

    .login-left p{
        margin:auto auto 40px;
    }

    .login-features{
        max-width:500px;
        margin:auto;
    }
}

/* MOBILE */

@media(max-width:768px){

    .login-card{
        padding:25px;
    }

    .login-left h1{
        font-size:38px;
    }

    .login-options{
        flex-direction:column;
        gap:15px;
        align-items:flex-start;
    }
}