/***************/
/* main layout */
/***************/
body { margin: 0; padding: 0; background: #c7c7c7; }

#bodyWrapper { width: 895px; margin: auto; }

/* specific link colours for this site */
a:link 	  { color: #a70000; text-decoration: none; }
a:visited { color: #a70000; text-decoration: none; }
a:hover   { color: #bc6016; text-decoration: underline; }
a:active  { color: #bc6016; text-decoration: underline; }


/***************/
/* backgrounds */
/***************/

#header, #middle, #footer { padding: 0 29px; }

#header { background: #c7c7c7 url('../images/bg_top.jpg') top center no-repeat; height: 28px; }
#middle { background: #c7c7c7 url('../images/bg_mid.jpg') top center repeat-y; }
#footer { background: #c7c7c7 url('../images/bg_bot.jpg') top center no-repeat; height: 19px; padding: 15px 40px 10px; font-size: 91.67%; }


/*******************/
/* header elements */
/*******************/

ul#nav {
  display: block;
	list-style: none;
	margin: 0;
	padding: 0;
  
  width: 815px;
  height: 25px;
  
  background: #fff url('../images/navbar.jpg') top left no-repeat;
  padding: 4px 0px 4px 20px;
  
  font-family: Helvetica, sans-serif;
  font-size: 110%;
  line-height: 160%;
}

ul#nav img { vertical-align: middle; }

ul#nav li { display: inline; margin-right: 7px; }
ul#nav li a,
ul#nav li a:link,
ul#nav li a:visited  { text-decoration: none; color: #333; }
ul#nav li a:hover,
ul#nav li a:active { text-decoration: none; color: #666; }

ul#nav ul { display: inline; list-style: none; margin: 0; padding: 0; margin-left: 10px; font-size: 86.67%; color: #666; }
ul#nav ul li { display: inline; }
ul#nav ul li a,
ul#nav ul li a:link,
ul#nav ul li a:visited  { text-decoration: none; color: #666; }
ul#nav ul li a:hover,
ul#nav ul li a:active { text-decoration: none; color: #999; }

ul.funkyList { list-style: none; line-height: 150%; margin: 0; padding: 0; }
ul.funkyList li { abackground-color: #e9e9e9; background-image:url(../images/bullet.gif); background-repeat:no-repeat; background-position:left; padding: 2px 5px 0px 15px; margin: 0 0 6px; }


/********************/
/* content elements */
/********************/
#mainContainer {
	margin: 0;
	padding: 0;
  margin-top: 10px;
  background: #fff url('../images/waves.jpg') bottom right no-repeat;
}

.floatleft { float: left; }

hr {
	border-bottom: dashed #000 1px;
	height: 1px;
	border-top: none;
	border-left: none;
	border-right: none;
}

/*****************/
/* photo gallery */
/*****************/
div.galleryItem { /* one gallery item */
	width: 100px;
	height: 100px;
	float: left;
	margin: 5px;
}

/*******************/
/* footer elements */
/*******************/
#footer a { text-decoration: none; } /* for the clevercherry.com link */


/***********************/
/* general form styles */
/***********************/
#contactform	{ float: left; }  /* the contact form itself */
#contact		{ float: right; } /* contact info or whatever on right */

/* all form elements are contained within a formrow div, with a label and
 *  then the element, this is the best way (but still not good) to emulate
 *  a table */
div.formrow {
	clear: both;
	text-align: left;
	margin-bottom: 10px;
}

div.formrow label {
	float: left;
	text-align: right;
	margin-right: 10px;
	width: 80px; /* default width for a default form, add new form ids and override */
}
div.formrow.indent { margin-left: 90px; } /* label width + label margin-right, override as above */

/* message and error boxes, not just useful in contact form */
div.box { border: 1px solid #080; color: #080; padding: 3px 5px; margin-bottom: 15px; float: left; } /* you may need to clearfix this */
div.box.nomargin { margin-bottom: 0; } /* if before something with a margin-top */
div.box.error { border-color: #f00; color: #f00; } /* error box in red */