@charset "utf-8";
body  {
	font: 100% Arial, Helvetica, Verdana, sans-serif;
	background: #fff;
	margin: 0; /* it's good practice to zero the margin and padding of the body element to account for differing browser defaults */
	padding: 0;
	text-align: center; /* this centers the container in IE 5* browsers. The text is then set to the left aligned default in the #container selector */
	color: #000000;
}

h1 {
	border-bottom: 1px solid #a4c3e2;
	margin: 0 0 5px 0;
}
h2 {
	margin: 0px 0px 2px 0px;
	font-size: 1.3em;
	font-weight: normal;
}
h3 {
	margin: 0px 0px 2px 0;
	font-weight: normal;
	color: #000;
	font-size: 1.15em;
}
h1, h2 {
	padding: 0px;
	color: #3b5394;
}
p, ol, ul {
	color: #4c4c4c;
}
ol li {
	padding-bottom: 3px;
}
img {
	border-style: none;
}
a {
	text-decoration: none;
	color: #00F;
}
a:hover {
	text-decoration:underline;
}

#container {
	width: 900px;  /* using 20px less than a full 800px width allows for browser chrome and avoids a horizontal scroll bar */
	margin: 0 auto; /* the auto margins (in conjunction with a width) center the page */
	text-align: left;
} 
#header {
	padding: 40px 0 5px 20px;  /* this padding matches the left alignment of the elements in the divs that appear beneath it. If an image is used in the #header instead of text, you may want to remove the padding. */
	margin: 0;
} 
#header h1 {
	margin: 0; /* zeroing the margin of the last element in the #header div will avoid margin collapse - an unexplainable space between divs. If the div has a border around it, this is not necessary as that also avoids the margin collapse */
	padding: 10px 0; /* using padding instead of margin will allow you to keep the element away from the edges of the div */
}

/* main content
****************************************** */
#mainContent {
	padding: 0;
	float: right;
	width: 620px;
	margin-top: 5px;
	margin-bottom: 30px;
} 
#mainContent p {
	line-height: 1.3;
	margin-top: 0px;
}

/* home */
#homePage #mainContent {
	width:100%;
}
#homePage #mainContent h1 {
	color: #fff;
	border: none;
	font-size: 3em;
	font-weight: normal;
	margin: 0;
	line-height: 1.2em;
	padding: 0;
	position: absolute;
	top: 20px;
	left: 40px;
	width: 500px;
	height: 105px;
}
#homePage #mainContent h1 span {
	position: absolute;
	width: 500px;
	height: 105px;
	background: url("_images/banner_header.jpg") no-repeat;
	}
#homeBanner {
	background: #3b5394;
	height: 210px;
	position: relative;
}
#homeBanner #bannerLeft {
	background: url(_images/banner_left.gif) no-repeat;
	height: 210px;
	width: 12px;
	position: absolute;
	left: 0px;
	top: 0px;
}
#homeBanner #bannerRight {
	background: url(_images/banner_right.gif) no-repeat;
	height: 210px;
	width: 12px;
	position: absolute;
	right: 0px;
	top: 0px;
}
#homePage #columnLeft,
#homePage #columnRight {
	width: 440px;
	margin: 50px 0 30px 0;
	background: url(_images/sidebar_heading.jpg) repeat-x left top;
}
#homePage #columnLeft {
	float:left;
}
#homePage #columnRight {
	float:right;
}
#homePage #columnLeft h2,
#homePage #columnRight h2 {
	color: #333;
	padding: 5px 0 0 10px;
	font-size: 1.15em;
	height: 30px;
}
#homePage h3 {
	color: #3b5394;
	border-bottom: 1px solid #a4c3e2;
	font-size: 1.3em;
}

/* navbar
****************************************** */
#navbar {
	color: #fff;
	padding: 0px;
	background: url(_images/gradient.jpg) repeat-x left bottom;
	height: 61px;
	color: #3b5394;
}
#navbar ul {
	list-style: none;
	padding: 6px 0 6px 20px;
	background: #fff url(_images/navbar.jpg) repeat-x left bottom;
	margin: 0;
}
#navbar ul li {
	display: inline;
	margin-right: 30px;
	font-size: 16px;
	padding: 0;
	letter-spacing: .1em;
}
#navbar ul li a {
	color: #CCC;
	text-decoration: none;
	padding-bottom: 4px;
	letter-spacing: .1em;
}

#navbar ul li a:hover {
	border-bottom: 3px solid #fff;
	color: #fff;
}
#homePage #homeNav,
#servicesPage #servicesNav,
#webdesignPage #servicesNav,
#webredesignPage #servicesNav,
#webmaintPage #servicesNav,
#portfolioPage #portfolioNav,
#contactPage #contactNav {
	border-bottom: 3px solid #fff;
	font-weight: bold;
	color: #fff;
}

/* sidebar
****************************************** */
#sidebar2 {
	float: left;
	width: 250px;
}
#sidebar2 ul a {
	color: #6e6e6e;
}
#sidebarBox {
	border: 1px solid #b2b2b2;
	margin-top: 10px;
	background: url(_images/sidebar_heading.jpg) repeat-x left top;
	position: relative;
	margin-bottom: 100px;
}
#sidebarBox h3 {
	margin: 0px;
	padding: 4px 0 3px 20px;
	font-weight: normal;
	font-size: 1.2em;
	color: #333;
}
#sidebarBox ul {
	line-height: 2em;
	list-style: none;
	margin: 0px;
	padding: 10px 0px 10px 0px;
}
#sidebarBox li {
	
}
#sidebarBox li a {
	padding-left: 20px;
}
#sidebarBox li a:hover {
	color: #3b5394;
	text-decoration:none;
}
#webdesignPage #webdesignNav,
#webredesignPage #webredesignNav,
#webmaintPage #webmaintNav {
	font-weight: bold;
	color: #3b5394;
	background: url(_images/navbar_bullet.gif) no-repeat 3px center;
}
#sidebar2 blockquote {
	font-family: Georgia, "Times New Roman", Times, serif;
	font-style: italic;
	margin: 0 0 75px 0;
	background: url(_images/quote_open.gif) no-repeat 0px 0px;
	padding: 0;
	font-size: 0.95em;
}
#sidebar2 blockquote p {
	color: #999;
}
#sidebar2 blockquote p.quote {
	padding-top: 20px;
	background: url(_images/quote_close.gif) no-repeat 100% 105%;
	padding-bottom: 30px;
	text-indent: 40px;
	margin: 0;
}
#sidebar2 blockquote p.author {
	padding: 0px;
	text-align: right;
	margin: 0;
}
.box_top {
	position: absolute;
	left: -1px;
	top: -1px;
}
.box_bottom {
	position: absolute;
	left: -1px;
	bottom: -1px;

}

/* footer
****************************************** */
#footer {
	padding: 0 10px 0 20px; /* this padding matches the left alignment of the elements in the divs that appear above it. */
	background:#DDDDDD;
	margin-bottom: 20px;
	background: url(_images/sidebar_heading.jpg) repeat-x left top;
} 
#footer p {
	margin: 0; /* zeroing the margins of the first element in the footer will avoid the possibility of margin collapse - a space between divs */
	padding: 5px 0; /* padding on this element will create space, just as the the margin would have, without the margin collapse issue */
	font-size: 0.8em;
	color: #666;
}

.fltrt { /* this class can be used to float an element right in your page. The floated element must precede the element it should be next to on the page. */
	float: right;
	margin-left: 8px;
}

.fltlft { /* this class can be used to float an element left in your page */
	float: left;
	margin-right: 8px;
}

.clearfloat { /* this class should be placed on a div or break element and should be the final element before the close of a container that should fully contain a float */
	clear:both;
    height:0;
    font-size: 1px;
    line-height: 0px;
}
#footer a {
	color: #333;
}
a:visited {
	color: #60C;
}
.portfolioProject {
	float: left;
	margin: 10px 0;
}
.portfolioProject img {
	float: left;
	display: block;
}
.portfolioProject p {
	margin-left: 143px;
	margin-bottom: 0px;
}
.portfolioProject h2 {
	margin-left: 143px;
}
#mainContent .rule {
	border-width: 1px;
	border-bottom-style: dotted;
	clear: left;
	margin-bottom: 10px;
	padding-top: 10px;
}
#sidebarBox p {
	margin-left: 20px;
	line-height: 1.2em;
}

/* contact form */
form#cont ul {
	margin:0;
	padding:0;
	color: #222;
	font-size: 0.9em;
	}
form#cont ul li {
	list-style:none;
	margin:0 0 10px 0;
	padding:0;
	}
label {
	height: 25px; 
	line-height: 1.5em; 
}
/* --- contact page ------------------- */
body#contactPage #titleBar p {
	font-size:1em;
	color:#333333;
}
body#contactPage p.contactText span {
	color: #f16600;
}
body#contactPage p.contactText {
	font-size:1.2em;
	line-height:1.2em;
	margin-bottom: 10px;
	font-weight: normal;
	color: #666666;
}	
#contactForm { 
	display: block; 
	/*width: 700px; */
	margin-top:10px;
	padding: 25px; 
	border: 1px solid #cbcbcb; 
	background-color: #fff; 
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
	color: #666;
	font-family:Arial, Helvetica, sans-serif;
	}
#contactForm p {
	margin-bottom:0px;
}
hr { 
	color: inherit; 
	height: 0; 
	margin: 6px 0 6px 0; 
	padding: 0; 
	border: 1px solid #d9d9d9; 
	border-style: none none solid; 
}
label { 
	display: inline-block; 
	float: left; 
	height: 26px; 
	line-height: 1.5em; 
	width: 125px; 
	margin: 7px 0 5px 0;
}
input, textarea { 
	margin: 0; 
	padding: 5px; 
	color: #333; 
	background: #f5f5f5; 
	border: 1px solid #ccc; 
	margin: 5px 0; 
	font-family: Arial, Helvetica, sans-serif; 
	font-size: 1em;
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
}   
input#name,
input#email,
input#company{
	width:250px;
}
input#verify{
	width: 25px;
}
input#subject,
textarea#comments{
	width:350px;
}
textarea{
	height: 10em;
}
input:focus, textarea:focus, select:focus { 
	border: 1px solid #999; 
	background-color: #fff; 
	color:#333; 
	}
input.submit { 
	cursor: pointer; 
	border: 1px solid #222; 
	background:#333; 
	color:#fff; 
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
	}
input.submit:hover { 
	background:#444; 
	}
fieldset { 
	padding:20px; 
	border:1px solid #eee; 
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
	}
legend { 
	padding:7px 10px; 
	font-weight:bold; 
	color:#000; 
	border:1px solid #eee; 
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
	}
span.required{ /* Select the colour of the * if the field is required. */
	font-size: 13px; 
	color: #ff0000; 
	}
/* PHP errors */	
.error_message { 
	display: block; 
	height: 22px; 
	line-height: 22px; 
	background: #FBE3E4 url('../_images/error.gif') no-repeat 10px center; 
	padding: 3px 10px 3px 35px; 
	margin: 10px 0; 
	color:#8a1f11;
	border: 1px solid #FBC2C4; 
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
	}
.errorHighlight {
	border:1px solid #fa757a;
}
.security_error{
	color: #c00;
	background: #FBE3E4 url('../_images/error.png') no-repeat 10px center; 
	padding-left: 35px;
}
/* jQuery errors*/
.error{
	color: #C00;
	margin: 7px 0 5px 0px;
	line-height:1.5em;
	display:inline;
	float:none;
	}
input.error,
textarea.error{
	border:1px solid #c00;
}
label.error{
	margin-left:10px;
}
	
#succsess_page h2 { 
	background: url('../_images/success.gif') left no-repeat; 
	padding-left:22px; 
	}
/* old styles */
/*form#cont input {
	width: 300px;
	background-color:#f5f5f5;
	height:1.5em;
	border: 1px solid #ccc;
	}
form#cont textarea {
	border: 1px solid #ccc;
	background-color:#f5f5f5;
	font-family:Arial, Helvetica, sans-serif;
	}
form#cont input.button {
	width: 100px;
	cursor:pointer;
	}
form#cont input.test {
	width: 25px;
	}
#mainContent .error {
	font-weight: bold;
	color: #F90;
	border-bottom: 1px solid #f90;
}
.errorMessage {
	background: url(_images/error.gif) no-repeat 0px 2px;
	padding-left: 17px;
}
*/