﻿
/* form starting stylings ------------------------------- */
.group {
    position: relative;
    margin-bottom: 30px;
}

input {
    font-size: 18px;
    padding: 10px 10px 10px 5px;
    display: block;
    width: 100%;
    border: none;
    border-bottom: 1px solid #757575;
}

    input:focus {
        outline: none;
    }

/* LABEL ======================================= */
label {
    color: #999;
    font-size: 18px;
    font-weight: normal;
    position: absolute;
    pointer-events: none;
    padding-left: 5px;
    top: 10px;
    transition: 0.2s ease all;
    -moz-transition: 0.2s ease all;
    -webkit-transition: 0.2s ease all;
}

/* active state */
input:focus ~ label{
    top: -20px;
    font-size: 14px;
    color: #0071bc;
}
input:valid ~ label {
    /*top: -20px;
    font-size: 14px;
    color: #999;*/
}
input:not(:focus):valid ~ label {
    top: -20px;
    font-size: 14px;
    color: #999;
}

input:-webkit-autofill ~ label,
input:-webkit-autofill:hover ~ label,
input:-webkit-autofill:focus input:-webkit-autofill ~ label
{
    top: -20px;
    font-size: 14px;
    color: #999;
}
/* BOTTOM BARS ================================= */
.bar {
    position: relative;
    display: block;
    width: 100%;
}

    .bar:before, .bar:after {
        content: '';
        height: 2px;
        width: 0;
        bottom: 1px;
        position: absolute;
        background: #0071bc;
        transition: 0.2s ease all;
        -moz-transition: 0.2s ease all;
        -webkit-transition: 0.2s ease all;
    }

    .bar:before {
        left: 50%;
    }

    .bar:after {
        right: 50%;
    }

/* active state */
input:focus ~ .bar:before, input:focus ~ .bar:after {
    width: 50%;
}

