@charset "UTF-8";
/* CSS Document */
html {
	height: 100%;
}
body {
	background: url(../images/bg-rep-x.jpg) repeat-x #000;
	color:#FFF;
	font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
	font-size:0.8em;
	line-height:1.2;
	height:100%;
}
p {margin:8px 0}
h1 {}
h2 { font-size:1.1em; margin:10px 0; border-bottom:1px dotted #555;  text-shadow:1px 1px 3px #000;}
h3 { font-size:1.3em; margin:10px 0; border-bottom:1px dotted #ddd;  text-shadow:1px 1px 3px #444; }
h2.calculon {background:url(../images/calc.png) no-repeat top right; padding:20px 0 0}
a { color:#ff9933;}
a:hover { color:#cc6600; text-decoration:none; text-shadow:1px 1px 1px #000;}
.required { color:#ff9933;}
.em { font-style:italic;}
.bold {font-weight:bold;}
.large {font-size:1.3em;}
/*****************************************************/
/**************** Page Construction ******************/
/*****************************************************/

#wrapper {
	width:850px;
	margin:0px auto;
	background:url(../images/wrapper-bg.png) repeat-y top left;
	margin: 0 auto -133px;
	position:relative;
	text-align: left;
	min-height: 100%;
	height: auto !important;
	height: 100%;
	padding:0;
}
#headerContainer {
	width:850px;
	height:125px;
	margin:0;
}
#headerContainer #logo {
	width:540px;
	height:110px;
	margin:0;
	float:left;
}
#headerContainer .house {
	width:277px;
	height:123px;
	margin:0;
	float:right;
}
#midContainer {
	width:850px;
	height:298px;
	margin:0;
	position:relative;
}

.mobilehead {
	display: none;
}



/**************** Menu Construction ******************/
#midContainer #menu {
	width:229px;
	height:285px;
	float:left;
	display:inline;
	margin:0 0 0 5px;
	padding:13px 0 0 0;
	background:url(../images/menu-mid.jpg) no-repeat;
}
#midContainer #menu ul {
	list-style-type:none;
	display:inline;
}
#midContainer #menu li {
	width:229px;
	height:46px;
	border:none;
	float:left;
	margin:0px;
	padding:0px;
	cursor:pointer;
}
#midContainer #menu li a {
	border:none;
}
#midContainer #menu .home a {
	background:url(../images/menu/menu-1.jpg) 0 0 no-repeat;
	width:229px;
	height:46px;
	display:block;
	padding:0px;
	margin-top:1px;
	text-decoration:none;
}
#midContainer #menu .projects a {
	background:url(../images/menu/menu-2.jpg) 0 0 no-repeat;
	width:229px;
	height:46px;
	display:block;
	padding:0px;
	text-decoration:none;
}
#midContainer #menu .services a {
	background:url(../images/menu/menu-3.jpg) 0 0 no-repeat;
	width:229px;
	height:46px;
	display:block;
	padding:0px;
	text-decoration:none;
}
#midContainer #menu .process a {
	background:url(../images/menu/menu-4.jpg) 0 0 no-repeat;
	width:229px;
	height:46px;
	display:block;
	padding:0px;
	text-decoration:none;
}
#midContainer #menu .builders a {
	background:url(../images/menu/menu-5.jpg) 0 0 no-repeat;
	width:229px;
	height:46px;
	display:block;
	padding:0px;
	text-decoration:none;
}
#midContainer #menu .contact a {
	background:url(../images/menu/menu-6.jpg) 0 0 no-repeat;
	width:229px;
	height:46px;
	display:block;
	padding:0px;
	text-decoration:none;
}
#midContainer #menu .active a {
	background-position:0 -46px !important;
}
#midContainer #rightContent {
	overflow:hidden;
	width:613px;
	height:298px;
	overflow:hidden;
	float:left;
	display:inline;
	margin:0;
	background:url(../images/main-mid.jpg) no-repeat;
}
#midContainer #rightContent #homeslider{
	width:610px;
	height:267px;
	display:block;
	margin:17px 0 0 1px;
}
#midContainer .plans {
	width:82px;
	height:149px;
	position:absolute;
	top:98px;
	right:-78px;
	background:url(../images/main-mid-right.png) no-repeat;
}
/**************** Main Container ******************/
#mainContainer {
	width:850px;
	height:auto;
	margin:3px 0 0 0;
	background:url(../images/main-lower.jpg) no-repeat;
}
#mainContent {
	width:590px;
	padding:10px;
	float:right;
}
#mainContent ul{
	list-style-type:circle;
	margin:0 0 0 20px;
}
#sideBar {
	width:200px;
	padding:10px;
	float:left;
}
#sideBar .news-break{
	border-bottom:1px dotted #555;
	margin:20px 0;
}
#sideBar a{
	color:#888;
}
#sideBar a:hover{
	color:#ff9933;
}
#footerContainer {
	width:100%;
	height:133px;
	position:relative;
	background:url(../images/footer-rep.png) bottom repeat-x;
}
#footerContainer2 {
	position:relative;
	color:#333;
	width:840px;
	height:133px;
	margin:0 auto;
	padding:0;
	font-size:0.95em;
	background:url(../images/footer-bg.jpg) no-repeat top center;
}
#footerContainer a {
	color:#333;
}
#footerContainer a:hover {
	text-decoration:none
}
#footerContainer2 .logos {
	float:right;
	width:505px;
	height:63px;
	margin:17px 0 0 0;
}
#footerContainer2 .logos img{
	margin:0;
	padding:0;
}
#footerContainer2 .logos a{
	margin:0;
	padding:0;
}
#footerContainer2 .main {
	width:520px;
	height:30px;
	float:right;
	margin:0;
}
#footerContainer2 .main p{
	margin:0 15px 0 0;
}
#footerContainer2 .main .footer-junk {
	width:338px;
	height:151px;
	position:absolute;
	bottom:-11px;
	left:-60px;
	background:url(../images/footer-junk.png);
}
#footerContainer2 .main p {
	text-align:right;
	color:#FFF;
	font-size:0.85em;
	padding:20px 0 0 0;
}
.clearfloat { /* this class should be placed on a div or break element and should be the final element before the close of a container that should fully contain a float */
	clear:both;
	height:0;
	font-size: 1px;
	line-height: 0px;
	margin: 0px;
	padding: 0px;
}
/* contact form */
.text form {
	width: 600px;
}
.text fieldset {
	margin: 0px;
	padding: 8px 0;
}
.orange {
	background-color: #ffd895!important;
}
.text form p {
	position: relative;
	width: 100%;
}
.text label {
	float: left;
	width: 10em;
}
.text input {
	border:1px dotted #555;
	padding:5px;
	width:225px;
	height:20px;
	margin:5px 0;
	background:url(../images/input-bg.jpg) no-repeat;
	color:#fff;
}
.text select {
	margin:5px 0;
}
.text .small-input {
	width: 150px;
}
.text .shortinput {
	width: 50px;
}
.text input.radio, input.checkbox {
	width: auto;
}
.text input.submit {
	width: 100px;
	height:30px;
	margin-left: 129px;
}
.text input.submit2 {
	width: 100px;
	height:30px;
	margin-left: 5px;
}
.text input:focus {
	background:url(../images/input-bg-sel.jpg) no-repeat;
}
.text textarea:focus {
	background:none;
}
.text input.radio {
	float: left;
	margin-right: 1em;
}
.text textarea {
	width: 225px;
	height: 100px;
	font-family:inherit;
	font-size:0.9em;
	color:#fff;
	padding:5px;
	margin:3px 0;
	border:1px dotted #555;
	background:none;
}
.jcarousel-skin-ie7 .jcarousel-container-horizontal {
	width: 610px;
	overflow:hidden;
}
.jcarousel-skin-ie7 .jcarousel-container-vertical {
	width: 610px;
	height: 267px;
	margin:17px 0 0 1px;
	overflow:hidden;
}
.jcarousel-skin-ie7 .jcarousel-clip-vertical {
	width:  610px;
	height: 267px;
	overflow:hidden;
}
.jcarousel-skin-ie7 .jcarousel-item {
	width: 610px;
	height: 267px;
	overflow:hidden;
}

#mainContent .theprocess{
	width:590px;
	height:auto;
	background:url(../images/process-rep.jpg) repeat-y;
	margin:3px 0;
}
#mainContent .theprocess .left{
	float:left;
	width:65px;
	padding:5px 0 0 10px;
}
#mainContent .theprocess .right{
	float:left;
	width:500px;
}
#mainContent .theprocess .right p{
	color:#000;
	margin-bottom:20px;
}
#mainContent .builders{
	width:288px;
	height:auto;
	background:url(../images/builders-rep.jpg) repeat-y;
	margin:3px;
	float:left;
}
#mainContent .builders .item{
	padding:5px 10px;
	line-height:1.3em;
}
#mainContent .builders .item h3{
	font-size:1.1em!important;
}
/* -- GALLERY -- */
#mainContent .thumb{
	width:190px;
	height:125px;
	float:left;	
}
#mainContent .side{
	margin:5px 0;
}
#mainContent .mid{
	margin:5px 10px;
}

.mobilehead {
	display: none;
}

#mobilemenu {
	display: none;
}

#mobilefooter {
	display: none;
}

/*-------------------------------------------------------------------------mobile--------------------------------------------------------------------------*/

@media only screen and (max-width: 767px) {
	
	#headerContainer {
		display: none;
	}
	
	.mobilehead {
		display: inherit;
		width: 100%;
		height: auto;
		text-align: center;
	}

	#wrapper {
		width: 100%;
		margin: 0 auto;
	}
	
	#midContainer {
		width: 100%;
		height: auto;
	}
	
	#midContainer #menu {
		display: none;
	}
	
	#midContainer #rightContent {
		width: 100%;
		height: auto;
		max-height: 250px;
		margin-bottom: 20px;
	}
	
	#mobilemenu {
		display: inherit;
	}

	#mobilemenu li{
		background: url(../images/menu-bg.jpg) repeat-x;
		width: 100%;
		height: 42px;
		text-align: center;
		color: #ffffff;
		line-height: 42px;
	}
	
	#mobilemenu li a{
		text-decoration: none;
		color: #ffffff;
	}
	
	#mainContent {
		float: none;
		width: 96%;
		padding: 5px 2%;
	}
	
	#sideBar {
		width: 96%;
		padding: 2px 2%;
		float: none;
		border-top: 2px solid #fd7a0e;
	}

	#footerContainer {
		display: none;
	}
	
	#mobilefooter {
		width: 100%;
		height: auto;
		background: #f78f1e;
		display: inherit;
		color: #fff;
    	font-size: 0.85em;
		line-height: 30px;
		padding-bottom: 20px;
		text-align: center;
	}
	
	#mobilefooter img{
		width: 100%;
	}
	
	#mobilefooter a {
		color: #ffffff;
		padding: 5px 0;
	}
	
	#mainContainer {
		width: 100%;
	}
	
	#mainContent .mid {
    	margin: 5px 0;
	}
	
	#mainContent .thumb {
    	float: none;
	}
	
	#mainContent .theprocess {
		width: 100%;
		background: url("../images/process-rep-s.jpg") repeat;
	}
	
	#mainContent .theprocess .left {
		padding: 5px 0 0 2% !important;
		width: 10% !important;
	}
	
	#mainContent .theprocess .right {
		width: 88% !important;
	}
	
	.builders {
		background: url("../images/builders-rep.jpg") repeat;
		width: 100%;
		float: none;
		margin: 3px 0;
	}
	
	.text form {
    	width: 100%;
	}
	
	.text input.submit {
		margin-left: 0;
	}
	
	#homeslider {
		position: relative;
    	padding-bottom: 44%;
    	height: 0;
    	overflow: hidden;
	}
	
	#midContainer #rightContent #homeslider {
		height: 0;
		width: 100%;
	}
	
	#homeslider iframe {
    	position: absolute;
    	top:0;
    	left: 0;
    	width: 100%;
    	height: 100%;
	}

	#midContainer .plans {
		height: auto;
		right: 0;
	}

	
}