html { 
	height: 100%; 
	margin-bottom: 1px; 
	text-align: center; 
	width: 100%; 
	} 

*  { 
	margin: 0; 
	padding: 0; 
	} 

body  { 
	background: #fff; 
	color: #277e4c; 
	font: small/150% verdana, "trebuchet ms", tahoma, arial, sans-serif; 
	text-align: left; 
	width: 100%; 
	} 

.inner  { 
	margin: 0 auto; 
	width: 880px; 
	} 

#slogan  { 
	background: #56bc81 url(images/navgrad.gif) repeat-x 0 0; /* pale green */ 
	border-top: 2px solid #277e4c; 
	color: #fff; 
	float: left; 
	text-align: center; 
	width: 100%; 
	} 

#header  { 
	border-top: 2px solid #277e4c; 
	float: left; 
	height: 120px; 
	width: 100%; 
	} 

#nav  { 
	background: #277e4c url(images/navgrad.gif) repeat-x 0 0; 
	border-top: 5px solid #56bc81; /* pale green */ 
	float: left; 
	width: 100%; 
	} 

#main  { 
	background: url(images/bodygrad.gif) repeat-x 0 0; 
	float: left; 
	padding: 20px 0; 
	width: 100%; 
	} 

#siteinfo  { 
	background: #f4fdf4 url(images/bodygrad.gif) repeat-x 0 0; 
	border-top: 1px solid #277e4c; 
	float: left; 
	padding: 10px 0 40px 0; 
	width: 100%; 
	} 

#intro  { 
	float: left; 
	width: 570px; 
	} 

#services  { 
	float: right; 
	width: 270px; 
	margin: 20px 0; 
	padding: 0 0 20px 0; 
	color: #4d524d; /* medium grey */ 
	background: #f4fdf4 url(images/servicesbottom.gif) no-repeat 0 100%; 
	} 

.moreservices  { 
	background: #f4fdf4 url(images/servicesbottom.gif) no-repeat 0 100%; 
	color: #4d524d; /* medium grey */ 
	float: right; 
	margin: 0 0 20px 0; 
	padding: 0 0 20px 0; 
	width: 270px; 
	} 

.pic  { 
	float: left; 
	width: 420px; 
	} 

.text  { 
	float: right; 
	width: 440px; 
	} 




/* << navigation menus >> */ 


#nav ul  { 
	float: right; 
	list-style: none; 
	margin: 0; 
	padding: 0; 
	width: auto; 
	} 

#nav ul li  { 
	float: left; 
	margin: 0 0 0 5px; 
	padding: 0; 
	text-align: center; 
	} 

body#index #nav li#navindex, 
body#projects #nav li#navprojects, 
body#testimonials #nav li#navtestimonials, 
body#contact #nav li#navcontact  { 
	background: #d9e1d9 url(images/navleft.gif) no-repeat 0 0; 
	} 

#nav a  { 
	color: #fff; 
	display: block; 
	float: left; 
	margin: 0; 
	padding: 0.5em 1.5em 0.7em 1.5em; 
	text-align: center; 
	text-decoration: none; 
	} 

#nav a:hover  { 
	color: #f8df09; /* bright yellow */ 
	} 

#nav a:active  { 
	color: #260f59; 
	} 

body#index #nav li#navindex a, 
body#projects #nav li#navprojects a, 
body#testimonials #nav li#navtestimonials a, 
body#contact #nav li#navcontact a  { 
	background: url(images/navright.gif) no-repeat 100% 0; 
	color: #333b4b; 
	} 

body#index #nav li#navindex a:hover, 
body#projects #nav li#navprojects a:hover, 
body#testimonials #nav li#navtestimonials a:hover, 
body#contact #nav li#navcontact a:hover  { 
	background: url(images/navright.gif) no-repeat 100% 0; 
	color: #333b4b; 
	cursor: default; 
	} 




/* << other links >> */ 


a:link  { 
	color: #336fdc; /* blue */ 
	text-decoration: underline; 
	} 

a:visited  { 
	color: #6a82ae; /* dull blue */ 
	} 

a:hover { 
	color: #b84526; /* red */ 
	text-decoration: underline; 
	} 

a:focus  { 
	color: #c4bfba; 
	} 

a:active  { 
	color: #1b3aac; 
	} 

h1 a  { 
	background: url(images/h1.gif) no-repeat 0 0;   
	float: left; 
	height: 120px; 
	padding: 0; 
	text-indent: -5000px; 
	width: 550px; 
	} 





/* << headers >> */ 


h1  { 
	background: url(images/h1.gif) no-repeat 0 0;   
	float: left; 
	height: 120px; 
	margin: 0; 
	padding: 0; 
	text-indent: -5000px; 
	width: 550px; 
	} 

h2  { 
	color: #333b4b; 
	font: normal 200%/140% "trebuchet ms", verdana, tahoma, arial, sans-serif; 
	line-height: 140%; 
	margin: 0; 
	padding: 10px 0 5px 0; 
	} 

h3  { 
	color: #333b4b; 
	font: normal 160%/140% "trebuchet ms", verdana, tahoma, arial, sans-serif; 
	margin: 0; 
	padding: 20px 0 0 0; 
	} 

#services h3  { 
	background: url(images/servicestop.gif) no-repeat 0 0; 
	padding: 20px 20px 0 30px; 
	} 

.moreservices h3  { 
	background: url(images/servicestop_plain.png) no-repeat 0 0; 
	padding: 20px 20px 0 30px; 
	} 




/* << paragraphs >> */ 


p  { 
	margin: 0.8em 0 0 0; 
	padding: 0; 
	} 

#slogan p  { 
	margin: 0; 
	padding: 0.5em 0; 
	} 

#siteinfo p  { 
	float: left; 
	margin: 0; 
	padding: 0; 
	text-align: center; 
	width: 100%; 
	} 

#services p, 
.moreservices p, 
body#testimonials #main ul li p  { 
	padding: 0 20px; 
	} 




/* << lists >> */ 


ul  { 
	list-style: circle; 
	margin: 0; 
	padding: 0; 
	} 

li  { 
	margin: 0 0 0 20px; 
	padding: 0.3em 0 0 0; 
	} 

#header ul  { 
	background: url(images/phone.png) no-repeat 0 0; 
	float: right; 
	height: 60px; 
	list-style: none; 
	margin: 30px 0 0 0; 
	text-indent: -5000px; 
	width: 220px; 
	} 

#header ul li  { 
	margin: 0; 
	} 

#siteinfo ul  { 
	display: inline; 
	float: left; 
	line-height: 140%; 
	padding: 1em 0; 
	text-align: center; 
	width: 100%; 
	} 

#siteinfo ul li  { 
	display: inline; 
	margin: 0.5em 0; 
	padding: 0 1em 0 0; 
	} 

ul.approval  { 
	float: left; 
	list-style: none; 
	width: 100%; 
	} 

ul.approval li  { 
	display: inline; 
	} 

#services ul  { 
	padding: 10px 20px 0 15px; 
	list-style: none; 
	} 

#services ul li  { 
	background: url(images/list.png) no-repeat 0 50%;
	padding: 0.1em 0 0.1em 25px; 
	} 

body#testimonials #main ul  { 
	float: left; 
	list-style: none; 
	width: 420px; 
	} 

body#testimonials #main ul#list2  { 
	float: right; 
	} 

body#testimonials #main ul li  { 
	background: #f4fdf4 url(images/quotesbottom.gif) no-repeat 0 100%; 
	margin: 20px 0 0 0; 
	padding: 0 0 20px 0; 
	} 

dl  { 
	float: right; 
	margin: 0; 
	padding: 10px 0; 
	width: 400px; 
	} 

dt  { 
	color: #333b4b; 
	font-size: 120%; 
	font-variant: small-caps; 
	font-weight: normal; 
	padding: 15px 0 5px 0; 
	} 

dd  { 
	margin: 0 0 0 10px; 
	} 





/* << contact forms >> */ 



#contactform  { 
	float: left; 
	width: 450px; 
	} 

#contactform form  { 
	float: left; 
	margin: 0; 
	padding: 10px 20px; 
	width: 400px; 
	} 

#contactform form div  { 
	margin: 1em 0 0 0; 
	} 

#contactform label  { 
	float: left; 
	padding: 0 0.5em 0 0; 
	text-align: right; 
	width: 8em; 
	} 

#contactform label.message  { 
	padding: 0; 
	text-align: left; 
	width: 100%; 
	} 

#contactform input  { 
	border: 1px solid #277e4c; 
	-khtml-border-radius: 5px; 
	-moz-border-radius: 5px; 
	-webkit-border-radius: 5px; 
	border-radius: 5px; 
	padding: 3px; 
	width: 240px; 
	} 

#contactform input.submitform  { 
	color: #b43222; /* dark red */ 
	font-weight: bold; 
	margin: 0 0 0 0.5em; 
	padding: 0.2em 0.5em; 
	width: auto; 
	} 

#contactform input.submitform:hover  { 
	color: #1706f7; /* blue */ 
	cursor: pointer; 
	} 

#contactform textarea  { 
	border: 1px solid #277e4c; 
	-khtml-border-radius: 5px; 
	-moz-border-radius: 5px; 
	-webkit-border-radius: 5px; 
	border-radius: 5px; 
	height: 100px; 
	margin-top: 5px; 
	width: 350px; 
	} 

#contactform .validation-advice {
	background-color: #fff; 
	border: 1px solid #b43222; 
	-moz-border-radius: 5px; 
	-khtml-border-radius: 5px; 
	-webkit-border-radius: 5px; 
	border-radius: 5px; 
	color: #b43222; /* dark red */ 
	font-weight: bold; 
	margin: 5px 0; 
	padding: 5px 10px; 
	} 




/* << gallery stuff >> */ 



ul.gallery a  { 
	border: 1px solid #277e4c; /* green */ 
	-khtml-border-radius: 3px; 
	-moz-border-radius: 3px; 
	-webkit-border-radius: 3px; 
	border-radius: 3px; 
	display: block; 
	height: 104px; /* img height plus T & B padding */ 
	width: 104px; /* img width plus L & R padding */ 
	} 

ul.gallery a:hover  { 
	border: 1px solid #f00; /* red */ 
	display: block; 
	} 

ul.gallery  { 
	border-bottom: 1px solid #277e4c; /* green */ 
	float: left; 
	list-style: none; 
	margin: 0 0 20px 0; 
	padding: 10px 0 20px 20px; /* padding rather than margin works in IE6 */ 
	width: 860px; 
	} 

ul.gallery li  { 
	display: inline; 
	float: left; 
	margin: 0 20px 10px 0; 
	} 

ul.gallery li img  { 
	background: #f1f2f4; 
	border: none; 
	display: inline; 
	float: left; 
	margin: 0; 
	padding: 2px; 
	} 




/* << minor, decorative elements >> */ 


img  { 
	background: #f1f2f4; 
	border: 1px solid #277e4c; 
	float: left; 
	margin: 20px; 
	padding: 2px; 
	} 

img#home  { 
	-khtml-border-radius: 3px; 
	-moz-border-radius: 3px; 
	-webkit-border-radius: 3px; 
	border-radius: 3px; 
	margin: 1em 0; 
	} 

img#approval  { 
	border: none; 
	margin: 10px 0 0 0;
	padding: 0; 
	} 

ul.approval img  { 
	border: none; 
	padding: 0; 
	} /* no longer needed */

body#projects #main img  { 
	margin: 0; 
	} 

blockquote  { 
	background: #f4fdf4 url(images/quotestop.gif) no-repeat 0 0; 
	padding: 10px 0 0 0; 
	} 

body#testimonials #main ul li.first blockquote  { 
	background: #f4fdf4 url(images/quotestopdark.gif) no-repeat 0 0; 
	} 

.piccontainer  { 
	float: left; 
	margin: 10px 0; 
	width: 100%; 
	} 

em  { 
	font-style: normal; 
	font-weight: bold; 
	} 
 
cite  { 
	font-style: italic; 
	} 

abbr, 
acronym  { 
	border-bottom: 1px dotted #277e4c; /* text green */ 
	cursor: help; 
	speak: spell-out; 
	} 

