@charset "UTF-8";

/*Modern browser CSS reset*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0px;
    padding: 0px;
    border: 0px;
    border-image-source: initial;
    border-image-slice: initial;
    border-image-width: initial;
    border-image-outset: initial;
    border-image-repeat: initial;
    outline: 0px;
    font-weight: inherit;
    font-style: inherit;
    font-size: 100%;
    font-family: inherit;
    vertical-align: baseline;
}

a:active, a:hover {
	outline: 0;
}

@-webkit-viewport { width: device-width; }
@-moz-viewport { width: device-width; }
@-ms-viewport { width: device-width; }
@-o-viewport { width: device-width; }
@viewport { width: device-width; }

/*Font styles*/
@font-face {
	font-family: 'Raleway-Medium';
	src: url('fonts/raleway/Raleway-Medium.ttf') format('truetype');
}

@font-face {
	font-family: 'Raleway-Bold';
	src: url('fonts/raleway/Raleway-Bold.ttf') format('truetype');
}

/*Responsive nav styles*/
.nav-collapse ul {
	margin: 0;
	padding: 0;
	width: 100%;
	display: block;
	list-style: none;
}

.nav-collapse li {
	width: 100%;
	display: block;
}

.js .nav-collapse {
	clip: rect(0 0 0 0);
	max-height: 0;
	position: absolute;
	display: block;
	overflow: hidden;
	zoom: 1;
}

.nav-collapse.opened {
	max-height: 9999px;
}

.disable-pointer-events {
	pointer-events: none !important;
}

.nav-toggle {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
}

@media screen and (min-width: 40em) {
	.js .nav-collapse {
		position: relative;
	}
	.js .nav-collapse.closed {
		max-height: none;
	}
	.nav-toggle {
		display: none;
	}
}

/*Generic sheet styles*/
body, h1, h2, p, a, form, input, textarea, button {
	font-family: 'Raleway-Medium', sans-serif;
}

strong {
	font-family: 'Raleway-Bold', sans-serif;
}

* {
	-webkit-font-smoothing: antialiased;
}

body {
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	color: #000;
	background: #fff;
	font-size: 14px;
}

h1 {
	padding-bottom: 0.8em;
	font-weight: bold;
	font-size: 1.2em;
	color: #00d600;
}

p {
	padding: 0.5em 0 1em 0;
	color: #666;
}

img {
	vertical-align: middle;
	margin: 0 auto;
}

.text-link, .button {
	text-decoration: none;
}

.text-link {
	color: #444;
	-webkit-transition: .5s ease;
	-moz-transition: .5s ease;
	-o-transition: .5s ease;
	-ms-transition: .5s ease;
	transition: .5s ease;
}

.text-link:hover {
	color: #00d600;
	-webkit-transition: .5s ease;
	-moz-transition: .5s ease;
	-o-transition: .5s ease;
	-ms-transition: .5s ease;
	transition: .5s ease;
}

button { 
	background: transparent;
	border: 0.1em solid #666;
	-webkit-border-radius: 0.1em;
	-moz-border-radius: 0.1em;
	border-radius: 0.1em;
	padding: 0.5em 1.5em;
	cursor: pointer;
	margin-bottom: 2em;
	color: #666;
	-webkit-transition: .5s ease;
	-moz-transition: .5s ease;
	-o-transition: .5s ease;
	-ms-transition: .5s ease;
	transition: .5s ease;
}

button::-moz-focus-inner {
	border: 0;
}

button:focus, button:hover{
	border: 0.1em solid #fff;
	-webkit-border-radius: 0.1em;
	-moz-border-radius: 0.1em;
	border-radius: 0.1em;
	background: #00d600;
	color: #fff;
	-webkit-transition: .5s ease;
	-moz-transition: .5s ease;
	-o-transition: .5s ease;
	-ms-transition: .5s ease;
	transition: .5s ease;
	outline: none;
}

/*Header styles*/
#header-container{
	background: #fff;
	position: fixed;
	z-index: 3;
	left: 0;
	top: 0;
	width: 100%;
	-moz-box-shadow: 0 0 0 0.1em #666;
	-webkit-box-shadow: 0 0 0 0.1em #666;
	box-shadow: 0 0 0.1em #666;
}

#header-content {
	width: 100%;
}

#header-logo {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	text-decoration: none;
	font-weight: bold;
	line-height: 50px;
	color: #000;
	float: left;
	padding: 0.15em 0 0.15em 0.5em;
}

#header-logo img {
	max-height: 70%;
	max-width: 70%;
}

@media screen and (min-width: 40em) {
	#header-content {
		margin: 0 auto;
		width: 85%;
	}
	#header-logo {
		padding: 0.15em 0;
	}
}

.margin-wrap {
	text-align: justify;
	text-justify: inter-word;
	margin: 0 2em 0 2em;
}

/*Home styles*/
#home-container {
	padding-top: 2em 0;
}

#home-tag {
	width: 100%;
	font-size: 2em;
	margin: 0 auto;
	padding: 5.5em 0 3.5em 0;
	vertical-align: middle;
	text-align: center;
	background: url("../images/backgrounds/swirl-pattern.png") repeat;
	-moz-box-shadow: 0 0 0 0.05em #666;
	-webkit-box-shadow: 0 0 0 0.05em #666;
	box-shadow: 0 0 0.05em #666;
}

#home-tag-text {
	color: #00d600;
}

#upper-col-container {
	padding: 1.5em 0;
}

.upper-col-row div{
	padding: 0.5em 0;
}

#row-1-container .right-col, #row-2-container .left-col, 
	#row-3-container .right-col, #home-button-container {
		text-align: center;
	}

.helper {
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

#home-button-container {
	padding: 0.5em 0 0.5em 0;
}

#home-button {
	margin: 0 auto;
}

@media screen and (min-width: 40em) {
	.margin-wrap {
		width: 70%;
		margin: 0 auto;
	}
	#home-tag {
		font-size: 3em;
	}
	#upper-col-container, #lower-section-container,
		.upper-col-row {
			overflow: hidden;
	}
	.upper-col-row {
		height: 100%;
	}
	.left-col {
		width: 48%;
		float: left;
	}
	.right-col {
		width: 48%;
		float: right;
	}
}

/*How step styles*/
#how {
	padding: 2em 0 1.5em 0;
}

#step-container {
	background: url("../images/backgrounds/stacked-circles.png") repeat;
	-moz-box-shadow: 0 0 0 0.05em #666;
	-webkit-box-shadow: 0 0 0 0.05em #666;
	box-shadow: 0 0 0.05em #666;
}

.step-container {
	text-align: justify;
	text-justify: inter-word;
	vertical-align: middle;
}

.step-header {
	margin: 0 auto;
	color: #00d600;
	width: 60%;
}

.step-content {
	margin: 0 auto;
	color: #444;
	width: 60%;
}

@media screen and (max-width: 39.99em) {
	.step-header, .step-content {
		width: 80%;
	}
	#step-container img {
		opacity: 0;
		filter: alpha(opacity=0%);
	}
}

/*Contact form styles*/
#about {
	padding-top: 2em;
}

#about-img{
	text-align: center;
}

#about-img img {
	margin: 0 auto;
	padding-bottom: 1.5em;
}

#contact-form  {
	padding-top: 0.5em;
	vertical-align: middle;
}

form div + div {
	margin-top: 10px;
}

input, textarea {
	width: 95%;
	font-size: 1em;
	display: inline-block;
	color: #666;
	border: 0.1em solid #666;
	-webkit-border-radius: 0.1em;
	-moz-border-radius: 0.1em;
	border-radius: 0.10em;
	padding: 0.5em 0 0.5em 0.5em;
}

textarea{
	vertical-align: top;
	resize: vertical;
	overflow: scroll;
	height: 150px;
}

input:focus, textarea:focus{
	border: 0.1em solid #00d600;
	-moz-box-shadow: 0 0 0 0.1em #666;
	-webkit-box-shadow: 0 0 0 0.1em #666;
	box-shadow: 0 0 0.1em #666;
}

@media screen and (max-width: 39.99em) {
	#contact {
		-moz-box-shadow: 0 0 0 0.05em #666;
		-webkit-box-shadow: 0 0 0 0.05em #666;
		box-shadow: 0 0 0.05em #666;
		padding-top: 2em;
	}
	#contact, input, textarea {
		background: url("../images/backgrounds/stacked-circles.png") repeat;
	}
}

#message img{
	max-height: 6em;
}

/*Footer styles*/
#footer-container {
	background: #fff;
	z-index: 3;
	width: 100%;
	left: 0;
	bottom: 0;
	-moz-box-shadow: 0 0 0 0.1em #666;
	-webkit-box-shadow: 0 0 0 0.1em #666;
	box-shadow: 0 0 0.1em #666;
	padding: 0.5em 0;
}

#footer-content {
	width: 80%;
	text-align: center;
	margin: 0 auto;
	font-size: 0.9em;
}

.social {
	width: 200px;
	text-align:center;
	margin: 0 auto;
	padding: 0.2em 0 0.3em 0; 
}

.social-icon {
	display:inline-block;
	margin: 4px 2px 1%;
}

.social-icon a {
	overflow: hidden;
	display: block;
	padding: 0;
	width: 32px;
	height: 32px; 
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	background-position: center;
	background-size: cover;
}

.facebook-icon a {
	background: url("../images/icons/grey/facebook-grey.png") no-repeat;
}

.twitter-icon a {
    background: url("../images/icons/grey/twitter-grey.png") no-repeat;
}

.email-icon a {
    background: url("../images/icons/grey/email-grey.png") no-repeat; 
}

/*Nav styles*/
.fixed {
	position: fixed;
	width: 100%;
	left: 0;
	top: 0;
}

.nav-collapse, .nav-collapse * {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}

.nav-collapse,.nav-collapse ul {
	list-style: none;
	width: 100%;
	float: left;
}

@media screen and (min-width: 40em) {
	.nav-collapse {
		float: right;
		width: auto;
  }
}

.nav-collapse li {
	float: left;
	width: 100%;
}

@media screen and (min-width: 40em) {
	.nav-collapse li {
		width: auto;
  }
}

.nav-collapse a {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	text-decoration: none;
	background: rgba(0,0,0,0.2); /*background colour collapsed nav*/
	border-top: 1px solid #fff;
	padding: 0.7em 1em;
	color: #666;
	width: 100%;
	float: left;
}

.nav-collapse a:hover {
	background: #666;
	color: #fff;g
	-webkit-transition: .2s ease;
	-moz-transition: .2s ease;
	-o-transition: .2s ease;
	-ms-transition: .2s ease;
	transition: .2s ease;
}

.nav-collapse a:active, .nav-collapse .active a {
	background: #00d600;
	color: #fff;
}

@media screen and (min-width: 40em) {
	.nav-collapse a {
		padding: 1.4em 0.9em;
		text-align: center;
		border-top: 0;
		float: left;
		margin: 0;
		background: #fff;
  }
}

.nav-collapse ul ul a {
	padding-left: 2em;
}

@media screen and (min-width: 40em) {
	.nav-collapse ul ul a {
		display: none;
  }
}

/*Mask*/
.mask {
	-webkit-transition: opacity 300ms;
	-moz-transition: opacity 300ms;
	transition: opacity 300ms;
	background: rgba(0,0,0,0.1);
	visibility: hidden;
	position: fixed;
	opacity: 0;
	z-index: 2;
	bottom: 0;
	right: 0;
	left: 0;
	top: 0;
}

.android .mask {
	-webkit-transition: none;
	transition: none;
}

.js-nav-active .mask {
	visibility: visible;
	opacity: 1;
}

@media screen and (min-width: 40em) {
	.mask {
		display: none !important;
		opacity: 0 !important;
  }
}

/*Nav toggle styles*/
@font-face {
	font-family: "responsivenav";
	src:url("../images/icons/nav/responsivenav.eot");
	src:url("../images/icons/nav/responsivenav.eot?#iefix") format("embedded-opentype"),
	url("../images/icons/nav/responsivenav.ttf") format("truetype"),
	url("../images/icons/nav/responsivenav.woff") format("woff"),
	url("../images/icons/nav/responsivenav.svg#responsivenav") format("svg");
	font-weight: normal;
	font-style: normal;
}

.nav-toggle {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-decoration: none;
	text-indent: -300px;
	position: relative;
	overflow: hidden;
	width: 60px;
	height: 55px;
	float: right;
}

.nav-toggle:before {
	color: #666; /* Edit this to change the icon color */
	font: normal 28px/55px "responsivenav"; /* Edit font-size (28px) to change the icon size */
	text-transform: none;
	text-align: center;
	position: absolute;
	content: "\2261"; /* Hamburger icon */
	text-indent: 0;
	speak: none;
	width: 100%;
	left: 0;
	top: 0;
}

.nav-toggle.active:before {
	font-size: 24px;
	content: "\78"; /* Close icon */
}