/* No list-markers by default - must redefine bullets w/ bg graphics */
ul,ol { list-style:none; }

/* Avoid browser default inconsistent heading font-sizes and pre/code */
h1,h2,h3,h4,h5,h6,pre,code,td { font-size:1em; }

/* Remove inconsistent (among browsers) default padding or margin */
ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input,label,div,dd,dt,dl,table,tr,td { margin:0; padding:0; }

/* prevent blue linked image borders */
a img,:link img,:visited img,fieldset { border:none; }


/* global elements
 * ------------------------------------------------------------------------- */


/* ----- type selectors ----- */ 
body { 
	background:#D6D6D6 url("../images/bg-body.jpg") top repeat-x;
	text-align:center; 
	font:12px/16px Arial, Helvetica, sans-serif; 
	color:#2D3B47;
	}

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

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

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

a:link,a:visited	{ color:#E48912; text-decoration:underline; outline:none; }
a:hover,a:active	{ color:#395063; text-decoration:underline; outline:none; }

/* ----- classes ----- */

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

p.back-to-top {
	text-align:right;
	display:block;
	padding-right:15px;
	background:url("../images/bullet-back-to-top.jpg") right no-repeat;
	}
	p.back-to-top a {
		text-decoration:none;
	}
	
img.img-left { 
	float:left; 
	margin:2px 10px 10px 33px; 
	}
	
img.img-right { 
	float:right; 
	margin:5px 40px 10px 10px; 
	}

.underline {text-decoration:underline;}
	
/* ----- global form elements ----- */ 

form {
	width:150px;
	margin:10px 0 15px 0;
	}

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

form br { line-height:0; height:0; } /* defaults vertical spacing between fields */

input, textarea, select { 
	background-color:#fff !important; /* to prevent highlighting by Google Toolbar */
	border:1px solid #404040;
	color:#404040;
	width:156px; /* 5 pixles smaller than form width !important */
	height:18px;
	line-height:18px;
	vertical-align: middle;
	margin-bottom:4px; /* sets vertical spacing between fields */
	padding-top:1px; /* vertically position text in input/textarea field */
	padding-left:4px; /* horizontally position text in input/textarea field */
	font-family: Arial, Helvetica, sans-serif; 
	font-size:.95em;
	}
	
select { width:150px; padding:0; } /* same width as form - !important */

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


/* ----- 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 select { 
	width:190px;
	position:absolute; 
	left:110%; 
	top:-2px;
	}
	
#contact-main label textarea { 
	width:190px;
	position:absolute; 
	left:110%; 
	top:-2px;
	}
#contact-main img {
	margin-top: 65px;
	position: relative;
	left:367px;
	top:-2px;
	}
	
#contact-main label select { width:170px; }
	
#contact-main label textarea { height:75px; overflow:auto; margin-bottom:70px; }


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

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

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



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

#wrap {
	background:url("../images/bg-wrap.jpg") repeat-y;
	width:774px;
	margin:0 auto;
	text-align:left;
	}
	
#masthead {
	position:relative;
	background:url("../images/masthead.jpg");
	height:103px;
	}
	/* index page link within #masthead */		
	#masthead a {	
		position:absolute;
		left:30px;
		width:304px;
		top:42px;
		height:45px; 
		}
	#masthead a span {
		display:none;
		}

/* ----- column-left ----- */

#column-left {
	width:534px;
	float:left;
	}
	
	#column-left p, #column-left h1, #column-left h3, #column-left ul, #column-left dl {
		margin:0 20px 10px 38px;
		}
		
		#column-left h1.header {
		margin:0 20px 10px 38px;
		color:#FF0000; 
		}
.redheader{
	font-size: 15px;
	color: red;
}
	
	#column-left h2 {margin:0 20px 0px 38px;}
	
	#column-left form { margin-left:0px; }
	
	/* single column list */
	#column-left ul { padding-left:25px; }
		#column-left ul li { 
			background:transparent url("../images/bullet.gif") 0px 1px no-repeat;
			padding-left:20px;  /* pushes text to the right to display bg img */
			}
			
		/* single column list */
	#column-left ul.sub { padding-left:25px; }
		#column-left ul.sub li.sub { 
			background:transparent url("../images/bullet-sub.jpg") 0px 1px no-repeat;
			padding-left:20px;  /* pushes text to the right to display bg img */
			}
	
	
	.box { background:url("../images/bg-box.jpg") repeat-y;}
	.box-top { background:url("../images/col-left-box-workers.jpg") no-repeat; height:72px;}
	.box-top-o { background:url("../images/col-left-box-office.jpg") no-repeat; height:77px;}
	.box-bottom { background:url("../images/col-left-box-bottom.jpg") no-repeat; height:15px;}
	.box p, .box h1, .box h2, .box h3 { padding:0 20px 0 28px;}
	
	#results { background:url("../images/col-left-results.jpg") no-repeat; height:52px;}
	
/* ----- column-right ----- */

#column-right {
	background:url("../images/col-right-contact.jpg") no-repeat;
	width:240px;
	float:left;
	padding-top:130px;
	color:#fff;
	}

	#column-right a:link,#column-right a:visited	{ color:#fff; text-decoration:underline; outline:none; }
	#column-right a:hover,#column-right a:active	{ color:#DE8C22; text-decoration:underline; outline:none; }
	
	#column-right p, #column-right h1, #column-right h2, #column-right h3, #column-right ul, #column-right dl {
		margin:0 58px 10px 20px;
		}
	#column-right form { margin-left:20px; }
	 
	#faq { background:url("../images/col-right-faq.jpg") no-repeat; height:100px;}
	
	/* single column list */
	#column-right ul { padding-left:0px; }
		#column-right ul li { 
			padding-left:0px;  /* pushes text to the right to display bg img */
			margin-bottom:10px;
			}

	
/* ----- bottom-wrap ----- */
 
#bottom-wrap {
	background:url("../images/bottom-wrap.jpg") no-repeat;
	height:72px;
	clear:both;
	width:100%; /* fix for Safar */
	}

	
/* header framework
 * ------------------------------------------------------------------------- */
#header-graphic { height:198px; width:526px; float:right; } /* sets height for all non-flash headers */

	body#index #header-graphic { background:url("../images/header-index.jpg") no-repeat; }
	body#about #header-graphic { background:url("../images/header-about.jpg"); }
	body#longshoreman #header-graphic { background:url("../images/header-longshoreman.jpg"); }
	body#harborworkers #header-graphic { background:url("../images/header-harborworkers.jpg"); }
	body#defensebaseact #header-graphic { background:url("../images/header-defensebaseact.jpg"); }
	body#faqs #header-graphic { background:url("../images/header-faq.jpg"); }
	body#resources #header-graphic { background:url("../images/header-harborworkers.jpg"); }
	body#client #header-graphic { background:url("../images/header-client.jpg"); }
/* subhead framework
 * ------------------------------------------------------------------------- */

#subhead { padding-top:106px; } /* sets height for all subheads */

	body#index #subhead { background:url("../images/subhead-index.jpg") no-repeat; }
	body#about #subhead { background:url("../images/subhead-about.jpg"); }
	body#contact #subhead { background:url("../images/subhead-contact.jpg"); }
	body#thankyou #subhead { background:url("../images/subhead-thankyou.jpg"); }
	body#sitemap #subhead { background:url("../images/subhead-sitemap.jpg"); }
	
	body#longshoreman #subhead { background:url("../images/subhead-index.jpg") no-repeat; }
	body#harborworkers #subhead { background:url("../images/subhead-index.jpg") no-repeat; }
	body#defensebaseact #subhead { background:url("../images/subhead-index.jpg") no-repeat; }
	body#faqs #subhead { background:url("../images/subhead-index.jpg") no-repeat; }
	body#resources #subhead { background:url("../images/subhead-index.jpg") no-repeat; }
	body#resources #subhead { background:url("../images/subhead-index.jpg") no-repeat; }
	body#client #subhead { background:url("../images/subhead-index.jpg") no-repeat; }

	
/* footer
 * ------------------------------------------------------------------------- */
 
#footer {
	background:url("../images/footer-bg.jpg") repeat-y;
	width:774px;
	margin:0 auto;
	text-align:center;
	}

#footer-top { background:url("../images/footer-top.jpg") no-repeat;} 
#footer-bottom { background:url("../images/footer-bottom.jpg") no-repeat; height:25px;} 

#footer p {
	color:#fff;
	margin:0 20px 10px 20px;
	}

#footer a:link, #footer a:visited { color:#fff; text-decoration:none }

#footer a:hover, #footer a:active { color:#fff; text-decoration:underline }

#footer ul {margin-bottom:10px;}

#footer li { /* if your li's float, you can adjust border height w/ line-height */
	padding:0 5px 0 7px;
	display: inline;
	border-left: 1px solid #fff;
	}

	#footer li.first { border: none; }

/* Vertical Sprite Nav
 * ------------------------------------------------------------------------- */

#nav {
	background:url("../images/nav.jpg") top left no-repeat;					
	width:248px;		/* Width of buttons, not entite image (or half of entire image) */
	height:198px;		/* Height of entire image */
	margin:0;
	padding:0;
	float:left;
	}

#nav li span { display: none; }

#nav li {
	float:left;
	list-style:none;
	}

#nav li, #nav a { 
	height:21px;			/* Each button must have the same height, define it here */
	display:block;
	}

/* margin-top to set where the nav should begin */
#nav-01 { margin-top:8px; width:248px; }

/* margin-top if there is a spacing between each nav button */
#nav-02, #nav-03, #nav-04, #nav-05, #nav-06, #nav-07, #nav-08, #nav-09 { margin-top:0; width:248px; }

#nav-01 a:hover { background:url("../images/nav.jpg") -248px  -8px no-repeat; }
#nav-02 a:hover { background:url("../images/nav.jpg") -248px  -29px no-repeat; }
#nav-03 a:hover { background:url("../images/nav.jpg") -248px  -50px no-repeat; }
#nav-04 a:hover { background:url("../images/nav.jpg") -248px  -71px no-repeat; }
#nav-05 a:hover { background:url("../images/nav.jpg") -248px  -92px no-repeat; }
#nav-06 a:hover { background:url("../images/nav.jpg") -248px  -113px no-repeat; }
#nav-07 a:hover { background:url("../images/nav.jpg") -248px  -134px no-repeat; }
#nav-08 a:hover { background:url("../images/nav.jpg") -248px  -155px no-repeat; }
#nav-09 a:hover { background:url("../images/nav.jpg") -248px  -176px no-repeat; }

/* Son of Suckerfish: Vertical Sprite Nav
 * ------------------------------------------------------------------------- */
 
#nav li ul {
	position:absolute;
	left:-9999px;
	background-color:#666666;	/* Background color of drop down nav - add more styles (i.e. background image) if you want */
	margin-left:248px;			/* Set to same width as in #nav */
	margin-top:-20px;			/* Set to each button height, same as used above */
	}
	
#nav li { float:left; list-style:none; position:relative; }

#nav li ul li {
	height:20px;				/* Height of each drop down nav item */
	border-bottom:1px solid #5C5C5C;
	border-top:none;
	}

#nav li ul li a {
	width:100%;
	height:20px;				/* Height of each drop down nav item, should match above */
	line-height:20px;			/* 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:#FFFFFF;
	text-decoration:none;
	}

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

/* Hover styles for drop down items */
#nav-04 ul a:hover, #nav-05 ul a:hover { 
	background-image:none;
	background-color:#2B2B2B;
	color:#FFFFFF;
	text-decoration:none;
	}

/* width of drop down nav - choose width that allows items to display on one line */
#nav-04 ul, #nav-04 li { width:260px; }		
#nav-05 ul, #nav-05 li { width:200px; }


