.group {
    position: relative;
    margin-bottom: 2.5em;
}

.cssinput {
    font-size: 1.5em;
    padding: 10px 10px 10px 5px;
    display: block;
    width: 100%;
    border: none;
    border-bottom: 1px solid #757575;
}

.cssinput:focus {
    outline: none;
}


/* LABEL ======================================= */

.title_input {
    color: #999;
    font-size: 1.8em;
    font-weight: normal;
    position: absolute;
    pointer-events: none;
    left: 5px;
    top: 10px;
    transition: 0.2s ease all;
    -moz-transition: 0.2s ease all;
    -webkit-transition: 0.2s ease all;
}


/* active state */

.cssinput:focus~.title_input,
input:valid~.title_input {
    top: -20px;
    font-size: 1.5em;
    color: black;
}


/* BOTTOM BARS ================================= */

.bar {
    position: relative;
    display: block;
    width: 100%;
}

.bar:before,
.bar:after {
    content: '';
    height: 2px;
    width: 0;
    bottom: 1px;
    position: absolute;
    background: #5264AE;
    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 */

.cssinput:focus~.bar:before,
input:focus~.bar:after {
    width: 50%;
}


/* HIGHLIGHTER ================================== */

.highlight {
    position: absolute;
    height: 60%;
    width: 100px;
    top: 25%;
    left: 0;
    pointer-events: none;
    opacity: 0.5;
}


/* active state */

.cssinput:focus~.highlight {
    -webkit-animation: inputHighlighter 0.3s ease;
    -moz-animation: inputHighlighter 0.3s ease;
    animation: inputHighlighter 0.3s ease;
}


/* button login */

.btn-primary-login {
    background: #1E8CC7 !important;
    color: #ffffff !important;
    border-color: #1E8CC7;
}


/* ANIMATIONS ================ */

@-webkit-keyframes inputHighlighter {
    from {
        background: black;
    }
    to {
        width: 0;
        background: transparent;
    }
}

@-moz-keyframes inputHighlighter {
    from {
        background: black;
    }
    to {
        width: 0;
        background: transparent;
    }
}

@keyframes inputHighlighter {
    from {
        background: black;
    }
    to {
        width: 0;
        background: transparent;
    }
}

@media screen and (min-width: 750px) {
    #imgcontainer {
        width: 100%;
    }
    .row {
        display: table;
    }
    .row>.resize_col {
        display: table-cell;
        vertical-align: middle;
    }
}

@media screen and (max-width: 750px) {
    #imgcontainer {
        display: none;
    }
}

input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #fff inset;
}