@charset "utf-8";
/* CSS Document */

/* colors
	bright green: #8cc53f;
	text green: #75a732;
	accent orange-red: #d75245; (h2)
*/

/* RESETS */
* {
	box-sizing:border-box;	
}
img { height:auto; max-width:100%; }
h2, h3, h4, p {
	margin:0;
	line-height:1.32;
}



/* STRUCTURE */
body { margin:0; padding:0; }
header, #mainwrap, footer {
	width:1260px;
	max-width:90%;
	margin:0 auto;	
}

header img, header .header-content {
	
}
nav ul, nav li {
	list-style-type:none;
	padding:0;
	margin:0;
}
header nav a {
	display:block;
}
header nav a:hover {
	border-color: #8cc53f;
	text-decoration:none;
}
header nav li:first-child a { margin-left:0; }
.hero {
	background:#8cc53f;
}
.hero img {
	width:100%;
	max-width:1440px;
	margin:0 auto;
	display:block;
}
#mainwrap {
	
	
}
.footer-container {
	background:#8cc53f;
	border-top:8px solid #fff;
	box-shadow:0 -1px 0 0 #8cc53f;
}
footer {
	color:#fff;
}

/* TYPOGRAPHY */

body {
	font-family:"Cronos Pro","Lucida Sans Unicode", "Lucida Grande", sans-serif;
	font-size:1.4em;	
}
a { 
	color:#8cc53f;
	text-decoration:none;
}
a:hover {
	text-decoration:underline;	
}
#pghm a.lkhm, #pghm a.lkhm:hover, #pghm a.lkhm:focus, #pgfeat a.lkfeat, #pgfeat a.lkfeat:hover, #pgfeat a.lkfeat:focus, #pgloc a.lkloc, #pgloc a.lkloc:hover, #pgloc a.lkloc:focus, #pgsol a.lksol, #pgsol a.lksol:hover, #pgsol a.lksol:focus, #pgcont a.lkcont, #pgcont a.lkcont:hover, #pgcont a.lkcont:focus {
	color:#aaa;
	text-decoration:none;
	cursor:default;
	border-color:transparent;	
}
#mainwrap a { color:#75a732; }
footer a { color:#fff; }

nav {
	text-transform:uppercase;	
}
header {
	color:#8cc53f;	
}
header nav {
	font-size:.727em;	
}
p.site {
	font-size:1.5em;
	clear:left;
}
p.tagline {
	color:#555;
	font-style:italic;
	font-size:.909em;
}
p.phone {
	font-size:1.82em;	
}
h1 {
	color:#75a732;
	font-weight:normal;
	font-size:1.27em;
	padding-bottom:.4em;
	margin:0;
}
h1 span {
	display:block;
	font-style:italic;	
}
h2 {
	font-size:1.15em;
	font-weight:normal;
	font-style:italic;
	border-bottom:1px solid #ccc;
	margin-bottom:.3em;
	padding:.4em 0 0;
	color:#d75245;
}
.maintext p {
	padding:.32em 0;
}
footer {
	font-size:.7em;	
}
.credit {
	font-style:italic;
	text-align:right;
	padding:1em 0 0;
}

/* CONTACT FORM */

.contactform {
	
}
.contactform fieldset {
	background:#75a732;
	margin-bottom:2px;
}
.contactform label {
	text-transform: uppercase;
	font-size:.7em;
	width:18%;
	min-width:100px;
	display:inline-block;
	color:#fff;
}
.contactform fieldset input {
	width:25%;
	min-width:150px;
}
.contactform fieldset.mssg label {
	float:left;
	padding-top:4px;
}
.contactform textarea {
	width:75%;	
}
@media screen and (max-width:479px) {
	body {
		font-size:.95em;
	}
	header { 
	padding:8px 0; 
	}
	header .logo {
		width:105px;
		display:block;
		float:left;
	}
	.header-content {padding-left:15px;}
	.menubox { float:right; }
	header nav a {
	display:block;
	/* float:left; */
	margin:0 0 1px;
	padding:2px 0;
	border-top:1px solid transparent;
	border-bottom:1px solid transparent;
	}
	p.site {clear:both; }
	#mainwrap {padding:15px 8px;}
	.img-themes img {
		display:block;
		margin: 0 auto 15px;
	}
	footer {
		padding:8px 0 12px;
	}
}
@media screen and (max-width:514px) {
	.contactform textarea {
	width:100% !important;
	clear:left;
	}
}
@media screen and (min-width:480px) {
	header {
	display:flex;	
	}
	.logo { align-self:center; }
	
	nav ul, nav li {
	display:inline; }
	header nav a {float:left;}
}
@media screen and (min-width:480px) and (max-width:799px) {
	body {
		font-size:1.1em;
	}
	header { padding:10px 0; }
	header .logo {
		width:135px;
		margin:0 auto;
	}
	.header-content {padding-left:15px;}
	header nav a {
	display:block;
	margin:0 4px 1px;
	padding:2px 0;
	border-top:2px solid transparent;
	border-bottom:2px solid transparent;
	}
	header nav li:first-child a { margin-left:-10px; }
	#mainwrap {padding:20px 10px;}
	.img-themes img {
		display:block;
		margin: 0 auto 18px;
	}
	footer {
		padding:8px 0 15px;
	}
}


@media screen and (max-width:799px) {
	label.btn-label {
		padding:16px 200px 0 22px;
		position:relative;
		text-transform:uppercase;
		font-size:.85em;
		background:url(/images/icon_mobile_menu.png) left center no-repeat;
	}
	label.btn-label span {
		position:absolute;
		bottom:8px;
	}
	
	input[type=checkbox].menu_btn {
	margin-left:-280px;
	width:280px;
	opacity:0;
	height:3em;
	padding:30px 0 20px;
}
	.menubox input[type=checkbox] + #navblock {height:0; position:absolute; left:-490px; transition:all 1.2s ease; }
	.menubox input[type=checkbox]:checked + #navblock { height:auto; position:relative;left:10px; }
	.menubox a {position:relative;}
	.menubox a:hover::before,.menubox a:active::before,.menubox a:focus::before,.menubox a:target::before {
			content:'';
			position:absolute;
			left:0;
			top:0;
			width:100%;
			height:100%;
	}
	p.site { line-height:1; }
}
@media screen and (min-width:800px) {
	header {
		padding:45px 0;	
	}
	.header-content {
		padding-left:52px;	
	}
	.menubox label, .menubox input#menu-btn { display:none; }
	header nav a {
	display:block;
	float:left;
	margin:5px 8px;
	padding:4px 0;
	border-top:4px solid transparent;
	border-bottom:4px solid transparent;
	}
	p.site { margin-top:55px !important; }
	#mainwrap {
		display:flex;
		padding:30px 0;
	}
	.img-themes {
		width:29%;
		margin-right:5%;
	}
	.img-themes img {
		margin-bottom:15px;
	}
	article.maintext {
		width:71%;	
	}
	footer {
		padding:10px 0 25px;
	}
	footer a { margin-right:8px; }
}