/* =====================================================
   RESET
===================================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:'Poppins',sans-serif;

    background:#050505;

    color:#fff;

    overflow:hidden;

}

/* =====================================================
   PAGE
===================================================== */

.login-page{

    position:relative;

    width:100vw;

    height:100vh;

    overflow:hidden;

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:0 7%;

    background:
        radial-gradient(circle at top,#1b1b1b 0%,#050505 70%);

}

/* Glow orange */

.login-page::before{

    content:"";

    position:absolute;

    inset:0;

    background:
        radial-gradient(circle at center,
        rgba(255,106,0,.08),
        transparent 70%);

    pointer-events:none;

}

/* =====================================================
   GROS LOGO TRANSPARENT
===================================================== */

.background-logo{

    position:absolute;

    right:-220px;

    top:50%;

    transform:translateY(-50%);

    width:850px;

    height:850px;

    background:url("../img/logo.png") center no-repeat;

    background-size:contain;

    opacity:.045;

    pointer-events:none;

}

/* =====================================================
   BLOC GAUCHE
===================================================== */

.left-side{

    width:520px;

    z-index:2;

}

.hero-logo{

    width:230px;

    display:block;

    margin-bottom:35px;

    filter:
        drop-shadow(0 0 25px rgba(255,106,0,.30));

}

.left-side h2{

    font-family:'Orbitron',sans-serif;

    font-size:64px;

    font-weight:800;

    letter-spacing:3px;

    line-height:1;

}

.left-side span{

    display:block;

    margin-top:12px;

    font-family:'Orbitron',sans-serif;

    font-size:24px;

    letter-spacing:12px;

    color:#FF6A00;

}

.left-side p{

    margin-top:35px;

    color:#888;

    line-height:1.8;

    font-size:16px;

    max-width:420px;

}

/* =====================================================
   CARTE DE CONNEXION
===================================================== */

.login-card{

    width:380px;

    padding:35px;

    border-radius:22px;

    background:rgba(15,15,15,.96);

    border:1px solid rgba(255,106,0,.12);

    backdrop-filter:blur(12px);

    box-shadow:
        0 0 50px rgba(255,106,0,.10),
        0 20px 70px rgba(0,0,0,.60);

    z-index:10;

    animation:fadeUp .7s ease;

}

/* Logo */

.logo{

    width:58px;

    display:block;

    margin:0 auto 18px;

    filter:
        drop-shadow(0 0 18px rgba(255,106,0,.35));

}

/* Titre */

.login-card h1{

    font-family:'Orbitron',sans-serif;

    font-size:30px;

    text-align:center;

    letter-spacing:4px;

    color:white;

    margin-bottom:6px;

}

.title-line{

    width:70px;

    height:3px;

    background:#FF6A00;

    margin:15px auto 20px;

    border-radius:20px;

}

/* Sous-titre */

.login-card p{

    text-align:center;

    color:#FF6A00;

    margin-bottom:30px;

    font-size:13px;

    letter-spacing:3px;

    text-transform:uppercase;

}

/* Erreur */

.error{

    margin-bottom:20px;

    padding:14px;

    border-radius:12px;

    background:rgba(255,59,48,.12);

    border:1px solid rgba(255,59,48,.35);

    color:#ffb3ae;

    font-size:14px;

}

/* Labels */

.login-card label{

    display:block;

    margin-bottom:8px;

    margin-top:16px;

    color:#c8c8c8;

    font-size:13px;

    font-weight:600;

}

/* Inputs */

.login-card input{

    width:100%;

    height:54px;

    padding:0 18px;

    border:none;

    outline:none;

    border-radius:12px;

    background:#141414;

    color:white;

    border:1px solid #242424;

    transition:.25s;

    font-size:15px;

}

.login-card input::placeholder{

    color:#666;

}

.login-card input:focus{

    background:#181818;

    border-color:#FF6A00;

    box-shadow:0 0 18px rgba(255,106,0,.18);

}

/* Bouton */

.login-card button{

    width:100%;

    height:56px;

    margin-top:25px;

    border:none;

    border-radius:12px;

    cursor:pointer;

    font-weight:700;

    font-size:15px;

    text-transform:uppercase;

    letter-spacing:1px;

    color:white;

    background:linear-gradient(135deg,#FF6A00,#FF8C00);

    transition:.25s;

}

.login-card button:hover{

    transform:translateY(-2px);

    box-shadow:0 15px 35px rgba(255,106,0,.35);

}

.login-card button:active{

    transform:scale(.98);

}

/* Animation */

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(35px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/* =====================================================
   HALO ORANGE
===================================================== */

.login-page::after{

    content:"";

    position:absolute;

    width:700px;

    height:350px;

    bottom:-180px;

    left:50%;

    transform:translateX(-50%);

    background:radial-gradient(circle,
        rgba(255,106,0,.28),
        transparent 70%);

    filter:blur(80px);

    pointer-events:none;

}

/* =====================================================
   ANIMATION DU LOGO
===================================================== */

.hero-logo{

    animation:logoFloat 6s ease-in-out infinite;

}

@keyframes logoFloat{

    0%{
        transform:translateY(0px);
    }

    50%{
        transform:translateY(-12px);
    }

    100%{
        transform:translateY(0px);
    }

}

/* =====================================================
   ANIMATION DE LA CARTE
===================================================== */

.login-card{

    animation:cardAppear .8s ease;

}

@keyframes cardAppear{

    from{

        opacity:0;

        transform:translateX(40px);

    }

    to{

        opacity:1;

        transform:translateX(0);

    }

}

/* =====================================================
   HOVER INPUT
===================================================== */

.login-card input:hover{

    border-color:#3a3a3a;

}

/* =====================================================
   HOVER LOGO
===================================================== */

.hero-logo:hover{

    filter:
        drop-shadow(0 0 25px rgba(255,106,0,.55))
        drop-shadow(0 0 70px rgba(255,106,0,.25));

}

/* =====================================================
   RESPONSIVE
===================================================== */

@media(max-width:1200px){

    .left-side{

        display:none;

    }

    .login-page{

        justify-content:center;

        padding:25px;

    }

    .login-card{

        width:420px;

    }

}

@media(max-width:650px){

    .login-card{

        width:100%;

        max-width:380px;

        padding:28px;

    }

}