/* Layout */
* {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

html {
	background: rgb(237,243,212);
	padding: 0;
	overflow-x: hidden;
	}

body {
	background: #fcfdfa;
	font-size: 1em;
	color:rgb(35,35,35);
	line-height: 1.5;
	overflow-x: hidden;
	}
	.main {
		clear:both;
		display: inline-block;
		width: 100%;
		}

	.banner, .primary, footer div {
		margin: 0 auto;
		max-width: 980px;
		padding: 1em 5%;
		}

	.content {
		display: inline-block;
		padding: 0 0 20px;
		width: 65%;
		float: right;
		}

	.home .content {
		width: 100%;
		}

		@media screen and (max-width: 740px) {
			.content {
				float: none;
				padding: 0;
				width: 100%;
				}
			}
			@media screen and (max-width: 580px) {
				.home .content {
					text-align: center;
					}
				}
				
	.sidebar {
		float: left;
		width: 23%;
		}
		
		.home .sidebar {
			width: 100%;
			}
		@media screen and (max-width: 740px) {
			.sidebar {
				width: 100%;
				}
			}


/* Typography */
h1,h2,h3,h4,h5,h6{
	font-family: "Heveltica Neue", Helvetica, Arial, sans-serif;
	}
	
h3{
	color: rgb(44,44,44);
	}

	
/* Links */
a { 
	color: rgb(37,107,41);
	text-decoration: none;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
	}

a:hover {
	color: rgb(96,57,78);
	text-decoration: underline;
	-moz-transition: all .1s ease;
	-ms-transition: all .1s ease;
	-webkit-transition: all .1s ease;
	transition: all .1s ease;
	}

/* Header */
.banner h1 {
	margin: 0;
	float: left;
	}

.banner .logo {
	background: url('img/logo.png') no-repeat;
	background: url('img/logo_2x.png') 50% no-repeat,transparent center center no-repeat;
	background-size: contain;
	display: inline-block;
	height: 0;
	margin: 8px 0 0;
	overflow: hidden;
	padding-top: 53px;
	padding-top: 5.3rem;
	width: 117px;
	width: 11.7rem;
	}

/* Nav */

.menu, .secondary-nav {
	font-size: 0.9em;
	letter-spacing: 0.05em;
	line-height: 1;
	list-style: none;
	padding: 9px 0;
	padding: 0.9rem 0;
	text-transform: uppercase;
	}
		
	a.menu-link {
		background-color: #8cc967;
		border-radius: 0.5em;
		color: #fcfdfa;
		display: none;
		font-size: 80%;
		letter-spacing: 0.03em;
		float: right;
		margin-top: 15px;
		padding: 20px;
		text-decoration: none;
		text-transform: uppercase;
		}
	
	.menu {
		margin-top: 24px;
		margin-top: 1.714285714rem;
		}
	
	.menu ul.nav-menu,
	.menu div.nav-menu > ul {
		display: inline-block;
		float: right;
		}
	.menu ul {
		margin: 0;
		text-indent: 0;
		}
	.menu li a,
	.menu li,
 	.secondary-nav a {
		margin: 0 2%;
		padding: 0;
		display: inline-block;
		text-decoration: none;
		}
	.menu li a, .secondary-nav a {
		border-bottom: 0;
		color: rgb(67,95,13);
		line-height: 3.692307692;
		text-transform: uppercase;
		white-space: nowrap;
		}
	.menu li a:hover, .secondary-nav a:hover {
		color:rgb(119,170,87);
		}
	.menu li {
		margin: 0 40px 0 0;
		margin: 0 2.857142857rem 0 0;
		position: relative;
		}

		@media screen and (max-width: 762px) {
			.menu li {
				margin: 0 30px 0 0;
				margin: 0 1.5rem 0 0;
				}
			}

	.menu li ul {
		display: none;
		margin: 0;
		padding: 0;
		position: absolute;
		top: 85%;
		left: -14px;
		z-index: 1;
		}
	.menu li ul ul {
		top: 0;
		}
	.menu ul li:hover > ul {
		border-left: 0;
		display: block;
		}
	.menu li ul li a {
		background: rgb(229, 247, 217);
		border-bottom: 1px solid rgb(213, 239, 196);
		display: block;
		font-size: 11px;
		font-size: 0.785714286rem;
		line-height: 1.5;
		padding: 14px;
		width: 160px;
		white-space: normal;
		}
	.menu li ul li:last-child a {
		border-bottom: none;
		}
	.menu li ul li a:hover {
		background: rgb(193,229,169);
		color: rgb(67,95,13);
		}
	.current-menu-item > a,
	.menu .current-menu-ancestor > a,
	.current_page_item > a,
	.current_page_ancestor > a {
		color:rgb(119,170,87);
		font-weight: bold;
		}
	
	
	@media screen and (max-width: 718px) {
		a.menu-link {
			display: block;
		}
		
		.menu {
			width: 100%;
			padding: 0;
			}

		.menu ul.nav-menu, .menu div.nav-menu > ul, .menu li a { 
			width: 100%;
			padding: 0;
			}

		.menu, .menu > li ul {
			overflow: hidden;
			max-height: 0;
			-webkit-transition: all 0.3s ease-out;  
			-moz-transition: all 0.3s ease-out;
			-ms-transition: all 0.3s ease-out;
			transition: all 0.3s ease-out; 
			}

		.menu li {
			border-bottom: 1px solid rgb(213,239,196);
			margin: 0;
			padding: 0 5%;
			}

		.menu li:last-child {
			border: 0;
			}
		
		.menu > li > ul.menu-item-object-custom {
			padding: 0;
			border: none;
			}
		
		.menu.active, .menu > ul ul.active {
			max-height: 55em;
			border: 0;
			}

	.menu li, .menu > ul > li {
		display: block;
		}
		
		.menu li.menu-item-object-custom > a:after {
			content: '+';
			position: absolute;
			top: -15px;
			right: 5%;
			display: inline;
			font-size: 1.5em;
			margin: 0;
			}
			.menu li.menu-item-object-custom > a.active:after {
				content: "-";
				}

	.menu .current-menu-ancestor{
		background: #ebf3ec;
		}

	.menu .current-menu-item {
		background: rgb(193,229,169);
		}

	.menu ul li:hover > ul {
		display: none;
		}

	.menu .sub-menu.active {
		display: block;
		position: relative;
		margin-top: -10px;
		}

	.menu li ul li a {
		width: 100%;
		background: none;
		border: 0;
		}
}
	
	.secondary-nav {
		list-style:none;
		padding: 0;
		margin: 70px 0 0;
		width: 100%;
		}

		.secondary-nav li{
			display: block;
			}
			.secondary-nav a {
				line-height: 2.5;
				}

		@media screen and (max-width: 740px) {
			.secondary-nav {
				display: none;
				}
			}

/* Home */
.slides {
	list-style:none;
	padding: 0;
	margin: 30px 0;
	width: 100%;
	}
	.clone {
		background-position: 75% 50%;
		background-repeat:no-repeat;
		background-size: cover;
		border-top:1px solid rgb(37,107,41);
		box-shadow: inset 0 0 4px rgba(10,10,10,0.3);
		margin: 0;
		height: 420px;
		margin: 0;
		}
		.flex-caption {
			margin: 0 auto;
			max-width: 980px;
			padding: 80px 5% 0;
			}
		.flex-caption h1, .flex-caption h3{
			color: rgb(249,251,240);
			margin: 5px 0;
			line-height:1;
			text-shadow: 1px 1px 4px rgba(42,44,2,0.6);
			}	
		.flex-caption h1{
			font-size: 2.4em;
			text-transform: none;
			}
		.flex-caption h3{
			font-size: 1.8em;
			font-weight:100;
			margin-bottom: 20px;
			}
		.flex-caption p a{
			color: rgb(242,255,190);
			font-size: 1.2em;
			font-weight: 400;
			display: block;
			max-width: 480px;
			text-shadow: 1px 1px 4px rgba(42,44,2,0.7);
			}

		@media screen and (max-width: 540px) {
			.flex-caption h1{
				font-size: 2.1em;
				}
			.flex-caption h3{
				font-size: 1.6em;
				}
			}

.home .content h2 {
	font-weight: 100;
	padding: 0 10px;
	}

.post {
	float: left;
	width: 32%;
	}

	.post:nth-child(even) {
		margin: 0 1%;
		}

	.post img {
		margin-bottom: -25px;
		width: 100%;
		}

	.post h3{
		line-height: 1.2em;
		margin-bottom: -15px;
		padding: 0 10px;
		}

	.post p {
		padding: 0 10px;
		}

	@media screen and (max-width: 580px) {
		.post {
			width: 100%;
			margin:0 auto 30px;
			}

		.post img{
			margin-bottom: -35px;
			width: 80%;
			}

			.post h3{
				line-height: 1.2em;
				margin-bottom: -15px;
				padding: 0 10px;
				}

			.post p {
				padding: 0 50px;
				}
			}

/* Content */
.content h2+p {
	color: rgb(37,107,41);
	font-weight: 200;
	font-size: 120%;
	}

.page-id-14 h3+p {
	font-weight: 200;
	font-size: 115%;
	}

.content h2 a {
	color:rgb(119,170,87);
	}

.content h3 {
	margin: 40px 0 -12px;
	}
	.partners a{
		border: 1px solid #fcfdfa;
		float: left;
		min-height: 140px;
		width: 240px;
		padding:30px 20px 20px;
		text-align: center;
		}

	.partners a:hover{
		background: #edf3d4;
		}

	.partners img{
		max-width: 100%;
		}

/* Sidebar */

.cta {
	background: #ebf3ec;
	color: #8a967c;
	margin: 40px 0;
	padding: 20px;
	}
	.home .cta {
		background:none;
		border-top: 1px solid #dde8d0;
		text-align: center;
	}
	@media screen and (max-width: 740px) {
		.cta {
			text-align: center;
			}
		}

.cta strong {
	display: block;
	color:rgb(119,170,87);
	font-size: 120%;
	line-height: 1.3;
	font-weight: 200;
	margin-bottom: 10px;
	}
	
	.home .cta strong {
		color: #8a967c;
		display: inline;
		font-size: 100%;
		font-weight: normal;
		margin:0;
		}

/* Contact form */
	fieldset {
		border:0;
		margin: 30px 0;
		padding: 0;
		}

	.form label:not(.checkbox){
		display: block;
		font-size: 0.85em;
		font-weight: bold;
		letter-spacing: 0.06em;
		margin: 10px 0 5px 4px;
		text-transform: uppercase;
		}


	.form input, .form textarea {	
		background: rgb(245, 252, 242);
		border: 1px solid rgba(50,63,78,0.3);
		border-radius: 3px;
		-moz-box-shadow: inset 0 1px 1px rgba(179,182,176,0.3);
		-webkit-box-shadow: inset 0 1px 1px rgba(179,182,176,0.3);
		box-shadow: inset 0 1px 2px rgba(179,182,176,0.5);
		color:rgb(41,44,53);
		display: block;
		margin: 2px 0 20px;
		padding: 10px 8px;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		width:100%;
		}

	.control-group {
		display: inline-block;
		margin: 0 0 20px;
		}
	
	label.checkbox, input[type="checkbox"] {
		cursor: pointer;
		float: left;
		}
	label.checkbox {
		margin: 5px 0 5px 8px;
		width: 100%;
		}
	input[type="checkbox"] {
		margin: 3px 10px 0 0;
		width: auto;
		}

	.help-block {
		color: #8a967c;
		font-size: 0.9em;
		margin-left: 4px;
		}

	.form input:focus, .form input:hover, .form textarea:focus, .form textarea:hover {
		border-color:rgb(37,107,41);
		-moz-box-shadow: inset 0 1px 2px rgba(179,182,176,0.5), 0 0 8px rgba(140,201,103,0.6);
		-webkit-box-shadow: inset 0 1px 2px rgba(179,182,176,0.5), 0 0 8px rgba(140,201,103,0.6);
		box-shadow: inset 0 1px 2px rgba(179,182,176,0.5), 0 0 8px rgba(140, 201,103,0.6);
		}


	button, .button {
	    background: #8cc967;
		border: none;
	    border-radius: 0.5em;
	    color: #fcfdfa;
		display: inline-block;
		letter-spacing: 0.05em;
		margin: 5px 0 0 -2px;
	    padding: 1em 1.5em;
		text-transform: uppercase;
		-moz-transition: all .2s ease;
		-ms-transition: all .2s ease;
		-webkit-transition: all .2s ease;
		transition: all .2s ease;
		}

		button:hover, .button:hover {
			background:rgb(104, 165, 66);
			box-shadow: 0 0 3px 1px rgba(140,201,103,0.9);
			}

		a.button:hover {
			color: rgb(43,43,43);
			text-decoration: none;
			}

	#success, #errors {
		display: none;
		margin: 10px 0 30px;
		padding: 0;
		}

		#success.visible, #errors.visible {
			display: block;
			}

		#errors {
			background: #f9eded;
			border:5px solid #900;
			border-radius: 3px;
			margin: 20px 0 -20px;
			padding: 18px 15px 4px;
			}

		#errors li{


			margin:0 0 8px;
			padding: 0;
			list-style:none;
			}
		
		#success {
			color: rgb(37,107,41);
			}
		
		#errors #info {
			font-weight: bold;
			background: none;
			color:rgb(165,34,34);
			margin:-4px 0 4px;
			padding: 0;
			}

		.hidden, #loading {
			display: none;
			}

			#loading{
			position:relative;
			width:70px;
			height:8px}

			.loading{
			position:absolute;
			top:0;
			background-color:#1CBC69;
			width:9px;
			height:9px;
			-moz-animation-name:bounce_loading;
			-moz-animation-duration:0.6s;
			-moz-animation-iteration-count:infinite;
			-moz-animation-direction:linear;
			-moz-transform:scale(.3);
			-moz-border-radius:6px;
			-webkit-animation-name:bounce_loading;
			-webkit-animation-duration:0.6s;
			-webkit-animation-iteration-count:infinite;
			-webkit-animation-direction:linear;
			-webkit-transform:scale(.3);
			-webkit-border-radius:6px;
			-ms-animation-name:bounce_loading;
			-ms-animation-duration:0.6s;
			-ms-animation-iteration-count:infinite;
			-ms-animation-direction:linear;
			-ms-transform:scale(.3);
			-ms-border-radius:6px;
			animation-name:bounce_loading;
			animation-duration:0.6s;
			animation-iteration-count:infinite;
			animation-direction:linear;
			transform:scale(.3);
			border-radius:6px;
			}

			#loading_1{
			left:0;
			-moz-animation-delay:0.24s;
			-webkit-animation-delay:0.24s;
			-ms-animation-delay:0.24s;
			animation-delay:0.24s;
			}

			#loading_2{
			left:9px;
			-moz-animation-delay:0.3s;
			-webkit-animation-delay:0.3s;
			-ms-animation-delay:0.3s;
			animation-delay:0.3s;
			}

			#loading_3{
			left:18px;
			-moz-animation-delay:0.36s;
			-webkit-animation-delay:0.36s;
			-ms-animation-delay:0.36s;
			animation-delay:0.36s;
			}

			#loading_4{
			left:26px;
			-moz-animation-delay:0.42s;
			-webkit-animation-delay:0.42s;
			-ms-animation-delay:0.42s;
			animation-delay:0.42s;
			}

			#loading_5{
			left:35px;
			-moz-animation-delay:0.48s;
			-webkit-animation-delay:0.48s;
			-ms-animation-delay:0.48s;
			animation-delay:0.48s;
			}

			#loading_6{
			left:44px;
			-moz-animation-delay:0.54s;
			-webkit-animation-delay:0.54s;
			-ms-animation-delay:0.54s;
			animation-delay:0.54s;
			}

			#loading_7{
			left:53px;
			-moz-animation-delay:0.6s;
			-webkit-animation-delay:0.6s;
			-ms-animation-delay:0.6s;
			animation-delay:0.6s;
			}

			#loading_8{
			left:61px;
			-moz-animation-delay:0.66s;
			-webkit-animation-delay:0.66s;
			-ms-animation-delay:0.66s;
			animation-delay:0.66s;
			}

			@-moz-keyframes bounce_loading{
			0%{
			-moz-transform:scale(1);
			background-color:#1CBC69;
			}

			100%{
			-moz-transform:scale(.3);
			background-color:#D0E7BC;
			}

			}

			@-webkit-keyframes bounce_loading{
			0%{
			-webkit-transform:scale(1);
			background-color:#1CBC69;
			}

			100%{
			-webkit-transform:scale(.3);
			background-color:#D0E7BC;
			}

			}

			@-ms-keyframes bounce_loading{
			0%{
			-ms-transform:scale(1);
			background-color:#1CBC69;
			}

			100%{
			-ms-transform:scale(.3);
			background-color:#D0E7BC;
			}

			}

			@keyframes bounce_loading{
			0%{
			transform:scale(1);
			background-color:#1CBC69;
			}

			100%{
			transform:scale(.3);
			background-color:#D0E7BC;
			}

			}


/* Footer */
footer {
	background: rgb(237,243,212);
	clear: both;
	color: #8a967c;
	padding: 15px 5%;
	padding: 1.5rem 5% 1rem;
	width: 100%;
	}
	
	footer p {
		font-size: 0.85em;
		}
		@media screen and (max-width: 704px) {
			footer p {
				text-align: center;
				}
			}
		
		footer ul {
			list-style:none;
			padding: 0;
			margin: 0 auto 40px;
			max-width: 980px;
			text-align: center;
			}
			
			footer li {
				display: inline-block;
				margin: 0 4.5% 20px 0;
				width: 100px;
				vertical-align: middle;
				}
				footer li:last-child{
					margin: 0;
					}

				footer li img{
					max-width: 100%;
					}