form.invalid {
	background: transparent;
	color: #000;
	animation: none;
}

input.invalid, textarea.invalid, select.invalid {
	background-color: #d44747 !important;
	animation: shake .5s linear;
	color: #FFF;
}

label.invalid.checkbox__container span.checkbox {
	background-color: #d44747 !important;
	animation: shake .5s linear;
}

.contact-content-container .success:not(button), .contact-content-container .fail:not(button) {
	position: relative;
	transition: 500ms;
	opacity: 0;
	visibility: hidden;
	height: 0;
}

.contact-content-container input.invalid::placeholder, .contact-content-container textarea.invalid::placeholder {
	color: #FFF;
}

.success div.success {
	height: auto;
	opacity: 1;
	visibility: visible;
}

.fail div.fail {
	height: auto;
	opacity: 1;
	visibility: visible;
}

.fail.success div.fail{
	height: 0;
	opacity: 0;
	visibility: visible;
}

.contact-content-container input[type="checkbox"] {
	opacity: 0;
	width: auto;
	height: auto;
}

.contact-content-container label.checkbox__container {
	position: relative;
	padding-left: 15px;
}

.contact-content-container label.checkbox__container:hover {
	cursor: pointer;
}

.contact-content-container label span.checkbox {
	position: absolute;
	border: 1px solid #FFF;
	width: 15px;
	height: 15px;
	left: 0;
	top: 0;
	background-color: rgba(255,255,255,0);
}

.contact-content-container label.checkbox__container:hover input ~ span.checkbox {
	background-color: rgba(255,255,255,.1);
}


.contact-content-container label.checkbox__container span.checkbox:after {
	display: block;
	content: "";
	opacity: 0;
	width: 20px;
	height: 20px;
	position: relative;
	bottom: 5px;
}

.contact-content-container label.checkbox__container input:checked ~ span.checkbox:after {
	background-image: url("../images/checked.svg");
	background-size: cover;
	opacity: 1;
}

.contact-content-container label.checkbox__container input[type="checkbox"] {
	width: auto;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -20px;
	width: 20% !important;
	height: 160%;
}

.contact-content-container label.checkbox__container .terms {
	margin-left: 10px;
}

.contact-content-container.success button[type="submit"] {
	background-color: #7fb628;
	color: #FFF;
}

.contact-content-container form select.invalid option, .contact-content-container form select.invalid:focus option {
	color: #FFF;
}

@keyframes shake {
		8%, 41% {
			-webkit-transform: translateX(-10px);
		}
		25%, 58% {
			-webkit-transform: translateX(10px);
		}
		75% {
			-webkit-transform: translateX(-5px);
		}
		92% {
			-webkit-transform: translateX(5px);
		}
		0%, 100% {
			-webkit-transform: translateX(0);
		}
	}