/*
Theme Name: Macintype
Theme URI: http://www.macintypedesign.com.au
Description: This is a WordPress Theme designed and coded by Macintype Design exclusively for Envirostream -- WordPress v4.5.2
Author: Macintype Design
Author URI: http://www.macintypedesign.com.au
Version: 1
*/

html, body {
	margin:0;
	padding:0;
}
body {
	font:normal 17px Lato, sans-serif;
	line-height:1.4em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
h1 {
	font:bold 44px Lato, sans-serif;
	margin-top:40px;
	margin-bottom:16px;
}
p {
	margin-top:0;
	margin-bottom:1.4em;
}
a {
	color:#9BC235;
}

.clear { clear:both; }
a.button, .submit-container input {
	display:inline-block;
	width:300px;
	height:48px;
	font-size:17px;
	line-height:48px;
	text-align:center;
	border-radius:3px;
	border:1px solid #9BC235;
	background:#9BC235;
	color:#fff;
	text-decoration:none;
	appearance:none;
	-webkit-appearance:none;
	cursor:pointer;
}
a:hover.button, .submit-container input:hover {
	background:#fff;
	color:#9BC235;
}
.submit-container input {
	font:normal 17px Lato,sans-serif;
	line-height:48px;
	width:300px !important;
}

#header {
	position:fixed;
	width:100%;
	height:195px;
	z-index:100;
}
#logo {
	width:714px;
	height:195px;
	position:relative;
	background:url(images/header.png) no-repeat left top;
	background-size:100% auto;
	z-index:101;
}
#logo.search-visible {
	background-image:url(images/header_search.png);
}
#logo a {
	display:block;
	position:absolute;
	left:35px;
	top:30px;
	width:330px;
	height:42px;
	background:url(images/logo.png) no-repeat left top;
	background-size:100% auto;
}
#nav {
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:150px;
	background:#9BC235;
	font-size:15px;
}
#nav > ul {
	list-style:none;
	position:absolute;
	right:40px;
	top:30px;
	z-index:101;
}
#nav ul li a {
	display:block;
}
#nav > ul > li {
	float:left;
	margin-left:30px;
}
#nav > ul > li > a {
	color:#fff;
	text-decoration:none;
	border-bottom:3px solid #9BC235;
	vertical-align:middle;
	margin-top:10px;	
}
#nav > ul > li.menu-item-has-children > a::after {
	font-family:FontAwesome;
	content:"\f0d7";
	margin-left:5px;
}
#nav > ul > li > a:hover {
	border-bottom:3px solid #fff;
}
li.menu-search {
	margin-left:15px !important;
}
li.menu-search a {
	margin-top:0 !important;
	font-family:FontAwesome;
	width:40px;
	height:40px;
	line-height:40px;
	text-align:center;
	padding-bottom:0 !important;
	border-bottom:none !important;
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}
li.menu-search a:hover {
	border-bottom:none !important;
}
li.menu-search a.active {
	background:#fff;
	color:#9BC235 !important;
}
#nav ul ul {
	width:290px;
	margin-top:5px;
	left:auto;
	right:0;
}
#nav ul ul li {
	border-top:1px solid #9BC235;
}
#nav ul ul li:first-child {
	border-top:none;
}
#nav ul ul li a {
	background:#fff;
	color:#9BC235;
	padding:12px;
	text-decoration:none;
}
#nav ul ul li a:hover {
	background:#9BC235;
	color:#fff;
}
#search_bar {
	position:absolute;
	left:0px;
	top:85px;
	width:100%;
	height:110px;
	line-height:110px;
	background:#fff;
	text-align:right;
	display:none;
}
#search_bar.active {
	display:block;
}
a#header_download {
	display:block;
	position:absolute;
	right:50px;
	top:85px;
	font-size:17px;
	height:48px;
	line-height:48px;
	padding-left:24px;
	padding-right:24px;
	background:#fff;
	border:1px solid #fff;
	border-radius:3px;
	text-decoration:none;
}
a:hover#header_download {
	background:#9BC235;
	color:#fff;
}

#main {
	padding-top:150px;
}

#slider {
	padding:0;
	margin:0;
}
#slider li div {
	height:580px;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}
.lSSlideOuter .lSPager.lSpg>li a {
	width:15px;
	height:15px;
	border:1px solid #9BC235;
	border-radius:50%;
	background:#fff;
}
.lSSlideOuter .lSPager.lSpg>li.active a, .lSSlideOuter .lSPager.lSpg>li:hover a {
	background:#9BC235;
}

#content_wrap { 
	position:relative;
	min-height:100px;
}
#content {
	width:52.7%;
	margin:auto;
}

body.page #content, body.blog #content, body.archive #content {
	margin-top:80px;
}
body.home #content {
	margin-top:60px;
	font-size:24px;
	text-align:center;
	line-height:1.4em;
}
#intro_text {
	font-size:24px;
	line-height:1.2em;
	color:#9BC235;
}
#content img {
	max-width:100%;
	margin-bottom:20px;
	height:auto;
}
#content img.w25 {
	width:25px;
	height:auto;
}
#content img.w118 {
	width:118px;
	height:auto;
}
#content img.w140 {
	width:140px;
	height:auto;
}

ul#sidenav {
	position:absolute;
	left:0px;
	top:0px;
	list-style:none;
	margin:0;
	padding:0;
	width:225px;
}
ul#sidenav li::before, #content li::before {
	list-style:none;
	display:inline-block;
	font-family:FontAwesome;
	font-size:10px;
	margin-left:-18px;
	margin-right:10px;
}
ul#sidenav li::before {
	color:#9BC235;
}
ul#sidenav li.active::before {
	content:"\f0c8";
}
ul#sidenav li, #content li {
	margin-left:30px;
	margin-bottom:10px;
}
ul#sidenav li a {
	text-decoration:none;
	color:#999999;
}
ul#sidenav li a:hover, ul#sidenav li.active a {
	color:#9BC235;
}
ul#sidenav li.active a {
	font-weight:bold;
}

#content ul {
	list-style:none;
	padding:0;
	margin-left:0;
	margin-right:0;
	margin-top:0;
	margin-bottom:34px;
}
#content li {
	margin-left:36px;
}
#content li::before {
	content:"\f0c8";
	margin-left:-20px;
}

#categories {
	height:60px;
	background:#9BC235;
}
#categories ul {
	margin:0;
	padding:0;
	padding-top:10px;
	margin-left:122px;
	margin-right:122px;
	list-style:none;
}
#categories li {
	float:left;
	width:170px;
	text-align:center;
}
#categories a {
	display:block;
	height:50px;
	line-height:50px;
	color:#fff;
	text-decoration:none;
}
#categories li.active a {
	background:#fff;
	color:#333333;
}
#posts {
	margin-top:50px;
}

.nf-form-content {
	margin-top:40px;
}
.nf-field-container {
	margin-bottom:10px !important;
}
.textbox-container input, .email-container input, .textarea-container textarea {
	font:normal 17px Lato,sans-serif;
	display:block;
	border:1px solid #9BC235;
	padding-left:12px;
	padding-right:12px;
}
.textbox-container input, .email-container input {
	height:50px !important;
}
.textarea-container textarea {
	padding-top:12px;
	height:140px !important;
}

#boxes {
	margin-left:84px;
	margin-right:84px;
	margin-top:60px;
}
.box {
	background:#9BC235;
	float:left;
	width:31.66%;
	margin-left:2.5%;
	height:482px;
	color:#fff;
	text-align:center;
}
.box h2 {
	font-size:24px;
	font-weight:normal;
}
.box:first-child {
	margin-left:0;
}
.box > div {
	margin:40px;
	padding-top:175px;
	height:230px;
	background:url(images/circle.png) no-repeat center top;
	background-size:141px auto;
	position:relative;
}
.box > div a.button {
	display:block;
	position:absolute;
	left:0px;
	bottom:0px;
	width:100%;
	background:#fff;
	color:#9BC235;
}
.box > div a:hover.button {
	background:#9BC235;
	border:1px solid #fff;
	color:#fff;
}

#hero {
	height:400px;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
	position:relative;
}
#hero > div {
	position:absolute;
	left:0px;
	bottom:0px;
	width:100%;
	height:150px;
	background:rgba(0, 0, 0, 0.65);
	color:#fff;
	text-align:center;
}
#hero h1 {
	font-size:44px;
	line-height:1em;
	margin-top:34px;
	margin-bottom:16px;
}
#hero h2 {
	margin-top:0;
	font-size:24px;
	font-weight:normal;
	line-height:1em;
}
h3#subtitle {
	background:#9BC235;
	color:#fff;
	font-weight:normal;
	font-size:24px;
	height:60px;
	line-height:60px;
	text-align:center;
	text-transform:uppercase;
	margin:0;
}

.button_group a.button {
	margin-right:10px;
}
#posts .button_group {
	padding-bottom:30px;
	border-bottom:1px solid #999999;
	margin-bottom:30px;
}

.col {
	float:left;
	width:48%;
}
.col:first-child {
	margin-right:2%;
}

.accordion_group > a {
	display:block;
	background:#cccccc;
	color:#fff;
	margin-bottom:10px;
	height:50px;
	line-height:50px;
	border-radius:3px;
	text-decoration:none;
	padding-left:15px;
	padding-right:15px;
	font-weight:bold;
}
.accordion_group > a::after {
	float:right;
	font-family:FontAwesome;
	content:"\f078";
}
.accordion_group > a:hover, .accordion_group > a.active {
	background:#9bc235;
}
.accordion_group > div {
	overflow:hidden;
	max-height:0px;
	
	-webkit-transition: all 0.5s linear;
    transition: all 0.5s linear;
}
.accordion_group > div.active {
	max-height:999px;
}

#post_attachments > a {
	display:block;
	border:2px solid #9bc234;
	border-radius:3px;
	margin-top:30px;
	margin-bottom:40px;
	height:40px;
	line-height:40px;
	padding-top:15px;
	padding-bottom:15px;
	padding-right:15px;
	padding-left:60px;
	text-decoration:none;
	background:url(images/ico_file.png) no-repeat 15px 15px;
	background-size:auto 40px;
	float:left;
	clear:both;
}

#footer_top {
	background:#9BC235;
	color:#fff;
	margin-top:80px;
	padding-top:74px;
	padding-bottom:74px;
	text-align:center;
	font-size:24px;
	line-height: 1.4em;
}
#footer_top h2 {
	font-size:44px;
	line-height:1em;
	margin-top:0;
	margin-bottom:18px;
}
#footer_top p {
	margin:auto;
	width:52.7%;
}
#footer {
	background:#3C3737;
	color:#fff;
	text-align:center;
	padding-top:75px;
	padding-bottom:20px;
}
#footer h3 {
	margin-top:0;
	margin-bottom:25px;
	font-size:25px;
}
#footer p {
	margin-left:auto;
	margin-right:auto;
	margin-bottom:35px;
	width:52.7%;
}
#footer a.button {
	display:block;
	margin-left:auto;
	margin-right:auto;
	width:400px;
}
#footer ul {
	list-style:none;
	padding:0;
	margin-left:0;
	margin-right:0;
	margin-top:40px;
	margin-bottom:40px;
	display:inline-block;
	font-size:15px;
}
#footer li {
	float:left;
	margin-left:15px;
	margin-right:15px;
}
#footer li a {
	text-decoration:none;
	line-height:25px;
}
#footer li a:hover {
	text-decoration:underline;
}
.menu-linkedin a {
	display:block;
	width:25px;
	height:25px;
	background:url(images/ico_linkedin.png) no-repeat left top;
	background-size:100% auto;
}
#search_bar input, #footer input, #posts_form input {
	box-sizing:border-box;
	font:normal 17px Lato,sans-serif;
	height:50px;
	border:1px solid #9BC235;
	background:transparent;
	padding-left:12px;
	padding-right:12px;
	padding-top:0;
	padding-bottom:0;
	margin-left:0;
	margin-right:0;
	display:inline-block;
	appearance:none;
	-webkit-appearance:none;
	vertical-align:middle;
	width:350px;
	color:#9BC235;
	outline:none;
}
#posts_form input {
	width:300px;
}
#posts_form select {
	width:100%;
	height:50px;
	line-height:50px;
	-webkit-appearance: menulist-button;
	font-family:FontAwesome;
	font-size:17px;
	text-indent:20px;
	border:1px solid #999999;
	color:#666666;
}
#footer input.submit, #posts_form input.submit {
	font-family:FontAwesome;
	height:48px;
	line-height:48px;
	background:#9BC235;
	color:#fff;
	width:50px;
	padding:0;
	margin-left:-1px;
}
#search_bar input {
	width:508px;
}
#search_bar input.submit {
	margin-right:40px;
	background:#9BC235;
	color:#fff;
	width:120px;
}
.nf-form-fields-required {
	display:none;
}
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #9BC235;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #9BC235;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #9BC235;
}
:-moz-placeholder { /* Firefox 18- */
  color: #9BC235;
}
#legal {
	font-size:15px;
	margin-top:30px;
	color:#808080;
}
#legal a {
	color:#808080;
}
#legal a:hover {
	color:#fff;
}

.modal {
	display:none;
	position:fixed;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.7);
	z-index:1000;
}
.modal_box {
	position:absolute;
	background:#3C3737;
	color:#fff;
	left:50%;
	top:60px;
	width:58.56%;
	margin-left:-29.28%;
	height:auto;
}
.modal_box > div {
	padding:40px;
	text-align:center;
}
.modal_box h2 {
	margin-top:0;
	font-size:25px;
	font-weight:normal;
}
.modal_box .nf-form-cont {
	width:60%;
	margin:auto;
}
.modal_box .submit-container input {
	width:100% !important;
}
a.modal_close {
	position:absolute;
	right:10px;
	top:8px;
	color:#fff;
	font-size:38px;
}

@media only screen and (max-width: 1400px) {
	#posts_form input[type="text"] {
		width:200px;
	}
}
@media only screen and (max-width: 1360px) {
	.box {
		height:500px;
	}
	.box > div {
		height:250px;
	}
	#search_bar input[type="text"] {
		width:350px;
	}
}
@media only screen and (max-width: 1230px) {
	.box {
		height:550px;
	}
	.box > div {
		height:300px;
	}
}

@media only screen and (max-width: 1190px) {
	#header {
		height:110px;
	}
	#logo {
		height:110px;
		width:400px;
		background-size:auto 100%;
		background-position:-90px top;
	}
	#logo a {
		width:60px;
		height:40px;
		top:8px;
		left:30px;
		background-image:url(images/logo_sm.png);
	}
	#nav {
		height:85px;
	}
	#nav ul {
		top:5px;
	}
	a#header_download {
		top:48px;
		height:24px;
		line-height:24px;
		font-size:15px;
		padding-left:10px;
		padding-right:10px;
	}
	#search_bar {
		top:48px;
		height:62px;
		line-height:62px;
	}
	#search_bar input {
		height:40px;
	}
	
	#main {
		padding-top:85px;
	}
	#posts_form .col {
		float:none;
		width:100%;
		margin-left:0;
		margin-right:0;
		margin-bottom:10px;
	}
	#posts_form input[type="text"] {
		width:350px;
	}
	.button_group a.button {
		width:186px;
	}
	.modal_box {
		width:70%;
		margin-left:-35%;
	}
}

@media only screen and (max-width:1023px) { 
	.box {
		float:none;
		width:52.7%;
		height:auto;
		margin-left:auto !important;
		margin-right:auto !important;
		margin-bottom:20px;
		padding-top:20px;
	}
	.box > div {
		height:auto;
		position:relative;
		margin-top:0;
		padding-top:140px;
		padding-bottom:60px;
	}
	.box > div a.button {
		bottom:20px;
	}
}

@media only screen and (max-width:840px) {
	#header {
		height:80px;
	}
	#logo {
		height:80px;
		background-position:-60px top;
	}
	#logo a {
		top:4px;
		width:50px;
		height:33px;
	}
	#nav {
		height:62px;
	}
	#nav ul {
		position:fixed;
		top:62px;
		width:167px;
		overflow:hidden;
		height:100%;	
		padding:0;
		background:#9BC235;
		z-index:2;
		font-size:24px;
		left:-167px;
		-moz-transition: left 0.5s;
    	-ms-transition: left 0.5s;
    	-o-transition: left 0.5s;
    	-webkit-transition: left 0.5s;
    	transition: left 0.5s;
	}
	#nav ul.active {
		left:0px;
	}
	#nav > ul > li {
		float:none;
		margin-left:10px;
		margin-top:20px;
	}
	#nav > ul > li.menu-item-has-children > a::after { content:none; }	
	ul.sub-menu { display:none !important; }
	a#header_download { display:none; }
	a#mobile_menu {
		color:#fff;
		float:right;
		font-size:40px;
		margin-right:20px;
		margin-top:10px;
		position:relative;
		z-index:200;
	}
	#main {
		padding-top:62px;
	}
	ul#sidenav {
		width:115px;
		font-size:14px;
		line-height:18px;
	}
}

@media only screen and (max-width:640px) {
	#logo.search-visible {
		background-image:url(images/header.png);
	}
	#search_bar {
		top:62px;
		padding-top:15px;
	}
	#search_bar input[type="text"] {
		width:200px;
	}
	#search_bar input.submit {
		width:90px;
		margin-right:15px;
	}
	h1 {
		margin-top:20px;
		font-size:32px;
	}
	
	#slider li div {
		height:240px;
	}
	
	a.button {
		width:90%;
	}
	#content {
		width:90%;
	}
	body.home #content {
		margin-top:40px;
	}
	
	#boxes {
		margin-left:0;
		margin-right:0;
	}
	.box {
		width:90%;
	}
	
	#hero h1 {
		font-size:26px;
		margin-top:26px;
	}
	#hero h2 {
		font-size:20px;
	}
	body.page #content, body.blog #content, body.archive #content {
		margin-top:40px;
	}
	.button_group a.button {
		float:none;
		width:100%;
		margin-left:0;
		margin-right:0;
		margin-bottom:10px;
	}
	ul#sidenav {
		position:static;
		width:100%;
		margin-top:20px;
	}
	
	.accordion_group > a {
		font-size:15px;
		line-height:50px;
	}
	
	#footer_top {
		padding-top:40px;
		padding-bottom:40px;
	}
	#footer_top h2 {
		font-size:32px;
	}
	#footer_top p {
		width:90%;
		font-size:22px;
	}
	
	#footer {
		padding-top:40px;
	}
	#footer p {
		width:90%;
	}
	#footer a.button {
		width:90%;
	}
	#footer li {
		float:none;
	}
	#footer input {
		width:250px;
	}
	.menu-linkedin a {
		display:inline-block;
	}
	.modal_box {
		width:96%;
		margin-left:-48%;
		top:5px;
		font-size:15px;
		line-height:1.2em;
	}
	.modal_box > div {
		padding:14px;
	}
	.modal_box .nf-form-cont {
		width:100%;
	}
	.modal_box .nf-form-content {
		margin-top:0;
	}
	.textarea-container textarea {
		height:90px !important;
	}
	
}

@media only screen and (max-width:400px) {
	
	.accordion_group > a {
		font-size:14px;
		line-height:50px;
	}
	
}

@media only screen and (max-width:350px) {
	
	.accordion_group > a {
		font-size:12px;
		line-height:50px;
	}
	
	#post_attachments > a {
		font-size:14px;
		line-height:40px;
	}
	
}