body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,p,blockquote,th,td,html,label,table,tr,td {margin:0;padding:0;} table{border-collapse:collapse;border-spacing:0;} fieldset,img,a img,:link img,:visited img {border:0;} address,caption,cite,code,dfn,th,var {font-style:normal;font-weight:normal;} ol,ul {list-style:none;} caption,th {text-align:left;} h1,h2,h3,h4,h5,h6 {font-size:100%;} q:before,q:after {content:'';}

/* ------------------------ type selectors ------------------------ */
body { 
	background:#cef2f7 url("img/body.jpg") top repeat-x;
	text-align:center; 
	font:12px/16px Arial, Verdana, Helvetica, sans-serif; 
	color:#000;
	}

blockquote { margin-left:10px; margin-right:10px; }

h1	{ font-size:2em; color:#000; }
h2	{ font-size:1.1em; color:#000; }
h3	{ font-size:1.0em; color:#000; }

h1 span,h2 span,h3 span	{ display:none; }

a:link,a:visited	{ color:#CC0000; text-decoration:underline; outline:none; }
a:hover,a:active	{ color:#2f86af; text-decoration:underline; outline:none; }

/* ------------------------ classes ------------------------ */
.clear	{ 
	clear:both;
	}

div.clear	{ 
	height:.01em; 
	overflow:hidden; 
	}

p.back-to-top {
	text-align:right;
	display:block;
	padding-right:15px;
	background:url("img/bullet-back-to-top.jpg") right no-repeat;
	}

img.alignleft { 
	float:left; 
	margin:2px 10px 10px 0px;
	}

img.alignright { 
	float:right; 
	margin:5px 0px 10px 10px; 
	}
	
div.navigation {
margin:0 0 15px 25px;	
}

li.media {
margin-bottom:10px;	
}

div.category-news-events {
margin-bottom:25px;	
}

/* ------------------------ form elements ------------------------ */

form label	{ font-size:.95em; } 

form br { line-height:0; height:0; }

input, textarea, select { 
	background-color:#f7f7f7 !important;
	border:1px solid #bddae8;
	color:#000;
	width:260px;
	height:25px;
	line-height:18px;
	vertical-align: middle;
	margin-bottom:4px;
	padding:1px 0 0 4px;
	font-size:1.0em;
	}

select { width:150px; padding:0; }

textarea { height:90px; overflow:auto; }

input[type="submit"] {
width:150px;	
}

.page-id-404 input {
display:block;	
}

/* ------------------------ main contact form ------------------------ */
#contact-main { margin:20px 0 10px 0; }

#contact-main label { 
	width:220px; 
	position:relative; 
	display:block; 
	text-align:right; 
	margin-bottom:10px;
	font-size:1.0em;
	}

#contact-main label input, #contact-main label textarea, #contact-main label select { 
	width:170px;
	position:absolute; 
	left:110%; 
	top:-2px;
	}

#contact-main label select { width:175px; }

#contact-main label textarea { height:100px; overflow:auto; }

/* ------------------------ submit button form elements ------------------------ */

input.submit, input.submit-contact-main { 
	width:60px;
	height:20px;
	cursor:pointer; 
	padding:0; 
	}

input.submit-contact-main { margin:95px 0 0 243px; }

input.submit, input.submit-contact-main {
	background:url("img/submit.jpg");
	width:103px;
	height:31px;
	border:none;
	cursor:pointer;
	float:right;
	margin:5px 25px 0 0;
	}

/* ------------------------------- CONTENT FRAMEWORK ------------------------------- */

#wrap {
	background:url("img/content.png") repeat-y;
	width:910px;
	margin:0 auto;
	text-align:left;
	}
	
	#content-top {
	width:910px;
	height:8px;
	margin:0 auto;
	background:transparent url('img/content-top.png') 0 0 no-repeat;
	}

/* ------------------------ masthead framework ------------------------ */
#masthead {
	background:url("img/masthead.jpg");
	height:121px;
	width:910px;
	margin:0 auto;
	}
	
	#masthead ul {
	float:right;
	clear:right;
	padding:10px 0 0 0;
	color:#fff;
	width:394px;
	text-align:right;
	display:inline;
	}
	
	#masthead ul.first { padding-top:50px; width:450px; }
	
	#masthead ul li {
	float:left;
	margin:0 10px 0 0;
	border-left:1px solid white;
	padding-left:10px;
	}
	
		#masthead ul li.first { border:none; }
	
		#masthead li a {
		color:#fff;
		text-decoration:none;
		}
		
		#masthead li a:hover { text-decoration:underline; }
		
		#masthead li#newsletter a {
		font-weight:bold;	
		}


/* ------------------------ NAV FRAMEWORKS ------------------------------- */

#nav { 
	background:url("img/nav.jpg") no-repeat; 
	width:910px; 
	height:53px; 
	margin:0 auto;
	padding:0; 
	position:relative;
	}

#nav span { display: none; }

#nav li, #nav a { height:53px; display:block; } /* change height here also */

#nav li { float:left; list-style:none; display:inline; position:relative; margin-left:2px; }

#nav li#n1 { width: 98px; margin-left: 11px;}
#n2 { width: 134px;}
#n3 { width: 117px;}
#n4 { width: 124px;}
#n5 { width: 137px;}
#n6 { width: 145px;}
#n7 { width: 120px;}


/*-------------- (-79px) X position of button / (-53px) height of image from above ------------- */
#n1 a:hover { background:url("img/nav.jpg") -11px -53px no-repeat; }
#n2 a:hover { background:url("img/nav.jpg") -111px -53px no-repeat; }
#n3 a:hover { background:url("img/nav.jpg") -247px -53px no-repeat; }
#n4 a:hover { background:url("img/nav.jpg") -366px -53px no-repeat; }
#n5 a:hover { background:url("img/nav.jpg") -492px -53px no-repeat; }
#n6 a:hover { background:url("img/nav.jpg") -631px -53px no-repeat; }
#n7 a:hover { background:url("img/nav.jpg") -778px -53px no-repeat; }

/* ------------------------ son of suckerfish: horizontal sprite nav ------------------------ */
#nav li ul {
	position:absolute;
	left:-9999px;
	padding-right:1px; /* Fixes one px spacing for border-right in FF */
	background-color:#cef2f7;	/* Background color of drop down nav - add more styles (i.e. background image) if you want */
	z-index:9999;
	text-align:left;
	}

#nav li ul li { 
	height:25px; /* Height of each drop down nav item */
	border:1px solid #6d969c;
	border-top:none;
	border-left:none;
	border-right:none;
	text-indent:10px;
	}	

#nav li ul li a {
	width:100%;
	height:25px;	/* Height of each drop down nav item, should match above */
	line-height:25px;	 /* Height of each drop down nav item again, should match above */
	}

#nav li ul li a span {
	display:block;
	padding-left:5px;
	}

/* Drop down link styles */
#nav a:link, #nav a:visited, #nav a:hover, #nav a:active {
	font-size:1.0em;
	color:#000;
	text-decoration:none;
	}

#nav li:hover ul, #nav li.sfHover ul	{ left: auto; }

/* Hover styles for drop down items */
#n2 ul a:hover, #n3 ul a:hover, #n4 ul a:hover, #n5 ul a:hover, #n6 ul a:hover { 
	background-image:none;
	background-color:#6d969c;
	color:#FFFFFF;
	text-decoration:none;
	}

/* width of drop down nav - choose width that allows items to display on one line */
#n2 ul, #n2 li { width:135px; }
#n3 ul, #n3 li { width:190px; }
#n4 ul, #n4 li { width:120px; }
#n5 ul, #n5 li { width:210px; }
#n6 ul, #n6 li { width:140px; }

#nav li ul ul {
	margin: -2em 0 0 13em;
}

#nav li:hover ul ul, #nav li.sfhover ul ul {
	left: -999em;
}

#nav li:hover ul, #nav li li:hover ul, #nav li.sfhover ul, #nav li li.sfhover ul {
	left: auto;
}


#subnav { 
	background:url("img/subnav.jpg") no-repeat; 
	width:910px; 
	height:126px; 
	margin:0 auto;
	padding:0; 
	}

#subnav span { display: none; }

#subnav li, #subnav a { height:126px; display:block; } /* change height here also */

#subnav li { float:left; list-style:none; display:inline; position:relative; }

#sn1, #sn2, #sn3 { width: 294px; margin-left: 6px;}

#sn1 a:hover { background:url("img/subnav.jpg") -6px -126px no-repeat; }
#sn2 a:hover { background:url("img/subnav.jpg") -306px -126px no-repeat; }
#sn3 a:hover { background:url("img/subnav.jpg") -606px -126px no-repeat; }


/* ------------------------ column-left framework ------------------------ */
#column-left {
	width:609px;
	float:left;
	}

	#column-left p, #column-left h1, #column-left h2, #column-left h3, #column-left ul, #column-left dl {
		margin:0px 50px 10px 28px;
		}
	
	
	#column-left h1 { margin:5px 50px 15px 28px; }

	.entry li {
		margin:7px 15px;
		background:url(img/bullet.jpg) top left no-repeat;
		padding-left:22px;
	}
		#column-left .entry ul li ul { margin:0; }
	
		.entry li ul li {
		margin-left:0;
		background:url(img/inner-bullet.jpg) 8px 5px no-repeat;	
		}
		
		
	.entry h2, .entry h3 {
	clear:both;	
	}
	
	.newstitle a {
	color:#6b949a;
	font-size:1.5em;
	text-decoration:none;
	}
		.newstitle a:hover { 
			text-decoration:underline;
			text-shadow:0 0 5px #ccc; 
		}
		
	#column-left dl.gallery-item {
	width:auto !important;	
	}
	
	#column-left input[type=hidden] {
	display:none;	
	}

/* ------------------------ column-right framework ------------------------ */
#column-right {
	width:301px;
	float:left;
	}

	#column-right p, #column-right h1, #column-right h2, #column-right h3, #column-right ul, #column-right dl {
		margin:0px 0px 10px 10px;
		}

	#video {
	width:275px;
	height:227px;
	background:url('img/video.jpg') 0 0 no-repeat;
	margin-bottom:10px;
	padding:14px 0 0 12px;
	}
	
		#video a {
		margin:0;
		display:block;
		height:227px;
		}
	
	#featured-case {
	height:43px;
	background:url('img/featured-case.jpg') 0 0 no-repeat;
	}
	
	#featured-btm {
	height:40px;
	padding-top:35px;
	background:url('img/featured-btm.jpg') 0 0 no-repeat;
	margin-bottom:10px;
	}
	
		#featured-btm a { display: block; height:40px; }
	
	div.side-box {
	background:url('img/side-box-bg.jpg') 0 0 repeat-y;	
	margin-bottom:10px;
	}
	
		#column-right div.side-box p {
		margin:0 25px 0 0;	
		}
		
		#column-right div.side-box a {
		font-size:1.25em;	
		text-decoration:none;
		color:#6b969c;
		font-weight:bold;
		}
		
		#column-right div.side-box div.more-link {
		text-align:right;
		margin-right:25px;
		}
		
			#column-right div.side-box div.more-link a {
			font-size:.9em;	
			}
	
	div.side-box-btm {
	height:10px;
	clear:both;
	background:url('img/side-box-btm.jpg') left bottom no-repeat;
	}
	
	#media {
	height:43px;
	background:url('img/media.jpg') 0 0 no-repeat;
	margin-bottom:10px;
	}
	
	#contact {
	height:43px;
	background:url('img/contact-btn.jpg') 0 0 no-repeat;
	margin-bottom:10px;
	}

/* ------------------------ header framework ------------------------ */

#header-graphic { height:240px; width:910px; margin:0 auto; } /* sets height for all non-flash headers */

	#header-graphic { background:url("img/header.jpg"); }

	body.home #header-graphic { background:none; }

/* ------------------------ subhead framework ------------------------ */
#subhead { height:43px; background:transparent url('img/subhead-index.jpg') 0 0 no-repeat; margin:10px 0 10px 28px; }

/* ------------------------ bottom-wrap framework ------------------------ */

#bottom-wrap {
	background:url("img/bottom-wrap.png");
	width:910px;
	height:20px;
	margin:0 auto;
	clear:both;
	}

/* ------------------------footer framework ------------------------ */
#footer {
	width:100%;
	margin:0 auto;
	text-align:center;
	background:#5f939f url('img/footer.jpg') 0 0 repeat-x;
	padding:25px 0;
	}

#footer p {
	color:#fff;
	margin-bottom:10px;
	}

#footer a:link, #footer a:visited { color:#fff; }
#footer a:hover, #footer a:active { color:#fff; }

#footer ul {margin:10px;}
	#footer li {
		padding:0 5px 0 7px;
		display: inline;
		border-left: 1px solid #fff;
		}
	#footer li.first { border: none; }

