form{ margin: 1em 0; clear: left; }
fieldset{ margin: 1em 0;  border-top: 1px solid #2C7F70; }
legend{ color: #2C7F70; margin-left: 10px; }

label, input{ float: left; height: 1.2em; line-height: 1.2em; margin: 0.4em 0; font-size: 1.0em; padding: 0.2em; }

label{ width: 80px; text-align: right; margin-right: 0.5em; color: #666666; }
input{ width: 200px; border: 2px solid #ded4c5; }

form br{ clear: left; }

input.radio{ width: auto; border: 0; }
label.radio{ width: 230px; text-align: left; }
label.radioshort{ width: auto; text-align: left; }
input.required{ background: #fffaf1; }
input.hidden{ display: none; }

label.second{ margin-left: 1em; width: auto; }
label.required{ color: #000;}
label.full_line{ width: 90%; text-align: left;}

input#mi{ width: 1.2em; }
input#state{ width: 2em; }
input#zip{ width: 5em; }
input#first_name, input#telephone, input#fax, input#title, input#assoc_title{ width: 100px; }

form p.fieldcaption{ margin: 0 0 0.5em 90px; font-size: 0.9em; color: #666666; }
form p.bigtop{ margin-top: 2em; }
form p.leader{ margin-top: 1em; }

input#submit{ width: auto; height: auto; background: #d4d0c8; border-top: 1px solid #f0f0f0; border-left: 1px solid #f0f0f0; border-bottom: 1px solid #808080; border-right: 1px solid #808080; }

input.chx {
	border: 0px;
	width: 15px;
	margin-top: -1px;
}

#contactform {
	float: right;
	width: 400px;
}

	#contactform form{
		border-left: 1px dashed #ccc;
		padding-left: 20px;
	}

#needs label{
	text-align: left;
	width: 375px;
	height: 15px;
	vertical-align: top;
}

#contact_form fieldset{margin-top: 25px;}
#contact_form fieldset legend{margin-top: 25px;}

