/*	////////////////////////////////////////
	MANY thanks to Owen Briggs 
	(http://www.thenoodleincident.com) and 
	Eric Meyer (http://www.meyerweb.com) 
	for the !!EXCELLENT!! lessons on 
	relative units!!!
//////////////////////////////////////// */

/* ***************************************
	Table of Contents
	
	1.	Global Elements
	2.	Typography
	3.	Float Clearing
	
	FONT SIZING:
	http://www.thenoodleincident.com/tutorials/box_lesson/font/index.html
*************************************** */

/* ***************************************
	1.	Global Elements
*************************************** */

html, body {
	margin:				0; 
	padding:			0; 
	font:				85% helvetica, verdana, arial, sans-serif;	/* This changes all font sizes relatively, don't go below 76%, IE will choke on it, 85% / 1.0em is roughly 12px */
	text-align:			center; /* centers page content, override this in your first born child */
	color:				#000000;
	background:			url(../images/_template/main_bg.png) top left repeat-x;
	background-color:	#dadbdc;
	}

/*	////////////////////////////////////////
	Form Elements
//////////////////////////////////////// */

fieldset 				{ border:1px solid #ccc; }

legend 					{ background:#fff; }

textarea, input, select, 
input[type='text'], 
select,
textarea:hover, 
input[type='text']:hover, 
input[type='password']:hover, 
select:hover,
textarea:focus, 
input[type='text']:focus, 
input[type='password']:focus, 
select:focus			{ font-size:10px; font-family:Verdana, Arial, Helvetica, sans-serif; }

textarea, 
input[type='text'], 
select 					{ border:1px solid #ccc; background:#fff;  }

textarea:hover, 
input[type='text']:hover, 
input[type='password']:hover, 
select:hover 			{ border-color:#999999; }

textarea:focus, 
input[type='text']:focus, 
input[type='password']:focus, 
select:focus 			{ border-color:#999999; outline:2px solid #E1E1E1; }

input, select 			{ cursor:pointer;  }

input[type='text'] 		{ cursor:text; background-color:#FFFFFF; border:1px solid #000000; }
input[type='password'] 		{ cursor:text; background-color:#FFFFFF; border:1px solid #000000; }

label	{ font-size:0.8em; }

button	{ background:url(../images/_template/btn_signin_off.png) top left no-repeat; width:78px; height:26px; margin:0; padding:0; border:none; cursor:pointer; }

.form_row	{ height:40px; }

/* ***************************************
	2. Typography
*************************************** */

h1			{ font-size:2.0em; font-weight:normal; }
h2 			{ font-size:1.7em; font-weight:normal; }
h3 			{ font-size:1.4em; font-weight:normal; }
h4 			{ font-size:1.2em; font-weight:normal; }
h5 			{ font-size:1.0em; font-weight:normal; }
h6 			{ font-size:0.8em; font-weight:normal; }
h1, h2, h3, h4, h5, h6 { margin:1.2em 0em 1.2em 0em; }

/* tighter line heights for narrow columns */	
.narrow1 	{ width:50%; line-height:1.3em; }
.narrow2 	{ width:50%; line-height:1.5em; }
		
a, a:link,
a:visited, 
a:active, a:focus	{ text-decoration:none; font-weight:normal; color:#000000; }
a:hover				{ text-decoration:underline; }

img 		{ border:0; }

ol, ul, li				{ font-size:1.0em; line-height:1.3em; margin-top:6px; margin-bottom:4px; list-style-type:disc; } 
ul.inline_list			{ margin:6px 0 0 20px; padding:0; }
ul.inline_list li		{ margin:0 0 4px 0; padding:0; list-style:none; height:auto; font-weight:bold; }
ul.inline_list li a		{ font-size:1.2em; }

ul.inline_bullet_list			{ margin:6px 0 0 20px; padding:0; }
ul.inline_bullet_list li		{ margin:0 0 4px 0; padding:0; list-style:none; height:auto; font-weight:bold; }
ul.inline_bullet_list li a		{ font-size:1.2em; }

p 			{ font-size:1.0em; line-height:1.6em; margin:6px 0; }

li > p 		{ margin-top:6px; }

code, pre 	{ font-size:12px; font-family:monospace; color:#c33; }

strong, b	{ font-weight:bold; }

hr 			{ display:block; background:#aaa; color:#aaa; width:100%; height:1px; border:none; }
hr.full 	{ display:block; background:#939598; color:#939598; width:100%; height:3px; border:none; margin:0; }
hr.short 	{ display:block; background:#939598; color:#939598; width:928px; height:3px; border:none; margin:0 0 0 15px; }

.grey		{ color:#444444; }
.yellow		{ color:#e3d200; }
.green		{ color:#71b94d; }
.orange		{ color:#f7941d; }
.blue		{ color:#0067AF; }
.gblue		{ color:#0054a4; }

/* ***************************************
	3. Float Clearing
*************************************** */
/* http://sonspring.com/journal/clearing-floats */
.clear				{ clear:both; display:block; overflow:hidden; visibility:hidden; width:0; height:0; }

/* http://perishablepress.com/press/2008/02/05/lessons-learned-concerning-the-clearfix-css-hack */
.clearfix:after 	{ clear:both; content:' '; display:block; font-size:0; line-height:0; visibility:hidden; width:0; height:0; }

.clearfix			{ display:inline-block; }

/* ***************************************
	4. General Layout
*************************************** */

.main {
	margin: 	0 auto;
	padding:	0 10px;
	text-align: left;
	width:		960px;
	border:		none;
	}
	
.left	{ float:left; }
.right	{ float:right; }

.logo			{ float:left; margin:13px 0 0 0; }
.contact_247	{ float:right; margin:29px 0 0 0; }

ul.main_navigation 							{ width:630px; height:28px; margin:-20px 0 0 332px; padding:0; }
ul.main_navigation li						{ float:left; height:28px; margin:0; padding:0; list-style:none; }
ul.main_navigation li span					{ display:none; }				
ul.main_navigation li a.home				{ display:block; width:122px; height:28px; margin:0; background:url(../images/_template/main_nav_home_off.png) top left no-repeat; }
ul.main_navigation li a.services			{ display:block; width:100px; height:28px; margin:0; background:url(../images/_template/main_nav_services_off.png) top left no-repeat; }
ul.main_navigation li a.about				{ display:block; width:100px; height:28px; margin:0; background:url(../images/_template/main_nav_about_off.png) top left no-repeat; }
ul.main_navigation li a.news				{ display:block; width:100px; height:28px; margin:0; background:url(../images/_template/main_nav_news_off.png) top left no-repeat; }
ul.main_navigation li a.contact				{ display:block; width:100px; height:28px; margin:0; background:url(../images/_template/main_nav_contact_off.png) top left no-repeat; }
ul.main_navigation li a.jobtrack			{ display:block; width:106px; height:28px; margin:0; background:url(../images/_template/main_nav_jobtrack_off.png) top left no-repeat; }

ul.main_navigation li a:hover.home			{ background:url(../images/_template/main_nav_home_on.png) top left no-repeat; }
ul.main_navigation li a:hover.services		{ background:url(../images/_template/main_nav_services_on.png) top left no-repeat; }
ul.main_navigation li a:hover.about			{ background:url(../images/_template/main_nav_about_on.png) top left no-repeat; }
ul.main_navigation li a:hover.news			{ background:url(../images/_template/main_nav_news_on.png) top left no-repeat; }
ul.main_navigation li a:hover.contact		{ background:url(../images/_template/main_nav_contact_on.png) top left no-repeat; }

.home_container	{ width:954px; height:auto; border:3px solid #939598; background-color:#FFFFFF; }

.flash_header	{ width:954px; height:292px; background:url(../images/_template/FPO_flash_header.png) top left no-repeat; }

ul.svc_links 			{ width:100%; height:59px; margin:17px 0 10px 26px; padding:0; }
ul.svc_links li 		{ list-style:none; float:left; width:205px; height:59px; margin:0 25px 0 0; padding:0; background:url(../images/_template/service_button_bg.png) top left no-repeat; }
.svc_link_icon			{ width:52px; margin:3px 0 0 4px; }
.svc_link_text			{ width:120px; margin:0 0 0 4px; }
div.svc_link_text h3	{ margin:13px 0 0 0; color:#939598; font-size:1.2em; font-weight:bold; text-transform:uppercase; }
div.svc_link_text p		{ margin:0; color:#939598; }


.content_slots				{ margin:16px 0 20px 15px; }
.content_slot				{ width:303px; height:auto; float:left; margin:0 4px 0 0;  border-top:3px solid #939598; background:url(../images/_template/content_slot_bg.png) top left repeat-x; }
.content_slot img.slotimg	{ position:relative; margin:10px 0 0 10px; width:282px; height:183px; }
.content_slot .content_slot_text	{ position:relative; margin:-70px 0 0 10px; width:282px; height:auto; color:#444444; }
.content_slot_text h3		{ height:30px; font-size:1.5em; font-weight:bold; }
.content_slot_text p		{ line-height:1.1em; font-size:1.1em; }
.content_slot_text a		{ color:#0054a4; text-transform:uppercase; font-weight:bold; }

/* 
	Calendar 
*/
.calendar 							{ position:relative; margin:10px 0 0 10px; width:282px; height:183px; background:url(../images/calendar/cal_slot_bg.png) top left no-repeat; }
.content_slot div.calendar .month	{ width:77px; height:16px; position:relative; top:50px; left:178px; }
.content_slot div.calendar .day		{ width:77px; height:49px; position:relative; top:56px; left:178px; }


/* Footer */
div.home_container .footer_container	{ border-top:3px solid #939598; width:928px; margin:0 0 0 15px; }
div.T2_container .footer_container		{ border-top:3px solid #939598; width:681px; margin:20px 0 0 18px; height:110px; }
.footer				{ height:100px; }
.left_footer		{ float:left; width:490px; margin:20px 0 0 0px; }
.left_footer p		{ font-size:0.9em; line-height:1.4em; margin:0; color:#444444; }
.right_footer		{ float:right; width:auto; margin:20px 10px 0 0; }
.right_footer img	{ margin-right:8px; height:70px; }

div.T2_container .footer			{ height:90px; }
div.T2_container .left_footer		{ float:left; width:auto; margin:12px 0 0 0px; }
div.T2_container .left_footer p		{ font-size:0.8em; margin:0;  color:#444444; }
div.T2_container .right_footer		{ float:right; width:auto; margin:0 0px 0 0; }
div.T2_container .right_footer img	{ margin:14px 0 0 0px; height:49px; }

ul.footer_links				{ margin:0px 0 0 0; padding:0; width:400px; height:30px; }
ul.footer_links li			{ list-style:none; padding:0 16px 0 0; float:left; }
ul.footer_links li a		{ color:#444444; margin:0; font-weight:bold; text-transform:uppercase;  }
ul.footer_links li a:hover	{ }


/* T2 */
.T2_container			{ width:716px; height:auto; float:right; border:3px solid #939598; background-color:#FFFFFF; }
.t2_bg_yellow			{ background:url(../images/_NEW/t2_bg_yellow.png) top left repeat-x; background-color:#FFFFFF; width:716; }
.t2_bg_yellow_bright	{ background:url(../images/_NEW/t2_bg_yellow_bright.png) top left repeat-x; background-color:#FFFFFF; width:716; }
.t2_bg_blue				{ background:url(../images/_NEW/t2_bg_blue.png) top left repeat-x; background-color:#FFFFFF; width:716; }
.t2_bg_fire				{ background:url(../images/_NEW/t2_bg_fire.png) top left no-repeat; background-color:#FFFFFF; width:716px; }
.t2_bg_wind				{ background:url(../images/_NEW/t2_bg_wind.png) top left repeat-x; background-color:#FFFFFF; width:716px; }
.t2_bg_ltblue			{ background:url(../images/_NEW/t2_bg_ltblue.png) top left repeat-x; background-color:#FFFFFF; width:716; }


.interior_nav		{ background:url(../images/_template/interior_nav_bg.png) top left no-repeat; width:681px; height:40px; margin:18px 0 0 18px; text-transform:uppercase; }
.interior_nav h3	{ float:left; font-size:1.8em; margin:10px 0 0 12px; color:#444444; }

ul.interior_nav_list 			{ margin:8px 0px 0 10px; padding:0; float:right; }
ul.interior_nav_list li 		{ list-style:none; float:left; width:auto; padding:0 18px 0 0; }
ul.interior_nav_list li a		{ font-size:1.1em; color:#939598; }
ul.interior_nav_list li a:hover	{ color:#0055a5; text-decoration:none; }
/* Active */
ul.interior_nav_list li a.active		{ font-size:1.1em; color:#0055a5; }
ul.interior_nav_list li a.active:hover	{ color:#0055a5; text-decoration:none; }

.secondary_nav_T2 { float:left; width:235px; height:auto; }

div.secondary_nav_T2 ul.svc_links 			{ width:210px; height:59px; margin:17px 0 10px 12px; padding:0; }
div.secondary_nav_T2 ul.svc_links li 		{ list-style:none; float:left; width:205px; height:59px; margin:0 0 12px 0; background:url(../images/_template/service_button_bg.png) top left no-repeat; }
div.secondary_nav_T2 .svc_link_icon			{ width:52px; margin:3px 0 0 4px; }
div.secondary_nav_T2 .svc_link_text			{ width:140px; }
div.secondary_nav_T2 div.svc_link_text h3	{ margin:13px 0 0 0; color:#939598; font-size:1.2em; font-weight:bold; text-transform:uppercase; }
div.secondary_nav_T2 div.svc_link_text p	{ margin:0; color:#939598; }

.t2_content		{ height:auto; width:681px; margin:18px 0 0 18px;  }

div.t2_content .content_col1		{ width:354px; margin:16px 0 0 0; padding:0 0 20px 0; float:left; }
div.t2_content .content_col1 h4		{ font-size:1.9em; margin:8px 0 12px 0; }
div.t2_content p,
div.t2_content .content_col1 p,
div.t2_content .content_col2 p		{ font-size:1.0em; line-height:1.3em; margin:10px 0; }
div.t2_content .content_col2		{ width:301px; margin:16px 0 0 0; float:right; }
div.t2_content .content_col2 img	{ margin-bottom:20px; }
div.t2_content .content_col2 h2		{ margin:0 0 10px 0; }

div.t2_content .single_column_row			{ margin:0 0 20px 0; }
div.t2_content .single_column_row .col1		{ width:300px; padding:10px 0 0 0; }
div.t2_content .single_column_row .col2		{ width:351px; margin:0 0 0 30px; }
div.t2_content .single_column_row h4		{ font-size:1.3em; margin:8px 0 4px 0; font-weight:bold; }
div.t2_content .single_column_row p			{ margin:0 0 0 0; }

.content_subcolumn_row	{ margin:0 0 10px 0; }
.content_subcol1	{ width:121px; height:auto; }
.content_subcol2	{ width:230px; height:auto; }

/* CONTACT */
.contact { }

.flash_contact_box	{ height:320px; }

div.contact h4	{ font-size:1.9em; margin:8px 0 12px 0; }
div.contact p	{ font-size:1.0em; line-height:1.3em; margin:10px 0; }

ul.contact_info 		{ margin:10px 0 0 0; padding:0; }
ul.contact_info li		{ list-style:none; margin:0 0 12px 0; float:left; width:150px; height:auto; }
ul.contact_info li p	{ color:#464647; line-height:1.3em;	}
ul.contact_info li a	{ color:#0054a4; line-height:1.3em;	}
	
/* NEWS */
.news { }

ul.link_list		{ width:354px; margin:20px 0 0 0; padding:0; }
ul.link_list li		{ list-style:none; margin:0 0 20px 0; }
ul.link_list li a	{ margin:0; color:#444444; font-size:1.1em; font-weight:bold; }
	

/* SERVICES */
.services	{}
div.content_col1 p.large_inset	{ margin:20px 0 0 20px; font-size:1.5em; }
span.orange						{ color:#f7941d; }

/* Bordered Right Content Column */
div.services_right_content .content_border	{ border:1px solid #939598; padding:10px; margin:20px 0 0 0; background:#e7e8e9; color:#444444; }
	
/* Speclized */
.specialized	{}

/* Lists */
div.list_fire ul.content_list		{ margin:10px 0 10px 10px; padding:0; }
div.list_fire ul.content_list li	{ list-style:disc; margin:0 0 6px 10px; padding:0; color:#f7941d; font-size:1.1em; }

div.list_water ul.content_list		{ margin:10px 0 10px 10px; padding:0; }
div.list_water ul.content_list li	{ list-style:disc; margin:0 0 6px 10px; padding:0; color:#0067AF; font-size:1.1em; }
	
div.list_wind ul.content_list		{ margin:10px 0 10px 10px; padding:0; }
div.list_wind ul.content_list li	{ list-style:disc; margin:0 0 6px 10px; padding:0; color:#71b94d; font-size:1.1em; }

div.list_specialized ul.content_list		{ margin:10px 0 10px 10px; padding:0; }
div.list_specialized ul.content_list li	{ list-style:disc; margin:0 0 6px 10px; padding:0; color:#e3d200; font-size:1.1em; }
	
/* Flash Content */
.flash_services_landing		{ width:682px; height:333px; }
.flash_services_fire		{ width:301px; height:351px; }
.flash_services_wind		{ width:301px; height:351px; }
.flash_services_water		{ width:301px; height:351px; }
.flash_services_specialized	{ width:301px; height:351px; }
.flash_timeline				{ width:681px; height:290px; }
.flash_job_track			{ width:682px; height:300px; }
	
	
	