*, :before, :after { box-sizing: border-box; } body { background: #424242; } form { width: 320px; margin: 45px auto; } form h1 { font-size: 3em; font-weight: 300; text-align: center; color: #2196F3; } form h5, a { text-align: center; text-transform: uppercase; color: #c6c6c6; } form hr.sep { background: #2196F3; box-shadow: none; border: none; height: 2px; width: 25%; margin: 70px auto 45px auto; } .group { position: relative; margin: 45px 0; } textarea { resize: none; } input, textarea { background: none; color: #c6c6c6; font-size: 18px; padding: 10px 10px 10px 5px; display: block; width: 320px; border: none; border-radius: 0; border-bottom: 1px solid #c6c6c6; } input:focus, textarea:focus { outline: none; } input:focus ~ label, input:valid ~ label, textarea:focus ~ label, textarea:valid ~ label { top: -14px; font-size: 12px; color: #2196F3; } input:focus ~ .bar:before, textarea:focus ~ .bar:before { width: 320px; } input[type="password"] { letter-spacing: 0.3em; } label { color: #c6c6c6; font-size: 16px; font-weight: normal; position: absolute; pointer-events: none; left: 5px; top: 10px; -webkit-transition: 300ms ease all; transition: 300ms ease all; } .bar { position: relative; display: block; width: 320px; } .bar:before { content: ''; height: 2px; width: 0; bottom: 0px; position: absolute; background: #2196F3; -webkit-transition: 300ms ease all; transition: 300ms ease all; left: 0%; } .btn { background: #fff; color: #959595; border: none; padding: 10px 20px; border-radius: 3px; text-transform: uppercase; text-decoration: none; outline: none; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); -webkit-transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); } .btn:hover { color: #8b8b8b; box-shadow: 0 7px 14px rgba(0, 0, 0, 0.18), 0 5px 5px rgba(0, 0, 0, 0.12); } .btn.btn-link { background: #2196F3; color: #d3eafd; } .btn.btn-link:hover { background: #0d8aee; color: #deeffd; } .btn.btn-submit { background: #2196F3; color: #bce0fb; } .btn.btn-submit:hover { background: #0d8aee; color: #deeffd; } .btn.btn-cancel { background: #eee; } .btn.btn-cancel:hover { background: #e1e1e1; color: #8b8b8b; } .btn-box { text-align: center; margin: 50px 0; }