@charset "utf-8";
/* CSS Document */

* { padding: 0; margin: 0; }

body  {
	font: 13px 'Lucida Grande', 'Lucida Sans Unicode', Helvetica, Arial, Verdana, sans-serif;
	line-height:165%;
	background-color:#1a1f24;
	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:#000;
}


/* CONTAINERS */

.twoColElsLtHdr #container { 
	/*width: 780px;  /* using 20px less than a full 1000px width allows for browser chrome and avoids a horizontal scroll bar */
	background-color:#ffffff; /*#fffae7;*/
	/*background:#d1d2d3 url(/images/bg-gradient.jpg) repeat-x 0 115px;*/
	margin: 0 auto; /* the auto margins (in conjunction with a width) center the page */
	text-align:left; /* this overrides the text-align: center on the body element. */
}
.subcontainer {
	width:780px;
	margin: 0 auto;
	/*border:1px solid #666;*/
}
#h-container { height: 220px; position:relative; }
#r-container { height: 35px; position:relative; }
#gn-container { height: 50px; margin-top:7px; }
#f-container { height: 60px; padding-top:10px; }
	

/* HEADER */

.twoColElsLtHdr #header { 
	height: 111px;
	/*padding: 0px 10px 0 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. */
	background:#efefef; /*url(/images/cs_bg-gradient_header.jpg) 0 0 repeat-x;*/
	text-align:center;
	overflow:hidden;
	position:relative;
	border-top:8px #003872 solid;
	margin-left:-77px;
}
.twoColElsLtHdr #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 */
}
#cslogo {
	float:left;
	background:transparent url(/images/cslogo.png) no-repeat 0 0;
	width:350px;
	height:110px;
	margin:5px 15px 0 0px;
	text-indent:-9999px;
}
#cslogo p a {
	font: 200% 'Lucida Grande', 'Lucida Sans Unicode', Helvetica, Arial, Verdana, sans-serif;
	color:#000;
	letter-spacing:-1px;
	text-indent:-9999px;
	position:absolute;
	width:320px;
	height:70px;
	left:30px;
	top:45px;
}
#printLogo { display:none; }


/* REFLECTION */

#reflection { height:35px; position:relative; margin-left:-77px; }
#cslogoreflect {
	float:left;
	background:#ffffff url(/images/cslogo-reflect.png) no-repeat 0px 0px;
	width:350px;
	height:35px;
}


/* GLOBAL NAV */

#globalnav { 
	float:right;
	position:absolute;
	top:70px;
	right:-40px;
	height:30px; 
	background:transparent url(/images/gn-left.png) no-repeat 0 0;
	text-align:center; 
	font:13px 'Lucida Grande', 'Lucida Sans Unicode', Helvetica, Arial, Verdana, sans-serif;
}
#globalnav ul {
	background:transparent url(/images/gn-right.png) no-repeat right 0;
	height:30px;
	list-style-type:none;
}
#globalnav ul li {
	float:left;
	display:list-item;
	overflow:hidden;
	height: 30px;
	border-left:1px #efefef solid;
}
#globalnav ul li.first { border-left:none; }
#globalnav ul li a, #globalnav ul li a:visited {
	/*text-indent:-9999px;*/
	color:#efefef;
	display: block;
	line-height:27px;
	padding:0 12px;
}
#globalnav ul li a:hover { text-decoration:none; color:#ffb754; background-position: 0 -50px; }

/*li#gn-home { width: 61px; }
li#gn-about { width: 82px; }
li#gn-services { width: 102px; }
li#gn-samples { width: 103px; }
li#gn-contact { width: 93px; }*/

/*#gn-home a { width: 37px; }
#gn-about a { width: 58px; }
#gn-services a { width: 78px; }
#gn-samples a { width: 79px; }
#gn-contact a { width: 69px; }*/


/* LOCAL NAV (SIDEBAR) */

.twoColElsLtHdr #localnav {
	float: left; /* since this element is floated, a width must be given */
	width: 180px; /* the actual width of this div, in standards-compliant browsers, or standards mode in Internet Explorer will include the padding and border in addition to the width */
	/*background: #EBEBEB; /* the background color will be displayed for the length of the content in the column, but no further */
	padding: 0 15px 50px 35px;
	text-align:right;
	margin-top:23px;
	color:#000000;
	border-right:1px #000 solid;
}
#localnav h1 { text-indent:-9999px; height:45px; }
#localnav ul { list-style-type:none; font-weight:bold; }
#localnav li { display:list-item; line-height:18px; }
#localnav li + li { margin-top:10px; }
#localnav h1 a { position:absolute; width:180px; height:42px; display:block; }
#localnav a.selected { color:#0088cc; }
#localnav a, #localnav a:link, #localnav a:visited { font-size:12px; }
#localnav a:hover { color:#0088cc; text-decoration:none; }


/* MAIN CONTENT */
.twoColElsLtHdr #mainContent { 
	/*margin: 20px 0px 20px 235px; /* the left margin on this div element creates the column down the left side of the page - no matter how much content the sidebar1 div contains, the column space will remain. You can remove this margin if you want the #mainContent div's text to fill the #sidebar1 space when the content in #sidebar1 ends. */
	/*padding: 0 0 0 20px; /* remember that padding is the space inside the div box and margin is the space outside the div box */
	margin: 0px 0px 0px 0px;
	padding: 28px 55px 25px 255px; /* L 55px */
	background:#ffdf7c url(/images/cs_maincontentbg.jpg) 0 0 repeat-x;
	border-top:4px solid #ffb754;
	border-bottom:4px solid #ffb754;
}
#mainContent p a { text-decoration:underline; }
#mainContent p + p { margin-top:1.2em; }
#mainContent p + h2, #mainContent ul + h2 { margin-top:1.5em; }
#mainContent p { margin-bottom:0.5em; }


/* FOOTER */

.twoColElsLtHdr #footer {
	background:#ffffff url(/images/bg-gradient_footer.jpg) repeat-x 0 150px;
	height:300px;
	/*padding: 0px 40px; /* this padding matches the left alignment of the elements in the divs that appear above it. */
	text-align:center;
}
.twoColElsLtHdr #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: 85%;
	color:#efefef;
}
.twoColElsLtHdr #footer p + p {
	padding:0;
}
#footer a:link, #footer a:visited {
	color:#ffb754;
	font-weight:bold;
}
.twoColElsLtHdr #footer .subcontainer {
	background:transparent url(/images/bg-footer.jpg) no-repeat 0 0px;
	height:130px;
	padding-top:15px;
	border-top:1px solid #000;
}
#footer #f-company { font-weight:bold; font-size:130%; letter-spacing:2px; }
#footer #f-tagline { font-weight:bold; line-height:130%; margin-bottom:15px; }
#footer ul#f-address { color:#ffffff; font-size:85%; letter-spacing:0px; margin-bottom:10px; }
#footer ul li { display:inline; border-left:1px #e0c298 solid; margin-left:12px; padding-left:12px; }
#footer ul li.first { border-left:none; margin-left:0px; padding-left:0px; }


/* FLOATS */

.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;
}

#preload {
	display:none;
	overflow:hidden;
	left:-9999px ;
	top:-9999px ;
	height: 1px ;
	width: 1px ; 
}


/* TYPE */

h1 { font: 200% 'Lucida Grande', 'Lucida Sans Unicode', Helvetica, Arial, Verdana, sans-serif; color:#000; letter-spacing:-1px; margin:0 0 0.5em 0; text-align:left; font-weight:bold; }
h2 { font: 120% 'Lucida Grande', 'Lucida Sans Unicode', Helvetica, Arial, Verdana, sans-serif; color:#000; letter-spacing:-1px; margin:0 0 0.3em 0; text-align:left; font-weight:bold; }
h3 { font: 100% 'Lucida Grande', 'Lucida Sans Unicode', Helvetica, Arial, Verdana, sans-serif; color:#000; letter-spacing:-1px; margin:0 0 0.3em 0; text-align:left; font-weight:bold; }

img { border-style: none; padding:0; }
/*#mainContent img { border:1px solid #999; padding:4px; display:block; margin:5px 0 0 15px; }*/

a { text-decoration: none; }
a:link, a:visited { color:rgb(64,64,64); }
a:hover { text-decoration: underline; }
a:active, a:focus { outline:none; }

a.pdf { 
	background: url(/images/icons/pdficon_small.gif) 0 0.2em no-repeat;
	display: block;
	padding-left: 25px;
	line-height:1.7em;
	font-weight:bold;
}


/* ELEMENTS */

.spacer { height:20px; }

ul.round {
	list-style: disc outside;
	margin: 0.5em 2em 1.5em 3em;
	line-height: 1.5em;
	text-align:left;
}
ul.round li {
	line-height:150%;
	margin-bottom:0.5em;
}


/* LOCAL NAV */

.menu {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: block;
	font: 14px Arial, Helvetica, sans-serif;
	/*letter-spacing:1px;*/
	line-height: 145%;
	width: 210px;
	font-weight:bold;
	/*text-transform:uppercase;*/
}
.menu li {
	margin: 0;
	padding: 0;
}
.menu li a {
	display: block;
	text-decoration: none;
	color:#CCC;
	/*background-color: #dbc68d;*/
	padding: 7px 0 7px 20px;
	width: 180px;
}
.menu li a:hover {
	/*background-color: #7c98ae;
	font-weight:bold;*/
	color:#fff;
}
.menu li a.current, .menu li a.current:hover {
	background-color: #00365b;
}
.menu li + li { margin-top:5px; border-top:1px #fff solid; }


/* Nifty Rounded Corners */

div#nifty { margin:5px 0 20px 0; background:#666; }
b.rtop, b.rbottom { display:block; background:#ffdf7c; }
b.rtop b, b.rbottom b {
	display:block; 
	height:1px;
    overflow:hidden; 
	background:#666;
}
b.r1{margin: 0 5px}
b.r2{margin: 0 3px}
b.r3{margin: 0 2px}
b.rtop b.r4, b.rbottom b.r4{margin: 0 1px;height: 2px}


/* Quotes */

.quoteText { font-weight:bold; font-size:17px; font-style:italic; line-height:24px; text-indent:-5px; margin:27px 30px 0 30px; }
.quoteName { font-weight:normal; text-align:right; font-style:normal; margin:0 30px 30px 30px; }
