/* BASIC SETUP */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}
html {
	background: #FFFFFF;
	height: 100%; min-height: 43em;
	position: relative;
}
body {
	color: #000000;
	font-family: 'Ropa Sans', Arial, Helvetica, sans-serif;
	font-size: 1em;
	overflow-x: hidden;
	min-height: 100%;
	margin: 0;
	padding: 0;
	position: relative;
}

/* useful styles */
.hr hr {
	display: none;
}
.hr, hr {
	border: 0;
	border-bottom: 1px solid #CCCCCC;
	margin: 1.5em 0;
}
.error {
	color: #FF0000;
}
.small {
	font-size: 0.75em;
}

/* responsive */
.desktop {
	display: block !important;
}
span.desktop {
	display: inline !important;
}
table.desktop {
	display: table !important;
}
col.desktop {
	display: table-column !important;
}
th.desktop,
td.desktop {
	display: table-cell !important;
}
tr.desktop {
	display: table-row !important;
}
.mobile,
span.mobile,
table.mobile,
col.mobile,
th.mobile,
td.mobile,
tr.mobile {
	display: none !important;
}

/* alignment */
.align-left {
	text-align: left !important;
}
.align-center {
	text-align: center !important;
}
.align-right {
	text-align: right !important;
}
.valign-top {
	vertical-align: top !important;
}
.valign-middle {
	vertical-align: middle !important;
}
.valign-bottom {
	vertical-align: bottom !important;
}
.clear {
	clear: both;
	display: block;
	font-size: 0;
	line-height: 0;
	height: 0px;
}
.clearafter:after {
	content: '';
	clear: both;
	display: block;
}
.float-left {
	float: left;
}
.float-right {
	float: right;
}


/* common elements */
p {
	line-height: 1.4em;
	margin-bottom: 1em;
}
img {
	border: 0;
}
a {
	color: #555555;
	text-decoration: none;
}
a:hover {
	color: #777777;
}


/* Headings */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	font-weight: bold;
	margin: 1em 0;
}
h1, .h1 {
	font-size: 1.9em;
}
h2, .h2 {
	font-size: 1.6em;
}
h3, .h3 {
	font-size: 1.3em;
}
h4, h5, h6, .h4, .h5, .h6 {
	font-size: 1em;
}
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
	margin-top: 0;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	color: inherit;
}




/* ----------------------------- PAGE STRUCTURE ----------------------------- */
h1.main-heading {

}
	h1.main-heading a {
		color: #FFFFFF;
		display: block;
		padding: .6em 0 .6em 1.5em;
		position: relative; left: 0;
		text-transform: uppercase;
		transition: all .3s ease;
	}
	h1.main-heading a:hover {
		left: -5px;
	}
	h1.main-heading a:before {
		background: url('../images/heading-shape.svg') center left/auto 100% no-repeat transparent;
		content: '';
		display: block;
		pointer-events: none;
		position: absolute; left: -1px; top: -1px; bottom: -1px;
		white-space: nowrap;
		width: 3em;
		z-index: 2;
	}
	h1.main-heading a:after {
		background: rgb(114,181,66);
		background: -moz-linear-gradient(left, rgba(114,181,66,1) 0%, rgba(38,164,62,1) 25%, rgba(38,164,62,1) 100%);
		background: -webkit-linear-gradient(left, rgba(114,181,66,1) 0%,rgba(38,164,62,1) 25%,rgba(38,164,62,1) 100%);
		background: linear-gradient(to right, rgba(114,181,66,1) 0%,rgba(38,164,62,1) 25%,rgba(38,164,62,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#72b542', endColorstr='#26a43e',GradientType=1 );
		content: '';
		position: absolute; left: 0; top: 0; bottom: 0;
		width: 100vw;
		z-index: -1;
	}

.large-paragraph {
	font-size: 1.2em;
	font-weight: bold;
}


#root {
	display: block;
	padding: 3em 10%;
	width: 100%; height: 100%;
	position: relative;
}

#column {
	margin: 0 auto;
	max-width: 1000px;
}

.left-column {
	float: left;
	width: 50%;
}
	.logo {
		background: #FFFFFF;
		display: block;
		margin: 0 0 2em;
		position: relative;
		width: 70%; max-height: 20em;
		z-index: 2;
	}

.right-column {
	float: right;
	width: 50%;
}
	.contact {
		font-size: 1.6em;
	}

.building {
	display: block;
	position: absolute; bottom: 0; left: 0;
	width: 50%; max-width: 550px;
	z-index: -1;
}

.copyright {
	position: absolute;
	bottom: 15px;
	right: 15px;
}


/* FANCYBOX PAGE
body.popup {
	background-image: none;
 }
	.popup-root {

	}*/.columns { 
	margin: 0 -.6em; 
}
.columns.tight { 
	margin: 0 -.3em; 
}
.columns:after { 
	clear: both; 
	content: ''; 
	display: block; 
}

.c10, .c15, .c16, .c20, .c25, .c30, .c33, .c40, .c50, .c60, .c66, .c75, .c70, .c80, .c83, .c90, .c100 { 
	float: left;
	position: relative;
	min-height: 1px;
}
.c10 { width: 10%; }
.c15 { width: 15%; }
.c16 { width: 16.66%; }
.c20 { width: 20%; }
.c25 { width: 25%; }
.c30 { width: 30%; }
.c33 { width: 33.33%; }
.c40 { width: 40%; }
.c50 { width: 50%; }
.c60 { width: 60%; }
.c66 { width: 66.66%; }
.c70 { width: 70%; }
.c75 { width: 75%; }
.c80 { width: 80%; }
.c83 { width: 83.33%; }
.c90 { width: 90%; }
.c100 { width: 100%; }

.columns > .c10, .columns > .c15, .columns > .c16, .columns > .c20, .columns > .c25, .columns > .c30, .columns > .c33, .columns > .c40, .columns > .c50, .columns > .c60, .columns > .c66, .columns > .c70, .columns > .c75, .columns > .c80, .columns > .c83, .columns > .c90,.columns > .c100 { 
	padding: 0 .6em;
}

.columns.tight > .c10, .columns.tight > .c15, .columns.tight > .c20, .columns.tight > .c25, .columns.tight > .c30, .columns.tight > .c33, .columns.tight > .c40, .columns.tight > .c50, .columns.tight > .c60, .columns.tight > .c66, .columns.tight > .c70, .columns.tight > .c75, .columns.tight > .c80, .columns.tight > .c83, .columns.tight > .c90, .columns.tight > .c100 { 
	padding: 0 .3em;
}

.c10.float-right, .c15.float-right, .c20.float-right, .c25.float-right, .c30.float-right, .c33.float-right, .c40.float-right, .c50.float-right, .c60.float-right, .c66.float-right, .c70.float-right, .c75.float-right, .c80.float-right, .c90.float-right, .c100.float-right { 
	float: right;
}




/* mobile */
@media only screen and (max-width: 480px) {
	
	.columns, 
	.columns.tight { 
		margin: 0 -.3em; 
	}
	
	.cm10, .cm15, .cm16, .cm20, .cm30, .cm33, .cm40, .cm50, .cm60, .cm66, .cm70, .cm80, .cm83, .cm90, .cm100 { 
		float: left; 
		min-height: 1px; 
	}
	.cm10 { width: 10%; }
	.cm15 { width: 15%; }
	.cm16 { width: 16.66%; }
	.cm20 { width: 20%; }
	.cm25 { width: 25%; }
	.cm30 { width: 30%; }
	.cm33 { width: 33.33%; }
	.cm40 { width: 40%; }
	.cm50 { width: 50%; }
	.cm60 { width: 60%; }
	.cm66 { width: 66.66%; }
	.cm70 { width: 70%; }
	.cm75 { width: 75%; }
	.cm80 { width: 80%; }
	.cm80 { width: 80%; }
	.cm83 { width: 83.33%; }
	.cm100 { width: 100%; }
	
	.columns > .cm10, .columns > .cm15, .columns > .cm16, .columns > .cm20, .columns > .cm30, .columns > .cm33, .columns > .cm40, .columns > .cm50, .columns > .cm60, .columns > .cm66, .columns > .cm70, .columns > .cm80, .columns > .cm83, .columns > .cm90, .columns > .cm100 {
		padding: 0 .3em; 
	}
	
	/* desktop columns respond */
	.columns > .c10, .columns > .c15, .columns > .c16, .columns > .c20, .columns > .c25, .columns > .c30, .columns > .c33, .columns > .c40, .columns > .c50, .columns > .c60, .columns > .c66, .columns > .c70, .columns > .c75, .columns > .c80, .columns > .c83, .columns > .c90, .columns > .c100, .columns.tight > .c10, .columns.tight > .c16, .columns.tight > .c20, .columns.tight > .c25, .columns.tight > .c30, .columns.tight > .c33, .columns.tight > .c40, .columns.tight > .c50, .columns.tight > .c60, .columns.tight > .c66, .columns.tight > .c70, .columns.tight > .c75, .columns.tight > .c80, .columns.tight > .c83, .columns.tight > .c90, .columns.tight > .c100 { 
		padding: 0 .3em; 
	}
	
	/* mid columns respond */
	.columns > .cr10, .columns > .cr15, .columns > .cr16, .columns > .cr20, .columns > .cr25, .columns > .cr30, .columns > .cr33, .columns > .cr40, .columns > .cr50, .columns > .cr60, .columns > .cr66, .columns > .cr70, .columns > .cr75, .columns > .cr80, .columns > .cr83, .columns > .cr90, .columns > .cr100, .columns.tight > .cr10, .columns.tight > .cr16, .columns.tight > .cr20, .columns.tight > .cr25, .columns.tight > .cr30, .columns.tight > .cr33, .columns.tight > .cr40, .columns.tight > .cr50, .columns.tight > .cr60, .columns.tight > .cr66, .columns.tight > .cr70, .columns.tight > .cr75, .columns.tight > .cr80, .columns.tight > .cr83, .columns.tight > .cr90, .columns.tight > .cr100 { 
		padding: 0 .3em; 
	}
	
}


@media only screen and (min-width: 480px) and (max-width: 800px) {
	
	.columns { 
		margin: 0 -.2em; 
	}
	
	.cr10, .cr16, .cr20, .cr30, .cr33, .cr40, .cr50, .cr60, .cr66, .cr70, .cr80, .cr83, .cr90, .cr100 { 
		float: left; 
		min-height: 1px; 
	}
	.cr10 { width: 10%; }
	.cr15 { width: 15%; }
	.cr16 { width: 16.66%; }
	.cr20 { width: 20%; }
	.cr25 { width: 25%; }
	.cr30 { width: 30%; }
	.cr33 { width: 33.33%; }
	.cr40 { width: 40%; }
	.cr50 { width: 50%; }
	.cr60 { width: 60%; }
	.cr66 { width: 66.66%; }
	.cr70 { width: 70%; }
	.cr75 { width: 75%; }
	.cr80 { width: 80%; }
	.cr83 { width: 83.33%; }
	.cr90 { width: 90%; }
	.cr100 { width: 100%; }
	
	.columns > .cr10, .columns > .cr15, .columns > .cr16, .columns > .cr20, .columns > .cr30, .columns > .cr33, .columns > .cr40, .columns > .cr50, .columns > .cr60, .columns > .cr66, .columns > .cr70, .columns > .cr80, .columns > .cr83, .columns > .cr90, .columns > .cr100 {
		padding: 0 .2em; 
	}
	
	/* desktop columns respond */
	.columns > .c10, .columns > .c15, .columns > .c16, .columns > .c20, .columns > .c25, .columns > .c30, .columns > .c33, .columns > .c40, .columns > .c50, .columns > .c60, .columns > .c66, .columns > .c70, .columns > .c75, .columns > .c80, .columns > .c83, .columns > .c90, .columns > .c100, .columns.tight > .c10, .columns.tight > .c16, .columns.tight > .c20, .columns.tight > .c25, .columns.tight > .c30, .columns.tight > .c33, .columns.tight > .c40, .columns.tight > .c50, .columns.tight > .c60, .columns.tight > .c66, .columns.tight > .c70, .columns.tight > .c75, .columns.tight > .c80, .columns.tight > .c83, .columns.tight > .c90, .columns.tight > .c100 { 
		padding: 0 .2em; 
	}
	
}form { 
	margin: 2em 0;
}
fieldset { 
	border: 0; 
}

input, 
textarea { 
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	font-family: 'Ropa Sans', Arial, Helvetica, sans-serif;
	font-size: 1em; 
}

input[type="text"], 
input[type="email"], 
input[type="search"], 
input[type="password"], 
.select-style,
textarea { 
	-webkit-appearance: none;
	border: 1px solid #CCCCCC; 
	border-radius: 0; 
	display: inline-block; 
	margin: .3em 0; 
	padding: .5em; 
	vertical-align: middle; 
}
textarea { 
	min-height: 8em; 
}

::-webkit-input-placeholder {
	color: #707070;
}
:-moz-placeholder {
	color: #707070;
	opacity: 1;
}
::-moz-placeholder {
	color: #707070;
	opacity: 1;
}
:-ms-input-placeholder {
	color: #707070;
}

select { 
	border: 1px solid #CCCCCC;
	font-size: 1em;
	vertical-align: middle;
	width: 100%; 
}
	select option {
		padding: .5em;
	}



/* submit, button */
input[type="submit"], 
input[type="button"] { 
	-webkit-appearance: none;
	background: #13a538;
	border: 0;
	border-radius: 1em;
	color: #FFFFFF;
	cursor: pointer;
	display: inline-block; 
	font-size: 1.2em;
	margin: .3em 0;
	padding: .3em 1em;
	text-transform: uppercase;
	transition: all .3s ease;
	width: auto; 
	vertical-align: middle;
}
input[type="submit"]:hover, 
input[type="button"]:hover { 
	background-color: #95c11f; 
}

/* image */
input[type="image"] { 
	background: transparent;
	border: 0;
	border-radius: 0;
	cursor: pointer;
	display: block;
	height: 2.1em;
	margin: .3em 0;
	padding: .5em;
	width: auto; 
	vertical-align: middle;
}
input[type="image"]:hover { 
	opacity: .8;
}




/* select style (requires wrapper .select-style) */
.select-style {
	padding: 0;
	margin: .3em 0;
	overflow: hidden;
	position: relative;
	vertical-align: middle;
}
	.select-style select {
		-webkit-appearance: none;
		background: none;
		border: 0;
		display: block;
		padding: .5em;
		position: relative;
		width: calc(100% + 2em);
	}
		.select-style select option {
			padding: 0;
		}
	.select-style:after {
		background: url(../images/arrow-down.svg) center/60% auto no-repeat #FFFFFF;
		content: '';
		display: block;
		height: 100%;
		pointer-events: none; 
		position: absolute;
		right: 0;
		top: 0;
		width: 2em;
	}


label {
	display: inline-block; 
	font-size: .8em;
	margin: .3em 0;
	padding-right: 1em;
	width: 100px;
}
table label { width: auto; }


/* inputs widths (easily indent against labels) */
input[type="text"], 
input[type="email"], 
input[type="search"], 
input[type="password"], 
textarea,
select,
.select-style {
	width: calc(100% - 110px); 
}
table input[type="text"], 
table input[type="email"], 
table input[type="search"], 
table input[type="password"], 
table textarea,
table select,
table .select-style {
	width: 100%; 
}





form.formhandler {
	max-width: 600px;
}

	form.formhandler fieldset {
		border-style: none;
		clear: both;
		margin: 0 0 1.5em 0;
		padding: 0;
		
	}
		
		form.formhandler legend {
			display: none;
		}
		
		form.formhandler fieldset ol {
			margin: 0 !important;
			list-style: none;
		}
		
			form.formhandler fieldset li {
				float: left;
				clear: left;
				width: 100%;
			}
				
				form.formhandler fieldset.submit input {
					margin-left: 110px;
				}

				form.formhandler label.inline, 
				form.formhandler label.checkbox {
					display: inline;
					float: none;
					margin: 0;
					width: auto;
				}
				
				form.formhandler input[type="checkbox"] {
					margin: 1em 0 1em 0;
				}
				
				form.formhandler fieldset.radio {  
					margin-left: 110px;
					padding: .5em 0;
				}
				
				/* nested fieldsets */
				form.formhandler fieldset fieldset {
					margin-bottom: 0;
					border-style: none;
					background-color: transparent;
					background-image: none;
				}
				
				form.formhandler fieldset fieldset label.legend {
					margin-bottom: 1em;
					vertical-align: top;
				}
				
				form.formhandler fieldset fieldset ol {
					display: inline-block;
					position: relative;
					vertical-align: top;
				}
				
				form.formhandler fieldset fieldset ol label {
					float: none;
					width: auto;
					margin-right: auto;
				}
p.inset-left {
	display: block;
	float: left;
	margin: 0 30px 30px 0;
	position: relative;
}
p.inset-right {
	display: block;
	float: right;
	margin: 0 0 30px 30px;
	position: relative;
}
h1.green-center {
	color: #008000;
	text-align: center;
	font-size: 2em;
	font-weight: bold;
}
/* mobile */
@media only screen and (max-width: 480px) {

body { 
	font-size: .8em;
	-webkit-text-size-adjust: 100%;
}

.mobile { 
	display: block !important; 
}
span.mobile { 
	display: inline !important; 
}
table.mobile {
	display: table !important; 
}
col.mobile { 
	display: table-column !important; 
}
th.mobile, td.mobile { 
	display: table-cell !important; 
}
tr.mobile { 
	display: table-row !important; 
}
.desktop, span.desktop, table.desktop, col.desktop, th.desktop, td.desktop, tr.desktop { 
	display: none !important; 
}



/* ----------------------------- PAGE STRUCTURE ----------------------------- */
h1.main-heading {
	
}

.large-paragraph {
	
}


#root {
	
}

#column {
	
}

.left-column {
	float: none;
	width: auto;
}
	.logo {
		
	}

.right-column {
	float: none;
	width: auto;
}
	.contact {
		
	}

.building {
	position: static;
	width: 100%; max-width: none;
}



}