.error input {
	border-color: #a00 !important;
}
.error input[type=text]:focus:not([readonly]) {
	-webkit-box-shadow: 0 1px 0 0 #a00 !important;
	box-shadow: 0 1px 0 0 #a00 !important;
	border-bottom: 1px solid #a00 !important;
}
.error input[type=text]:focus:not([readonly])+label {
	color: #a00 !important;
}
.error label {
	color: #a00 !important;
}
.valid-message {
	display: none;
}
.error .valid-message {
	color: #400;
	display: block;
	font-size: 12px;
	
	-webkit-animation: message-down .3s ease-out;
	-moz-animation: message-down .3s ease-out;
}
.col-md-4.error .valid-message {
	margin-left: 0;
}

@-webkit-keyframes message-down {
	  0% { opacity: 0; -webkit-transform: translateY(-100%); }   
	100% { opacity: 1; -webkit-transform: translateY(0); }
}
@-moz-keyframes message-down {
	  0% { opacity: 0; -moz-transform: translateY(-100%); }   
	100% { opacity: 1; -moz-transform: translateY(0); }
}