@charset "utf-8";

/*
 * Default formatting
 */

html body {
    width: 100%;
    margin: 0px 0px;
}

body
{
	border-top:1px solid #FFFFFF;
    font: 12px Verdana, Geneva, Tahoma, sans-serif;
    color: #666666;
    background: #D8D7D5 url(/asset/images/main-bg.jpg) 0 0 repeat-x;
}

h1, h2, h3, h4, h5, h6, h7, p
{
    margin: 0px;
    padding: 5px 0px;
}
h1 {
	margin-bottom:5px;
	padding:5px 0 10px;
    border-bottom:2px solid #DAD9D8;
    font-size:22px;
    font-weight:normal;
    color:#11B349;
}
h2 {
    font-size: 15px;
    color: #666;
    line-height: 24px;
    font-weight: bold;
}
h2 a {
	text-decoration:none;
    color: #666;
}
h2 a:hover {
    color: #666;
}
h3 { 
    font-size: 14px;
}

a {
    color: #666;
    text-decoration: underline;
}

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

img {
    border: 0px;
}

#wrapper { width:960px; margin:0 auto; }

#header { position:relative; z-index:100; height:110px; margin-bottom:1px; }

#logo {
	position:absolute;
	z-index:50;
	top:0;
	left:10px;
	width:245px; /* 265px */
	height:120px; /* 130px */
	padding:0 10px 10px;
	background:url(/asset/images/logo-bg.png) 0 0 no-repeat;
}

	#logo a { display:block; width:245px; height:120px; text-align:center; }
		#logo a img { margin-top:10px; }
	
#navigation {
	position:absolute;
	bottom:0;
	left:0;
	width:960px;
	height:40px;
	background:#058F29 url(/asset/images/nav-bg.png) 0 0 repeat-x;
}
	
	#navigation ul {
		float:right;
		list-style:none;
		margin:0 10px;
		padding:0;
	}
	
		#navigation ul li { position:relative; float:left; list-style:none; }
		
		#navigation ul li a {
			display:block;
			margin-right:1px;
			padding:0 10px;
			line-height:40px;
			text-transform:uppercase;
			text-decoration:none;
			color:#FFFFFF;
		}
		
		#navigation ul li.active a, #navigation ul li a:hover {
			background:#06942E;
		}
		
		#navigation ul ul {
			display:none;
			position:absolute;
			top:40px;
			left:0;
			float:none;
			width:140px;
			margin:0;
			padding:0;
		}
		
		#navigation ul li.hover ul { display:block; }
		
		#navigation ul ul li { float:none; }
		
		#navigation ul li.active ul li a, #navigation ul ul li a { border-bottom:1px solid #B3B3B3; background:#999999; color:#FFFFFF; }
		
		#navigation ul li ul li.active a, #navigation ul li ul li a:hover { border-bottom:1px solid #333333; background:#333333; }

#content {
    width:960px;
    background:#FFFFFF url(/asset/images/content-bg.png) 0 100% repeat-x;
}

#main { float:left; width:650px; margin:15px 10px 15px; }

#main.gallery,
#main.projects,
#main.project-detail,
#main.contact { width:940px; }

body.home #main { width:610px; margin-top:0; }

#banners { position:relative; width:960px; height:360px; overflow:hidden; }
#banners:after {
	content:'';
	display:block;
	position:absolute;
	z-index:50;
	bottom:0;
	left:0;
	width:960px;
	height:65px;
	background:url(/asset/images/banner-shadow.png) 0 0 repeat-x;
}

#banners .banner .text {
	position:absolute;
	top:30px;
	left:0;
	color:#FFFFFF;
}

#banners .banner .text span {
	display:block;
	margin-bottom:1px;
	padding:5px 30px 5px 20px;
	font-family:Arial, sans-serif;
	font-size:1.833em;
	color:#FFFFFF;
	background:rgba(0,0,0,0.45);
	-webkit-border-top-right-radius:5px;
	-webkit-border-bottom-right-radius:5px;
	-moz-border-radius-topright:5px;
	-moz-border-radius-bottomright:5px;
	border-top-right-radius:5px;
	border-bottom-right-radius:5px;
}

#pager {
	position:absolute;
	z-index:99;
	right:0;
	bottom:0;
	width:960px;
	height:20px;
	text-align:center;
}

#pager a {
	display:inline-block;
	width:8px;
	height:8px;
	margin-left:5px;
	overflow:hidden;
	color:#FFFFFF;
	background:#FFFFFF;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
}
#pager a.activeSlide { color:#0DB14B; background:#0DB14B; }

#sidebar { float:right; width:250px; margin:15px 12px 0 0; }

body.home #sidebar { width:310px; margin:0 12px 0 0; }

#footer {
	width:960px;
	margin:0 auto;
	font-size:0.833em;
	color:#999999;
	background:#FFFFFF url(/asset/images/footer-bg.png) 0 0 repeat-x;
}

	#footer .wrapper { width:940px; margin:0 auto; padding:10px 0 30px; border-top:2px solid #DAD9D8; }

	#footer .left { float:left; }
	#footer .right { float:right; }
	
	#footer a { color:#999999; }
		#footer a:hover { color:#333333; }

/** Home Page **/
#actions { position:relative; width:960px; height:130px; }

#actions .action {
	float:left;
	width:305px;
	height:120px;
	margin-left:11px;
	padding-bottom:10px;
	background:url(/asset/images/home-c2a-bg.png) 0 0 no-repeat;
}

	#actions .action:hover, #actions .action.hover { background-position:-306px 0; }

#actions .action .image { float:left; width:90px; }
	#actions .action .image a { display:block; width:90px; padding:7px 15px 13px 15px; }
	#actions .action .image img { border:5px solid #FFFFFF; }

#actions .action .text { float:right; width:185px; color:#FFFFFF; }
	#actions .action .text a { display:block; text-decoration:none; color:#FFFFFF; }
	#actions .action .text h2 { padding:0; font-weight:normal; text-transform:uppercase; color:#FFFFFF; }
		#actions .action .text h2 a { padding:10px 7px 0 0; }
	
	#actions .action .text p a { padding:0 7px 10px 0; }

#sidebar .gallery {
	width:170px; /* 305px */
	height:160px; /* 160px */
	padding:30px 120px 0 20px;
	color:#FFFFFF;
	background:url(/asset/images/gallery-bg.png) 0 0 no-repeat;
}
	#sidebar .gallery h2 { padding:0; font-weight:normal; text-transform:uppercase; color:#FFFFFF; }
	
	#sidebar .gallery p.view { padding:0; }
		#sidebar .gallery p.view a { padding-left:25px; text-transform:lowercase; color:#B3B3B3; background:url(/asset/images/gallery-link.png) 0 0 no-repeat; }
			#sidebar .gallery p.view a:hover { color:#FFFFFF; }

#sidebar .button {
	display:block;
	padding:10px;
	margin-bottom:20px;
	font-size:1.167em;
	text-transform:uppercase;
	text-decoration:none;
	color:#FFFFFF;
	background:#0DB14B url(/asset/images/sidebar-link-bg.png) 0 100% no-repeat;
}

/** Recent Projects **/
#projects { margin:15px 0; }

	#projects .project {
		position:relative;
		float:left;
		width:300px;
		height:200px;
		margin:0 20px 15px 0;
	}
	
	#projects .project.row-last,
	#projects .project:last-child { margin-right:0; }
	
	#projects .project .title {
		position:absolute;
		bottom:0;
		left:0;
		width:290px; /* 300px */
		height:40px;
		padding-left:10px;
		font-family:Arial, "Helvetica Neue", Helvetica, sans-serif;
		font-size:1.250em;
		line-height:40px;
		text-transform:uppercase;
		color:#FFFFFF;
		background:url(/asset/images/recent-projects-link.png) 0 0 no-repeat;
	}
	
	#projects .project:hover .title { background-position:-0 -40px; }
	
	#projects .project .title a { display:block; text-decoration:none; color:#FFFFFF; }

#main.detail { float:left; width:415px; }

#main.detail #back {
	display:block;
	width:195px;
	height:40px;
	margin-top:10px;
	text-align:center;
	font-family:Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-size:1.083em;
	line-height:40px;
	text-transform:uppercase;
	text-decoration:none;
	color:#FFFFFF;
	background:#0DB14B url(/asset/images/details-back-link.png) 0 100% no-repeat;
}

#main .project-details { font-size:1.250em; }
	#main .project-details strong { color:#333333; }

#photos { float:right; width:500px; margin:60px 15px 20px 0; }

#photos #slideshow { position:relative; width:500px; height:330px; margin-bottom:10px; }
	#photos #slideshow .decal {
		position:absolute;
		z-index:20;
		bottom:0;
		left:0;
		width:500px;
		height:9px;
		background:url(/asset/images/project-detail-decal.png) 0 0 no-repeat;
	}

#photos #thumbs { margin:0; padding:0; list-style:none; }
	#photos #thumbs li { float:left; }
	#photos #thumbs li img { display:block; margin-right:1px; border:2px solid #EEEEEE; }
		#photos #thumbs img:hover { border-color:#DAD9D8; }

/** Project Gallery Page **/
#crumbs { height:20px; margin:0; padding:10px 0 0; list-style:none; }
	#crumbs .selected { text-decoration:none; color:#333; }

#sub-galleries { margin-top:20px; }

#sub-galleries .sub-gallery { float:left; width:250px; height:250px; margin:0 0 15px 45px; }
	#sub-galleries .sub-gallery.row-start { clear:left; }

#sub-galleries .sub-gallery .image { width:250px; height:190px; border:4px solid #CCCCCC; overflow:hidden; }

#gallery-html { margin-top:20px; }

#gallery-html .gallery-image { float:left; width:240px; height:250px; margin:0 0 15px 55px; }
	#gallery-html .gallery-image a { display:block; height:180px; border:4px solid #CCCCCC; overflow:hidden; background-color:#FCFCFC; }


/** Contact Page **/

#contact-us-text { float:left; width:240px; margin-right:10px; }
#contact-us-form { float:left; width:420px; margin-right:10px; }
	#contact-us-form label.required { padding-right:10px; background:url(/asset/images/required.png) 100% 0 no-repeat; }
#contact-us-map { float:right; width:260px; }
	#contact-us-map a { font-size:0.833em; }

#map { width:260px; height:300px; }

/*
 * Search Page
 */

.Defaulted { }


#search-results {
    
}
#search-results form {
    font-weight: bold;
}

#search-results div {
    padding: 10px 10px 10px 10px;
    border-top: 1px solid #BBBBBB;
    border-bottom: 1px solid #BBBBBB;
    margin: 10px 0px 10px 0px;
    background-color: #EEEEEE;
}

#search-results div span.keyword {
    font-style: italic; 
}

#search-results ul li p {
    padding-left: 10px;
}

ul.search span.keyword {
    background-color: #FFFFAA;
}

/*
 * Hax (don't look here)
 */
 
.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%;
}