body {
    background: linear-gradient(180deg, #5e77ff, #74b25f, #61a8fa, #9cd888);
    background-size: 800% 800%;

    -webkit-animation: LoginAnimation 15s ease infinite;
    -moz-animation: LoginAnimation 15s ease infinite;
    -o-animation: LoginAnimation 15s ease infinite;
    animation: LoginAnimation 15s ease infinite;
}

a {
    cursor: pointer;
}

.login-title {
    max-width: 580px;
    margin: 110px auto 100px;
    font-size: 2rem;
    color: #fff;
    font-weight: bold;
}

.login-wrapper {
    max-width: 480px;
    width: 100%;
    margin: 0 auto;
    padding-left: 25px;
    padding-right: 25px;
    background: #ffffff;
    animation: login-fade-in 1s ease forwards;
    -webkit-animation: login-fade-in 1s ease forwards;
}

.login-container {
    max-width: 340px;
    margin: 0 auto;
}

@keyframes login-fade-in {
    0% {
        opacity: 0;
        visibility: hidden;
    }

    100% {
        opacity: 1;
        visibility: visible;
    }
}

.login-choice {
    margin-top: .8rem;
    margin-bottom: 1rem;
}

.login-form {
    padding-top: 2rem;
    width: 100%;    
}

.login-choice-buyers,
.login-choice-partners {
    display: inline-block;
    vertical-align: top;
}

#login a.login-choice-buyers {
    margin-right: 1rem;
    transition: color .33s ease-in-out;
    transition: color .33s ease-in-out;
}

#login a.login-choice-buyers:hover {
    color: #777;
}

.login-choice-partners {
    color: #686edd;
    font-weight: bold;
}

.login_name,
.login_pass {
    position: relative;
    display: block;
    width: 0;
    height: 30px;
    margin: 0 auto;
    border: none;
    margin-bottom: 26px;
    padding-left: 2px;
    padding-right: 5px;
    border-bottom: 1px solid #000;
    box-shadow: 0 1px 0 0 #fff;
    outline: none;
    animation: login-appears 1.2s ease forwards;
    -webkit-animation: login-appears 1.2s ease forwards;
}

@keyframes login-appears {
    0% {
        width: 0;
    }

    90% {
        width: 80%;
    }

    100% {
        max-width: 260px;
        width: 100%;
    }
}

@-webkit-keyframes login-appears {
    0% {
        width: 0;
    }

    90% {
        width: 80%;
    }

    100% {
        max-width: 260px;
        width: 100%;
    }
}

.login_name,
.login_pass {
    font-size: 1rem;
    border-bottom: 1px solid #000;
    box-shadow: 0 1px 0 0 #fff;
    transition: all 1.1s ease;
    -webkit-transition: all 1.1s ease;
}

.login_name:focus,
.login_pass:focus {
    box-shadow: 0 1px 0 0 #264796;
    border-bottom: 1px solid #264796;
}

.login-wrapper a,
.login-wrapper a:hover,
.login-wrapper a:focus {
    color: #000000;
}

a.login-link-signup {
    margin-top: .3rem;
    margin-bottom: .3rem;
    display: inline-block;
    vertical-align: top;
    color: #686edd;
    font-weight: bold;
    transition: color .33s ease-in-out;
    -ms-transition: color .33s ease-in-out;
    -webkit-transition: color .33s ease-in-out;
}

a.login-link-signup:hover {
    color: rgba(104, 110, 221, 0.78);
}

.login-signup {
    width: 100%;
    margin-top: 4rem;
    margin-bottom: 1rem;
    line-height: 2rem;
}

.error {
    display: none;
    color: red;
    font-size: .9rem;
}

.success {
    display: none;
    color: green;
    font-size: .9rem;
    font-weight: bold;
}

.login-choice-reg,
.login-choice-backmain {
    display: inline-block;
    vertical-align: top;
    color: #000000;
    -webkit-transition: color .33s ease-in-out;
    -ms-transition: color .33s ease-in-out;
    transition: color .33s ease-in-out;
}

.login-choice-backmain:hover,
.login-choice-backmain:focus,
.login-choice-reg:hover,
.login-choice-reg:focus {
    color: #888 !important;
}

.login-logo-container {
    width: 100%;
    text-align: center;
    margin-top: -45px;
}


/*Media queries */
@media all and (max-width:576px) {
    .login-title {
        max-width: 340px;
        font-size: 1.4rem;
        margin-top: 50px;
    }

    .login-logo-container {
        margin-top: -34px;
    }

    .login-logo-container img {
        width: 100px;
    }

}

/*Background Animations*/
@-webkit-keyframes LoginAnimation {
    0% {
        background-position: 50% 0%
    }

    50% {
        background-position: 50% 100%
    }

    100% {
        background-position: 50% 0%
    }
}

@-moz-keyframes LoginAnimation {
    0% {
        background-position: 50% 0%
    }

    50% {
        background-position: 50% 100%
    }

    100% {
        background-position: 50% 0%
    }
}

@-o-keyframes LoginAnimation {
    0% {
        background-position: 50% 0%
    }

    50% {
        background-position: 50% 100%
    }

    100% {
        background-position: 50% 0%
    }
}

@keyframes LoginAnimation {
    0% {
        background-position: 50% 0%
    }

    50% {
        background-position: 50% 100%
    }

    100% {
        background-position: 50% 0%
    }
