body{
    background-image: url("sphere.png");
    background-repeat: no-repeat;
    background-position: center;
    background-attachment: fixed;
    background-size: cover;
}

div.login-panel{
    background-color: rgba(255, 255, 255, 0.85);
    box-shadow: 0px 2px 5px #686161;
    width: 25%;
    margin: 10vh auto;
    border-radius: 10px;
}

div.login-panel img.logo-vz{
    margin: 0 auto;
    display: block;
    width: 40%;
    padding: 50px 0;
}

/* Texte */
h1, h2, p, input{
    font-family: 'Montserrat', sans-serif;
    text-align: center;
}
h1{
    color: #252850;
    margin-bottom: 0px;
}
h2{
    color: #17CFEC;
    margin-top: 0px;
}

/* Formulaire */
form{
    margin: 0 auto;
    width: 75%;
}
input{
    display: block;
    outline: 0;
    border: 0;
    border-radius: 4px;
    box-sizing: border-box;
}
input.champs{
    width: 100%;
    margin: 0 0 15px;
    padding: 15px;
    text-align: left;
    border: 2px solid #fff;
    transition: all 0.5s ease;
}
input.field-icon {
    appearance: none;
    top: 35px;
    right: 5%;
    float: right;
    position: relative;
    margin: 0px;
    color: #A5A5A5;
    transition: all 0.5s ease;
    font-size: 1.2em;
}
input.bouton{
    width: 50%;
    margin: 50px auto;
    padding: 12px 5px;

    font-weight: bold;
    background-color: #17CFEC;
    color: #fff;
    transition: all 0.5s ease;
    cursor: pointer;
}
input.bouton:hover{
    background-color: #41e6ff;
    transition: all 0.5s ease;
}
input.champs:focus {
    border-bottom: 2px solid #41e6ff;
    transition: all 0.5s ease;
}
input.bouton:focus {
    background-color: #41e6ff;
    transition: all 0.5s ease;
}

/* Logo */
div.credits{
    width: 60%;
    margin: 0 auto;
    padding: 25px;
}
div.credits img{
    display: inline;
    width: 45%;
    padding: 0 2%;
    margin: 0px;
    vertical-align: middle;
}


/* Error */
p.validation-message{
    color: red;
    text-align: left;
    bottom: 10px;
    float: left;
    position: relative;
    margin: 0px;
    font-size: 0.75em;
    width: 100%;
}
input.incorrect{
    border-color: red;
}
input.incorrect:focus {
    border-bottom: 2px solid red;
}

/* Media query */

/* Tablette landscape */
@media screen and (max-width: 1500px) {
    div.login-panel{
        width: 35%;
    }
  }
  /* Tablette portrait */
  @media screen and (max-width: 992px) {
    div.login-panel{
        width: 60%;
    }
  }
  
  /* Cellphone */
  @media screen and (max-width: 600px) {
    div.login-panel{
        width: 90%;
    }
    div.login-panel img.logo-vz{
        width: 50%;
        padding-bottom: 10px;
    }

    input.bouton{
        width: 50%;
        margin-top: 30px;
        margin-bottom: 10px;
    }

    div.credits img{
        display: block;
        width: 50%;
        padding: 2% 20%;
        margin: 0px auto;
    }
  }