/*------------------------------
=BASIC SETUP
------------------------------*/

/* Tell the browser to render HTML 5 elements as block */

html {}

footer, header, section, aside, nav, article {
	display: block;
}

body {
	font: 14px/22px Helvetica, Arial, sans-serif;
	display: flex;
	min-height: 100vh;
	flex-direction: column;
}

h1, h2 {
	font-size: 28px;
	/*line-height: 44px;*/
	padding: 22px 0;
}

h3 {
	font-size: 16px;
	line-height: 22px;
	padding: 22px 0;
}

p {
	padding-bottom: 22px;
}

#header-top{
}

#top-middle {
	width: 100%;
	padding-top: 45px;
	display: flex;
	flex-direction: column;
}

#company_name {
	text-align: left;
	padding-bottom: 10px;
	text-align: center;
	font-family: Helvetica;
	font-size: 5.2em;
	font-weight: bolder;
	letter-spacing: -5px;
	line-height: 60px;
}

#company_name a {
	color: #2E2E2E;
	text-decoration: none;
}

#company_slogan{
	flex: 1;
	text-align: center;
	font-size: 20px;
	margin: 10px 0 20px 0;
	padding-left: 600px;
	color: #7a7a7a;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

#header-menu-inner {
	display: flex;
	justify-content: center;
	background-color: #1ccfc9;
	height: 65px;
	line-height: 65px;
	font-size: 16px;
	vertical-align: middle;
	text-align: center;
}

#header-menu-inner div {
	flex: 1;
	flex-basis: 300px;
	flex-grow: 0;
}

#header-menu-inner a.active_menue { 
	color:#EEEEEE;
}

#header-menu-inner a {
	text-decoration: none;
	font-size: 18px;
	color: #2E2E2E;
}

#header-menu-inner a:hover {
	color: #fff;
}

/*This is the dark blueish strip below the horizontal main menu*/
#header-menu-bottom {
	padding: 4px;
	background-color: #007a85;
	background-image: url("dark-overlay.png");
}

/*------------------------------
=CONTENT AREA
------------------------------*/

#content {
	flex: 1;
}

.content-container {
	display: flex;
	margin-top: 40px;
	margin-bottom: 100px;
}

.content-container a {
	color: #555;
}

/*
	Nice hack to fit the background picture into the page
	and automatically adjust its surrounding div.
	padding-top must represent the dimensions of the picture:
	(img-height / img-width * width)
	(300 / 1600 * 100) = 18,75
*/
.content-title-image {
	padding-top: 18.75%;
	background-size:contain;
}

.content-container-centered {
	flex: 8;
	max-width: 1200px;
}

/*------------------------------
=FORM
------------------------------*/

#form-div {
	background-color:rgba(172,172,172,0.4);
	padding-left:35px;
	padding-right:35px;
	padding-top:35px;
	padding-bottom:50px;
	min-width: 300px;
	max-width: 450px;
	-moz-border-radius: 7px;
	-webkit-border-radius: 7px;
}

.feedback-input {
	color:#3c3c3c;
	font-family: Helvetica, Arial, sans-serif;
	font-weight:500;
	font-size: 18px;
	border-radius: 0;
	line-height: 22px;
	background-color: #fbfbfb;
	padding: 13px 13px 13px 54px;
	margin-bottom: 10px;
	width:100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	border: 3px solid rgba(0,0,0,0);
}

.feedback-input:focus{
	background: #fff;
	box-shadow: 0;
	border: 3px solid #00cfaa;
	color: #000000;
	outline: none;
	padding: 13px 13px 13px 54px;
}

.focused{
	color:#30aed6;
	border:#30aed6 solid 3px;
}

.feedback-input:invalid {
	box-shadow: none;
}

/* Icons ---------------------------------- */
#name{
	background-image: url(/icons/name.svg);
	background-size: 30px 30px;
	background-position: 11px 8px;
	background-repeat: no-repeat;
}

#email{
	background-image: url(/icons/email.svg);
	background-size: 30px 30px;
	background-position: 11px 8px;
	background-repeat: no-repeat;
}

#comment{
	background-image: url(/icons/comment.svg);
	background-size: 30px 30px;
	background-position: 11px 8px;
	background-repeat: no-repeat;
}

textarea {
	width: 100%;
	height: 150px;
	line-height: 150%;
	resize:vertical;
}

input:hover, textarea:hover,
input:focus, textarea:focus {
	background-color:white;
}

.button-blue{
	font-family: Arial, Helvetica, sans-serif;
	float:left;
	width: 100%;
	border: #fbfbfb solid 4px;
	cursor:pointer;
	background-color: #1ccfc9;
	color:white;
	font-size:24px;
	padding-top:22px;
	padding-bottom:22px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	margin-top:-4px;
	font-weight:700;
	-webkit-appearance: none;
	border-radius: 0;
}

.button-blue:hover{
	background-color: rgba(0,0,0,0);
	color: #1ccfc9;
}
	
.submit:hover {
	color: #1ccfc9;
}
	
.ease {
	width: 0px;
	height: 74px;
	background-color: #fbfbfb;
	-webkit-transition: .3s ease;
	-moz-transition: .3s ease;
	-o-transition: .3s ease;
	-ms-transition: .3s ease;
	transition: .3s ease;
}

.submit:hover .ease{
	width:100%;
	background-color:white;
}

.home-textbox {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 -20px;
}

.home-paragraph {
	flex: 1;
	min-width: 180px;
	max-width: 500px;
	padding: 0 20px 0 20px;
}

#news div h2 {
	margin-left: -40px;
}

#news-ngo-logos {
	display: flex;
	flex-wrap: wrap;
	margin: 20px 0 20px 0;
}

#urungano-pic {
	flex: 1;
	padding: 30px 30px 30px 0;
	min-width: 360px;
}

#urungano-text {
	flex: 1;
	min-width: 300px;
	font-family: monospace;
	font-style: italic;
}

/*------------------------------
=FOOTER
------------------------------*/
footer {
	display: flex;
	position: relative;
	background: #2e2e2e;
	background: -webkit-linear-gradient(top, #0f0f0f, #2e2e2e);
	background: -moz-linear-gradient(top, #0f0f0f, #2e2e2e);
	background: -ms-linear-gradient(top, #0f0f0f, #2e2e2e);
	background: -o-linear-gradient(top, #0f0f0f, #2e2e2e);
	background-image: -ms-linear-gradient(top, #0f0f0f 0%, #2e2e2e 100%);
}

footer #footer-body {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	flex: 8;
	max-width: 1200px;
	padding-top: 40px;
	padding-bottom: 20px;
	margin: 0 -20px;
	color: #777;
}

#footer-shortcuts, #footer-about, #footer-carbonneutral {
	font-size:16px;
	color: #999;
	min-width: 180px;
	max-width: 500px;
	padding: 0 20px 0 20px;
}

#footer-shortcuts a {
	text-decoration: none;
	font-size:14px;
}

#footer-copyright {
	position: absolute;
	right: 0;
	bottom: 0;
	color: #777;
}

footer h3 {
	color: #FFF;
}

footer a {
	color: #999;
}

footer a:hover {
	color: #FFF;
	text-decoration: none;
}

footer ul {
	margin: 0 0 0 40px;
	list-style: square;
	color: #565656;
}

footer ul li a {
	display: block;
	color: #999;
}

/*------------------------------
=LARGE SCREENS, LOW PPI
------------------------------*/

@media only screen and (min-width: 810px) and (max-resolution: 150dpi) {

	body {
		font-size: 16px;
	}

	h3 {
		font-size: 20px;
	}
}

/*------------------------------
=MEDIUM SCREEN
------------------------------*/

@media only screen and (max-width: 810px) {

	body {
		font-size: 14px;
	}

	h3 {
		font-size: 18px;
	}

	#company_name {
		padding: 0;
		font-size: 3.2em;
		line-height: 30px;
	}

	#company_slogan{
		font-size: 16px;
		padding-left: 0px;
	}

	#header-menu-inner a {
		font-size: 14px;
	}

	#footer-body {
		flex-direction: column;
	}

	.home-textbox {
		flex-direction: column;
	}

	.home-paragraph {
		max-width: 100%;
	}

	#news div h2 {
		margin-left: -20px;
	}

	#urungano-pic {
		padding: 0 0 30px 0;
		min-width: 300px;
	}
}

/*------------------------------
=SMALL SCREEN
------------------------------*/

@media only screen and (max-width: 420px) {
	#news div h2 {
		margin-left: 0px;
	}

	#news-ngo-logos {
		margin: 0;
	}
}