input[type=text], input[type=password], input[type=email], input[type=tel], input[type=file], select, textarea, button, button[type=submit], input[type=submit] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	border: 1px solid #CCC;
	/* line-height: 2.4rem; */
	padding: 0.6rem 1rem;
	outline: none;
	background-color: #FFF;
	border-radius: 0px;
	font-size: 14px;
	color: var(--body-color);
	transition: all 0.2s;
	font-family: var(--body-font-family);
}
textarea { resize: none; height: 200px; }
select { background-image: url(../images/icons/chevron-down-grey.svg); background-repeat: no-repeat; background-position: 99% center; background-size: auto 60%; }
button[type=submit], input[type=submit] { padding: 0.6rem 2rem; background-color: #b8132a; color: #FFF; }

select.notvalid, input.notvalid, textarea.notvalid { border: 1px solid red; background-color: rgba(229, 45, 51, 0.1); }
select option { }
select.novalue { color: #BBB; opacity: 1; }
::placeholder { color: #BBB; opacity: 1; }
:-ms-input-placeholder { color: #BBB; opacity: 1; }
::-ms-input-placeholder { color: #BBB; opacity: 1; }

input[type="checkbox"].notvalid + label:before { background-color: rgba(229, 45, 51, 0.1); border: 1px solid #666; }
input[type="checkbox"] { visibility: hidden; width: 3px; height: 3px; }
input[type="checkbox"] + label { cursor: pointer; position: relative; font-size: 0.8rem; padding-left: 30px; display: inline-block; margin-top: -1rem; }
input[type="checkbox"] + label:before { border: 1px solid #CCC; content: ''; position: absolute; display: block; width: 22px; height: 22px;
	margin: 0px 0px 40px 0px; padding: 0; vertical-align: middle; background-color: #FFF; top: -3px; left: 0px;
}
input[type="checkbox"]:checked + label:before {
	background-image: url(../images/Check-128.png); background-repeat: no-repeat;
	background-size: 16px 16px; background-position: center center; width: 22px; height: 22px;
	background-color: #b8132a; text-align: center;
}

.form-success-container { background: #EEE; padding: 1rem; display: none; }
.form-container { background: #EEE; padding: 1rem; }
.form-content { display: flex; flex-wrap: wrap; justify-content: space-between; }
.form-content .c1 { width: 100%; }
.form-content .c2 { width: 49.5%; }
.w25 .form-content .c2,
.w33 .form-content .c2,
.w40 .form-content .c2,
.w50 .form-content .c2 { width: 100%; }
.form-content .label { font-size: 0.9rem; line-height: 1.2em; padding: 5px 0px 2px 0px; }
.form-content .privacy { width: 100%; line-height: 1.2em; }
.form-content .privacy a { text-decoration: none; color: #b8132a; }
.form-content .submit { width: 100%; padding: 1rem 0rem 0rem 0rem; text-align: right; }
