/* --- material floating label --- */
.form-group {
    display: flex;
    height: 60px;
}

.form-group.especial {
    height: 100px;
}

.control-label {
    pointer-events: none;
    position: absolute;
    transform: translate3d(15px, 30px, 0) scale(1);
    transform-origin: left top;
    transition: 240ms;
    font-weight: 300;
}

.form-group.focused .control-label {
    opacity: 1;
    transform: scale(0.9);
    font-weight: bold;
}

.form-control {
    align-self: flex-end;
}

.form-control::-webkit-input-placeholder {
    color: transparent;
    transition: 240ms;
}

.form-control:focus::-webkit-input-placeholder {
    transition: none;
}

.form-group.focused .form-control::-webkit-input-placeholder {
    color: #fff;
}