@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;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
html {
	font-size: 62.5%;
}
body {
	line-height: 1;
	font-size: 16px;
	font-size: 1.6rem;
    -webkit-animation-duration: 0.1s;
	-webkit-animation-name: fontfix;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-timing-function: linear;
	-webkit-animation-delay: 0.1s;
}
@-webkit-keyframes fontfix {
	from{ 	opacity: 1; }
	to{	opacity: 1; }
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

/* IE6/7 support */
.clearfix {
    *zoom: 1;
}
.chromeframe {
	margin: 0.2em 0;
	background: #ccc;
	color: #000;
	padding: 0.2em 0;
}
/*** Responsive ***/
.desktop {
	display: block;
}
.mobile {
	display: none !important;
}
/*** Typo ***/
h1, h2, h3, p, a {
	font-family: 'Lato', Arial, Helvetica, sans-serif;
	font-weight: 200;
	letter-spacing: 1px;
	color: #333;
}
h1 {
	font-size: 24px;
	font-size: 2.4rem;
	line-height: 28px;
	line-height: 2.8rem;
}
h2 {
	font-size: 22px;
	font-size: 2.2rem;
	line-height: 26px;
	line-height: 2.6rem;
}
h3 {
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 24px;
	line-height: 2.4rem;
	padding-bottom: 10px;
}
p, a {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 22px;
	line-height: 2.2rem;
	text-decoration: none;
}
strong {
	font-weight: 400;
}
.blue p {
	color: #1a4b7e !important;
}
.white p {
	color: #fff !important;
}
/*** Columns ***/
.column100, 
.column50, 
.column33, 
.column20 {
	float: left;
	height: auto;
}
.column100 {
	margin: 0 0 50px 0;
	text-align: center;
	width: 100%;
}
.column100 img {
	display: block;
	margin: 0 auto;
}
.column50 {
	text-align: left;
	width: 49%;
}
.column50.right {
	margin: 0 0 0 1%;
}
.column50.left {
	margin: 0 1% 0 0;
}
.column33 {
	float: left;
	height: auto;
	position: relative;
	width: 33.333%;
	z-index: 11;
}
.column33 img {
	float: left;
	height: auto;
	position: relative;
	width: 100%;
	z-index: 12;
}
.column20 {
	text-align: center;
	width: 20%;
}
.icon-bounce {
	margin: 0 auto;
	display: block;
}
.left, .right {
	text-align: left;
}
/*** Header ***/
header {
	background: #333;
	display: block;
	height: auto;
	left: 0;
	padding: 0;
	position: fixed;
	text-align: right;
	top: 0;
	width: 100%;
	z-index: 105;
}
header.fixed {
	top: 0px;
	-webkit-transition: 0.5s ease-in;
	-moz-transition: 0.5s ease-in;
	-ms-transition: 0.5s ease-in;
	-o-transition: 0.5s ease-in;
}
/* Claim */
#claim {
	color: #fff;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 25px;
	line-height: 2.5rem;
	margin: 0 auto;
	min-width: 960px;
	text-align: center;
	width: 100%;
}
/* Navigation */
nav {
	background: #fff;
	display: block;
	float: left;
	height: auto;
	left: 0;
	padding: 10px;
	width: 100%;
	z-index: 100000;
}
nav ul {
	float: left;
	width: 100%;
}
nav ul li{
	margin: 0;
}
nav a {
	color: #999;
	display: inline-block;
	float: left;
	font-weight: 400;
	margin: 0 0 0 50px;
	line-height: 47px;
	text-align: center;
	text-decoration: none;
}
nav a.link1 {}
nav a.link1 img {
	display: block;
	margin: 0 auto;
}
nav a.current {
	color: #1a4b7e;
	-webkit-transition: 0.3s ease-in;
	-moz-transition: 0.3s ease-in;
	-ms-transition: 0.3s ease-in;
	-o-transition: 0.3s ease-in;
}
nav a:hover {
	text-decoration: underline;
	-webkit-transition: 0.3s ease-in;
	-moz-transition: 0.3s ease-in;
	-ms-transition: 0.3s ease-in;
	-o-transition: 0.3s ease-in;
}
/*** Gallerie ***/
.gallery {
	float: left;
	margin-top: 67px;
	position: relative;
	width: 100%;
	z-index: 10;
}
.gallery img {
	float: left;
	height: auto;
	width: 100%;
}
/* Logo */
#logo {
	height: 143px;
	left: 50%;
	margin-left: -216px;
	position: absolute;
	text-align: center;
	width: 432px;
	top: 40%;
	z-index: 11;
}
#logo img {
	height: 100%;
	padding: 20px 0 0 0;
	width: auto;
}
#logo p {
	color: #000;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 25px;
	line-height: 2.5rem;
	width: 100%;
}
/*** Service ***/
.service .column100 .teaser img {
	padding: 20px;
	-webkit-transition: padding 0.25s ease-out;
    -moz-transition: padding 0.25s ease-out;
    -o-transition: padding 0.25s ease-out;
}
 
.service .column100 .teaser img:hover {
    padding: 0px 10px 20px 10px;
}
/*** Windows ***/
.window {
	float: left;
	height: auto;
	min-width: 960px;
	position: relative;
	width: 100%;
}
.window .content {
	height: auto;
	margin: 0 auto;
	position: relative;
	width: 960px;
}
/*window 1*/
.window.start {
	background: #fff;
	z-index: 9;
}
.window.start .content {
	z-index:10;
}
/*window 2*/
.window.about {
	background: #fff;
	z-index:9;
}
.window.about .content {
	padding: 100px 0;
	z-index: 10;
}
.window.about .content a:hover {
	text-decoration: underline;
}
.window.about .column100.download {
	margin-top: 25px; 
}
.window.about .column100.download img {
	margin-top: 15px; 
}
/*window 3*/
.window.products {
	background: #eee;
	z-index:9;
}
.window.products .content {
	padding: 100px 0;
	z-index: 10;
}
.window.products .content .teaser {
	background: #fff;
	border: 1px solid #ccc;
	float: left;
	height: auto;
	margin-bottom: 2%;
}
.window.products .content .teaser .teaser_thumbnail {
	border-right: 1px solid #ccc;
	float: left;
	height: auto;
	width: 30%;
}
.window.products .content .teaser .teaser_thumbnail img {
	float: left;
	height: auto;
	width: 100%;
}
.window.products .content .teaser .teaser_text {
	float: left;
	height: auto;
	padding: 10px;
	width: 70%;
}
.window.products .content .teaser .teaser_text p,
.window.products .content .teaser .teaser_text a {
	display: block;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 20px;
	line-height: 2.0rem;
	padding: 0 0 5px 0;
	width: 100%;
}
.window.products .content .teaser .teaser_text a:hover {
	text-decoration: underline;
}
/*window 4*/
.window.service {
	background: #fff;
	z-index:9;
}
.window.service .content {
	padding: 100px 0;
	z-index: 10;
}
.window.service .content a:hover {
	text-decoration: underline;
}
.window.service .content .textblock {
	background: #eee;
	min-height: 250px;
	padding: 20px;
	margin-bottom: 2%;
}
.window.service .content .textblock:hover {
	background: #336699;
	cursor: default;
	-webkit-transition: 0.3s ease-in;
	-moz-transition: 0.3s ease-in;
	-ms-transition: 0.3s ease-in;
	-o-transition: 0.3s ease-in;
}
.window.service .content .textblock:hover p
,.window.service .content .textblock:hover h3 {
	color: #fff;
	-webkit-transition: 0.3s ease-in;
	-moz-transition: 0.3s ease-in;
	-ms-transition: 0.3s ease-in;
	-o-transition: 0.3s ease-in;
}
/*window 5*/
.window.imprint {
	background: #336699;
	z-index: 9;
}
.window.imprint .content {
	padding: 200px 0 150px 0;
	z-index: 10;
}
.window.imprint .content .column100.imprint {
	margin: 0;
	position: absolute;
	bottom: 20px;
}
.window.imprint .content,
.window.imprint .content h1,
.window.imprint .content h3,
.window.imprint .content a,
.window.imprint .content p {
	color: #a1a5a9;
}
.window.imprint .content p,
.window.imprint .content a {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 24px;
	line-height: 2.4rem;
}
.window.imprint .content a:hover {
	text-decoration: underline;
}
/*** Impressum ***/
#impressum {
	padding: 15px;
}
#impressum h1 {
	margin: 15px 0 15px 0;
}
#impressum p {
	padding: 0 0 10px 0;
}
#impressum img {
	vertical-align: middle;
}
#impressum a {
	color: #333;
	text-decoration: underline;
}
#impressum a:hover {
	color: #1a4b7e;
}
@media only screen and (max-width: 960px) {
	.column50 {
		width: 47%;
	}
	.column50.right {
		margin: 0 2% 0 1%;
	}
	.column50.left {
		margin: 0 1% 0 2%;
	}
	nav ul {
		width: 100%;
	}
	.window {
		min-width: 100%;
	}
	.window .content {
		width: 100%;
	}

}
@media only screen and (max-width: 820px) {
	nav a {
		margin: 0;
		width: 15%;
	}
	nav a.link1 {
		margin: 0;
		width: 40%;
	}
	nav a.link1 img {
		float: left;
		display: block;
		height: auto;
		max-width: 221px;
		margin: 0 auto;
		width: auto;
	}
}
@media only screen and (max-width: 768px) {
	.column50,
	.column50.right,
	.column50.left {
		margin: 0 4% 4% 4%;
		width: 92%;
	}

}
@media only screen and (max-width: 640px) {
	.desktop {
		display: none !important;
	}
	.mobile {
		display: block !important;
	}
	nav a {
		display: none;
	}
	nav a.link1 {
		display: block;
		margin: 0;
		width: 100%;
	}
	nav a.link1 img {
		float: none;
	}
	#impressum {
		width: 100%;
	}
	.window.products .content .teaser .teaser_thumbnail {
		width: 35%;
	}
	.window.products .content .teaser .teaser_text {
		width: 65%;
	}

}