/***************/
/* main layout */
/***************/
body { margin: 0; padding: 0; margin-top: 16px; /* backgrounds? */ }

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

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


/*******************/
/* header elements */
/*******************/
#navContainer {  }

#navContainer #logo { float: left; }

#navContainer #clientZone { float: right; }
#navContainer #clientZone form  { text-align: right; }
#navContainer #clientZone input { border: 0; padding: 2px 5px 3px; margin-bottom: 5px; }
#navContainer #clientZone input#username,
#navContainer #clientZone input#password { background: #c7c7c7; color: #fff; }
#navContainer #clientZone input#login { background: #fff; color: #666; }

#navContainer ul { float: right; margin-top: 10px; }
#navContainer ul li {  }
#navContainer ul li a       { color: #666; text-decoration: none; }
#navContainer ul li a:hover { color: #96c; text-decoration: none; }

ul.nav    { list-style: none; margin: 0; padding: 0; }
ul.nav li { display: inline; margin-right: 5px; }


/********************/
/* content elements */
/********************/
#mainContainer {  }

#sidebar { float: left; width: 235px; }
#rightContent { float: right; width: 490px; }

.clientImage,
.personImage { float: left; margin-right: 10px; margin-bottom: 10px; }

blockquote {
	margin: 10px 0;
	display: block;
}

blockquote:before { content: open-quote; }
blockquote:after  { content: close-quote; }

div.hr {
	height: 1px;
	width: 100%;
	margin: 10px 0;
	padding: 0;
	border: 0;
	background: url('../images/hr.gif') top left repeat-x;
	clear: both;
}

hr {
  margin: 18px 0;
  border-bottom: solid #b70062 1px;
  height: 1px;
  border-top: none;
  border-left: none;
  border-right: none;
}

/*********/
/* items */
/*********/
.item              { margin-bottom: 10px; }
.item .itemHeader  {  }
.item .itemTitle   { font-weight: bold; }
.item .itemDate    { font-style: italic; }
.item .itemContent {  }
.item .itemImage   { float: left; margin-right: 5px; margin-bottom: 5px; }

#sideNews .itemTitle { margin: 15px 0; }

#studies { margin-top: 20px; margin-bottom: 50px; }
#studies .item { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #666; }

#testimonials { margin-top: 20px; }
#testimonials .item { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #666; }
#testimonials .item:last-child { padding-bottom: 0px; border-bottom: 0; }

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

/*******************/
/* footer elements */
/*******************/
#footer { margin-bottom: 20px; }


/***********************/
/* 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 */