/***************/
/* main layout */
/***************/
body { margin: 0; padding: 0; /* backgrounds? */ }

#bodyWrapper { width: 875px; margin: auto; margin-top: 10px; }

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


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

#header { margin-bottom: 20px; }

#header #companyStrap { float: left; font-size: 3em; }
#header #links        { float: right; margin-top: 20px; text-align: right; }
#header #links ul     { margin: 0; padding: 0; list-style: none; display: inline; }
#header #links ul li  { display: inline; margin-right: 20px; }
#header #links #quickLinksForm { display: inline; }
#header #links #searchForm     { display: block; margin-top: 10px; }

#header #nav       { margin-top: 10px; float: left; width: 200px; }
#header #nav ul    { margin: 0; padding: 0; }
#header #nav ul li { margin: 0; padding: 0; display: block; height: 30px; }

#header #flash { margin-top: 10px; float: left; width: 670px; }


/*************************/
/* main content elements */
/*************************/

#middle {  }

#middle #sidebar { float: left; width: 185px; margin-right: 15px; }

#middle #sidebar #newsBar { margin-bottom: 20px; }
#middle #sidebar #newsBar .newsItem {  }

#middle #sidebar #contactBar { color: #365f91; }

#middle #content { float: left; width: 670px; }



.newsItem { margin-bottom: 10px; }
.newsHeader { margin-bottom: 10px; }

#newsEvents { float: left;  width: 460px; padding-left: 15px; }
#newsEvents .newsItem { margin-bottom: 5px; }
#signupForm { float: right; width: 160px; border-left: 1px solid #95b3d7; padding-left: 20px; margin-bottom: 8px; }
#signupFiorm form { margin: 0; padding: 0; }

#login { background-color: #e3f0fd; color: #1f4858; margin-top: 27px; }
#login #loginInner { padding: 10px 12px 1px; }
#login #loginInner form { margin: 0; padding: 0; }
#login #loginInner form input { width: 80px; padding: 1px 0; }

#sectionPictures {  }
#sectionPictures .sectionPicture { float: left; width: 160px; background: #e3f0fd; margin-right: 10px; font-size: 0.8em; }
#sectionPictures .sectionPicture .sectionPictureInner { padding: 4px 9px; height: 330px; }
#sectionPictures .sectionPicture .sectionPictureInner h3 { font-size: 1.1em; }
#sectionPictures .sectionPicture .sectionPictureInner div.bottomCopy { margin-top: 5px; line-height: 1.6em}
#sectionPictures .sectionPicture .sectionPictureInner ul.topBullets { height: 35px; }
#sectionPictures .sectionPicture .sectionPictureInner ul.bottomBullets { margin-top: 5px; }
#sectionPictures .sectionPicture .sectionPictureInner ul { margin: 0; padding: 0; list-style: none; }
#sectionPictures .sectionPicture .sectionPictureInner ul li { margin: 0; padding: 0; }
#sectionPictures .sectionPicture .sectionPictureInner ul li.secondLI { margin-top: 5px; border-top: 1px solid #365F91; padding-top: 3px; }


td.marginRight { padding-right: 10px; }








/******************/
/* documents page */
/******************/

.tree             { margin: 0; padding: 0; }

.branch           { list-style: none; margin-top: 10px; padding-left: 16px; }

.branch > a       { display: block; padding-left: 16px; }
.branch > .nodocs { display: block; padding-left: 16px; }

.branch-folder      > a { background: transparent url(../images/bullet-toggle-plus.gif) no-repeat left 3px; }
.branch-folder-open > a { background: transparent url(../images/bullet-toggle-minus.gif) no-repeat left 3px; }
.branch-link        > a {  }
.branch-document    > a {  }



/**********/
/* footer */
/**********/

#footer { background-color: #e3f0fd; color: #1f4858; margin-top: 20px; text-align: right; width:870px; }
#footer #footerInnerWrap{ width: 700px }
#footer #footerInner { padding: 10px 30px 7px 10px; }

#footer #footerInner ul    { margin: 0; padding: 0; }
#footer #footerInner ul li { margin: 0; padding: 0; display: block; margin-left: 15px; margin-bottom: 5px; float: right; }

#footer #footerInner a:link    { color: #1f4858; }
#footer #footerInner a:visited { color: #1f4858; }
#footer #footerInner a:hover   { color: #365f91; }
#footer #footerInner a:active  { color: #365f91; }









#navContainer {  }

#navContainer img { float: left; }

#navContainer ul {
	float: right;
	list-style: none;
	margin: 0;
	padding: 0;
}
#navContainer ul li { display: inline; font-weight: bold; margin-right: 8px; }
#navContainer ul li a { text-decoration: none; }


/********************/
/* content elements */
/********************/
#mainContainer {
	margin: 0;
	padding: 0;
}

.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 { }
#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: 60px; /* default width for a default form, add new form ids and override */
}
div.formrow.indent { margin-left: 70px; } /* label width + label margin-right, override as above */

form#docForm div.formrow label  { width: 90px; }
form#docForm div.formrow.indent { margin-left: 100px; }

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