body {
	margin: 0;
	background-color: #333;
	color: #ccc;
	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
	}

p,ul,ol, address {
	font-size: 0.75em;
	}

#content td p {
	line-height: 1.5em;
	}
	
#content p, blockquote p {
	line-height: 2em;
	}

#footer p {
	margin: 0;
	padding: 0.6em 1em 0.6em 1em;
	}
	
#nav p {
	margin: 0;
	padding: 0 0 10px 0;
	}

hr {
	border: 0;
	width: 790px;
	height: 1px;
	margin: 5px auto 15px auto;
	background-color: #555;
	}

/*address {
	margin: 0 2em 2em 2em;
	font-style: italic;
	line-height: 2em;
	}*/
	
address { padding: 0 0 0 1em; font-style: italic; line-height: 1.6; }

blockquote {
	margin: 0 2em 0 2em;
	padding-left: 1em;
	border-left: 0.3em solid #666;
	font-style: italic;
	line-height: 2em;
	}
	
.attribution {
	margin: 0 0 2em 35em;
	line-height: 1.6em;
	}
	
/* --- links --- */

a:link,
a:visited {
	color: #fff;
	}

a:hover,
a:active {
	color: #ccc;
	text-decoration: none;
	}

/* --- headers --- */

h1 {
	margin: 0;
	}
	
h2 {
	font-size: 1.2em;
	font-weight: normal;
	padding-top: 8px;
	color: #fff;
	}

h3 {
	margin: 2em 0 0 0;
	font-size: 0.9em;
	font-weight: normal;
	color: #fff;
	}

/* --- tables --- */
	
td {
	}
	
/* --- divs --- */

#top {
	width: 100%;
	background-color: #000;
	}
	
	#masthead {
		width: 800px;
		margin: 0 auto;
		}
	
	#nav {
		width: 800px;
		margin: 0 auto;
		}

#content {
	width: 800px;
	margin: 0 auto;
	}
	
	#contact-form {
		margin: 0 0 10px 0;
		padding: 10px;
		background-color: #444;
		border: 1px solid #222;
		}
		
#footer {
	width: 800px;
	margin: 0 auto 10px auto;
	padding: 0;
	background-color: #000;
	}
	
/* --- form --- */

.good {
	margin-bottom: 10px !important;
	padding: 5px;
	border: 1px solid #31ac3a;
	color: #333;
	background-color: #ccffa8;
	}

.bad {
	margin-bottom: 10px !important;
	padding: 5px;
	border: 1px solid #fa4748;
	color: #333;
	background-color: #fdcfb9;
	}

form {
	margin: 0;
	padding: 0;
	}
	
#contact-form p {
	margin: 0;
	}

#contact-form p.alt {
	margin: 2px 0 10px 0;
	}
	
input.text {
	width: 75%;
	background-color: #edefe0;
	font-size: 1.0em;
	}
	
textarea {
	width: 90%;
	background-color: #edefe0;
	font-size: 1.0em;
	}
	
span.error {
	color: red;
	font-size: 1.0em;
	font-weight: bold;
	}
span.valid {
	color: green;
	font-size: 1.0em;
	font-weight: bold;
	}

.postalcode { margin: 0 0 0 0.5em; text-transform: uppercase; white-space: nowrap; } /* span class to keep postal codes uppercase, to prevent wrapping, and to include extra space before */
.tel, .gps { white-space: nowrap; } /* span class to keep phone numbers & GPS coordinates from wrapping */

.key {
	text-decoration: underline;
	}
