﻿@charset "utf-8";
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: 0;
	padding: 0;
	border: 0;
	color: #2a2a2a;
	font-family: 'Roboto', Helvetica, Tahoma, Geneva, sans-serif;
	font-size: 16px;
	line-height: 1.4em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section { display: block; }
input, textarea, select {
	color: #2a2a2a;
	font-family: 'Roboto', Helvetica, Tahoma, Geneva, sans-serif;
	font-size: 14px;
	line-height: 1.4em;
	z-index: 0;
}
ol, ul, nav { list-style: none; }
ol.sc, ul.sc, nav.sc { list-style: disc; }
table {
    border-collapse: collapse;
    border-spacing: 0;
	width: 100%;
}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
::selection {
	color: #fff;
	background-color: #30b861;
}
::-moz-selection {
	color: #fff;
	background-color: #30b861;
}

.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }

/* a.dc: Besitz die Farbe des Textes */
a {
	position: relative;
	display: inline;
}
a:link,
a:visited,
menu a:link,
menu a:visited,
menu a.select:link,
menu a.select:visited {
	font-family: 'Roboto', Helvetica, Tahoma, Geneva, sans-serif;
	text-decoration: none;
	-webkit-transition: all 0.3s linear 0s;
	-moz-transition: all 0.3s linear 0s;
	transition: all 0.3s linear 0s;
}
a:link,
a:visited { color: #10a646; }
a.dc:link,
a.dc:visited {
	text-decoration: underline;
	color: #2a2a2a;
}
a:hover,
a:visited:hover,
a.dc:link:hover,
a.dc:visited:hover {
	text-decoration: underline;
	color: #30b861;
}
a:link:active,
a:visited:active,
a.dc:link:active,
a.dc:active { text-decoration: none; }

menu a:link,
menu a:visited {
	padding: 10px 18px;
	font-size: 16px;
	text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.1);
	/*text-transform: uppercase;*/
	color: #fff;
	border: none;
}
menu a:hover,
menu a:visited:hover {
	text-decoration: none;
	text-shadow: none;
	color: #30b861;
	background-color: #393939;
}
menu a.select:link,
menu a.select:visited {
	padding: 12px 20px;
	font-size: 14px;
	font-weight: 700;
	text-shadow: none;
	text-transform: uppercase;
	color: #30b861;
	background-color: #393939;
}
menu a.select:hover,
menu a.select:visited:hover {
	text-decoration: none;
	color: #30b861;
}
footer a:link,
footer a:visited { color: #fff; }
footer a:hover,
footer a:visited:hover {
	text-decoration: underline;
	color: #30b861;
}

th {
	padding: 12px 20px;
	color: #545454;
	background-color: #eeeeee;
	border: 1px solid #e1e1e1;
}
td {
	padding: 12px 20px;
	background-color: #fff;
	border: 1px solid #e1e1e1;
}
tr.slc:nth-child(2n+1) td,
tr.slc:nth-child(2n+1) th { background-color: #f7f7f7; }
.table {
	width: 100%;
	text-align: left;
}
.table th,
.table td {
	width: 25%;
	background: transparent;
	border: none;
	border-bottom: 1px solid #d8d8d8;
}
tr.slc th {
	width: 25%;
	border-top: 1px solid #d8d8d8;
}

.heading-0 {
	margin-top: 56px;
	margin-bottom: 74px;
}
.heading-0 .head-text {
	margin-bottom: 16px;
	font-weight: 300;
	color: #414141;
}
.heading-0 .inner-text {
	font-weight: 300;
	text-transform: uppercase;
	color: #9c9c9c;
}
.heading-0 h5.head-text { font-size: 36px; }

.text-column {
    display: inline-block;
    width: 50%;
}

.one-half .first {
	display: inline-block;
	width: 48%;
	margin-right: 1%;
}
.one-half .second {
	display: inline-block;
	width: 48%;
	margin-left: 1%;
}
.two-third .first {
	display: block;
	width: 24%;
	margin-right: 1%;
	float: left;
}
.two-third .second {
	display: block;
	width: 74%;
	margin-left: 1%;
	float: left;
}
.one-third .first {
	display: block;
	width: 32%;
	margin-right: 1%;
	float: left;
}
.one-third .second {
	display: block;
	width: 32%;
	margin-left: 1%;
	margin-right: 1%;
	float: left;
}
.one-third .third {
	display: block;
	width: 32%;
	margin-left: 1%;
	float: left;
}

.highlight { padding: 1px 4px; }
.dark-5b5b5b {
	color: #fff;
	background-color: #5b5b5b;
}

.dropcap {
	margin-right: 10px;
	font-size: 36px;
	font-weight: 700;
	text-align: left;
	text-transform: uppercase;
	line-height: 36px;
	float: left;
}

.splitter {
	margin-top: 20px;
	margin-bottom: 15px;
	border-bottom-color: #d8d8d8;
	border-bottom-width: 1px;
}
.solid {
	border-bottom-style: solid;
}
.dotted {
	border-bottom-style: dotted;
}

.hidden {
	display: none;
	visibility: hidden;
}
.js-info {
	display: none;
}
.no-js .js-info,
.js-info.force {
	display: block;
	padding-top: 5px;
	padding-bottom: 5px;
	font-size: 16px;
	text-align: center;
	color: #fff;
	background: #dc414f;
	overflow: hidden;
}
.js-info::selection {
	color: #dc414f;
	background: #fff;
}
.js-info::-moz-selection {
	color: #dc414f;
	background: #fff;
}

.page-wrapper a:link,
.page-wrapper a:visited,
.page-wrapper p { font-weight: 300; }
.table td { font-weight: 300; }

.text-small { font-size: 12px; }

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
	color: #2a2a2a;
	text-rendering: optimizeLegibility;
}
h1 {
	font-size: 54px;
}
h2 {
	font-size: 46px;
	line-height: 46px;
}
h3 {
	font-size: 30px;
}
h4 {
	font-size: 26px;
}
h5 {
	font-size: 24px;
}
h6 {
	font-size: 16px;
	color: #3d3d3d;
}
section {
	position: relative;
	display: block;
}

body { background: #fff; }
menu, footer, #contact, .column-block, .table {
	z-index: 3;
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	float: left;
}
.content {
	z-index: 2;
	position: relative;
	display: block;
	max-width: 100%;
	min-width: 100%;
	width: 100%;
	height: auto;
	padding-bottom: 64px;
	background: #fff;
	float: left;
	-webkit-box-shadow: 0 2px 7px -7px #181818;
	-moz-box-shadow: 0 2px 7px -7px #181818;
	box-shadow: 0 10px 7px -7px #181818;
}
.page-wrapper {
	z-index: 3;
	position: relative;
	display: block;
	max-width: 1050px;
	width: 100%;
	height: auto;
	margin: 0 auto;
	margin-top: 64px;
	clear: both;
	float: none;
}
.page-wrapper.wom { margin-top: 0; }

menu {
	position: absolute;
	top: 0;
	left: 0;
    z-index: 999;
	background: #30b861;
}
menu .logo {
	display: block;
	float: left;
    cursor: default;
}
menu .mobile { display: none; }
menu .nav-menu {
	display: block;
    float: right;
	margin-top: 20px;
	margin-right: 20px;
	margin-bottom: 20px;
}
menu ul li {
	display: inline-block;
	margin-right: 5px;
}
menu .logo{
    position: relative;
	display: block;
	padding: 15px 40px 0px;
    font-size: 26px;
    font-weight: 300;
	line-height: 32px;
	text-rendering: optimizelegibility;
    color: #fff;
	-webkit-animation: 1s ease 0s normal none 1 lightSpeedIn;
	-moz-animation: 1s ease 0s normal none 1 lightSpeedIn;
    animation: 1s ease 0s normal none 1 lightSpeedIn;
    float: left;
    overflow: hidden;
}

header {
	position: relative;
    z-index: 3;
	display: block;
    float: left;
	width: 100%;
	height: auto;
	padding-bottom: 60px;
	text-align: center;
}

.column-block { margin-bottom: 34px; }
.column-block p { font-weight: 300; }

#contact .contact-container {
	position: relative;
	display: block;
    float: none;
    z-index: 3;
	max-width: 1050px;
	width: 100%;
	height: auto;
	margin: 0 auto;
	clear: both;
}
#contact .contact-container div { text-align: center; }
#contact .contact-container div h5 span { font-size: 24px; }
#contact .contact-container div p { font-weight: 300; }

footer {
	z-index: -2;
	padding-top: 45px;
	background: #272727;
}
footer .bgh {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: url(../images/footer-bg.png) top left repeat;
}
footer .cp,
.fh-logo,
footer .nav,
footer .nav ul,
footer .b2t {
	position: relative;
	display: block;
    float: left;
	width: 100%;
	height: auto;
	font-weight: 300;
    color: #fff;
	text-align: center;
}
footer .nav { margin-top: 20px; }
footer .nav ul li { display: inline-block; }
footer .nav ul li:not(:last-child) { margin-right: 10px; }
footer .nav,
footer .nav a:link,
footer .nav a:visited {
	font-size: 14px;
	font-weight: 300;
}
footer .b2t a:link,
footer .b2t a:visited {
	position: relative;
	display: block;
	width: 146px;
	left: 50%;
	margin-left: -73px;
	margin-top: 40px;
	text-decoration: none;
	background: #272727;
	box-shadow: 0px 2px 7px #181818;
}
footer .b2t a:hover,
footer .b2t a:visited:hover {
	text-decoration: none;
	background: #303030;
}
footer .b2t i {
	display: inline-block;
	padding: 6px 60px;
	font-size: 30px;
	text-align: center;
	color: #fff;
}

.fh-logo {
	height: 64px;
	margin-top: 40px;
	text-align: center;
	overflow: hidden;
}
.fh-logo .url { display: inline-block; }
.fh-logo span {
	display: inline-block;
	width: auto;
	height: 64px;
	float: left;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.fh-logo span:not(:last-child) {
	-webkit-transform: translate(0%);
	-moz-transform: translate(0%);
	-ms-transform: translate(0%);
	transform: translate(0%);
	opacity: 0;
}
.fh-logo span.fh-0 {
	display: inline-block;
	margin-left: 100px;
	margin-top: 20px;
	font-size: 14px;
	font-weight: 300;
	color: #fff;
	-webkit-transform: translate(-100%) translate(-40px);
	-moz-transform: translate(-100%) translate(-40px);
	-ms-transform: translate(-100%) translate(-40px);
	transform: translate(-100%) translate(-40px);
}
.fh-logo span.fh-1 {
	display: inline-block;
	width: 264px;
	margin-right: 94px;
	margin-top: 20px;
	font-size: 14px;
	font-weight: 300;
	color: #fff;
	-webkit-transform: translate(100%) translate(-40px);
	-moz-transform: translate(100%) translate(-40px);
	-ms-transform: translate(100%) translate(-40px);
	transform: translate(100%) translate(-40px);
}
.fh-logo span.fh-2 {
	position: absolute;
	width: 64px;
	height: 64px;
	top: 0;
	left: 50%;
	margin-left: -32px;
	background: url(../images/fh-logo.svg) center center no-repeat;
}
.fh-logo a:hover {
	text-decoration: none;
	border: 0;
}

a.button, input.button {
    display: block;
	padding: 20px 60px;
    font-weight: 600;
	text-decoration: none;
    text-transform: uppercase;
    color: #2a2a2a;
	background: rgba(255, 255, 255, 0.06);
	border: 2px solid #30b861;
}
a.button:hover {
	color: #fff;
	background: #30b861;
}
a.sbutton {
    display: inline-block;
	padding: 20px 60px;
    font-weight: 600;
	text-decoration: none;
    text-transform: uppercase;
    color: #2a2a2a;
	background: #30b861;
	border: 2px solid #30b861;
}
a.sbutton:hover {
	color: #fff;
	background: #30b861;
}
input.button,
input.button:focus {
	margin: 0;
	padding: 10px;
	color: #fff;
	background: #30b861;
	outline: none;
	cursor: pointer;
}
input.button:hover {
	color: #fff;
	background: #30ad5a;
	border-color: #30ad5a;
}

/* Icon css3 http://www.uiplayground.in/css3-icons/ */
span.icon{height:40px; width:40px; display:block; position:relative;}
.ic1.icon{width:40px; height:40px;}
.ic1.icon:before{content:''; height:8px; width:40px; background:#fff; display:block; position:absolute; top:4px; left:0; box-shadow:0 12px 0 #fff, 0 24px 0 #fff;-webkit-box-shadow:0 12px 0 #fff, 0 24px 0 #fff;-moz-box-shadow:0 12px 0 #fff, 0 24px 0 #fff;}

/* Desktop/Mobile */
@media only screen and (min-width: 961px) {
	.fh-logo .url:hover span:not(:last-child){
		opacity: 1;
		-webkit-transform: translate(0%);
		-moz-transform: translate(0%);
		-ms-transform: translate(0%);
		transform: translate(0%);
	}
}
@media only screen and (max-width: 961px) {
	.animated {
		/*CSS transitions*/
		-webkit-transition-property: none !important;
		-moz-transition-property: none !important;
		transition-property: none !important;
		/*CSS transforms*/
		-webkit-transform: none !important;
		-moz-transform: none !important;
		transform: none !important;
		/*CSS animations*/
		-webkit-animation: none !important;
		-moz-animation: none !important;
		animation: none !important;
	}
	.fh-logo .url:hover span:not(:last-child) { display: none; /* Framefix Bugfix */ }

	menu a:link,
	menu a:visited {
		color: #2a2a2a;
	}
	menu a:link:hover,
	menu a:visited:hover {
		color: #fff;
		background: #30b861;
	}
	menu a.select:link,
	menu a.select:visited {
		color: #fff;
		background: #30b861;
	}
	menu a.select:link,
	menu a.select:visited,
	menu a:hover,
	menu a:visited:hover { border-radius: 0; }

	.heading-0 {
		margin-top: 46px;
		margin-bottom: 46px;
	}

	.one-half .first,
	.one-half .second,
	.two-third .first,
	.two-third .second,
	.one-third .first,
	.one-third .second,
	.one-third .third {
		width: 100%;
		margin: 0;
	}

	h1 { font-size: 34px; }
	h2 { font-size: 28px; }
	h3 { font-size: 26px; }
	h4 { font-size: 22px; }
	h5 { font-size: 18px; }

	menu .mobile {
    	display: block;
		margin-top: 10px;
		margin-right: 30px;
		margin-bottom: 10px;
		cursor: pointer;
		float: right;
	}
	menu .nav-menu {
		display: none;
		margin-right: 0;
		margin-bottom: 0;
		background: #fff;
	}
	menu .nav-menu.active,
	menu li {
		display: block;
		width: 100%;
	}
	menu li { margin: 0; }
	menu li a {
		display: block;
		width: 100%;
		height: 100%;
		text-align: center;
	}

	div,
	section,
	p { text-align: center; }

	#contact div,
	.first.column-mobile,
	.second.column-mobile,
	.third.column-mobile {
		margin-bottom: 20px;
		text-align: center;
		float: left;
	}

}
@media only screen and (max-width: 600px) {
	tbody {
		position: relative;
		display: block;
		width: 100%;
		height: auto;
	}
	tr.slc,
	tr.slc th,
	tr.slc td {
		position: relative;
		display: block;
		width: 100%;
		height: auto;
	}
	tr.slc th:not(:last-child) {
		border-bottom-style: dashed;
	}
	tr.slc th:not(:first-child) {
		padding-left: 35px;
		border-top: none;
	}
	tr.slc td:first-child {
		font-weight: 500;
		color: #545454;
	}
	tr.slc td:not(:last-child) { border-bottom-style: dashed; }
	tr.slc td:not(:first-child) { padding-left: 35px; }

    .text-column { width: 100%; }
}
@media only screen and (max-width: 430px){
	.heading-0:first-child { margin-top: 100px; }
}
