@charset "UTF-8";
/* CSS Document */


body {
	margin: 0;
	padding: 0;
	font-family: "Lucida Grande", "Lucida Sans Unicode";
	font-size: small;
	font-size: 75%;
	line-height: 1.5em;
	color: #474D4D;
	background: #919899 url(img/hdr_bg.jpg) repeat-x top left;
	}
	
#header {
	margin: 0 auto;
	padding: 0;
	padding-top: 14px;
	height: 60px;
	width: 900px;
	}
	
#hdr_logo {
	float: right;
	margin: 0;
	padding: 0;
	border: none;
	}
	
#img_link a {
	margin: 0;
	padding: 0;
	text-decoration: none;
	}
	
.img_link a:hover, .img_link a.selected {
	text-decoration: none;
	}

#content_wrap {
	float: left;
	margin: 0;
	padding: 0;
	width: 100%;
	background: #fff url(img/content_bg2.gif) top center repeat-y;
	}
	
#content {
	margin: 0 auto;
	margin-top: 30px;
	padding: 0;
	width: 900px;
	/*border: 1px solid #f00;*/
	}
		
#leftcol {
	float: left;
	margin: 0;
	margin-right: 30px;
	padding: 0;
	padding-bottom: 35px;
	width: 130px;
	/*border: 1px solid #0F0;*/
	}
	
#maincol {
	float: left;
	margin: 0;
	padding: 35px;
	padding-top: 0;
	width: 510px;
	}
	
#flash {
	clear: both;
	margin: 0 auto;
	padding: 0;
	width: 970px;
	height: 325px;
	}
	
#flash a {
	display: block;
	margin: 0;
	padding: 0;
	text-decoration: none;
	width: 970px;
	height: 325px;
	border: none;
	}
	
#rightcol {
	float: right;
	margin: 0;
	margin-left: 28px;
	padding: 0;
	padding-bottom: 35px;
	width: 130px;
	/*border: 1px solid #0F0;*/
	}
	
#footer {
	clear: both;
	margin: 0;
	margin-bottom: 50px;
	padding: 0;
	width: 100%;
	background: url(img/footer_bg.gif) top left repeat-x;
	}
	
#footercol {
	margin: 0 auto;
	padding: 35px;
	padding-top: 15px;
	color: #FFF;
	font-size: 80%;
	width: 508px;
	}
	
p {
	margin: 0;
	margin-bottom: 10px;
	padding: 0;
	}
	
a {
	color: #8A160E;
	text-decoration: none;
	border-bottom: 1px dashed #8A160E;
	}
	
a.selected, a:hover {
	border-bottom: none;
	}
	
/*>>>>> Navigation <<<<<*/

#nav {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 110%;
	text-align: right;
	text-transform: uppercase;
	}
	
#nav li {
	clear: both;
	margin: 0;
	padding: 0;
	padding-top: 8px;
	padding-bottom: 4px;
	border-top: 2px dotted #d2d9d9;
	}
	
#nav li.top {
	padding-top: 0;
	border-top: none;
	}
	
#nav li.bottom {
	border-top: none;
	}
	
#nav li.callback {
	border-top: none;
	}
	
#nav li.logo {
	padding-top: 20px;
	padding-bottom: 20px;
	border-top: none;
	border-bottom: 2px dotted #d2d9d9;
	}
	
#nav li.validation {
	border-top: none;
	}
	
#nav li a {
	color: #003e7e;
	text-decoration: none;
	border-bottom: none;
	}
	
#nav li a.selected, #nav li a:hover{
	color: #8a160e;
	}
	
#nav li a.validate {
	margin: 0;
	padding-right: 8px;
	padding-left: 4px;
	color: #8A160E;
	text-decoration: none;
	font-size: 70%;
	background: url(img/validate_bdr.gif) center right no-repeat;
	}
	
#nav li a.validate_last {
	margin: 0;
	padding-right: 0px;
	padding-left: 4px;
	color: #8A160E;
	text-decoration: none;
	font-size: 70%;
	background: none;
	}
	
#nav li a.validate:hover, #nav li a.validate_last:hover {
	color: #d2d9d9;
	}
	
#subnav {
	margin: 0;
	margin-top: 5px;
	padding: 0;
	padding-top: 5px;
	list-style: none;
	font-size: 95%;
	text-align: right;
	text-transform: uppercase;
	border-top: 2px dotted #d2d9d9;
	}
	
#subnav li {
	clear: both;
	margin: 0;
	padding: 0;
	padding-top: 1px;
	padding-bottom: 1px;
	border-top: none;
	}
	
#subnav li a {
	margin: 0;
	padding: 0;
	color: #474D4D;
	padding-right: 16px;
	background: url(img/subnav_bg.jpg) top right no-repeat;
	}

#subnav li a:hover {
	background: url(img/subnav_bg_on.jpg) top right no-repeat;
	}
	
#subsubnav {
	margin: 5px 0;
	padding: 0;
	list-style: none;
	font-size: 75%;
	text-align: right;
	text-transform: none;
	border-bottom: 1px solid #BDCCCC;
	border-top: 1px solid #BDCCCC;
	background: url(img/subsubnav_bg.gif) top left repeat-x;
	}
	
#subsubnav li {
	clear: both;
	margin: 10px 0;
	padding: 0;
	padding-top: 1px;
	padding-bottom: 1px;
	line-height: 1.1em;
	border-top: none;
	}
	
#subsubnav li a {
	margin: 0;
	padding: 0;
	color: #919899;
	background: none;
	}
	
#subsubnav li a:hover {
	background: none;
	}
		
#ftr_nav {
	margin: 0;
	margin-bottom: 14px;
	padding: 0;
	width: auto;
	border-bottom: 1px dashed #fff;
	}

#ftr_nav li {
	margin: 0;
	margin-bottom: 8px;
	padding: 0 4px;
	display: inline;
	list-style: none;
	background: url(img/ftr_contact_bg.gif) center right no-repeat;
	}
	
#ftr_nav li a {
	margin-right: 4px;
	color: #FFF;
	border-bottom: none;
	}
	
#ftr_nav li a.selected, #ftr_nav li a:hover  {
	color: #8a160e;
	}
	
#ftr_nav li.first {
	padding-left: 0;
	}
	
#ftr_nav li.last {
	padding-right: 0;
	background: none;
	}
	
.ftr_contact {
	clear: both;
	/*float: left;*/
	margin: 0;
	padding: 0;
	/*width: 366px;*/
	}
	
.ftr_contact li {
	float: none;
	margin: 0;
	margin-left: 10px;
	padding: 0;
	padding-left: 10px;
	display: inline;
	background: url(img/ftr_contact_bg.gif) center left no-repeat;
	}
	
.ftr_contact li.location {
	margin-left: 0;
	padding-left: 0;
	/*width: 50px;*/
	background: none;
	}

.ftr_contact li.phone {
	width: auto;
	}
	
#footer img {
	clear: both;
	float: left;
	margin: 0;
	margin-top: 15px;
	padding: 0;
	border: none;
	}
	
/*>>>>> Forms <<<<<*/	

#callback {
	float: right;
	margin: 0;
	padding: 0;
	width: 126px;
	font-size: 100%;
	color: #fff;
	text-transform: none;
	}
	
#callback label {
	float: right;
	margin: 0;
	margin-top: 5px;
	margin-right: 10px;
	padding: 0;
	font-size: 95%;
	color: #474D4D;
	}
	
#callback fieldset {
	float: left;
	margin: 0;
	padding: 0;
	width: 128px;
	border: 1px solid #A6B3B3;
	background: #EBEBEB;
	}
	
#callback #callback_hdr {
	text-align: right;
	margin: 0;
	padding: 4px 10px;
	width: 108px;
	color: #fff;
	background: url(img/callback_leg_bg.gif) top left repeat-x;
	}
	
#callback input {
	float: right;	
	margin: 0 10px;
	padding: 2px;
	font-size: 100%;
	text-align: right;
	}
	
#callback #name, #callback #number, #callback #validation {
	margin: 0 10px;
	padding: 0;
	width: 100px;
	}
	
#callback img {
	margin: 0 10px;
	padding: 0;
	margin-bottom: 3px;
	}
	
/*#callback #submit {
	clear: both;
	margin: 10px;
	padding: 0;
	padding-left: 3px;
	padding-top: 18px;
	width: auto;
	height: 18px;
	overflow: hidden;
	border: none;
	background: url(img/submit.gif) top right no-repeat;
	}
	
#callback #submit:hover {
	cursor: pointer;
	background: url(img/submit_on.gif) top right no-repeat;
	}*/
	
#callback #submit {
	float: right;
	margin: 10px;
	padding: 1px;
	color: #fff;
	text-align: center;
	border: 1px solid #A6B3B3;
	background: #8A160E;
	}
	
#callback #submit:hover {
	cursor: pointer;
	background: #69110b;
	}
	
#echo {
	float: right;
	margin: 0;
	padding: 0;
	width: 126px;
	font-size: 100%;
	color: #fff;
	text-transform: none;
	}
	
#echo label {
	float: right;
	margin: 0;
	margin-top: 5px;
	margin-right: 0;
	padding: 0;
	font-size: 95%;
	color: #474D4D;
	}
	
#echo fieldset {
	float: left;
	margin: 0;
	padding: 0;
	width: 128px;
	border: 1px solid #A6B3B3;
	background: #EBEBEB;
	}
	
#echo #echo_hdr {
	text-align: right;
	margin: 0;
	padding: 4px 10px;
	width: 108px;
	color: #fff;
	background: url(img/callback_leg_bg.gif) top left repeat-x;
	}
	
#echo input {
	float: right;	
	margin: 0;
	padding: 2px;
	font-size: 100%;
	text-align: right;
	}
	
#echo #name, #echo #number, #echo #validation {
	margin: 0;
	padding: 0;
	width: 100px;
	}
	
#echo img {
	margin: 0;
	padding: 0;
	margin-bottom: 3px;
	}
	
/*#callback #submit {
	clear: both;
	margin: 10px;
	padding: 0;
	padding-left: 3px;
	padding-top: 18px;
	width: auto;
	height: 18px;
	overflow: hidden;
	border: none;
	background: url(img/submit.gif) top right no-repeat;
	}
	
#callback #submit:hover {
	cursor: pointer;
	background: url(img/submit_on.gif) top right no-repeat;
	}*/
	
#echo #submit {
	float: right;
	margin: 10px;
	margin-right: 0;
	padding: 1px;
	color: #fff;
	text-align: center;
	border: 1px solid #A6B3B3;
	background: #8A160E;
	}
	
#echo #submit:hover {
	cursor: pointer;
	background: #69110b;
	}
	
#echo {
	float: right;
	margin: 0;
	padding: 0;
	width: 126px;
	font-size: 100%;
	color: #fff;
	text-transform: none;
	}
	
#echo fieldset {
	float: left;
	margin: 0;
	padding: 0;
	width: 128px;
	border: 1px solid #A6B3B3;
	background: #EBEBEB;
	}
	
#echo #echo_hdr {
	text-align: right;
	margin: 0;
	padding: 4px 10px;
	font-size: 100%;
	width: 108px;
	color: #fff;
	background: url(img/echo_leg_bg.gif) top left repeat-x;
	}
	
#echo p {
	float: right;
	margin: 0 10px;
	margin-top: 5px;
	margin-left: 11px;
	padding: 0;
	font-size: 90%;
	color: #474D4D;
	}
		

/*>>>>> Recent Work <<<<<*/

#recent {
	clear: both;
	margin: 0;
	padding: 0;
	width: 130px;
	font-size: 100%;
	line-height: 1.45em;
	/*border: 1px solid #0F0;*/
	}
	
p.recent-section {
	margin: 0;
	margin-top: 14px;
	margin-bottom: 5px;
	padding: 0;
	}

span.section {
	margin: 0;
	padding: 1px;
	color: #FFF;
	background: #8a160e; 
	}
	
p.recent-header {
	margin: 0;
	margin-bottom: 5px;
	padding: 0;
	color: #003E7E;
	}

p.recent-intro {
	margin: 0;
	margin-bottom: 5px;
	padding: 0;
	}

p.recent-more {
	margin: 0;
	margin-top: 5px;
	padding: 0;
	padding-bottom: 4px;
	border-bottom: 2px dotted #8a160e;
	}
	
p.recent-more a {
	padding-left: 23px;
	border-bottom: none;
	background: url(img/icon_readmore.gif) center left no-repeat;
	}
	
p.recent-more a:hover {
	background: url(img/icon_readmore_on.gif) center left no-repeat;
	}

/*>>>>> Gallery <<<<<*/

#gallery {
	clear: both;
	margin: 0;
	padding: 0;
	width: 130px;
	font-size: 100%;
	line-height: 1.45em;
	/*border: 1px solid #0F0;*/
	}
	
#gallery img {
	float: left;
	margin: 0;
	margin-top: 15px;
	margin-bottom: 5px;
	padding: 10px;
	width: 108px;
	border: 1px solid #A6B3B3;
	background: #EBEBEB;
	}
	
#gallery p {
	margin: 0;
	margin-bottom: 5px;
	padding: 0;
	font-family: "Verdana";
	font-size: 90%;
	line-height: 1.3em;
	font-style: italic;
	color: #919899;
	}
	
/*>>>>> Lists <<<<<*/

	
#maincol ul {
	margin: 0;
	padding: 0;
	list-style: none;
	}
	
#maincol li {
	margin: 0;
	margin-left: 20px;
	margin-right: 50px;
	padding: 5px;
	padding-left: 20px;
	background: url(img/bullet.gif) 0 .8em no-repeat;
	border-bottom: 1px dashed #e1e1e1;
	}

/*>>>>> Case Study Buttons <<<<<*/

#case_btns ul {
	float:left;
	margin: 0;
	padding: 0;
	width: 510px;
	list-style: none;
	display: inline;
	overflow: hidden;
	/*background:  #999933;	*/
	}
	
#case_btns li {
	float: left;
	margin: 0;
	margin-right: 10px;
	margin-bottom: 10px;
	padding: 0;
	overflow: hidden;
	width: 245px;
	height: 90px;
	display: inline;
	border-bottom: none;
	background: none;
	}	
	
#case_btns li a {
	float: left;
	margin: 0;
	padding: 245px;
	overflow: hidden;
	width: 0px !important;
	width /**/:245px; /* for IE5/Win only */
	height: 90px;	
	}
	
#case_btns li a:hover {
	background-position: 0 -90px;	
	}
	
#case_retail a {
	background: url(img/btn_case_retail.jpg) top left no-repeat;	
	}
	
#case_residential a {
	background: url(img/btn_case_residential.jpg) top left no-repeat;	
	}
	
#case_commercial a {
	background: url(img/btn_case_commercial.jpg) top left no-repeat;	
	}
	
#case_sustainable a {
	background: url(img/btn_case_sustainable.jpg) top left no-repeat;	
	}

/*>>>>> Copy Styles <<<<<*/

h1 {
	margin: 0;
	margin-bottom: 25px;
	padding: 0;
	font-size: 130%;
	font-weight: lighter;
	color: #003E7E;
	}
	
h2 {
	clear: both;
	margin: 0;
	padding: 0;
	padding-bottom: 4px;
	font-size: 110%;
	font-weight: lighter;
	text-transform: uppercase;
	color: #003e7e;
	border-bottom: 2px dotted #d2d9d9;
	}
	
h3 {
	clear: both;
	margin: 0;
	margin-top: 20px;
	margin-bottom: 8px;
	padding: 0;
	font-size: 110%;
	font-weight: lighter;
	text-transform: uppercase;
	color: #8a160e;
	}
	
.quality_wrap h3 {
	clear: both;
	margin: 0;
	margin-top: 15px;
	margin-bottom: 8px;
	padding: 0;
	font-size: 110%;
	font-weight: lighter;
	text-transform: uppercase;
	color: #8a160e;
	}
	
h4 {
	clear: both;
	margin: 0;
	margin-top: 25px;
	margin-bottom: 10px;
	padding: 0;
	padding-bottom: 4px;
	font-size: 110%;
	font-weight: normal;
	color: #003E7E;
	border-bottom: 1px solid #ccc;
	}
	
.case_spec {
	float: left;
	margin: 0;
	padding: 0;
	width: 180px;
	color: #003e7e;
	font-weight: normal;
	}
		
a.arrow_link {
	clear: both;
	float: left;
	margin: 0;
	margin-top: 15px;
	padding: 0;
	padding-bottom: 4px;
	padding-left: 23px;
	border-bottom: 2px dotted #8a160e;
	background: url(img/icon_readmore.gif)  0 .2em no-repeat;
	}
	
a.arrow_link:hover {
	border-bottom: 2px dotted #8a160e;
	background: url(img/icon_readmore_on.gif)  0 .2em no-repeat;
	}
	
p.disclaimer {
	margin-top: 25px;
	padding: 0;
	font-style: italic;
	font-size: 85%;
	}
	
/*#maincol img {
	float: left;
	margin: 0;
	margin-right: 30px;
	margin-bottom: 30px;
	padding: 0;
	padding-right: 15px;
	border-right: 1px dashed #ccc;
	}*/
	
/*>>>>> Quality <<<<<*/

.quality_wrap {
	float: left;
	margin: 0;
	margin-top: 25px;
	padding: 0;
	width: 500px;
	}
	
.quality_logo {
	float: left;
	margin: 0;
	padding: 0;
	padding-top: 20px;
	text-align: center;
	width: 175px;
	}
	
.quality_copy {
	float: left;
	margin: 0;
	padding: 0;
	padding-left: 25px;
	width: 299px;
	border-left: 1px dashed #ccc;
	}

/*>>>>> Highslide <<<<<*/
	

.highslide {
	cursor: url(highslide/graphics/zoomin.cur), pointer;
    outline: none;
}
.highslide img {
	border: 2px solid gray;
}
.highslide:hover img {
	border: 2px solid white;
}

.highslide-image {
	border: 10px solid white;
}
.highslide-image-blur {
}
.highslide-caption {
    display: none;
    border: 5px solid white;
    border-top: none;
    padding: 5px;
    background-color: white;
}
.highslide-loading {
    display: block;
	color: white;
	font-size: 80%;
	font-weight: bold;
	text-transform: uppercase;
    text-decoration: none;
	padding: 3px;
	border-top: 1px solid white;
	border-bottom: 1px solid white;
    background-color: black;
    /*
    padding-left: 22px;
    background-image: url(highslide/graphics/loader.gif);
    background-repeat: no-repeat;
    background-position: 3px 1px;
    */
}
a.highslide-credits,
a.highslide-credits i {
    padding: 2px;
    color: silver;
    text-decoration: none;
	font-size: 90%;
}
a.highslide-credits:hover,
a.highslide-credits:hover i {
    color: white;
    background-color: gray;
}

.highslide-display-block {
    display: block;
}
.highslide-display-none {
    display: none;
}


/*>>>>> Web improvements <<<<<*/

body {
	background: #919899 url(img/hdr_bg2.jpg) repeat-x top left;
	}

h1 {
	font-size: 160%;
	line-height: 1.3em;
	}
	
h2, h3, .quality_wrap h3, h4 {
	font-size: 120%;
	line-height: 1.3em;
	}
	
#recent h2 {
	font-size: 110%;
}

#maincol h2 {
	margin-top: 20px;
	margin-bottom: 8px;
	font-size: 130%;
	font-weight: lighter;
	text-transform: none;
	border-bottom: none;
	}

#header {
	margin: 0 auto;
	padding: 0;
	height: 50px;
}

.hdr_contact {
	float:left;
	margin: 0;
	margin-top: 8px;
	padding: 0;
	color:#fff;
	font-size: 80%;
	line-height: 1.5em;
}

.hdr_contact li {
	list-style: none;
}

#flash-wrap {
	padding-top: 8px;
	background:url(img/flash_bg.jpg) top left repeat-x;
	height: 325px;
	width: 100%;
}

#recent-cases {
	clear: both;
	float: left;
	width: 510px;
	/*background: #0F0;*/
}

#recent-cases div {
	float: left;
	margin: 0;
	margin-right: 10px;
	margin-bottom: 10px;
	padding: 0;
	width:160px;
	list-style: none;
	background: none;
}

#recent-cases div img {
	float:left;
	margin:15px 0 15px 0;
	padding:10px;
	width:140px;
	height: 97px;
	background:none repeat scroll 0 0 #EBEBEB;
	border:1px solid #A6B3B3;
}

#recent-cases div .recent-header {
	font-weight: bold;
	}

#recent-cases div .case_spec {
	padding-right: 5px;
	width: auto;
	}
	
#maincol img {
	float:inherit;
	margin: 15px;
	padding:10px;
	width:auto;
	height:auto;
	background:#EBEBEB;
	border:1px solid #A6B3B3;
}

#maincol .quality_logo img {
	float:none;
	margin: 0;
	padding:0;
	width: auto;
	height:auto;
	background:none;
	border:none;
}

.left {
	float:left;
}

.right {
	float:right;
}











