/* --------------------------------------------------------------------- */
/* Browser resets
/* --------------------------------------------------------------------- */ 

body, h1, h2, h3, h4, form, fieldset, legend, table, th, tr, td, thead, tbody, tfoot, div {
   margin: 0;
   padding: 0;
} 



/* --------------------------------------------------------------------- */
/* Group Clearfix
/* --------------------------------------------------------------------- */ 

.group:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.group { height: 1%; }
.group { min-height: 1px; }



/* ------------------------------------------------------------------------ */
/* HTML / Body
/* ------------------------------------------------------------------------ */

html {
}

body {
	font: normal normal normal .94em/1.7 Cambria, Georgia, Times, "Times New Roman", serif;
	font-family: "Lucida Grande", "Trebuchet MS", sans-serif;
	color: #eee;
	background: #222 url(/sup/img/template/background_site.jpg) repeat-x top right;
	border: none;
}

h1, h2, h3, h4 {
	font-family: Calibri, "Trebuchet MS", sans-serif;
	font-weight: normal;
	margin: 0;
	padding: 0;
}

h1 {
	font-size: 2.4em;
	line-height: 1;
	color: #ff6600;
	padding-bottom: .2em;
	border-bottom: 1px solid #993300;
	margin-bottom: .2em;
}

h2 {
	margin-top: .4em;
	font-size: 1.8em;
	background-color: #993300;
	padding: .2em .4em;
	color: #000;
	line-height: 1;
	margin-bottom: .2em;
}

h3 {
	font-size: 1.4em;
	line-height: 1;
	color: #ccc;
	margin-top: 1em;
	margin-bottom: .2em;
}

h4 {
	font-size: 1em;
	margin: 1em 0 0 0;
	line-height: 1;
	color: #ccc;
}




a {
	text-decoration: underline;
	color: #ff6600;
}
a:hover { text-decoration: none; }

img { border: none; -ms-interpolation-mode:bicubic; }

p {
	margin: 1em 0 1.2em 0;
}

code { }
pre  { font-size: .9em; }

input, textarea {
}

a.download {
	padding-left: 24px;
	background-repeat: no-repeat;
	background-position: 0 0;
	min-height: 16px;
}
a.pdf    { background-image: url(/sup/img/icons/pdf_2.gif); }
a.web    { background-image: url(/sup/img/icons/web.gif); }

p.coaching { font-size: .84em; line-height: 1.3; color: #999; font-style: italic; }


/* ------------------------------------------------------------------------ */
/* Frame (structure)
/* ------------------------------------------------------------------------ */

.frame {
	clear: both;
	margin: 0 auto;
	padding: 0;
	width: 960px;
}





/* ------------------------------------------------------------------------ */
/* Header
/* ------------------------------------------------------------------------ */

#header {
	background: transparent url(/sup/img/template/background_header.jpg) no-repeat top center;
	height: 137px;
	padding: 0;
}
	#header #logo { /* padding top/botton should total 23px (image + padding = 137) */
		padding-top: 11px;
		padding-bottom: 12px;
		width: 300px;
		margin: 0 auto;
	}
	#header #logo img {
		display: block;
		margin: 0 auto;
		padding: 0;
	}





/* ------------------------------------------------------------------------ */
/* Major Navigation Bar
/* ------------------------------------------------------------------------ */

#major-navigation {
	font-family: Calibri, "Trebuchet MS", sans-serif;
	background-color: #000;
	border-bottom: .3em solid #141414;
	padding-top: .3em;
}
#major-navigation ul {
	vertical-align: bottom;
	margin: 0;
	padding: 0;
	list-style: none;
}
#major-navigation ul li {
	margin: 0;
	padding: 0;
	width: 14.25%;
	list-style: none;
	float: left;
	font-size: 1.1em;
}
#major-navigation ul li a span { font-size: .8em; }
#major-navigation ul li a {
	display: block;
	text-align: center;
	padding: .4em .4em;
	background-color: #333;
	background-image: url(/sup/img/template/navigation_divider.gif);
	background-repeat: no-repeat;
	backgroung-position: top left;
	text-decoration: none;
	color: #fff;
}
#major-navigation ul li a:hover { background-color: #993300; background-image: none; }
	
#major-navigation ul li.active a,
	#major-navigation ul li.active a:hover { background-color: #ff6600; background-image: none; }

#major-navigation ul li#nav-contact { border: none; padding-right: 0; }




/* ------------------------------------------------------------------------ */
/* Torso
/* ------------------------------------------------------------------------ */

#torso {
	clear: both;
	margin: 0 auto;
	padding: 0;
	width: 960px;
}
#torso a { white-space: nowrap; }





/* ------------------------------------------------------------------------ */
/* Primary Content
/* ------------------------------------------------------------------------ */

#primary-content {
	float: left;
	width: 430px;
	padding-top: 1.5em;
	padding-bottom: 2em;
	padding-left: 20px;
	padding-right: 0;
}
#primary-content.standalone {
	float: none;
	width: 920px;
	padding-left: 20px;
	padding-right: 20px;
}


/* ------------------------------------------------------------------------ */
/* Secondary Content
/* ------------------------------------------------------------------------ */

#secondary-content {
	float: right;
	width: 410px;
	padding-top: 1.5em;
	padding-bottom: 2em;
	padding-left: 0;
	padding-right: 20px;
	text-align: left;
}




/* ------------------------------------------------------------------------ */
/* Footer
/* ------------------------------------------------------------------------ */

#footer {
	padding: 1em 0;
	background: #2e2e2e;
	color: #ccc;
	font-size: .94em;
}
	#footer a { color: #fff; }
	
	#footer ul {
		margin: 0;
		padding: 0 20px;
		float: left;
		list-style: none;
	}
	#footer ul li { float: left; padding-right: 20px; }
	
	#footer p {
		clear: both;
		padding: 1em 20px 0 20px;
		font-size: .84em;
	}





/* --------------------------------------------------------------------- */
/* Global
/* --------------------------------------------------------------------- */

img.inline {
	display: block;
	margin: .5em auto;
	border: 3px solid #000;
}
	p.captioned img.inline {
		margin-bottom: .1em;
	}

.next_steps {
	margin-top: 2.5em;
}

/* --------------------------------------------------------------------- */
/* Messaging
/* --------------------------------------------------------------------- */

.error, 
.success {
	margin: 1em 0;
	border: 1px solid #000;
	padding: 1em;
	background-color: #999;
	color: #000;
}
	.error :first-child, 
	.success :first-child {
		margin-top: 0;
	}

.error {
	border-color: #892424;
	background-color: #efacac;
	color: #552c2c;
}
.success {
	border-color: #3e8924;
	background-color: #b1efac;
	color: #30552c;
}



/* ------------------------------------------------------------------------ */
/* Home2
/* ------------------------------------------------------------------------ */

#home2 #primary-content.standalone {
	float: none;
	width: 960px;
	padding-top: 5px;
	padding-left: 0;
	padding-right: 0;
	padding-bottom: 0;
	height: 480px;
}
#home2 .quick_links {
	float: right;
	width: 600px;
	margin-left: 20px;
	font-size: .8em;
}
	#home2 .quick_links p {
		margin: 5px 0;
		padding: 0;
	}
#home2 h3 {
	text-align: center;
	color: #ff6600;
	font-size: 1.2em;
	line-height: 1;
	margin: 5px 0 10px 0;
	padding: 0;
}

#home2 .stage {
	clear: both;
	padding: 0;
}
	#home2 .stage .service {
		float: left;
		width: 239px;
		margin-right: 1px;
		height: 348px;
		position: relative;
	}	
		#home2 .stage .service img {
			display: block;
			margin: 0;
			padding: 0;
			opacity: .8;
			-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
			filter: alpha(opacity=80);
		}	
			#home2 .stage .hover img {
				opacity: 1;
				-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
				filter: alpha(opacity=100);
			}	
		#home2 .stage .service span {
			display: block;
			width: 100%;
			margin: 0;
			position: absolute;
			left: 0;
			bottom: 0;
			text-align: center;
			font-size: 1.2em;
			padding: .8em 0;
			color: #fff;
			background: rgb(66, 66, 66); /* The Fallback */
			background: rgba(0, 0, 0, 0.6);
			/*border-top: 1px solid #111111;*/
		}
		#home2 .stage .service a {
			text-decoration: none;
			color: #fff;
		}
		#home2 .stage .hover span {
			background: #000;
			padding-top: 20px;
			padding-bottom: 20px;
			-webkit-border-radius-topleft: 10px;
			-webkit-border-radius-topright: 10px;
    		-moz-border-radius-topleft: 10px;
    		-moz-border-radius-topright: 10px;
    		border-top-left-radius: 10px;
    		border-top-right-radius: 10px;
		}
	#home2 .coupons {
		clear: both;
		padding-top: 10px;
	}
	#home2 .coupons .coupon {
		float: left;
		margin: 0 10px 1em 10px;
		width: 214px; /* 240 w/margin,padding */
		padding: 3px;
		background-color: #333;
		-webkit-border-radius: 10px;
    	-moz-border-radius: 10px;
    	border-radius: 10px;
	}
	#home2 .coupons .last { margin-right: 0; }
		
		#home2 .coupons .coupon .content {
			min-height: 100px;
			border: 1px dashed #ff6600;
			margin: 0;
			padding: 10px;
			-webkit-border-radius: 10px;
    		-moz-border-radius: 10px;
    		border-radius: 10px;
		}
		#home2 .coupons .coupon .content h3 { margin: 0; font-size: 1em; }
		#home2 .coupons .coupon .content p { 
			font-size: .8em; 
			margin: .5em 0 0 0; 
			line-height: 1.4;
			color: #ccc;
			text-align: center;
		}
	#home2 .coupons .sketch {
		float: left;
		margin: 0 10px 1em 10px;
		width: 214px; /* 240 w/margin,padding */
		padding: 3px;
	}
		#home2 .coupons .sketch p img {
			display: block;
			margin: 0 auto;
		}






/* --------------------------------------------------------------------- */
/* History
/* --------------------------------------------------------------------- */

.josh_history {
	float: left;
	margin: 1em 2em 1em 0;
}




/* --------------------------------------------------------------------- */
/* Contact, Free Quote
/* --------------------------------------------------------------------- */

div.contact_info {
	clear: left;
	overflow: hidden;
	padding-top: .4em;
}
div.contact_info em { 
	display: block;
	float: left;
	margin-top: 3px;
	font-size: .8em;
	width: 30px;
}
div.contact_info p {
	float: left;
	margin: 0 0 0 50px;
	padding: 0;
}
	div.contact_info.phone p   { font-size: 1.5em; }
	div.contact_info.phone em  { margin-top: 10px; }
	

#form-quote { }
#form-quote .required { color: #ff6600; }

#form-quote fieldset {
	border: none;
	padding: 0;
	margin: 1.5em 0 0 0;
}
#form-quote legend {
	color: #cc6600;
	font-size: 1.2em;
}

#form-quote p.coaching {
	margin-top: 0;
	padding-top: 0;
	font-size: .84em;
	color: #777777;
}

#form-quote ul {
	list-style: none;
	margin-left: 0;
	padding-left: 0;
}

#form-quote ul li {
	list-style: none;
	margin: 0;
	padding: .2em 0;
	width: 95%;
	overflow: hidden;
}

#form-quote ul li label {
	display: block;
	float: left;
	width: 24%;
}
#form-quote ul li input {
	width: 65%;
}

#form-quote #quote-comments {
	width: 95%;
	height: 6em;
}

#form-quote #quote-submit {
	width: auto;
}


/* --------------------------------------------------------------------- */
/* Photo Gallery
/* --------------------------------------------------------------------- */

.gallery .coaching { margin: 0; font-size: 1.2em; }

.gallery .photo {
	padding-top: 2em;
	clear: both;
	overflow: hidden;
	width: 100%;
}
.gallery .photo h3 { margin-top: 0; }
.gallery .photo h3 em { font-size: .6em; }

.gallery .photo img { float: left; border: .5em solid #000; margin-right: 3em; }
.gallery .photo p { margin-left: 550px; }
.gallery .photo p img { float: none; display: block; margin-top: .5em; margin-right: 0; border-width: .2em; }

.gallery .photo.extras img { border-width: .2em; margin-right: 1em; }

.gallery .photo.story ul.captioned { float: right; margin-right: 0; width: 320px; }
.gallery .photo.story ul.captioned img { float: none; }
.gallery .photo.story p { margin-left: 0; margin-right: 400px; }

ul.captioned { list-style: none; margin-left: 0; padding-left: 0; }
ul.captioned li { list-style: none; margin-left: 0; padding-left: 0; font-size: .8em; font-style: italic; }

.gallery #stonework { margin-top: 2em; }
