
/*  

	++++++++++	+++++++++++		+++++       +++++	+++++       +++++       
	++++++++++	+++++++++++		++++++     ++++++	++++++     ++++++
		   +++	+++				+++ +++	  +++ +++	+++ +++   +++ +++
		   +++	+++				+++	 +++ +++  +++	+++  +++ +++  +++
	++++++++++	+++++++++++		+++	  +++++   +++	+++   +++++   +++
	++++++++++	+++++++++++		+++    +++    +++	+++    +++    +++
		   +++		    +++		+++     +     +++	+++     +     +++
		   +++		    +++		+++           +++	+++           +++
	++++++++++	+++++++++++		+++           +++	+++           +++
	++++++++++	+++++++++++		+++           +++	+++           +++
	
													
/*  
 ====================================================================
				client:					aceconcrete.com
				css author:				steve scavo
				began on:				8/15/07
=====================================================================
*/

@import url("reset.css");

/* ======================
		GLOBAL 
========================= */

* { outline:none; margin:0; padding:0;  }

body {
	background:#222 url(../i/bg.jpg) repeat-y center 0px;
	font:small "Helvetica Neue", Arial, Helvetica, sans-serif;
	color:#666;
	}
	
a {
	text-decoration:none;
	color:#600;
	}
a:hover { color:#c33; }

dt { 
	font-size:16px;
	font-weight:bold;
	}
dd { 
	margin:2px 0 2em 20px; 
	padding:5px;
	}
dd:hover { 
	background:#eee; 
	color:#333;
	}
	
h1,h2,h3,h4,h5,h6 { letter-spacing:-1px; }

h1 {
	font-size:170%;
	}

h2 { 
	font-size:150%;
	line-height:1.2em;
	}

img, img a { border:none; }
	


/* ======================
		CONTAINER 
========================= */

#wrapper {
	position:relative;
	width:980px;
	margin:0 auto;
	background:#f4f4f4 url(../i/bg_wrapper.jpg) no-repeat left top;
	overflow:hidden;
	}

	

/* ======================
		HEADER 
========================= */


#header {
	height:239px;
	margin:0;
	padding:0;
	}
	
#topnav {
	height:105px;
	}
	
#nav_wrap {
	position:absolute;
	top:0;
	left:300px;
	}

#topnav h1 {
	position:relative;
	float:left;
	width:300px;
	height:105px;
	margin:0;
	padding:0;
	display:block;
	}
	
#topnav h1 a {
	float:left;
	width:300px;
	height:106px;
	margin:0;
	padding:0;
	text-indent:-99999em;
	border-right:1px solid #888;
	border-bottom:0px solid #888;
	background-position:0px 0px;
	display:block;
	}
	html>body #topnav h1 a { background:url(../i/logo_ace.png) no-repeat; }
	
#topnav h1 a:hover { 
	background-position:right top;
	}


/* ---- Main Navigation ---- */


.nav li#portfolio.top,
.nav li#about.top,
.nav li#info.top {
	border:none;
	}


.nav li#portfolio.top a.toplink,
.nav li#about.top a.toplink,
.nav li#info.top a.toplink {
	float:left;
	width:226px;
	height:105px;
	margin:0;
	padding:0;
	text-indent:-99999em;
	border:1px solid #888;
	border-top:0;
	border-left:0;
	background:transparent;
	}
	
	html>body .nav li#portfolio.top a.toplink { 
		background:url(../i/nav_portfolio.png) no-repeat;
		display:block;
		}
		
	html>body .nav li#about.top a.toplink { 
		background:url(../i/nav_about.png) no-repeat;
		display:block;
		}
		
	html>body .nav li#info.top a.toplink { 
		background:url(../i/nav_info.png) no-repeat;
		border-right:0px;
		display:block;
		}
	
.nav li:hover#portfolio.top a.toplink,
.nav li:hover#about.top a.toplink,
.nav li:hover#info.top a.toplink { background-position:right; }
	
.nav li#portfolio.top.current a.toplink,
.nav li#about.top.current a.toplink,
.nav li#info.top.current a.toplink { background-position:right top; }


	

/* ---- Main Navigation Bottom ---- */


#bottomnav { }

#bottomnav h1 {
	position:relative;
	top:65px;
	left:5px;
	font: bold 26px inherit;
	text-shadow:#000 0px 0px 6px;
	color:#fff;
	line-height:0.9em;
	letter-spacing:-0.05em;
	text-align:center;
	margin:0;
	padding:0;
	width:288px;
	display:block;
	}
	html>body #bottomnav h1 { padding:0; }

#bottomnav h1.twoline { top:65px; }
	
#bottomnav h1 sup {
	position:relative;
	top:3px;
	left:0;
	font-size:80%;
	font-weight:normal;
	line-height:0.5em;
	padding-right:3px;
	}
	


/* ======================
		CONTENT 
======================== */
	
#content {
	width:980px;
	min-height:400px;
	height:100%;
	}
	
#container {
	position:relative;
	top:-35px;
	left:0;
	width:980px;
	}
	
.sidebar {
	float:left;
	width:300px;
	}
	html>body .sidebar { margin-bottom:-35px; }
	
	.sidebar p,
	.sidebar h2 { text-align:center; }
	
.text {
	float:right;
	width:600px;
	}
	.fullpage {
		float:none;
		width:980px;
		}
	
#flash {
	width:980px;
	}
	html>body #flash { margin:0 0 -35px; }
	#flash h2 { 
		background:#ccc;
		padding:1.2em;
		width:980px;
		text-align:center;
		display:block;
		clear:both;
		}
			
#container h1 {
	font:bold 350%/.85em Arial, Helvetica, sans-serif;
	color:#c3c3c3;
	padding:7px 15px;
	margin:0.7em 0;
	letter-spacing:-4px;
	background:#eee;
	border-left:2px solid #c3c3c3;
	border-right:2px solid #c3c3c3;
	display:block;
	}
	
#container h2 {
	margin:1em 0 0.6em;
	font-size:140%;
	}
	
#container h3 {
	font-size:140%;
	margin:1em 0 0.2em;
	}

#container p { 
	line-height:1.5em;
	margin-bottom:1em;
	}
	
.text ul, .text ol {
	margin:1em 1em 1em 2.5em;
	}
	
.text li {
	margin-bottom:.5em;
	padding-bottom:.5em;
	border-bottom:1px dashed #ccc;
	color:#444;
	line-height:1.2em;
	}

#container img.right {
	float:right;
	margin:0 0 5px 12px;
	}



/* ======================
		FOOTER 
========================= */

	
#bottom {
	position:relative;
	top:0;
	left:0;
	background:#400 url(../i/footer_gradient.gif) repeat-x;
	padding:15px 0 0;
	margin:0;
	clear:both;
	}
	
#bottom #bottom-inside {
	width:980px;
	margin:0 auto;
	}	

#bottom ul#one, #bottom ul#two, #bottom ul#three, #bottom ul#four { 
	float:left; 
	width:200px; 
	margin:0 10px; 
	padding:2px 10px 35px; 
	list-style:none;
	display:block;
	}
	
#bottom ul li {
	font:bold 90%/1em "Arial Narrow", Arial, Helvetica, sans-serif;
	border-bottom:1px solid #300;
	}
	
#bottom ul li a {
	color:#979b97;
	padding:4px 6px;
	text-decoration:none;
	text-transform:uppercase;
	display:block;
	}
	
#bottom ul li a:hover {
	background:#f4f4f4;
	color:#600;
	}
	
#bottom ul li.current a, #bottom ul li.current a:hover {
	background:#444;
	color:#fff;
	cursor:text;
	}
	
#bottom li.title {
	font:bold 105% "Helvetica Neue", Arial, Helvetica, sans-serif;
	text-transform:uppercase;
	color:#fff;
	border-bottom:2px solid #300;
	padding:4px 0 2px 1px;
	margin-bottom:0px;
	}
	
#bottom #footer {
	position:relative;
	width:100%;
	margin:0 auto;
	text-align:center;
	font-size:10px;
	font-family:Arial, Helvetica, sans-serif;
	letter-spacing:normal;
	text-transform:uppercase;
	color:#666;
	clear:both;
	}
	
#bottom #footer p {
	margin:2em 0;
	}

#bottom #footer a {
	color:#fff;
	}
	
#bottom #footer a#credit  {
	position:absolute;
	top:-4px;
	_top:14px;
	left:750px;
	display:block;
	width:24px;
	height:15px;
	background:url(../i/logo_35mm_roll.gif);
	text-indent:-9999em;
	}
#bottom #footer a:hover#credit   {
	background-position:-24px 0px;
	}	
	


/* ======================
		FORMS
========================= */


.salesforce {
	width:280px;
	padding-left:20px;
	background:#333;
	color:#eee;
	overflow:hidden;
	}
	
.salesforce h2, .salesforce h3 {
	position:relative;
	top:0px;
	left:-20px;
	width:270px;
	padding:5px 15px;
	background:#4e4e4e;
	border:1px solid #111;
	border-right:none;
	border-left:none;
	margin:0;
	display:block;
	}
.salesforce h2 {
	top:-23px;
	padding:20px 15px;
	height:3.25em;
	border-top:2px solid #111;
	background:#444 url(../i/arrow.gif) no-repeat right top;
	}
	
.salesforce h2 em { color:#fff; margin-left:4px; }

div.extra_spec,
div.extra_color,
div.extra_precast,
div.extra_ec,
div.extra_nc {
	clear:both;
	margin:5px 0 0.6em;
	width:240px;
	border:2px solid #ccc;
	background:#400 url(../i/footer_gradient.gif) repeat-x top;
	}
div.more_info {
	position:relative;
	top:0;
	left:-20px;
	width:300px;
	background:#111;
	border-top:2px solid #f4f4f4;
	border-bottom:2px solid #f4f4f4;
	overflow:hidden;
	}
.info_padding {
	padding:0 20px 20px;
	}
	
.info_padding h3 {
	background:#111;
	color:#ffc;
	font-style:italic;
	}

form em {
	color:#999;
	line-height:1.5em;
	}
form ul { 
	margin:-38px 0 0 0;
	padding:0; 
	list-style-type:none;
	}
form ul.second {
	margin:0;
	}
form li {
	width:260px;
	margin:0 -10px 0 -21px;
	line-height:0.9em;
	padding:0.4em 20px;
	border-bottom:1px solid #111;
	color:#fff;
	}
	html>body form li span,
	html>body .info_padding span {
		position:relative;
		top:0px;
		left:0px;
		width:235px;
		margin-left:32px;
		display:block;
		text-align:left;
		}
	html>body .info_padding span {
		display:block;
		margin-bottom:0.6em;
		}
.info_padding span em {
	font-size:100%;
	}
form li em { color:#ff9; }

form li:hover,
form li:hover em {
	background:#400;
	color:#fff;
	}
label {
	width:95%;
	display:block;
	}
input, textarea {
	margin-bottom:7px;
	padding:1px 2px;
	width:250px;
	font:120% Arial, Helvetica, sans-serif;
	background:#f4f4f4 url(../i/gradient.jpg) repeat-x top;
	border:1px solid #999;
	}
.checkme,
.checkme_more_info, 
.checkme_precast, 
.checkme_nc, 
.checkme_ec, 
.checkme_spec, 
.checkme_color {
	position:relative;
	top:2px;
	left:0;
	float:left;
	margin:0 4px 1px 0;
	width:20px;
	_width:30px;
	height:20px;
	_height:30px;
	_background:#333;
	_border:none;
	_zoom: 1;
	cursor:pointer;
	}
	
form div input, form div select {
	width:210px;
	}
.submit { 
	margin:1.5em auto;
	font-weight:bold;
	text-transform:uppercase;
	padding:0.2em 1em;
	cursor:pointer;
	width:auto;
	display:block;
	}
.submit:hover, .submit.sfHover { 
	background:#600;
	color:#ccc;
	}	
.formpadding {
	width:90%;
	margin:7px auto;
	border:none;
	overflow:hidden;
	}
	
	
	
	
/* Newsletter signup */

.newsletter_signup {
	width:270px;
	margin:1.5em auto;
	padding:5px;
	background:#dedede;
	border:1px solid #aaa;
	text-align:center;
	}
	
.newsletter_signup input {
	width:250px;
	margin:.2em auto;
	padding:auto 0;
	font-size:150%;
	}
	
.newsletter_signup input.submit {
	margin:0 auto;
	padding:auto 0;
	font-size:100%;
	width:256px;
	}
	html>body .newsletter_signup input.submit { margin-left:5px; }





/* ======================
		MISC 
========================= */

.small_logos {
	float:left;
	border:1px solid #b7b7b7;
	background:#ddd;
	margin:0.6em 0.7em 0 0;
	padding:6px;
	}
	
.mapright {
	float:right;
	width:330px;
	}
	
.alert {
	width:240px;
	padding:2em 30px 4em;
	color:#fff;
	background:#600;
	border-top:3px solid #111;
	border-bottom:3px solid #111;
	overflow:hidden;
	}
	
.callout {
	color:#900;
	font-weight:bold;
	}
	
	
	


	

/* ======================
		CLEARFIX 
========================= */

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

.clearfix {
	display: inline-block;
}

html[xmlns] .clearfix {
	display: block;
}

* html .clearfix {
	height: 1%;
}





/* ==========================
    TABS - JQUERY.TABS.CSS 
============================= */



/* Caution! Ensure accessibility in print and other media types... */
@media projection, screen { /* Use class for showing/hiding tab content, so that visibility can be better controlled in different media types... */
    .tabs-hide {
        display: none;
    }
}

/* Hide useless elements in print layouts... */
@media print {
    .tabs-nav {
        display: none;
    }
}

/* Skin */
.tabs-nav {
    list-style: none;
    margin: 0;
	}
	html>body .tabs-nav { padding: 0 0 0 299px; }
.tabs-nav:after { /* clearing without presentational markup, IE gets extra treatment */
    display: block;
    clear: both;
    content: " ";
	}
.tabs-nav li {
    float: left;
    margin: 0 0 0 1px;
    min-width: 84px; /* be nice to Opera */
	}
.tabs-nav a, .tabs-nav a span {
    display: block;
    padding: 0 10px;
    background:transparent url(../i/tab.png) no-repeat;
	}

.tabs-nav a {
    position: relative;
    top: 1px;
    z-index: 2;
    padding-left: 0;
    /*color: #600;*/
	color:#ccc;
    font-size: 92.5%;
    font-weight: bold;
	font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    white-space: nowrap; /* required in IE 6 */    
	}
.tabs-nav .tabs-selected a {
    color: #000;
	text-decoration:none;
	text-transform:none;
	letter-spacing:normal;
	text-shadow:#444 0px 0px 10px;
	}
.tabs-nav a:hover, .tabs-nav a:focus {
	color:#000;
	}

/* OQS Styling */

.tabs-nav a b { color:#ccc; }
.tabs-nav .tabs-selected a b { color:#000; }
.tabs-nav a:hover b, .tabs-nav a:focus b { color:#000; }

/* ----------- */

.tabs-nav .tabs-selected a, .tabs-nav a:hover, .tabs-nav a:focus, .tabs-nav a:active {
    background-position: 100% -150px;
    outline: 0; /* prevent dotted border in Firefox */
	}
.tabs-nav a, .tabs-nav .tabs-disabled a:hover, .tabs-nav .tabs-disabled a:focus, .tabs-nav .tabs-disabled a:active {
    background-position: 100% -100px;
	}
.tabs-nav a span {
    width: 64px; /* IE 6 treats width as min-width */
    min-width: 64px;
    height: 24px; /* IE 6 treats height as min-height */
    min-height: 24px;
    padding-top: 10px;
    padding-right: 0;
	}

*>.tabs-nav a span { /* hide from IE 6 */
    width: auto;
    height: auto;
	}
.tabs-nav .tabs-selected a span {
    padding-top: 11px;
	}
.tabs-nav .tabs-selected a span, .tabs-nav a:hover span, .tabs-nav a:focus span, .tabs-nav a:active span {
    background-position: 0 -50px;
	}
.tabs-nav a span, .tabs-nav .tabs-disabled a:hover span, .tabs-nav .tabs-disabled a:focus span, .tabs-nav .tabs-disabled a:active span {
    background-position: 0 0;
	}
.tabs-nav .tabs-selected a:link, .tabs-nav .tabs-selected a:visited, .tabs-nav .tabs-disabled a:link, .tabs-nav .tabs-disabled a:visited { /* @ Opera, use pseudo classes otherwise it confuses cursor... */
    cursor: text;
	}
.tabs-nav a:hover, .tabs-nav a:focus, .tabs-nav a:active { /* @ Opera, we need to be explicit again here now... */
    cursor: pointer;
	}
.tabs-nav .tabs-disabled {
    opacity: .4;
	}
.tabs-container {
    border-top: 0px solid #666;
    padding: 0 40px 0 0;
	background: #f4f4f4; /* declare background color for container to avoid distorted fonts in IE while fading */
	}
	
	
	
	
	
	
	
	
/* =================================
     	HORIZONTAL STATIC 
==================================== */
	
	
.nav, .nav * {
	margin:0;
	padding:0;
	}

.nav {
	background:transparent;
	padding-bottom: 2.5em;
	height:2.5em;
	float: left;
	line-height:1.0;
	position:relative;
	}

.nav ul {
	background:#111; /*IE6 needs this*/
	float: left;
	position:relative;
	}

.nav li {
	border-right:1px solid #444;
	float: left;
	list-style:none;
	z-index:999;
	}

.nav li.current ul {
	z-index: 999;
	}

.nav li.sfHover ul,
ul.nav li:hover ul {
	z-index: 1000;
	}

.nav li li { font-weight:bold; }

.nav li li li { font-weight:normal; border-right:none }

.nav a {
	float: left;
	color: #999;
	font-family: "Helvetica Neue", Arial, sans-serif;
	padding: .75em 15px .75em 15px;
	text-decoration:none;
	white-space:nowrap;
	display:block;
	}

.nav li ul {
	left:0;
	top:-999em;
	position:absolute;
	/*width:48em;*/
	width:680px;
	}

.nav li:hover,
.nav li.sfHover,
.nav li.current,
.nav a:focus, .nav a:hover, .nav a:active {
	background:#444;
	}

.nav li li.sfHover a,
.nav li li.current a,
.nav li li:hover,
.nav li li.sfHover,
.nav li li.current,
.nav a:focus, .nav a:hover, .nav a:active {
	color:#fff;
	}

.nav li li.current {
	font-weight:bold;
	font-style:italic;
	background:#400;
	}
	
.nav li li li.current {
	font-weight:bold;
	font-style:italic;
	background:#400;
	}

.nav li li:hover,
.nav li li a:focus, .nav li li a:hover, .nav li li a:active { background:#400; }

.nav li li li:hover,
.nav li li li a:focus, .nav li li li a:hover, .nav li li li a:active { background:#400; }

.useSF .nav li:hover ul, /* pure CSS hover is removed below */
body .nav li.current ul, /* this must be more specific than the .superfish override below */
.useSF ul.nav li.sfHover ul {
	/*top:2.5em;*/
	top:105px;
	}

.nav li:hover li ul,
.nav li.sfHover li ul {
	top:-999em;
	}
	
.useSF .nav li li:hover ul, /* pure CSS hover is removed below */
.useSF ul.nav li li.sfHover ul {
	top:2.45em;
	background:#444;
	border-bottom:2px solid #111;
	}

.useSF .nav li li:hover li ul,
.useSF .nav li li.sfHover li ul {
	top:-999em;
	}

.useSF .nav li li li:hover ul, /* pure CSS hover is removed below */
.useSF ul.nav li li li.sfHover ul {
	top:2.4em;
	}
	


/* additional css mods to help w/ static breadcrumb */


body .nav li li.current ul {
	top:2.45em;
	background:#444;
	border-bottom:2px solid #111;
	font-style:normal;
	display:block;
	}
	
.nav li li ul {
	display:none;
	}
	
.useSF .nav li li ul {
	display:block;
	}










/*following rule negates pure CSS hovers
so submenu remains hidden and JS controls
when and how it appears*/

.useSF .superfish li:hover ul,
.useSF .superfish li li:hover ul,
.useSF .superfish li li li:hover ul {
	top: -999em;
	}
