body{
	margin:0;
	padding:0;
	font-family: 'Open Sans', sans-serif;
	font-size:24px;
}

a{
	text-decoration:none;
	color:#78D000;
}

#logo{
	width:155px;
	position:absolute;
	bottom:20px;
	display:block;
}

#footerLogo{
	width:180px;
}

section{
	overflow:auto;
	padding-top:50px;
	padding-bottom:50px;
}

section.gray{
	background-color:#EEEEEE;	
}

section.green{
	background-color:#78D000;
}

section h1{
	font-size:38px;	
	color:#78D000;
	margin-bottom:30px;
	font-weight:600;
}

section.gray h1{
	color:#333333;	
}

section.gray .columnContainer{
	color:#7F7F7F;	
}

section.green h1{
	color:#fff;	
}

section h2{
	font-size:28px;	
	color:#7f7f7f;
	margin:0;
	margin-bottom:15px;
	font-weight:600;
	font-style:italic;
}


section.green .columnContainer{
	color:#fff;	
}

section.cta{
	padding-top:0;	
	padding-bottom:0;
}

section.cta h1{
	font-weight:normal;
	font-size:30px;
	text-align:center;
}

section.cta a{
	color:#fff;
}

#header{
	height:120px;
	width:100%;
	font-size:15px;
	position:relative;
}

#header .screenContainer{
	height:100%;
}

#header nav{
	text-align:right;
	position:absolute;
	right:0;
	bottom:20px;
}

#header nav ul{
	list-style:none;
	margin:0;
	padding:0;
}

#menuTrigger{
	display:none;
	position: absolute;
	top: 40px;
	right: 0;
	font-size: 42px;	
	cursor:pointer;
		
}

#header #kicker{
	position:absolute;
	top:0;
	right:0;
	background-color:#808080;
	color:#fff;
	padding:8px 20px;
}

#header nav li{
	display:inline-block;
	margin-left:20px;
}

#headerImage{
	height:525px;
	box-sizing:border-box;
	position:relative;
	padding-top:0;
	padding-bottom:0;
}

#headerImage:after{
	content: "";
	opacity: 1;
  	top: 0;
  	left: 0;
  	bottom: 0;
  	right: 0;
  	position: absolute;
  	z-index: -1;
}

#showcase{
	position:relative;
	width:100%;
	height:525px;
	font-size:28px;
}

#showcase.light{
	color:#333;
}

#showcaseContent{
	width:100%;
	position:absolute;
	bottom:0;
	padding-bottom:50px;
	color:#fff;
}

#showcaseContent.banded{
	width: 600px;
	padding:50px 50px;
	background-color:rgba(0,0,0,0.7)
}

#showcaseContent h1{
	font-size:30px;
	font-weight:00;
	margin-top:0;
}

#showcaseContent h2{
	font-size:24px;
	font-weight:500;
	margin-top:0;
	font-style:italic;
	color:#fff;
}

#showcaseContent p{
	font-size:20px;	
	color:#fff;
}

.screenContainer{
	width:1200px;
	margin:auto;
	position:relative;
	box-sizing:border-box;
}

.single{
	width:100%;	
}

.columnContainer{
	display:flex;
	flex-direction: row;
	font-size:24px;
	color:#7F7F7F;
	line-height:180%;
}

.columnContainer p{
	margin:0;
	margin-bottom:30px;	
}

.columnContainer .col.left
,.columnContainer .col.right{
	box-sizing:border-box;
}

.columnContainer .col.left{
	width:600px;	
}

.columnContainer .col.right{
	flex:1;	
}

.columnContainer .col.image img{
	max-width:300px;
}

.columnContainer .col.image{
	text-align:center;	
}

.employeeQuote{
	width:360px;	
	font-size:17px;
	line-height:160%;
	text-align:center;
	margin:auto;
}

.employeeQuote .headshot{
	width:160px;
	height:160px;
	border-radius:50%;
	overflow:hidden;
	margin:auto;
	margin-bottom:20px;
	margin-top:-50px;
	position: relative;
}

.employeeQuote .headshot img{
	max-width:100%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translate(0,-50%);
}

.employeeQuote p{
	margin-bottom:10px;
}

.employeeQuote .author{
	font-weight:bold;
}

.testimonial{
	font-size:18px;	
	line-height:160%;
	text-align:center;
	padding:0 50px;
}

.testimonial p{
	font-style:italic;
	text-align:center;
}

.testimonial .author{
	font-weight:bold;
}


.copyWithBios .bioContainer{
	text-align:center;
}

.copyWithBios dl{
	display:flex;
	width:480px;
	margin:auto;
	margin-bottom:50px;
	display:inline-block;
	text-align:center;
	vertical-align:text-top;
}

.copyWithBios dl:first-of-type{
	margin-right:40px;	
}

.copyWithBios dt{
	width:100%;
	padding-bottom:30px;
}

.copyWithBios dt img{
	border-radius:50%;
	display:block;
	margin:auto;
}

.copyWithBios dd{
	flex:1;
	font-size: 20px;
	line-height: 160%;
	margin-left:0;
	padding:0 20px;
}

.copyWithBios .bioName{
	font-weight:bold;
	display:block;
}

.copyWithBios .bioTitle{
	font-style:italic;
	color:#8f8f8f;
	font-size:16px;
}

.iconList{
	padding-top:30px;
	padding-bottom:50px;
}

.iconList h1{
	margin-bottom:40px;	
}

.iconList.twoColumn .single{
	column-count:2;	
}

.iconList dl{
	display:flex;
	margin:0;
}

.iconList.oneColumn dl{
	margin-bottom:30px;
}

.iconList dt{
	width:90px;
}

.iconList dt div{
	width:60px;
	height:60px;
	text-align:center;
	background-color:#78D000;
	color:#fff;
	border-radius:50%;
	line-height:190%;
	font-size:30px;
}

.iconList dt div i{
	margin-right:-4px;
}

.iconList dd{
	margin-left:0;
	flex:1;
	font-size:20px;
	line-height:160%;
}

.iconList h3{
	margin-top:10px;
}

.iconList.threeColumn{
	padding-top:80px;
	padding-bottom:50px;
}

.iconList.threeColumn .single{
	column-count:3;
}

.iconList.threeColumn h3{
	font-size:26px;
	margin-bottom:0;
}

.copyWithIcons .col.right{
	padding-left:30px;	
}

.flexColumnWrap { 
	display: flex; 
	flex-flow: row nowrap;
	height: 100%; 
} 

.flexColumn { 
	margin-left:4%;
	flex:2;
}

.flexColumn:first-of-type{
	margin-left:0;	
}


#footer{
	width:100%;
	padding:30px 0;
	background-color:#333333;
	font-size:16px;
	color:#fff;
}

#footer .columnContainer{
	font-size:16px;
	color:#fff;
}

#footer .columnContainer .col.left{
	padding-right:200px;
}

#footer .columnContainer .col.middle{
	width:300px;
}

#footer h1{
	font-size:18px;
}

#footer dt
, #footer dd{
	margin-left:0;
	padding-left:0;
}

#footer dt{
	font-weight:bold;
}

#footer dd{
	margin-bottom:15px;
}

/******************* notifications **********************/


.alertNotification{
	border-radius:4px;
	padding:10px 15px;
	margin:-10px auto 10px !important;
}

.errorMessage{
    background-color: #f2dede;
    border:1px solid #ebccd1;
    color: #a94442;
}

.successMessage{
	background-color:#dff0d8;
	border:1px solid #d6e9c6;
	color:#3c763d;
}

.infoMessage{
	background-color:#d9edf7;
	border:1px solid #bce8f1;
	color:#31708f;
}

.brightMessage{
	background-color:#E74318;
	border:none;
	color:#FFF;
}


/******************* form **********************/

#formContainer h2{
   font-size:20px;
   font-style:normal;
   border-top: 1px solid #666;
   padding-top:10px;
}

#formContainer .formSection{
   margin-bottom:40px;
}

#formContainer input[type=text]{
   width:100%;
   font-size:16px;
   box-sizing: border-box;
   position:relative;
}

#formContainer input[type=text]:required { 
	content "*"; 
	color: red; 
}

#formContainer label.checkboxWrap{
   display:block;
   font-size:16px;
}

#formContainer label.checkboxWrap input[type=checkbox]{
   vertical-align:middle;
}
 
#formContainer label.error{
	color:red;
	font-size:12px;
	font-style:italic;	
}

.flexInput{
   display:flex;
   flex-direction:row;
   justify-content:space-between;
   padding-top:5px;
}

.flexInput #city{
   width:50%;
}

.flexInput #state
,.flexInput #zip{
   flex:2; 
   margin-left:10px;
}

#formContainer  textarea{
  width:100%;
  box-sizing: border-box;
}

#submitBtn{
   color:#fff;
   background-color:#78D000;
   padding:10px 20px;
   border-radius:8px;
}


