	.contact_form h3 {
	  text-align: center;
	  color: #24a443;
	  margin:0;
	  display: block;
	}
	.required_notification {
		color: #d45252;
		margin:5px 0 0 0;
		display:inline;
		float:right;
	}
	.contact_form ul {
		width:790px;
		list-style-type:none;
		list-style-position:outside;
		margin:0px;
		padding:0px;
	}
	.contact_form li{
		padding:1px;
		/* border-bottom:1px solid #eee; */
		position:relative;
	}
	/*
	.contact_form li:first-child, .contact_form li:last-child {
      border-bottom:1px solid #777;
	}
	*/
	.contact_form label {
		width:250px;
		margin-top: 1px;
		display:inline-block;
		float:left; 
		padding:1px;
		color: #000;
		font-weight: bold;
	}
	.contact_form input {
		/* height:10px; */
		width:310px;
		padding:5px 8px;
	}
	.contact_form textarea {padding:8px; width:300px;}
	.contact_form button {}
	.contact_form input, .contact_form textarea {
    border:1px solid #aaa;
    box-shadow: 0px 0px 3px #ccc, 0 10px 15px #eee inset;
    border-radius:2px;
	-moz-transition: padding .25s;
    -webkit-transition: padding .25s;
    -o-transition: padding .25s;
    transition: padding .25s;
	padding-right:30px;
	}
	.contact_form input:focus:invalid, .contact_form textarea:focus:invalid { /* when a field is considered invalid by the browser */
    background: #fff url("../images/invalid.png") no-repeat 98% center;
    box-shadow: 0 0 5px #d45252;
    border-color: #b03535
	}
	.contact_form input:required:valid, .contact_form textarea:required:valid { /* when a field is considered valid by the browser */
    background: #fff url("../images/valid.png") no-repeat 98% center;
    box-shadow: 0 0 5px #5cd053;
    border-color: #28921f;
	}
	input:required, textarea:required {
      background: #fff url("../images/red_asterisk.png") no-repeat 98% center;
	}
	.form_hint {
    background: #d45252;
    border-radius: 3px 3px 3px 3px;
    color: white;
    margin-left:8px;
    padding: 1px 6px;
    z-index: 999; /* hints stay above all other elements */
    position: absolute; /* allows proper formatting if hint is two lines */
    display: none;
	}
	.form_hint::before {
    content: "\25C0"; /* left point triangle in escaped unicode */
    color:#d45252;
    position: absolute;
    top:1px;
    left:-6px;
	}
	.contact_form input:focus + .form_hint {display: inline;}
    .contact_form input:required:valid + .form_hint {background: #28921f;} /* change form hint color when valid */
    .contact_form input:required:valid + .form_hint::before {color:#28921f;} /* change form hint arrow color when valid */
	.contact_form input:focus, .contact_form textarea:focus {
	    padding-right:70px;
		background: #fff;
		border:1px solid #555;
		box-shadow: 0 0 3px #aaa;
	}
	/* Button Style */
	button.submit {
		background-color: #24a443;
		background: -webkit-gradient(linear, left top, left bottom, from(#1d3823), to(#24a443));
		background: -webkit-linear-gradient(top, #1d3823, #24a443);
		background: -moz-linear-gradient(top, #1d3823, #24a443);
		background: -ms-linear-gradient(top, #1d3823, #24a443);
		background: -o-linear-gradient(top, #1d3823, #24a443);
		background: linear-gradient(top, #1d3823, #24a443);
		border: 1px solid #1d3823;
		border-bottom: 1px solid #24a443;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		-ms-border-radius: 3px;
		-o-border-radius: 3px;
		box-shadow: inset 0 1px 0 0 #24a443;
		-webkit-box-shadow: 0 1px 0 0 #24a443 inset ;
		-moz-box-shadow: 0 1px 0 0 #24a443 inset;
		-ms-box-shadow: 0 1px 0 0 #24a443 inset;
		-o-box-shadow: 0 1px 0 0 #24a443 inset;
		color: white;
		font-weight: bold;
		padding: 6px 20px;
		text-align: center;
		text-shadow: 0 -1px 0 #24a443;
	}
	button.submit:hover {
		opacity:.85;
		cursor: pointer;
	}
	button.submit:active {
		border: 1px solid #1d3823;
		box-shadow: 0 0 10px 5px #1d3823 inset;
		-webkit-box-shadow:0 0 10px 5px #1d3823 inset ;
		-moz-box-shadow: 0 0 10px 5px #1d3823 inset;
		-ms-box-shadow: 0 0 10px 5px #1d3823 inset;
		-o-box-shadow: 0 0 10px 5px #1d3823 inset;
	}
	:-moz-placeholder {
      color: #1d3823;
	}
	::-webkit-input-placeholder {
		color: #1d3823;
	}
	*:focus {outline: none;}
	::-webkit-validation-bubble-message {
    padding: 1em;
	}
	
	.contact_form {
	  color: #ffffff;
	}

	.contact_form a:link {
	  text-decoration: none;
	  color: #1d3823;
	}

	.contact_form a:hover {
	  text-decoration: underline;
	}
	
	span.addMap {
	  color: #000;
	}
	input.addMap {
	  width: 80px;
	}
	#addMapFileField {
	background: none;
    box-shadow: 0px;
	-webkit-box-shadow: 0px;
		-moz-box-shadow: 0px;
		-ms-box-shadow: 0px;
		-o-box-shadow: 0px;
    border: none;
	/* height:10px; */
		width:310px;
		padding:0px;
		color: #000;
	}
	.mapsearch_form input:focus:invalid, .mapsearch_form textarea:focus:invalid { /* when a field is considered invalid by the browser */
    background: #fff url("../images/invalid.png") no-repeat 98% center;
    box-shadow: 0 0 5px #d45252;
    border-color: #b03535
	}
	.mapsearch_form input:required:valid, .mapsearch_form textarea:required:valid { /* when a field is considered valid by the browser */
    background: #fff url("../images/valid.png") no-repeat 98% center;
    box-shadow: 0 0 5px #5cd053;
    border-color: #28921f;
	}