/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #3a3a3a;
}

html{
	background: #dedbda;	
}

body {
    font-size: 14px;
    line-height: 1.6;
	font-family: "Trebuchet MS", Verdana, sans-serif;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

img {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.responsive{
	width: 100% !important;
	height: auto !important;	
}

a{
	color: #3a3a3a;
}

/* ==========================================================================
   Chrome Frame prompt
   ========================================================================== */

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

#bar-preview{
	width:100%; 
	height:25px;
	padding:5px 0 0 0;
	font-size:12px;
	font-weight:bold;
	color:#FFF;
	text-align:center;
	background:#000;
}


/* 12 column lay-out
   First apply a natural box layout model to all elements
   Create row with clearfix */

*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
.row:before, .row:after { content: " "; display: table; }
.row:after { clear: both; }
.lt-ie8 .row { zoom: 1; }


.row{
	clear:both;
    margin:0 auto;
    max-width:1300px;		
}

.span-1, .span-2, .span-3, .span-4, .span-5, .span-6, .span-7, .span-8, .span-9, .span-10, .span-11, .span-12{
	float:left; 
	position:relative;
	padding:0 10px;
}

.span-1  { width:8.33%; }
.span-2  { width:16.66%; }
.span-3  { width:25%; }
.span-4  { width:33.33%; }
.span-5  { width:41.66%; }
.span-6  { width:50%; }
.span-7  { width:58.33%; }
.span-8  { width:66.66%; }
.span-9  { width:75%; }
.span-10 { width:83.33%; }
.span-11 { width:91.66%; }
.span-12 { width:100%; }


/* Base styles */
p, ul, ol, h1, h2, h3, h4, h5, h6{
	padding:0;
	margin:0 0 20px 0;
}
h1, h2, h3, h4, h5, h6{
	font-family:"Trebuchet MS", Verdana, sans-serif
	font-size:1em;
}
h1{
	color:#40a734;
	font-size:30px;
	font-weight: normal;
}
h2{
	color:#40a734;
	font-size:20px;
	margin-bottom:0;
	font-weight: normal;
}
h3{
	color:#40a734;
	font-size:16px;
	margin-bottom:0;
	font-weight: normal;
}
ul, ol{
	list-style:none;	
}
#content li, #left li{
	background: url('/img/bullet.gif') 0 6px no-repeat;
	padding-left: 15px;	
}
address{
	font-style:normal;	
}
img{
	display:block;	
}
/* Formbuilder form */
form.frm-bldr {
    margin-top: 20px;
}
form.frm-bldr li {
    background: none repeat scroll 0 0 rgba(0, 0, 0, 0);
    padding: 0;
}
form.frm-bldr label, form.frm-bldr .false_label, .fake-label {
    display: inline-block;
    min-width: 150px;
}
form.frm-bldr input[type="text"], form.frm-bldr select {
    margin-bottom: 7px;
    min-width: 200px;
}
form.frm-bldr .multi-row {
    display: inline-block;
    margin: 3px 0 7px;
    min-width: 200px;
}
form.frm-bldr .multi-row span.row {
    display: inline-block;
    margin-right: 10px;
    min-width: 200px;
}
form.frm-bldr .radio label {
    display: inline;
    position: relative;
    top: -1px;
}
form.frm-bldr .radio input {
    margin-right: 7px;
}
form.frm-bldr div.alert {
    float: left;
    margin-bottom: 7px;
}
form.frm-bldr .alert input[type="text"] {
    border-color: #CF4E2B;
    margin-bottom: 0;
}
form.frm-bldr .alert span {
    clear: left;
    color: #CF4E2B;
    display: block;
    width: auto;
}

input[type="checkbox"]{
	position:relative;
	top: 4px;
}


/* Cycle banner slideshow */ 
.cycle{
	width:100%;	
}
.cycle .slide{
	display:none;
	width:100%;	
}
.cycle .slide.first{
	display:block;	
}

/* Navigation base styles */
nav ul{
	margin-bottom:0;	
}
nav.horizontal li{
	float:left;
	position:relative;
	padding:0;
	background:none;
}
nav.horizontal a{
	display:block;
	padding:11px 14px 10px;
	text-decoration:none;
}
nav.horizontal li ul{
	display:none;
	position:absolute;
	min-width:100%;
	left:0;
	margin:0;
	background:#e5e5e5;
	z-index:101;
}
nav.horizontal li:hover>ul{
	display:block;
}
nav.horizontal li ul li{
	float:none;
}
nav.horizontal li ul li ul{
	left:100%;
	top:0;
}

ul#search-results li{
	background:none;
	padding:0;	
}

/* Block styles */

header,
#main{
	background: #FFF;
}

header,
#main,
footer{
	clear:both;	
}
#logo{
	padding: 23px 5px 20px 28px;
}

#info{
	float: right;
    margin-right: 35px;
    width: 140px;
	padding-top: 27px;
}

#info p{
	color: #959595;
    font-size: 12px;
	line-height: 1.2;
}

#info span{
	display: block;
    font-size: 20px;
}

#main-nav{
	clear:both;
	background:#594c48;
	z-index: 100;
	position:relative;
}

#main-nav ul{
	margin-left: 6px;
}

#main-nav a{
	font-family: Arial, Helvetica, sans-serif;
	color: #FFF;
	font-size: 13px;
	text-transform:uppercase;
}

#main-nav a:hover, #main-nav a.active{
	background:#473d3a;
}

#main-nav-switch {
    background: url("/img/menu-switch.png") no-repeat scroll 0 6px;
    clear: right;
    color: #FFF;
    cursor: pointer;
    display: none;
    height: 35px;
    margin: 4px 20px;
    padding: 6px 35px;
    position: relative;
    width: 95px;
    z-index: 10;
}


.green-overlay{
	background: url('/img/green-overlay.jpg') repeat-x #b2d6a6;	
}

.text-width{
	max-width:600px;	
}

.main-img{
	position:relative;
	max-width:490px;
}

#leaves{
	display: block;
    left: -5px;
    position: absolute;
    top: 0;
	width:100%;
}

#home #leaves{
	width: 75%;
}

.circle{
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	overflow:hidden;
	border: 1px solid #e5e5e5;
	position:relative;
}

.circle img{
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}

#top{
	padding-bottom: 10px;
}

#top .circle{
	margin: -23px 12px 25px;
}

#top h1, #top h2, #top h3{
	text-transform: uppercase;
	color: #FFF;
	border-bottom: 1px solid rgba(255,255,255,0.4);
	text-shadow: 1px 1px 1px rgba(0,0,0,.4);
	padding-bottom: 10px;
	margin-bottom: 10px;
	line-height:1.2;
}

#top h2, #top h3{
	font-size: 20px;
	padding-bottom: 10px;	
	line-height:1.6;
}

#top h3{
	font-size: 16px;	
	padding-bottom: 5px;
	margin-bottom: 5px;
}

#top #content{
	padding-right: 18px;
}

#home #top #content{
	padding-right: 10px;	
}

#top a:hover{
	text-decoration: none;
}

#home #top .circle {
    position: relative;
	margin:0;
}

#top-content-container #content{
	float: right;	
	width: 66.66%;
}

#top-content-container #afb-1{
	float: left;	
	width: 33.33%;
	padding: 0 20px;
}

#content iframe {
	max-width: 100%;
}



#bi-1 {
	left: 12%;
    position: relative;
    top: -36px;
    width: 43%;
    z-index: 5;
	margin-bottom:10px;
}
#bi-2 {
    left: 51%;
    position: absolute;
    top: 6%;
    width: 26%;
    z-index: 3;
}
#bi-3 {
    position: absolute;
    right: -5%;
    top: 12%;
    width: 33%;
    z-index: 4;
}
 
#news-widget, #newsletter{
	padding-left: 15px;
	margin-top:40px;
}

#newsletter p{
	font-size: 12px;
    color: #3a3a3a;
    margin-bottom: 7px;
}

#newsletter input{
	border:1px solid #aaaaaa;  
	margin-bottom: 6px;  
	padding: 4px 7px;
	width:100%;
	max-width:250px;
}

#newsletter button{
	background: #594c48;
    color: #FFF;
	border: none;
	padding: 5px 10px;
	display: block;
	margin-bottom: 10px;
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
}

.news-list{
	margin-top: 8px;
}

.news-list li{
	background: url('/img/bullet.gif') no-repeat 2px 8px;
	padding-left: 20px;
}

.news-list a{
	text-decoration: none;
}

.news-list a:hover{
	text-decoration: underline !important;
}
	
#widget-title{
	background: #40a734;
	padding: 5px 0;
}

#widget-title h2{
	text-align: center;
	color: #FFF;
	font-size: 20px;
	text-transform: uppercase;
}



.project-list li{
	/*float: left;*/
	display:inline-block;
	vertical-align: top;
	width: 25%;
	text-align: center;
	padding: 0;
	background: none;
}

.project-list li img{
	padding-bottom: 10px;
}

.project-list li a{
	text-decoration: none;	
	font-family: Arial, Helvetica, sans-serif;
	color: #594c48;
	font-size: 12px;
	line-height: 1.4;
	display:block;
	padding-bottom: 10px;
}

.project-list span{
	padding: 0 15px;
	display:block;
	min-height: 50px;
}

.project-list li a:hover img, #project-detail-list li a:hover img{
	opacity: 0.8;
}

.project-list li a:hover{
	color:#847c79;
}
	
#left{	
	padding-top: 35px;
	padding-left: 35px;
}

#left a{	
	color: #1f8dcd;
}

#left a:hover{	
	text-decoration: none;
}

#right{
	padding: 20px 10px;
}

#right img{
	margin-bottom: 10px;
}

#breadcrumb{
	color: #FFF;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	margin-top: 54px;
	margin-bottom: 10px;
}

#breadcrumb a{
	color: #FFF;
	text-decoration: none;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
}

#breadcrumb a:after {
    content: " > ";
    padding: 0 1px 0 2px;
}

#wide #breadcrumb, #detail #breadcrumb{
	margin-top: 15px;
}

#wide #top .span-12{
	padding: 0 10px;
}

#cta p{
	display: block;
	background: #6fb07f;
	padding: 8px 20px;
	border-radius: 10px 10px 10px 10px;
	-webkit-border-radius: 10px 10px 10px 10px;
	-moz-border-radius: 10px 10px 10px 10px;
	color: #FFF;
	line-height: 1.2;
	font-size: 12px;
	width: 180px;
	text-align:center;
	float: left;
	margin-top: 25px;
} 

#cta span, #cta strong{
	display: block;
	font-size: 20px;
	padding: 2px 0;
	font-weight:normal;
}

#cta a{
	color: #FFF;
	text-decoration: none;
}

#cta a:hover{
	text-decoration: underline;
}

#cta img{
	float: left;
}


#project-detail-list{
	margin: 20px -10px;
	overflow:hidden;
	position: relative;
}

#project-detail-list li{
	width: 25%;
	float: left;
	display: block;
	padding: 0 10px 20px;
}

footer{
	background: url('/img/footer-bg.jpg') 0 0 repeat-x;
	padding: 165px 0 10px 0;
	z-index: 10;	
}

footer .span-6{
	margin-bottom: 60px;
}

#van{
	float: left;
	padding-right: 35px;
	padding-left: 5px;
}

address{
	color: #594c48;
	line-height: 1.4;
	float: left;
}

address strong{
	color: #40a734;
	font-size: 16px;
}

address a{
	background: url('/img/bullet.gif') 0 6px no-repeat;
	padding-left: 15px;	
	color: #594c48;
}

#social{
	float: left;
}

#social p{
	margin-bottom: 3px;
	font-size: 12px;
}

#social ul{
	margin-left: -8px;
}

#social li{
	float: left;
	display: block;
	padding-left: 8px;
}

#vhg{
	float: right;
	margin-right: 35px;
	margin-top: 10px;
}

#copyright{
	clear: both;
	padding: 10px;
	font-family: Arial, Helvetica, sans-serif;
}

#copyright, #copyright a {
    color: #89817e;
    font-size: 11px;
}

#copyright ul {
    display: inline-block;
	margin-bottom: 0;
}

#copyright li {
    background: none repeat scroll 0 0 rgba(0, 0, 0, 0);
    display: inline-block;
    padding: 0 0 0 1px;
    text-transform: lowercase;
}

#copyright li a:before {
    content: "|";
    padding-right: 4px;
}

footer a{
	text-decoration: none;
}

footer a:hover {
    text-decoration: underline;
}	

/* RS nav default */
.rsnav {
    clear: both;
    margin: 15px 0;
    padding: 0;
}
.rsnav a {
    background: none repeat scroll 0 0 #FFFFFF;
    border: 1px solid #DBDBDB;
    color: #616161;
    display: block;
    height: 23px;
    margin-right: 7px;
    text-align: center;
    width: 23px;
}
.rsnav div {
    display: table;
    margin: 0 auto;
}
.rsnav div span {
    display: table-cell;
    float: left;
    margin-right: 7px;
}
.rsnav div a {
    color: #616161;
    display: table-cell;
    float: left;
    padding: 0 2px;
    text-decoration: none;
}
.rsnav div a.active, .rsnav div a:hover {
    background: none repeat scroll 0 0 #DEDBDA;
}
.rsnav .back{
    background: url("/img/previous.png") no-repeat scroll center center #FFFFFF;
    float: left;
    margin: 0;
    text-indent: -9999px;
}
.rsnav .next{
    background: url("/img/next.png") no-repeat scroll center center #FFFFFF;
    float: right;
    margin: 0;
    text-indent: -9999px;
}


.rs-top-nav{
	padding: 10px 0;
	color: #FFF;
	margin-bottom: 10px;
}

.rs-top-nav a{
	color: #FFF;
	text-decoration: none;
}

.rs-top-nav a:hover{
	text-decoration: underline !important;
}

.rs-top-nav .back{
    background: url("/img/nav-prev.png") no-repeat scroll left center;
    float: left;
    margin: 5px 10px 0 0;
	text-align: left;
	padding-left: 23px;
	text-transform:uppercase;
	font-family: Arial,Helvetica,sans-serif;
    font-size: 11px;
}
.rs-top-nav .next{
    background: url("/img/nav-next.png") no-repeat scroll right center rgba(0, 0, 0, 0);
    float: right;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 11px;
    margin: 5px 10px 0 0;
    padding-right: 30px;
    text-align: right;
    text-transform: uppercase;
}


#content ol.frmb li {
    clear: both;
}
.frmb li {
    clear: both;
    display: block;
    padding: 10px;	
	background: none !important;
}

.frmb li label, .frmb li span, .frmb li input, .fake-label {
    /*display: block;
    float: left;*/
	vertical-align: top;
 
}
.frmb li input {
    width: 200px;
}

.frmb li .form-row input {
	width: 20px;
}

.frmb li{ 
	margin-bottom: 5px;
}

.frmb li input[type="text"], textarea {
    border: 1px solid #E9E9E9;
    color: ##3F3F3F;
    height: 25px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
}
textarea {
    height: 80px;
    width: 200px;
}
.frmb li span.multi-row span label {
    /*float: left;*/
    padding-left: 5px;
}
.frmb li span.multi-row span input {
    width: 15px;
	margin-right:5px;
	display: inline-block;
	float: left;
    position:relative;
	top:5px;
}
.frmb .btn-submit input[type="submit"] {
    background: none repeat scroll 0 0 #40A734;
    border: 0 none;
    color: #FFFFFF;
    margin-left: 150px;
    padding: 5px;
    width: 100px;
}
.frmb span.alert {
    color: #FF0000;
    padding-left: 10px;
    width: 200px;
}


/* Author Helper classes */
.error{
	display:block;
	color:#CC0033;
}
#hmn{
	display:none;	
}

.block-link{
	display: block;
}


.lb-image, .lb-dataContainer, .lb-outerContainer { 
	max-width: 100%; height: auto !important; width: auto !important; 
}

.lb-image{
	margin: 0 auto;
}


.custom-form .form-rows .form-row input[type="checkbox"]{
	margin-left: 0;
}


/* ==========================================================================
   Helper classes
   ========================================================================== */

/* Image replacement */
.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
}
.lt-ie8 .ir {
    text-indent: -9999px;
}
.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden {
    display: none !important;
    visibility: hidden;
}

/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/* Hide visually and from screenreaders, but maintain layout */
.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}
.clearfix:after {
    clear: both;
}
.lt-ie8 .clearfix {
    zoom: 1;
}

.frm-bldr .form-rows {
    width: 200px;
    display: inline-block;
    margin: 0 0 5px;
}

.frm-bldr .form-rows .form-row {
    margin: 0 0 5px;
}

.fake-label{
    display: inline-block;
    vertical-align: top;
}

.frm-bldr .error input[type="text"], .frm-bldr .error textarea {
    border-color: #c03;
}

.error {
    display: inline-block;
    font-size: 13px;
    color: #c03;
	margin-bottom: 5px;
}

.frm-bldr .error span, .frm-bldr .error input {
    display: block;
    margin-top: 3px;
	float: none;
}


/* ==========================================================================
   Media Queries
   ========================================================================== */


@media only screen and (max-width: 1450px) {	
	#home #main{
		width:100%;
		overflow: hidden;	
	}
}
	
	
@media only screen and (max-width: 1100px) {	
	#project-detail-list{
		margin: 20px 0px;
	}
}

@media only screen and (max-width: 920px) {
	#footer-left{
		width: 60%;	
	}
	
	#footer-right{
		width: 40%;
	}
	
	/*#top-content-container #afb-1 {
	    padding: 0 20px;
	}*/
}


@media only screen and (max-width: 800px) {
	
	#main-nav{
		padding: 0;
	}
	
	#main-nav ul{
		/*margin-left:0;*/
	}
	
	nav.horizontal a{
		padding: 11px 10px 10px;
	}

	#left{
		padding-left: 15px;	
	}
	
	#breadcrumb{
		margin-top: 34px;	
	}
	
	
	#footer-left{
		width: 65%;	
	}
	
	#footer-right{
		width: 35%;
	}
	
	#top-content-container{
		width: 100%;	
	}
	
	#home #news{
		width:100%;
	}
	
	#home #news-widget, #home #newsletter{
		float: left;
		width: 50%;
	}
	
	#home #newsletter h3{
		font-size: 20px;
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
	
}

@media only screen and (max-width: 750px) {
	
	#van{
		display: none;
	}
	
	#footer-left, #footer-right{
		width: 50%;	
	}
	
	#social {
		display: block;
		float: none;
		width: 100%;
	}

	#vhg{
		display: block;
		float: none;
		margin:0;
		margin-top: 20px;
	}
	
	#main-nav-switch {
		display: block;
	}
	
	#main-nav ul {
		display: none;
		margin-left: 0;
	}
	
	#main-nav li {
		float: none;
	}
	
	#main-nav li a {
		padding-bottom: 10px;
		padding-top: 10px;
	}	
	
	
	#main-nav ul li{
		border-top: 1px solid #e1e1e1;
		border-bottom: 1px solid #e1e1e1;
		margin-top:-1px;
	}
	
	#main-nav .span-12{
		padding: 0;
	}
}

@media only screen and (max-width: 650px) {
	
	.span-6{
		width: 100%;
	}
	
	#footer-left{
		width: 70%;	
	}
	
	#footer-right{
		width:30%;
	}
	
	#home #content{
		width:100%;
	}
	
	#news-widget, #newsletter{
		padding-left: 0;
		margin-top: 10px;
	}
	
	#newsletter{
		padding-left:10px;
	}
	
	#home .project-list li, .project-list li, #project-detail-list li{
		width: 50%;
	}
	
	#default #leaves, #wide #leaves{
		width:100%;
	}
	
	
	#home #afb-1, #home #content{
		float: none;
	}
	
	#home #afb-1{
		margin-bottom: 10px;
	}
	
	
}

@media only screen and (max-width: 550px) {
	
	#logo{
		padding-left: 10px;
	}
	
	#info{
		margin-right: 10px;
		width: auto;
		font-size: 10px;
		text-align: center;
		line-height: 1.4;
		padding-top:25px;
	}
	
	#info span{
		font-size: 16px;
		padding-top: 5px;
	}
	
	
	#home #news-widget, #home #newsletter{
		width: 100%;
		float: none;
		padding-left:0;
	}
	
	.frmb .btn-submit input[type="submit"]{
		margin-left:0;
	}
}

@media only screen and (max-width: 400px) {
	
	#logo{
		width:50%;	
	}
	
	#logo img{
		width:100%;	
	}
	
	#footer-left{
		width: 65%;	
	}
	
	#footer-right{
		width: 35%;
	}
	
	#cta img, #cta p{
		float: none;
	}
	
	#cta p{
		width: 100%;
		margin-left:0;
	}

	#home .project-list li, .project-list li, #project-detail-list li{
		width: 100%;
	}
	
	#top h1{
		font-size: 20px;
	}
	
	.project-list span{
		min-height: 40px;
	}
	
	#top #content{
		padding: 0;
	}
	
	
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /* Don't show links for images, or javascript/internal links */
    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
