/* HEY! Don't peak under the hood of my car until I get a chance to put a coat of wax on it! */

/******GENERAL REDEFINE*******/
* {
	font-weight: normal;
	font-style: normal;
	text-decoration: none;
	text-align: left;
	text-indent: 0;
	}

html { height: 100%; }

body {
	height: 100%;
	font: 85%/1.5 Arial, Helvetica, sans-serif;
	color: #4D4D4D;
	text-align: center;
	margin: 0;	padding: 0;
	background: #fff url(../img/bg_body.jpg) repeat-x top;
	}
	
:link,:visited {text-decoration: none;}
ul,ol {list-style: none;}
h1,h2,h3,h4,h5,h6,pre,code,p,dl,dt,dd {font-size: 1em;}
ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input {margin: 0; padding: 0;}
a img,:link img,:visited img, fieldset {border: none;}
address {font-style: normal;}
acronym { cursor: help; border-bottom: 1px dotted; font-weight: inherit; }
strong { font-weight: bold; }
legend { display: none;	}
label { display: block; }

/* a few things */
.text-right { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }
.img-right { float: right; }
.img-left { float: left; }
.hide { display: none; }

/****END GENERAL REDEFINE*****/

/**********CORE*********/

#container-main {
	width: 760px;
	min-height: 100%;
	position: relative;
	margin: 0 auto;
	}
* html #container-main { height: 100%;}

#content {
	width: 478px;
	min-height: 700px;
	float: left;
	background: #fff;
	}
* html #content { height: 700px; }
	
#content-main {
	position: relative;
	padding: 20px;
	margin-bottom: 155px;
	}

	/* content-main redefines */	
	#content-main p, #content-main dt, #content-main dd { font-size: .90em;	padding-bottom: 10px; }

	#content-main p.clear { clear: both; }
	
	#content-main ul {
		font-size: .8em;
		list-style: disc;
		margin: 0 10px;
		padding: 0 20px 10px;
		}

	#content-main a, #content-main a:link, #content-main a:visited { text-decoration: underline; color: #415179; }
	#content-main a:hover { background: #415179; color: #fff; }
	
	#content-main a.pdf, #content-main a.pdf:hover {
		color: #425179;
		overflow: visible;
		padding-left: 18px;
		background: url(../img/icon_pdf.gif) no-repeat 0 0;
		}
	
	#content-main h2, #content-main h3 {
		height: 25px;
		text-indent: -9999px;
		border-bottom: 1px dashed #A6AEC0;
		margin: 0 0 10px; padding: 0;
		clear: both;
		}
	
	#content-main h4 {
		font-weight: bold;
		text-transform: uppercase;
		letter-spacing: .0125em;
		}


	/* h2 and h3 backgrounds */
	#content-main h2 { background: url(../img/bg_h2-sprite.gif) no-repeat 0 0; }
	#content-main h3 { background: url(../img/bg_h3-sprite.gif) no-repeat 0 0; }

	/* h2 and h3 background postioning */
	#content-main h2.home, #content-main h3.hotel { background-position: 0 0; }
	#content-main h2.about, #content-main h3.residential { background-position: 0 -25px; }
	#content-main h2.faq, #content-main h3.commercial { background-position: 0 -50px; }
	#content-main h2.contact, #content-main h3.misc { background-position: 0 -75px; }
	#content-main h2.services, #content-main h3.philosophy { background-position: 0 -100px; }
	#content-main h2.products, #content-main h3.profile { background-position: 0 -125px; }
	#content-main h2.completed-work, #content-main h3.services-residential { background-position: 0 -150px; }
	#content-main h2.specials, #content-main h3.services-commercial { background-position: 0 -175px; }
	#content-main h2.testimonials, #content-main h3.services-contractor { background-position: 0 -200px; }
	#content-main h2.hotel, #content-main h3.arcoaire { background-position: 0 -225px; }
	#content-main h2.residential, #content-main h3.honeywell { background-position: 0 -250px; }
	#content-main h2.commercial, #content-main h3.trane { background-position: 0 -275px; }
	#content-main h2.misc, #content-main h3.sanyo { background-position: 0 -300px; }
	#content-main h2.error, #content-main h3.ncp { background-position: 0 -325px; }
	#content-main h2.service-contract, #content-main h3.aprilaire { background-position: 0 -350px; }
	#content-main h3.unico { background-position: 0 -375px; }	
	
	/* completed work thumbnails */
	#content-main p.thumbnail {
		position: relative;
		float: left;
		clear: none;
		font-size: .8em;
		text-align: center;
		font-style: italic;
		border: 1px solid #ccc;
		margin: 0 10px 10px 0; padding: 0;
		background: #fff;
		}
	#content-main p.thumbnail img {
		width: 105px;
		height: 105px;
		display: block;
		overflow: hidden;
		border: none;
		margin: 10px;
		border: 1px solid #aaa;
		}	
	#content-main p.thumbnail a, #content-main p.thumbnail a:link, #content-main p.thumbnail a:visited, #content-main p.thumbnail a:hover { text-decoration: none; border: none; }
	#content-main p.thumbnail span.new {
		width: 39px;
		height: 39px;
		position: absolute;
		top: 2px; right: 2px;
		text-indent: -9999px;
		background: url(../img/bg_icon-new.gif) no-repeat 0 0;	
		}
		
	#content-main ul.gallery-nav {
		display: block;
		clear: both;
		margin: .5em 0;
		padding: 0 0 0 15px;
		}
	#content-main ul.gallery-nav li {
		list-style: none;
		display: inline;
		margin: 0;
		padding: 0 5px 0 0 ;
		}
	ul.gallery-nav li a {
		font-size: 1em;
		padding: .25em;
		}
	ul.gallery-nav li a.current {
		font-weight: bold;
		font-style: italic;
		border: 1px solid #ccc;
		}
	
	/* ul jump menu (services and products) */
	#content-main ul.jump-menu {
		width: 100%;
		font-size: .90em;
		list-style: none;
		text-align: center;
		margin: 0 0 10px; padding: 0;
		}
	#content-main ul.jump-menu li {
		display: inline;
		margin: 3px; padding: 0;
		}
	
	/* testimonial page */
	blockquote.main-testimonial {
		margin: 2%;
		width: 94%;
		background: #EFEFEF url(../img/bg_blockquote-testimonial.gif) no-repeat 5px 5px;
		border: 1px solid #ddd;
		}
	blockquote.main-testimonial p {
		padding: 5px 10px;
		font: .85em/1.5em Georgia, "Times New Roman", Times, serif;
		font-style: italic;
		text-indent: 20px;
		letter-spacing: .0125em;
		}
	#content-main p.testimonial-name {
		font-weight: bold;
		}
	
	/* coupon page */
	#coupon-themostat, #coupon-humidifier,
	#coupon-air-cleaner {
		width: 436px;
		height: 173px;
		text-indent: -9999px;
		display: block;
		}
	
	#coupon-themostat { background: transparent url(../img/bg_coupon-themostat.jpg) no-repeat 0 0; }
	#coupon-humidifier { background: transparent url(../img/bg_coupon-humidifier.jpg) no-repeat 0 0; }
	#coupon-air-cleaner { background: transparent url(../img/bg_coupon-air-cleaner.jpg) no-repeat 0 0; }

	/* faq dl */
	#content-main dl p{ font-size: 1em;	}
	#content-main dl.faq dt {
		font-weight: bold;
		text-transform: uppercase;
		letter-spacing: .0125em;
		width: 100%;	
		text-indent: 13px;
		margin: 0 0 5px; padding: 0;
		background: url(../img/bg_max.gif) no-repeat 0 .5em;
		}
	#content-main dl.faq dd {
		border-left: 2px solid #eee;
		margin: 0 0 0 20px; padding: 0 0 0 10px;
		}

	/* contact form */
	#contact-form input, #contact-form textarea {
		font-family: "Lucida Grande", "Lucida Sans Unicode", Verdana, Tahoma, Arial, sans-serif;
		font-size: 1.25em;
		font-weight: normal;
		border : 1px solid #707c9a;
		background-color : #f9f9f9;
		}	
	#contact-form textarea {
		width: 240px;
		}
	.contact-error{
		padding:3px 5px;
		background: #FFEF95;
		border:1px solid #DBCD80;
		margin:5px 0;
		}
	.requiredTxt {
		color: #B32034;
		font-size: .75em;
		text-transform: uppercase;
		}
	#contact-form input.form-button {
		width: 95px;
		height: 26px;
		margin-right: 10px;
		border-style: none;
		}

/*******END CORE********/

/********HEADER*********/
#header {
	width: 100%;
	height: 311px;
	position: relative;
	background: transparent url(../img/bg_masthead-01.jpg) no-repeat 282px 21px;	
	}	
	
	/* logo */
	#header h1 {
		width: 255px;
		height: 105px;
		position: absolute;
		top: 38px;
		left: 0;
		text-indent: -9999px;
		background: transparent url(../img/bg_header-logo.gif) no-repeat 0 0;	
		}
	#header h1 a, #header h1 a:link, #header h1 a:visited {
		width: 255px;
		height: 105px;
		display: block;
		text-indent: -9999px;
		background: transparent url(../img/bg_header-logo.gif) no-repeat 0 0;	
		}
	#header h1 a:hover { background-position: 0 -105px; }
	
	/* tagline */
	#header p.tagline {
		width: 478px;
		height: 290px;
		position: absolute;
		top: 21px;
		right: 0;
		text-indent: -9999px;
		}
		
	/* phone number */
	#header address.call-now {
		width: 255px;
		padding-top: 150px;
		font: 1.5em Verdana, Arial, Helvetica, sans-serif;	
		font-weight: bold;
		color: #B32034;
		text-align: center;
		letter-spacing: -0.05em;
		}
	#header address.call-now span {
		font-size: .75em;
		text-transform: uppercase;
		}
/******END HEADER*******/

/******NAVIGATION*******/
/* top nav */
#top-nav {
	width: 478px;
	height: 38px;
	float: right;
	margin: 0; padding: 0;
	}

	#top-nav li { float: left; }
	#top-nav li a {
		height: 38px;
		display: block;
		text-indent: -9999px;
		margin: 0 12px;
		background: url(../img/bg_nav-sprite.gif) no-repeat 0 0;
		}
	#top-nav li a.nav-home { width: 37px; background-position: 0 0; }
	#top-nav li a:hover.nav-home, #top-nav li.active a.nav-home { background-position: 0 -38px; }
	#top-nav li a.nav-about { width: 65px; background-position: -62px 0; }
	#top-nav li a:hover.nav-about, #top-nav li.active a.nav-about { background-position: -62px -38px; }
	#top-nav li a.nav-faq { width: 196px; background-position: -152px 0; }
	#top-nav li a:hover.nav-faq, #top-nav li.active a.nav-faq { background-position: -152px -38px; }
	#top-nav li a.nav-contact { width: 78px; background-position: -373px 0; }
	#top-nav li a:hover.nav-contact, #top-nav li.active a.nav-contact { background-position: -373px -38px; }

/* side nav */	
#sidebar-nav {
	width: 248px;
	font: 14px/35px Arial, Helvetica, sans-serif;
	letter-spacing: 0.05em;
	border-style: solid solid none solid;
	border-color: #DEE8FE;
	border-width: 2px;
	margin-bottom: 20px;
	}
	
	#sidebar-nav li a, #sidebar-nav li a:link, #sidebar-nav li a:visited {
		height: 35px;
		display: block;
		color: #fff;
		padding: 0 10px;
		background: #B32034;
		border-bottom: 2px solid #DEE8FE;
		text-decoration: none;
		}	
	#sidebar-nav li a:hover, #sidebar-nav li.active a, #sidebar-nav li.active a:link { background: #8C1929; }	
	#sidebar-nav li.active a, #sidebar-nav li.active a:link, #sidebar-nav li.active a:visited { background: #8C1929; font-weight: bold; }
	
	#sidebar-nav li a span { display: none; }
	#sidebar-nav li a:hover span { display: inline; font-size: .75em; text-transform: uppercase; }
/****END NAVIGATION*****/

#container-content { width: 760px; float: left; }


/********SIDEBAR********/
#sidebar { width: 282px; float: left; position: relative; }
#sidebar-main {	padding: 65px 4px 20px;	}

	/* testimonial */
	blockquote.sidebar-testimonial {
		position: absolute;
		top: -142px;
		left: 5px;
		width: 255px;
		height: 194px;
		background: url(../img/bg_sidebar-testimonial.jpg) no-repeat 0 0;
		margin: 0; padding: 0;
		}
	blockquote.sidebar-testimonial p {
		margin: 25px 15px 15px;
		color: #194B80;
		font: 11px/20px Georgia, "Times New Roman", Times, serif;
		text-align: center;
		letter-spacing: .0125em;
		}
	blockquote.sidebar-testimonial p.name {
		margin: 0; padding: 0;
		width: 110px;
		height: 29px;
		position: absolute;
		bottom: 6px;
		left: 77px;
		background: url(../img/bg_name-sprite.gif) no-repeat 0 0;
		text-indent: -9999px;
		} 
		
	/* testimonial names */
	blockquote.sidebar-testimonial p.white { background-position: 0 0; }
	blockquote.sidebar-testimonial p.paone { background-position: 0 -29px; }
	blockquote.sidebar-testimonial p.bach { background-position: 0 -58px; }		
	blockquote.sidebar-testimonial p.allen { background-position: 0 -87px; }
	blockquote.sidebar-testimonial p.naples { background-position: 0 -116px; }
	blockquote.sidebar-testimonial p.ross { background-position: 0 -145px; }
	blockquote.sidebar-testimonial p.ward { background-position: 0 -174px; }
	blockquote.sidebar-testimonial p.calligan { background-position: 0 -203px; }
	blockquote.sidebar-testimonial p.christos { background-position: 0 -232px; }
	blockquote.sidebar-testimonial p.link {
		width: 39px;
		height: 29px;
		position: absolute;
		bottom: 6px;
		left: 186px;
		text-indent: -9999px;
		margin: 0; padding: 0;
		}
	blockquote.sidebar-testimonial p.link a {
		width: 39px;
		height: 29px;
		display: block;
		background: url(../img/bg_test-link-sprite.gif) no-repeat 0 0;
		text-indent: -9999px;
		}
	blockquote.sidebar-testimonial p.link a:hover { background-position: 0 -29px; }
	blockquote.sidebar-testimonial a, blockquote.sidebar-testimonial a:link, blockquote.sidebar-testimonial a:visited { color: #B32034; }
	blockquote.sidebar-testimonial a:hover { text-decoration: underline; }	
	
	/* ad space */
	#sidebar-ad {
		width: 250px;
		height: 250px;
		margin: 0 0 10px;
		text-indent: -9999px;
		background: url(../img/bg_sidebar-ad-winter-07.jpg) no-repeat 0 0;
		}
		
	#sidebar-ad a {
		width: 250px;
		height: 235px;
		display: block;
		text-indent: -9999px;
		}
/******END SIDEBAR******/

/*********FOOTER********/

#container-footer {
	width: 100%;
	min-height: 200px;
	position: relative;
	clear: both;
	color: #fff;
	text-align: center;
	background: #405179 url(../img/bg_footer-container.gif) repeat-y 700px;
	}
* html #container-footer { top: auto; height: 200px; }
#footer-content {
	width: 760px;
	min-height: 200px;
	margin: 0 auto;
	}
#footer-sidebar {
	min-height: 200px;
	width: 282px;
	float: left;
	}
#footer-main {
	min-height: 200px;
	width: 478px;
	position: relative;
	float: left;
	text-align: center;
	background: #A71F32;
	}
* html #footer-content, * html #footer-sidebar, * html #footer-main { height: 200px; }
	
	/* general */
	#footer-content p { font-size: .80em; }
	#footer-content p.copy {
		position: absolute;
		width: 478px;
		bottom: 5px; left: 0;
		text-align: center;
		}
	#footer-content a { color: #fff; font-weight: bold; }
	#footer-content a:hover { border-bottom: 1px dashed #fff; }

	/* address */
	#footer-sidebar address {
		font: .85em/2em Arial, Helvetica, sans-serif;
		font-weight: bold;
		letter-spacing: .025em;
		text-align: right;
		padding: 45px 50px 20px 6px;
		}

	/* tagline */
	#footer-main p.tagline {
		width: 478px;
		height: 69px;
		margin: 50px 0 10px;
		text-indent: -9999px;
		background: transparent url(../img/bg_footer-tagline.gif) no-repeat center;
		}
/******END FOOTER*******/



/* --->>> Job Application <<<--- */
body.job-app { background-position: 0 -86px; }
body.job-app #header { height: 263px; background: none; }
body.job-app #header h1 { left: 252px; }
body.job-app #header address { margin-left: 252px; }
body.job-app #content { width:760px; }

body.job-app #content-main h2 { 
	color: #cc4400;
	font: normal 1.6em Verdana, Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	letter-spacing: -.0125em;
	text-indent: 0;
	background: none;
	}

body.job-app td { font-size: 11px; }

span.required {
	color: #cc3300;
	font-size: 10px;
	text-transform: uppercase;
	}
	
/* --->>> Notices <<<--- */
p.notice, p.error,
p.success {
	color: #000;
	margin: 20px 0;
	padding: 5px 5px 5px 30px;
	background: #ebecd2 url(../img/bg_notice.gif) no-repeat 5px center;
	border: 1px solid #333;
	}
p.error { background: #ebecd2 url(../img/bg_error.gif) no-repeat 5px center; }
p.success { background: #ebecd2 url(../img/bg_success.gif) no-repeat 5px center; }

