#form input
, #form .dropdown { background-color: #ebecea; }

.form_table {
	width: 100%;
	border: 0;
}

.form_table, .form_table * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.form_table td {
	border: 0;
	vertical-align: middle;
	padding: 4px;
	text-align: left;
}

.form_table tr td ~ td label { text-align: right; }

.form_table input {
	width: 100%;
	border: 1px solid #000;
	padding: 5px 10px;
	background-color: #fff;
	
	font-family: "Arial Narrow", sans-serif;
	font-weight: 600;
	font-size: 12px;
	color: #000;
}

.form_table label {
	display: block;
	font-family: "Arial Narrow", sans-serif;
	font-weight: 600;
	font-size: 12px;
	color: #777;
	white-space: nowrap;
}

.form_table tr td label { max-width: 300px; }

.form_footer {
	text-align: center;
	margin-top: 20px;
}

.files {
	margin-top: 20px;
	margin-bottom: 80px;
}

.files td {
	width: 33.3333%;
	vertical-align: top;
}

.files h3 {
	font-size: 18px;
	margin-bottom: 20px;
}

@media (min-width: 769px) {
	.files h3 { min-height: 50px; }
}

@media only screen and (max-width: 768px) {
	.files h3 { margin-top: 50px; }
}

.file span {
	line-height: 80px;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	color: #000;
	padding: 2px;
	max-width: 300px;
}

.file span::before {
	content: '+';
	width: 80px;
	height: 80px;
	font-size: 30px;
	background-color: #ccc;
	padding: 0;
	
	-webkit-transition: -webkit-box-shadow 200ms ease-in-out;
    -moz-transition: -moz-box-shadow 200ms ease-in-out;
    -ms-transition: box-shadow 200ms ease-in-out;
    -o-transition: box-shadow 200ms ease-in-out;
    transition: box-shadow 200ms ease-in-out;
}

.file input:focus ~ span:before {
	-webkit-box-shadow: 0 0 2px 1px rgba(0, 0, 0, 1);
    -moz-box-shadow: 0 0 2px 1px rgba(0, 0, 0, 1);
    box-shadow: 0 0 2px 1px rgba(0, 0, 0, 1);
}

.file label { font-style: italic; }

.subnote {
	font-style: italic;
	font-size: 75%;
	line-height: normal;
}

.error {
	display: block;
	color: #f00;
}

@media (min-width: 520px) {
	.g-recaptcha {
		display: inline-block;
		vertical-align: middle;
		margin-right: 20px;
	}
}

@media only screen and (max-width: 519px) {
	.g-recaptcha { margin: 0 auto 20px auto; }
}

@media only screen and (max-width: 980px) {
	#form .width_25 { width: 50% !important; }
	#form .width_50 { width: 100% !important; }
}

@media only screen and (max-width: 768px) {
	#form .width_25 { width: 100% !important; }

	.form_table, .form_table tbody, .form_table tr, .form_table td { display: block; }
	.form_table label { text-align: left !important; }
	.form_table input, .form_table select, .form_table textarea { font-size: 32px; }
	.files td { width: 100%; }
}