/*
	Design für Andrea Ehrsam
	Programmiert von arax.systems
	Version 1.1
*/

/*	----------------------------
	Browser 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: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  outline: none;
}
body { font-size: 62.5%; line-height: 1; font-family: Arial, Tahoma, Verdana, sans-serif; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
ol, ul { list-style: none; }

blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
strong { font-weight: bold; }

input { outline: none; }

table { border-collapse: collapse; border-spacing: 0; }
img { border: 0; max-width: 100%; }

a { text-decoration: none; }
a:hover { text-decoration: underline; }

/*	----------------------------
	Allgemeine Formatierung */

body {
	font-family: "Dosis", sans-serif;
	font-size: 20px;
	background: #FFFEF8;
	color: black;
}
html
{
  scroll-padding-top: 156px; /* height of sticky header */
}
h1 {
	color: #ff0000;
	font-weight: 100;
	font-size: 28px;
	padding-bottom: 25px;
}
h2 {
	font-size: 27px;
	padding: 7px 0;
	padding-bottom: 15px;
	font-weight: bold;
	color: #8D9B0D;
}
h3 {
	font-size: 20px;
	padding: 7px 0;
	font-weight: 400;
	color: #8D9B0D;
}
h4 {
	color: #8D9B0D;
	font-weight: bold;
	line-height: 1.8;
	padding-bottom: 10px;
}
a {
	color: #8D9B0D;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
b, strong {
	font-weight: 500;
}
strong.green {
	color: #8D9B0D;	
}
p {
	line-height: 1.8;
	padding-bottom: 12px;
}
p.referenzen {
	line-height: 2.3;
}
ul {
	list-style-type: disc;
/*	padding: 10px 0;*/
	padding-left: 23px;
	line-height: 1.8;
}
ul li {/*
	padding-bottom: 2px;*/
}
ol {
	list-style-type: decimal;
	padding: 10px 0;
	padding-left: 23px;
	line-height: 1.8;
}
ol li {
	padding-bottom: 10px;

}
.clear {
	clear: both;
}

img.alignright {
	float: right;
	padding-left: 10px;
}


/*	----------------------------
	Header Container */

#header_container {
	width: 100%;
	top: 0;
	transition: background 0.5s;
	position: fixed;
	z-index: 9999;
}
#header_container.addBg {
	transition-duration: 0.5s;
	transition-timing-function: ease;
	transition-delay: 0s;
	transition-property: background;
	background-color: white;
}

#header_container .content {
	padding: 20px 0;
}
#logo {
	float: left;
	height: auto;
}

#sticky_header_margin {
	height: 155px;
}


/*	----------------------------
	Navigation */

#navigation {
	float: right;
}
#navigation ul {
	padding: 0;
	list-style: none;
}
#navigation ul li {
	display: inline;
	padding-left: 18px;
	font-size: 18px;
	padding-bottom: 0;
}
#navigation.start:not(.subpage) ul li a {
	color: white;
}
#navigation ul li a {
	color: black;
	text-decoration: none;
	text-transform: uppercase;
}
#navigation ul li a:hover {
	color: #8D9B0D;
}

/*	----------------------------
	Content */
.content {
	width: 90%;
	max-width: 1100px;
	padding-right: 5%;
	padding-left: 5%;
	margin-right: auto;
	margin-left: auto;
	padding: 0 0 180px 0;
}
.content50 {
	float: left;
	width: 50%;
	box-sizing: border-box;
	padding-right: 20px;
}
.content30 {
	float: left;
	width: 33%;
	box-sizing: border-box;
	padding-right: 20px;
}

.image_text_container {
	display: flex;
	align-items: center;
	margin-bottom: 80px;
}
.image_text_container.alignment-top {
	align-items: flex-start;
}
.text_box {
	flex: 1;
}
.image_box, .image_box.w50 {
	flex: 0 0 auto;
	width: 50%;
}
.image_box.w40 {
	width: 40%;
}
.image_box.w30 {
	width: 30%;
}
.image_box.img-left {
	margin-right: 45px;
}
.image_box.img-right {
	margin-left: 45px;
}

.video-header {
	height: 100vh;
	width: 100%;
	object-fit: cover;
}
#start_animation_screen {
	width: 100%;
	position: absolute;
	height: 100vh;
	top: 0px;
}
#start_animation_screen .content {
	padding: 0;
	z-index: 5;
	margin-top: 230px;
}

#start_animation_screen .main_title {
	color: #4A4A49;
	font-size: 45px;
	font-weight: 600;
	line-height: 1.3;
	display: none;
}
#start_animation_screen .description_text {
	color: #4A4A49;
	padding-bottom: 30px;
	font-size: 37px;
	font-weight: 500;
	line-height: 1.3;
	display: none;
}
#start_animation_screen .sub_title {
	color: #4A4A49;
	padding-bottom: 30px;
	font-size: 37px;
	font-weight: 600;
	line-height: 1.3;
	display: none;
}
#start_animation_screen .feature_text {
	color: black;
	font-size: 37px;
	font-weight: 500;
	line-height: 1.3;
	display: none;
}

@keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
  100% {
    opacity: 1;
  }
}

#scroll_img {
	background: url('../img/scroll_down.png') center center no-repeat;
	width: 80px;
	height: 80px;
	background-size: 80px 80px;
	cursor: pointer;
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 5;
	animation: blink 1.4s linear infinite;
}


#start .content {
	text-align: center;
}
#start .content img {
	margin-bottom: 40px;
}
#start .content p {
	color: black!important;
}

/*	----------------------------
	Footer */

#footer_container {
	width: 100%;

}
#footer_container .content {
	text-align: right;
	font-size: 13px;
}
#footer_container .content a {
	color: black;
}

#header_menu_icon {
	display: none;
}

.hide-on-desktop {
	display: none;
}

@media screen and (max-width: 895px) {
	#header_menu_icon {
		display: block;
		background: url("../img/header_menu_icon.png");
		width: 24px;
		height: 17px;
		background-size: 24px 17px;
		cursor: pointer;
		float: right;
	}
	#header_menu_icon.start {
		background: url("../img/header_menu_icon_weiss.png");
	}
	#header_menu_icon.open {
		position: absolute;
		top: 30px;
		right: 5%;
		cursor: pointer;
		background: url("../img/header_menu_icon.png");
	}
	#logo {
		float: left;
	}
	#navigation {
		float: none;
		margin-top: 120px;
		margin-bottom: 22px;
		width: 100%;
		height: 100vh;
		display: none;
		background: white;
	}
	#navigation ul li {
		padding-left: 0;
		width: 100%;
		display: block;
		padding-top: 4px;
		padding-bottom: 4px;
	}
	#navigation ul li a {
		color: black!important;
	}
	#navigation ul li a:hover {
		color: #8D9B0D!important;
	}
	.content50, .content30 {
		width: 100%;
		padding-right: 0;
		float: left;
		margin-bottom: 50px;
	}
	#footer_container .content {
		text-align: center;
	}
	.image_text_container {
		display: block;
		align-items: center;
		margin-bottom: 80px;
	}
	.image_text_container.alignment-top {
/*		align-items: flex-start;*/
	}
	.text_box {
/*		flex: 1;*/
		display: block;
	}
	.image_box, .image_box.w50 {
		flex: 0 0 auto;
		width: 100%;
	}
	.image_box.w40 {
		width: 100%;
	}
	.image_box.w30 {
		width: 100%;
	}
	.image_box.img-left {
		margin-right: 0;
	}
	.image_box.img-right {
		margin-left: 0;
	}


	.hide-on-mobile {
		display: none;
	}
	.hide-on-desktop {
		display: block;
	}


	#start_animation_screen .content {
		padding: 0;
		z-index: 5;
		margin-top: 180px;
	}
	#start_animation_screen .main_title {
		color: #4A4A49;
		padding-bottom: 13px;
		font-size: 24px;
		font-weight: 500;
		line-height: 1.3;
		display: none;
	}
	#start_animation_screen .description_text {
		color: #4A4A49;
		padding-bottom: 13px;
		font-size: 24px;
		font-weight: 500;
		line-height: 1.3;
		display: none;
	}
	#start_animation_screen .sub_title {
		color: #4A4A49;
		padding-bottom: 13px;
		font-size: 24px;
		font-weight: 500;
		line-height: 1.3;
		display: none;
	}
	#start_animation_screen .feature_text {
		color: black;
		font-size: 24px;
		font-weight: 500;
		line-height: 1.3;
		display: none;
	}

	#generic-links-header {
		padding-top: 20px;
		font-size: 14px;
		line-height: 1.7;
	}
	#generic-links-header a {
		color: black;
	}
}