/* =========================
   GLOBAL
========================= */

*{
    box-sizing:border-box;
}

body{

    min-height:100vh;
    margin:0;

    background:#F8F8F5;

    font-family:'Segoe UI', sans-serif;

    display:flex;
    justify-content:center;
    align-items:center;

}

/* =========================
   MAIN CARD
========================= */

.login-box{

    width:950px;

    height:550px;

    background:white;

    border-radius:30px;

    overflow:hidden;

    display:flex;

    box-shadow:0 15px 40px rgba(0,0,0,0.08);

}

/* =========================
   LEFT PANEL
========================= */

.left-panel{

    width:50%;

    background:#004C6C;

    color:white;

    padding:50px;

    display:flex;

    flex-direction:column;

    justify-content:center;

}

.logo{

    font-size:32px;

    font-weight:700;

    letter-spacing:1px;

}

.left-panel h1{

    font-size:38px;

    font-weight:700;

    line-height:1.2;

    margin:20px 0 15px;

}

.left-panel p{

    color:#D8EAF0;

    font-size:15px;

    line-height:1.6;

    margin:0;

}

/* =========================
   RIGHT PANEL
========================= */

.right-panel{

    width:50%;

    padding:35px 45px;

    display:flex;

    flex-direction:column;

    justify-content:center;

}

.right-panel h2{

    color:#003B52;

    font-size:28px;

    font-weight:700;

    margin-bottom:20px;

}

/* =========================
   INPUT
========================= */

label{

    font-size:14px;
    color:#374151;
    margin-bottom:5px;

}

.form-control{

    height:45px;
    border-radius:12px;
    border:1px solid #ddd;
    font-size:14px;

}

.form-control:focus{

    border-color:#004C6C;
    box-shadow:0 0 0 0.15rem rgba(0,76,108,.15);

}

.input-group-text{

    height:45px;

    background:white;

    border:1px solid #ddd;

    border-radius:12px 0 0 12px;

}

.input-group .form-control{

    border-left:none;

}

/* =========================
   BUTTON
========================= */

.login-btn{

    height:45px;

    border:none;

    border-radius:12px;

    background:#004C6C;

    color:white;

    font-weight:600;

    transition:.3s;

}

.login-btn:hover{

    background:#F5C542;

    color:#003B52;

}

/* =========================
   REGISTER FORM
========================= */

.register-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
}

#registerForm .form-control{
    height:42px;
}

/* =========================
   ERROR MESSAGE
========================= */

.error{

    background:#FEE2E2;

    color:#991B1B;

    padding:10px;

    border-radius:10px;

    font-size:14px;

    margin-bottom:12px;

}

/* =========================
   LINK
========================= */

a{
    color:#004C6C;
    text-decoration:none;
    font-weight:600;
}

a:hover{
    color:#F5C542;
}

/* =========================
   RESPONSIVE
========================= */

    @media(max-width:900px){

    .login-box{

        width:90%;

        height:auto;

        flex-direction:column;

    }

    .left-panel,
    .right-panel{

        width:100%;

    }

    .left-panel{

        padding:40px;

    }

    .left-panel h1{

        font-size:30px;

    }

    .right-panel{

        padding:40px;

    }

    .register-grid{

        grid-template-columns:1fr;

    }

}