@charset "UTF-8";

/**************** HTML5 SUPPORT ****************/

	header, section, footer, aside, nav, article, figure { display: block; }
	
	
/**************** MAIN LINKS ****************/

	a:link, .mainContent a:visited { color: #d51024; text-decoration: none; }
	a:hover { text-decoration: underline; }
	a:focus { text-decoration: none; outline: none; }

	.mainContent a:link, .mainContent a:visited { color: #d51024; text-decoration: none; }
	.mainContent a:hover { text-decoration: underline; }
	.mainContent a:focus { text-decoration: none; outline: none; }
	
	#hero a:link, a:visited { color: #FFF; text-decoration: none; }
	#hero a:hover { color: #CCC; text-decoration: none; }
	#hero a:focus { text-decoration: none; outline: none; }
	
	.btnWelcomeReadMore { margin: 40px 25px 0 0; position: absolute; bottom: 30px; right: 0; }
	.btnWelcomeReadMore a { background: url(../images/btnReadMore.png) no-repeat scroll 0 0 transparent; float: right; width:150px; height:90px; text-indent: -9999px; width:150px; }
	.btnWelcomeReadMore a:hover { background-position: 0 -90px; }
	.btnServicesReadMore { margin: 40px 25px 0 0; position: absolute; bottom: 30px; right: 0; }
	.btnServicesReadMore a { background: url(../images/btnReadMore.png) no-repeat scroll 0 0 transparent; float: right; width:150px; height:90px; text-indent: -9999px; width:150px; }
	.btnServicesReadMore a:hover { background-position: 0 -90px; }
	.btnTestimonialReadMore a { background: url(../images/btnReadMore.png) no-repeat scroll 0 0 transparent; float: right; width:150px; height:90px; text-indent: -9999px; width:150px; }
	.btnTestimonialReadMore a:hover { background-position: 0 -90px; }

	
	#contactInfo a:link, #contactInfo a:visited { color: #d51024; text-decoration: none; }
	#contactInfo a:hover { text-decoration: underline; }
	#contactInfo a:focus { text-decoration: none; outline: none; }
	
	footer a:link { color: #FFF; text-decoration: none; }
	footer a:hover { text-decoration: underline; }
	footer a:focus { text-decoration: none; outline: none; }


/************* MAIN NAVIGATION *************/


	nav { height: 52px; overflow: hidden; width: 697px; float:right; }
	nav ul li { display: inline; }
	nav ul { margin: 0; padding: 0; height: 52px; }
	nav ul li a { float: left; width: 0; height: 0; padding-top: 52px; overflow: hidden; background-image: url(../images/backgrounds/navBar2.png); }
	nav ul li a:focus { outline: none; }
	nav ul li#nav-home a { width: 108px; background-position: 0 0; }
	nav ul li#nav-services a { width: 97px; background-position: -108px 0; border: 0px none; }
	nav ul li#nav-about a { width: 105px; background-position: -205px 0; border: 0px none; }
	nav ul li#nav-estimate a { width: 142px; background-position: -310px 0; }
	nav ul li#nav-pictures a { width: 93px; background-position: -452px 0; }
	nav ul li#nav-contact a { width: 152px; background-position: -545px 0; }
	nav ul li#nav-home a:hover { width: 108px; background-position: 0 52px; border: 2px none; }
	nav ul li#nav-services a:hover { width: 97px; background-position: -108px 52px; border: 0px none; }
	nav ul li#nav-about a:hover { width: 105px; background-position: -205px 52px; border: 0px none; }
	nav ul li#nav-estimate a:hover { width: 142px; background-position: -310px 52px; border: 0px none; }
	nav ul li#nav-careers a:hover { width: 93px; background-position: -452px 52px; border: 0px none; }
	nav ul li#nav-contact a:hover { width: 152px; background-position: -545px 52px; border: 0px none; }


/**************** TAGS ****************/

	body { font: 14px/22px Arial, Helvetica, sans-serif; background: #EEEDE9 url(../images/backgrounds/main.jpg) repeat fixed; margin: 0; padding: 20px 0 0; color: #363636; }
	h1 { font-family: "Museo Sans 500", Arial; font-size: 30px; color: #363636; padding-top: 30px; padding-bottom: 10px; text-shadow: 1px 1px 1px #999999; line-height: 35px; }
	h2 { font-family: "Museo Sans 500", Arial; font-size: 24px; color: #363636; padding-left: 30px; padding-bottom: 30px; text-shadow: 1px 1px 1px #999999; }
	h3 { font-family: "Museo Sans 500", Arial; font-size: 22px; color: #d51024; padding-top: 30px; padding-bottom: 30px; text-shadow: 1px 1px 1px #999999; }
	h4 { font-family: "Museo Sans 500", Arial; font-size: 18px; color: #d51024; padding-bottom: 30px; padding-left: 41px; text-shadow: 1px 1px 1px #999999; }
	p { text-shadow:0 1px 0 #FFF; padding: 0 45px 20px 45px; }
	hr { display:none; }
	iframe { background: transparent url(none) fixed; overflow:hidden; border:none; width:120px; height:24px; }


/**************** MAIN CONTENT ****************/


	header { overflow:hidden; padding-left: 22px; }
		header h3 { display:block; text-align: right; padding: 0 0 10px 0; }
		header img { float:left; display:block; }
		#phoneNumbers { height:80px; width: 300px; float:right; padding-top: 59px; padding-right: 22px; }
		#tagLine { float: right; padding: 33px 22px 10px 0; }
	
	.container { width: 1002px; margin: 0 auto; clear:both; }
	
	#hero { margin: 22px 22px 40px 22px; background: #d51024; -moz-box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); -webkit-box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; overflow: hidden; }
		#hero h4 { color:#fff; font-size:18px; padding: 15px 0 10px 0; }
		#hero p { color:#FFF; font-size:12px; text-shadow: none; padding-right: 30px; }
		#faded { width: 950px; height: 309px; background-image:url(../images/banners/indexHero1.jpg); border: 4px solid #990000; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; overflow:hidden; }
	
	#callEmergency { width: 331px; padding: 0; border-right: 1px solid #990000; overflow:hidden; float: left; }
		#callEmergency img { float: left; padding: 20px 25px 30px 25px; }
		#callEmergency h5 a { color:#fff; font-size:14px; padding: 9px 0px 0 191px; height: 33px; margin-top: 15px; border-radius-bottomleft: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; overflow:hidden; display:block; background: #990000 url(../images/indexArrowBtn.png) no-repeat right center; }
		#callEmergency h5 a:hover { padding: 9px 0px 0 191px; height: 33px; margin-top: 15px; border-radius-bottomleft: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; overflow:hidden; display:block; background: #b70812 url(../images/indexArrowBtn.png) no-repeat right center; }
			
	#callSpecials { width: 277px; padding: 0; border-right: 1px solid #990000; border-left: 1px solid #e6707d; overflow:hidden; float: left; }
		#callSpecials img { float: left; padding: 20px 25px 30px 25px; }
		#callSpecials h5 a { color:#fff; font-size:14px; padding: 9px 0px 0 144px; height: 33px; margin-top: 15px; overflow:hidden; display:block; background: #990000 url(../images/indexArrowBtn.png) no-repeat right center; }
		#callSpecials h5 a:hover { padding: 9px 0px 0 144px; height: 33px; margin-top: 15px; overflow:hidden; display:block; background: #b70812 url(../images/indexArrowBtn.png) no-repeat right center; }
		
	#callChat { width: 346px; padding: 0; float:left; border-left: 1px solid #e6707d; }
		#callChat img { float: left; padding: 20px 25px 10px 25px; }
		#callChat h5 a { color:#fff; font-size:14px; padding: 9px 0px 0 214px; height: 33px; margin-top: 15px; border-radius-bottomright: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; overflow:hidden; display:block; background: #990000 url(../images/indexArrowBtn.png) no-repeat right center; }
		#callChat h5 a:hover { padding: 9px 0px 0 214px; height: 33px; margin-top: 15px; border-radius-bottomright: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; overflow:hidden; display:block; background: #b70812 url(../images/indexArrowBtn.png) no-repeat right center; }
		
	#banner { width: 950px; height: 195px; border: 4px solid #990000; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; overflow:hidden; }
		.about { background: url(../images/banners/bnrAbout.jpg) no-repeat; }
		.contact { background: url(../images/banners/bnrContact.jpg) no-repeat; }
		.services { background: url(../images/banners/bnrServices.jpg) no-repeat; }
		.careers { background: url(../images/banners/bnrCareers.jpg) no-repeat; }
		.estimate { background: url(../images/banners/bnrEstimate.jpg) no-repeat; }
		.webSpecials { background: url(../images/banners/bnrSpecials.jpg) no-repeat; }
		.testimonials { background: url(../images/banners/bnrTestimonials.jpg) no-repeat; }
	
	.mainContent { padding: 0; }
		.mainContent ul { padding-left: 75px; padding-bottom: 20px; }
		.mainContent li { list-style: disc; text-shadow:0 1px 0 #FFF; }
	
	#secondary { width: 375px; padding-left: 37px; float:left; }
		#secondary img { margin-top: 19px; border: solid 7px #FFF; -moz-box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); -webkit-box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); }
		#secondary p { color: #d51024; font-style:italic; padding: 15px 0 40px 0; }
		blockquote { border-bottom: 1px dashed #CCC; color: #363636; font: italic 15px/20px Georgia, "Times New Roman", Times, serif; margin: 35px 0 20px 5px; overflow:hidden; text-shadow:0 1px 0 #FFF; }
		#secondary blockquote p.quotename { float: right; color: #363636; margin: 12px 17px 5px 0; }
	
	#welcome { width: 383px; border-right: 1px dashed #d51024; padding-left: 5px; margin-bottom: 40px; min-height: 400px; position:relative; float:left; }
		#welcome h1 { height: 0; width: 365px; padding: 60px 0 0 0; line-height: 60px; background: url(../images/backgrounds/h1Welcome.png) no-repeat; overflow: hidden; margin-bottom: 40px; }
		#welcome p { padding: 0 45px; }
	
	#servicesIndex { float:left; width: 383px; border-right: 1px dashed #d51024; padding-left: 20px; margin-bottom: 40px; min-height: 400px; position:relative; }
		#servicesIndex h2 { height: 0; width: 372px; padding: 60px 0 0 0; line-height: 60px; background: url(../images/backgrounds/h2Services.png) no-repeat; overflow: hidden; margin-bottom: 40px; }
		#servicesIndex p { padding: 0 45px; }

	#servicesMain { width: 581px; border-right: 1px dashed #d51024; padding-left: 5px; margin-bottom: 40px; min-height: 400px; position:relative; float:left; }
		#servicesMain h1 { height: 0; width: 563px; padding: 60px 0 0 0; line-height: 60px; background: url(../images/backgrounds/h1Services.png) no-repeat; overflow: hidden; margin-bottom: 40px; }
		#servicesMain dl { padding: 0 75px; padding-bottom: 20px; text-shadow:0 1px 0 #FFF; }
		#servicesMain dt { color: #d51024; font-weight:bold; }
		#servicesMain dd { font-style:italic; }

	#sponsors { width: 165px; padding-left: 37px; float:left; }
	#bbbLogo { padding: 30px 12px; }
	#komo { padding: 10px 26px; }
	
	#aboutUs { width: 581px; border-right: 1px dashed #d51024; padding-left: 5px; margin-bottom: 40px; min-height: 400px; position:relative; float:left; }
	#aboutUs h1 { height: 0; width: 563px; padding: 60px 0 0 0; line-height: 60px; background: url(../images/backgrounds/h1AboutUs.png) no-repeat; overflow: hidden; margin-bottom: 40px; }
		
	#careers { width: 581px; border-right: 1px dashed #d51024; padding-left: 5px; margin-bottom: 40px; min-height: 400px; position:relative; float:left; }
	#careers h1 { height: 0; width: 563px; padding: 60px 0 0 0; line-height: 60px; background: url(../images/backgrounds/h1Careers.png) no-repeat; overflow: hidden; margin-bottom: 40px; }
	
	#estimates { width: 581px; border-right: 1px dashed #d51024; padding-left: 5px; margin-bottom: 40px; min-height: 400px; position:relative; float:left; }
	#estimates h1 { height: 0; width: 563px; padding: 60px 0 0 0; line-height: 60px; background: url(../images/backgrounds/h1FreeEstimates.png) no-repeat; overflow: hidden; margin-bottom: 40px; }
	
	#contact { width: 581px; border-right: 1px dashed #d51024; padding-left: 5px; margin-bottom: 40px; min-height: 400px; float:left; }
		#contact h1 { height: 0; width: 563px; padding: 60px 0 0 0; line-height: 60px; background: url(../images/backgrounds/h1Contact.png) no-repeat; overflow: hidden; margin-bottom: 40px; }
		#contactInfo { padding-top: 20px; }
		#contactInfo img { border: none; -moz-box-shadow:  none; -webkit-box-shadow:  none; box-shadow: none; float:left; padding: 0 10px; margin: 0; }
		.contactMethod { border-bottom: 1px dashed #CCC; margin: 15px 0; overflow:hidden; }
		.contactMethod ul { margin: 5px; padding-left: 20px; float:left; }
		.contactMethod li { list-style: none; text-shadow:0 1px 0 #FFF; }
		.contactMethodLast { border-bottom: 1px dashed #CCC; margin: 15px 0; overflow:hidden; }
		.contactMethodLast ul { margin: 0 5px; padding-left: 86px; float:left; }
		.contactMethodLast li { list-style: none; text-shadow:0 1px 0 #FFF; }
		#contactInfo .contactMethodLast img {padding: 4px 33px 0 10px;}
	
	#staff { padding-left: 50px; overflow:hidden; }
		#staff img { margin-top: 19px; border: solid 7px #FFF; -moz-box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); -webkit-box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); }
		#staff ul { margin: 5px; padding: 0; float:left; }
		#staff li { list-style: none; text-shadow:0 1px 0 #FFF; }
		.staffMember { width: 250px; float:left; padding-bottom: 40px; padding-right: 15px; }
	
	#specials { width: 581px; border-right: 1px dashed #d51024; padding-left: 5px; margin-bottom: 40px; min-height: 400px; position:relative; float:left; }
		#specials h1 { height: 0; width: 563px; padding: 60px 0 0 0; line-height: 60px; background: url(../images/backgrounds/h1WebSpecials.png) no-repeat; overflow: hidden; margin-bottom: 40px; }
		#specials img { padding-left: 17px; }
	
	#testimonials { width: 581px; border-right: 1px dashed #d51024; padding-left: 5px; margin-bottom: 40px; min-height: 400px; position:relative; float:left; }
	#testimonials h1 { height: 0; width: 563px; padding: 60px 0 0 0; line-height: 60px; background: url(../images/backgrounds/H1Testimonials.png) no-repeat; overflow: hidden; margin-bottom: 40px; }
	#testimonials blockquote { border-bottom: 1px dashed #CCC; color: #363636; font: italic 15px/20px Georgia, "Times New Roman", Times, serif; margin: 45px; overflow:hidden; text-shadow:0 1px 0 #FFF; }	
	#testimonials blockquote p.quotename { float: right; color: #363636; margin: 40px 17px 5px 0; }
	
	
/**************** FOOTER ****************/


	footer { padding: 0 22px; margin: 22px; background: #d51024; position: relative; overflow: hidden;/* this gives IE6 hasLayout to properly clear */ clear: both; /* this clear property forces the .container to understand where the columns end and contain them */ -moz-box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); -webkit-box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); box-shadow: 1px 1px 22px rgba(0, 0, 0, 0.4); -webkit-moz-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }
		footer ul { padding-bottom: 22px; }
		footer li { color:#FFF; font-size:12px; text-shadow: none; padding: 0; }
		footer h5 { color:#FFF; padding-top: 22px; padding-bottom: 10px; }
		footer .phone { width: 170px; border-right: 1px solid #990000; float:left; }
		footer .address { width: 170px; border-right: 1px solid #990000; border-left: 1px solid #e6707d; float:left; padding-left: 22px; }
		footer .online { width: 170px; border-right: 1px solid #990000; border-left: 1px solid #e6707d; float:left; padding-left: 22px; }
		footer .network { width: 185px; height: 120px; border-right: 1px solid #990000; border-left: 1px solid #e6707d; float:left; padding-left: 22px; }
		footer img { padding-top: 4px; padding-right: 4px; }
		footer .share { width: 120px; height: 120px; border-left: 1px solid #e6707d; float:left; padding-left: 22px; }
		
		.legal { font-size:10px; color: #999; text-shadow: none; padding: 0 0 0 42px; }
		.legal p { float:left; padding: 0; }
		.legal img { padding: 3px 0 0 5px; }


/****************  Mail Forms ****************/


	#mailForm { margin: 0 0 50px 127px; width: 300px; overflow:hidden; padding: 25px; border-top: 1px dashed #CCC; border-bottom: 1px dashed #CCC; }
	#mailForm input { font-family:Arial, Helvetica, sans-serif; font-size:14px; height:15px; width:289px; padding:5px; color:#363636; border: 1px solid #C8C8C8; background-image: url(../images/backgrounds/bgInput.gif); background-repeat: repeat-x; }
	#mailForm textarea { font-family:Arial, Helvetica, sans-serif; font-size:14px; color:#363636; border: 1px solid #C8C8C8; background-image: url(../images/backgrounds/inputMessageBackground.jpg); background-repeat: no-repeat; height:190px; padding:5px; width:289px; background-image: url(../images/backgrounds/bgInput.gif); background-repeat: repeat-x; background-color:#FFF; }
	#mailForm td { padding-top:10px; }
	#mailForm select { margin-top:6px; width:238px; color:#666; }
	#mailForm table { width:289px; float:right; }
	#mailForm .btnSend { height: 90px; width: 150px; padding: 10px 0 0 0; background: none; border: medium none; outline: none; }

	#estimateForm { padding: 15px; width: 525px; border-top: 1px dashed #CCC; }
	#estimateForm input { font-family:Arial, Helvetica, sans-serif; font-size:14px; height:15px; padding:5px; color:#363636; border: 1px solid #C8C8C8; background-image: url(../images/backgrounds/bgInput.gif); background-repeat: repeat-x; width: 100%; }
	#estimateForm .inputBox { font-family:Arial, Helvetica, sans-serif; font-size:14px; color:#2a2a2b; border: 1px solid #C8C8C8; background-image: url(../images/backgrounds/bgInput.gif); height:190px; padding:5px; width:289px; background-repeat: repeat-x; background-color:#FFF; width:100%; }
	#estimateForm td { padding:3px 30px; }
	#estimateForm select { margin-top:6px; color:#666; }
	#estimateForm table { }
	#estimateForm .btnSend { height: 90px; width: 150px; padding: 20px 7px 0 0; background: none; border: medium none; outline: none; }
	#estimateForm table tr td p { font-size: 14px; margin: 0px; text-align: left; padding: 8px 0; }

	
	.textfieldRequiredMsg, .textfieldInvalidFormatMsg, .textfieldMinValueMsg, .textfieldMaxValueMsg, .textfieldMinCharsMsg, .textfieldMaxCharsMsg, .textfieldValidMsg, .textareaRequiredMsg, .textareaMinCharsMsg { display: none; }
	.textfieldRequiredState .textfieldRequiredMsg, .textfieldInvalidFormatState .textfieldInvalidFormatMsg, .textfieldMinValueState .textfieldMinValueMsg, .textfieldMaxValueState .textfieldMaxValueMsg, .textfieldMinCharsState .textfieldMinCharsMsg, .textfieldMaxCharsState .textfieldMaxCharsMsg, .textareaRequiredMsg, .textareaMinCharsMsg { display: inline; color:#ff0000; padding-left: 7px; }
	.textfieldFlashText input, input.textfieldFlashText { color: red !important; }
	.textfieldHintState input, input.textfieldHintState { color: red !important; }
	.textareaRequiredMsg, .textareaMinCharsMsg, .textareaMaxCharsMsg, .textareaValidMsg { display:none; }
	.textareaRequiredState .textareaRequiredMsg, .textareaMinCharsState .textareaMinCharsMsg, .textareaMaxCharsState .textareaMaxCharsMsg { display: inline; color:#ff0000; padding-left: 7px; }
	.textareaValidState textarea, textarea.textareaValidState { background-color:#B8F5B1; }
	textarea.textareaRequiredState, .textareaRequiredState textarea, textarea.textareaMinCharsState, .textareaMinCharsState textarea, textarea.textareaMaxCharsState, .textareaMaxCharsState textarea { background-color:#FF9F9F; }
	.textareaFocusState textarea, textarea.textareaFocusState { background-color:#FFFFCC; }
	.textareaFlashState textarea, textarea.textareaFlashState { color:red !important; }
	
	
/****************  MISC ****************/
	
	.strong { font-weight: bold; }
