/***************/
/* main layout */
/***************/
body { margin: 0; padding: 0; background:url(../images/bg.jpg) repeat-x top #FFFFFF;  color:#2f2f2f; }

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

/* specific link colours for this site */
a         { color: #2f2f2f; text-decoration: none; }
a:link    { color: #2f2f2f; text-decoration: none; }
a:visited { color: #2f2f2f; text-decoration: none; }
a:hover   { color: #189ec0; text-decoration: none; }
a:active  { color: #189ec0; text-decoration: none; }

/*******************/
/* latest ptoject */
/*******************/
.l_project{margin-bottom:10px;}
.l_project img{border:1px solid #000; float:left; width:224px;}
.l_project .content{float:right; width:350px;}
.l_project a{color:#1aa3c6; font-weight:bold;}

/*******************/
/* header elements */
/*******************/
#header { height:207px; }

#logo 		{ float:left; margin-top:18px; width:276px; }
#contact	{ float:right; margin-top:82px; text-align: right; width:331px; }

#phoneNo		{ width:264px; float:right; padding-bottom:15px;}
#header-email 	{
	background: transparent url(../images/email.png) no-repeat scroll 0 0;
	background-position: 0px 0px;
	display: block;
	height: 21px;
	margin:4px 0 25px 0px;
	text-indent: -999px;
	overflow: hidden;
	width: 333px;
}
#header-email:hover 	{ background-position:    0px -21px; }

#select	{ margin-top:3px;}

ul#nav      { margin:0; padding:0; margin-top:17px; }
ul#nav li   { margin:0; padding:0; float: left; list-style:none; }

ul#nav li a {
	background: transparent url(../images/nav.png) no-repeat scroll 0 0;
	display: block;
	height: 17px;
}
ul#nav li a { text-indent: -999px; overflow: hidden; }

#nav #nav-home a 					{ width: 52px; background-position: 		0px 0px; }
#nav #nav-about a 				{ width: 85px; background-position: 	-52px 0px; }
#nav #nav-projects a 			{ width: 121px; background-position: -136px 0px; }
#nav #nav-testimonials a 	{ width: 104px; background-position: -256px 0px; }
#nav #nav-contact a 			{ width: 93px; background-position: -360px 0px; }


#nav #nav-home a:hover 					{ background-position:    0px -17px; }
#nav #nav-about a:hover 				{ background-position:  -52px -17px; }
#nav #nav-projects a:hover 			{ background-position: -136px -17px; }
#nav #nav-testimonials a:hover	{ background-position: -256px -17px; }
#nav #nav-contact a:hover 			{ background-position: -360px -17px; }

/********************/
/* content elements */
/********************/
#main { float:left; width:587px; padding:0px; font-family: Arial, Helvetica, sans-serif; font-size:12px; color:#2f2f2f; line-height:16px; }
#side { float:right; width:227px; }

.mainTitle	{ padding:16px 0px 10px 0px;}
.headerImage	{ border:1px solid #1b1025; }



/*********/
/* items */
/*********/
.item          { margin-bottom: 10px; }
.item .title   { font-size: 1em; font-weight: bold; }
.item .date    { font-style: italic; }
.item .image   { float: left; margin-right: 5px; margin-bottom: 5px; }


/*******************/
/* footer elements */
/*******************/

/*form*/
#form .text 	{ background: #787878; border:0; margin: 0; color: #fff; width: 223px; padding:2px; }
#job-description { overflow-y:auto; height:91px; }

#footer { float:right; font-size:11px; margin-top:-10px; }
#footer a { text-decoration: none; } /* for the clevercherry.com link */


/***********************/
/* general form styles */
/***********************/
.required { color: #f00; }

/* 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: 4px;
}

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 */
div.formrow label.radio {
	float: none;
	text-align: inherit;
	margin-right: 0;
	width: auto;
}

#recaptcha_widget         { margin-bottom: 15px; }
#recaptcha_image          { float: left; width: 300px; }
#recaptcha_options        { border-left: 1px solid #999; padding-left: 5px; float: left; margin-left: 10px; }
#recaptcha_response_field { width: 325px; }
#recaptcha_notice         { font-size: 0.833em; color: #555; }

/* message and error boxes, not just useful in contact form */
#messages{margin:0; padding:0;},
#errors{margin:0; padding:0;},
#warnings,
#info { margin-bottom: 10px; }
.message { border: 1px solid #080; background: #efe; color: #080; padding: 3px 5px; margin-bottom: 15px; float: left; } /* you may need to clearfix this */
.message.nomargin { margin-bottom: 0; } /* if before something with a margin-top */
.message.info { border-color: #880; background: #ffe; color: #880; } /* info box in yellow */
.message.warn { border-color: #f40; background: #ffe; color: #f40; } /* warning box in orange */
.message.error { border-color: #f00; background: #fee; color: #f00; } /* error box in red */