form.p01-contact {
	margin: 0;
	max-width: 30em;
	font-family: 'Source Code Pro';
	font-weight: 400;
}

form.p01-contact label {
	font-family: 'Source Sans Pro';
	font-size: 1em;
	line-height: 1.5;
}

form.p01-contact .required label:after {
	color: #DD4A1E;
}

form.p01-contact input:not([type=radio]):not([type=checkbox]), form.p01-contact textarea, form.p01-contact select, form.p01-contact textarea:focus, form.p01-contact select:focus {
	border: 2px solid #333;
}

form.p01-contact input, form.p01-contact textarea, form.p01-contact select {
	font-size: 0.8em;
}

form.p01-contact select {
	min-height: 10px;
	border-radius: none;
}

form.p01-contact input[type=radio], .p01-contact input[type=checkbox] {
	vertical-align: unset !important;
}

form.p01-contact input[type=submit]:not([type=radio]):not([type=checkbox]), form.p01-contact input[type=button]:not([type=radio]):not([type=checkbox]) {
	background-color: #333;
	font-family: 'Source Sans Pro';
	font-weight: 600;
	padding: 1em;
	cursor: pointer;
}

form.p01-contact input[type=submit]:not([type=radio]):not([type=checkbox]):hover, form.p01-contact input[type=button]:not([type=radio]):not([type=checkbox]):hover {
	background-color: #1c1e1b;
}


form.p01-contact .alert.failed {
	font-size: 0.8em;
	color: #DD4A1E;
	border-radius: 0;
	border-color: #DD4A1E;
	background-color: #DD4A1E30;
}

form.p01-contact .alert.success {
	color: #81C73B;
	font-size: 0.8em;
	border-radius: 0;
	background-color: #86c94630;
	border-color: #81C73B;
}

form.p01-contact :not(.inline) .options {
	display: inline-block !important;
	border: none !important;
}

form.p01-contact label em.description {
	display: inline-block;
	float: left;
}

form.p01-contact label em.description::before {
	content: "\A";
	white-space: pre;
}

form.p01-contact .field {
	margin-block-end: 1em;
}


