

@font-face {
	font-family: SourceSansPro;
	src: url('source-sans-pro/SourceSansPro-Regular.otf');
}

@font-face {
	font-family: SourceSansPro;
	src: url('source-sans-pro/SourceSansPro-Bold.otf');
	font-weight: bold;
}
@font-face {
	font-family: SourceSansPro;
	src: url('source-sans-pro/SourceSansPro-It.otf');
	font-style: italic;
}
@font-face {
	font-family: SourceSansPro;
	src: url('source-sans-pro/SourceSansPro-BoldIt.otf');
	font-weight: bold;
	font-style: italic;
}
@font-face {
	font-family: SourceSansPro;
	src: url('source-sans-pro/SourceSansPro-Light.otf');
	font-weight: 300;
}
@font-face {
	font-family: SourceSansPro;
	src: url('source-sans-pro/SourceSansPro-LightIt.otf');
	font-style: italic;
	font-weight: 300;
}

@font-face {
	font-family: SourceSansPro;
	src: url('source-sans-pro/SourceSansPro-Regular.otf');
}

@font-face {
	font-family: Playfair;
	src: url('playfair/PlayfairDisplay-Bold.ttf');
	font-weight: bold;
}
@font-face {
	font-family: Playfair;
	src: url('playfair/PlayfairDisplay-Italic.ttf');
	font-style: italic;
}
@font-face {
	font-family: Playfair;
	src: url('playfair/PlayfairDisplay-BoldItalic.otf');
	font-weight: bold;
	font-style: italic;
}

@font-face {
	font-family: Playfair;
	src: url('playfair/PlayfairDisplay-Regular.ttf');
}


/* GRUNDGERÜST */
*{
	padding:0;
	margin:0;
}

html{
    overflow: hidden;    
}

html,body {
    height:100%; /* braucht es für die min-height des Containers */
	
}

body
{
	position:relative;
	width:100%;
	height:100%;
	color:black;
	font-family: 'SourceSansPro', sans-serif;
	font-size:20px;
	overflow-x:hidden;
	background-color:white;
	line-height:1.25em;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6
{
	line-height:1.25em;
	text-align:left;
}

p
{
	margin:0px;
}

a
{
	color:#f68e43;
}

a:hover
{
	text-decoration:none;
}

hr
{
	border-color:#f68e43;
}

img
{
	width:100%;
}

ul, ol
{
	list-style-position: outside;
	margin:0px;
	margin-top:10px;
	margin-bottom:10px;
}

ol
{
	padding-left:15px;
}

ol li
{
	padding-left:5px;
}

.ce-bodytext ul, .ce-bodytext ol
{
	padding-left:20px; 
}

.ce-bodytext ul li {
	color:#f68e43;
	list-style-type:square; 
	position:relative;
}

.ce-bodytext ul li:before {
	/* content: "\00BB \0020"; */
	font-weight:bold;
	/* padding-right:10px;	*/
	position:absolute;
	left:0;
	top:0;
}

.ce-bodytext ul li .li_content {
	/* color:black; */
	color:black;
}

.ce-bodytext{
	font-size:20px;
	text-align: justify;
	-moz-hyphens: auto;
	-o-hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto; 
	font-weight:300;
	line-height:1.5em;
	color:black;
}

@media (max-width: 700px) {
	.ce-bodytext{
		font-size:14px;
		text-align: justify;
		-moz-hyphens: auto;
		-o-hyphens: auto;
		-webkit-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto; 
	}
}

.shaddow
{
	-webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.75);
	box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.75);

}

/* GRUNDGERÜST */

/* SCHRIFT */

h1, .h1
{
	font-size:30px;
	margin:0px;
	letter-spacing:1px;
	color:#f68e43;
	margin-top:15px;
	margin-bottom:10px;
	font-weight:600;
}

h2, .h2
{
	font-size:22px;
	margin:0px;
	/* letter-spacing:1px; */
	/* line-height:30px; */
	color:#f68e43;
}

h3, .h3
{
	font-size:22px;
	margin:0px;
	/* letter-spacing:1px; */
	/* color:#f68e43; */
	font-weight:600;
	margin-top:15px;
}

h4, .h4
{
	font-size:20px;
	margin:0px;
	font-style:italic;
	/* color:#f68e43; */
	margin-top:5px;
}

h5, .h5
{
	font-size:14px;
	margin:0px;
}

@media (max-width: 700px) {
	h1, .h1
	{
		font-size:16px;
	}
	
	h2, .h2
	{
		font-size:14px;
	}
	
	h3, .h3
	{
		font-size:14px;
	}
	
	h4, .h4
	{
		font-size:14px;
	}
	
	h5, .h5
	{
		font-size:14px;

	}
}

/* SCHRIFT */

/* ÜBERSCHRIFTEN */

.content_container_div_ueberschrift
{
	padding:0px; 
	float:left; 
	width:100%; 
	background-color:white; 
	display:inline-block;
}

.ueberschrift_item
{
	width:100%;
	box-sizing:border-box;
	margin:auto;
	padding:15px;
	padding-top:30px;
	padding-bottom:30px;
	position:relative;
	max-width:1000px;
	text-align:left;
}

@media (max-width: 700px) {
	.ueberschrift_item
	{
		padding:15px;
	}
}

/* ÜBERSCHRIFTEN */

/* INHALTE 1-SPALTIG */

.content_container_div_spalte_1
{
	padding:0px; 
	float:left; 
	width:100%; 
	background-color:white; 
	display:inline-block;
	color:black;
}

.spalte_1_item
{
	width:100%;
	box-sizing:border-box;
	margin:auto;
	padding:15px;
	padding-top:10px;
	padding-bottom:10px;
	position:relative;
	max-width:1000px;
}

@media (max-width: 700px) {
	.spalte_1_item
	{
		padding:15px;
	}
}
/* INHALTE 1-SPALTIG */

/* INHALTE 2-SPALTIG */

.content_container_div_spalte_2
{
	padding:0px; 
	float:left; 
	width:100%; 
	background-color:white; 
	display:inline-block;
	color:black;
}

.spalte_2_item
{
	width:100%;
	box-sizing:border-box;
	margin:auto;
	
	position:relative;
	max-width:1000px;
}

.spalte_1_2
{
	width:50%;
	float:left;
	padding:15px;
	padding-top:30px;
	padding-bottom:30px;
}

.spalte_2_2
{
	width:50%;
	float:left;
	padding:15px;
	padding-top:30px;
	padding-bottom:30px;
}


@media (max-width: 700px) {
	.spalte_1_2
	{
		padding:15px;
		width:100%;
	}
	
	.spalte_2_2
	{
		padding:15px;
		width:100%;
		padding-top:0px;
	}
}
/* INHALTE 2-SPALTIG */

/* INHALTE 3-SPALTIG */

.content_container_div_spalte_3
{
	padding:0px; 
	float:left; 
	width:100%; 
	background-color:white; 
	display:inline-block;
	color:black;
	
}


.spalte_3_item
{
	width:100%;
	box-sizing:border-box;
	margin:auto;
	
	position:relative;
	max-width:1000px;
}



.spalte_1_3
{
	margin-top:15px;
	width: 33.33%; 
	width: calc(100% / 3);
	float:left;
	padding:15px;
	padding-top:30px;
	padding-bottom:30px;
}

.spalte_2_3
{
	margin-top:15px;
	width: 33.33%; 
	width: calc(100% / 3);
	float:left;
	padding:15px;
	padding-top:30px;
	padding-bottom:30px;
}

.spalte_3_3
{
	margin-top:15px;
	width: 33.33%; 
	width: calc(100% / 3);
	float:left;
	padding:15px;
	padding-top:30px;
	padding-bottom:30px;
}

.spalte_1_2_3
{
	margin-top:15px;
	width: 66.66%; 
	width: calc((100% / 3)*2);
	float:left;
	padding:15px;
	padding-top:30px;
	padding-bottom:30px;
}

.image_titel
{
	background-color:#f68e43;
	padding:10px;
	color:white;
	font-size:24px;
	text-align:center;
	font-weight:600;
	letter-spacing:1px;
}

.ref_image img
{
	width:100%;
	height:250px;
	object-fit:cover;
	
}

@media (max-width: 1000px) {

}

@media (max-width: 700px) {
	
	.image_titel
	{
		font-size:14px;
	}
}

@media (max-width: 500px) {
	.spalte_1_3
	{
		padding:15px;
		width:100%;
		margin-bottom:15px;
	}
	
	.spalte_2_3
	{
		padding:15px;
		width:100%;
		padding-top:0px;
		margin-bottom:15px;
	}
	
	.spalte_3_3
	{
		padding:15px;
		width:100%;
		padding-top:0px;
		margin-bottom:15px;
	}
	
	.spalte_1_2_3
	{
		padding:15px;
		width:100%;
		padding-top:0px;
	}
	
	.image_titel
	{
		font-size:14px;
	}
}
/* INHALTE 3-SPALTIG */

/* HEADER SLIDER */

.carousel
{
	/* border-top:5px solid #f68e43; */
	border-bottom:5px solid #f68e43;
	/* max-height:600px; */
}

.carousel-control-prev,
.carousel-control-next
{
	top:100px;
}

.carousel-item
{
	
	height:900px;
}

.carousel-item span
{
	position:absolute; 
	bottom:15px; 
	left:15px; 
	font-size:12px; 
	color:white; 
	text-shadow: 3px 3px 8px black;
}

.carousel img
{	
	height:900px;
	object-fit:cover;

}

.carousel-indicators li {
	width: 13px;
	height: 13px;
	margin:10px;
	border-radius: 100%;
	color:white;
	opacity:1;
	background-color:white;
	cursor:pointer;
}

.carousel-indicators .active
{
	background-color:#f68e43;
}

.header_text_container
{
	position:absolute;
	top:30%;
	left:0; 
	max-width:1000px;
	margin:auto;
	text-align:left;
	right:0;
	padding:15px;
	display:block !important;
}

.header_text
{
	font-size:66px;
	font-weight:600;
	color:white;
	text-shadow: 3px 3px 8px black;
	line-height:68px;
	text-align:left;
	width:100%;
}

.header_button
{
	background-color:#f68e43;
	padding:10px;
	padding-left:30px;
	padding-right:30px;
	width:auto;
	display:inline-block;
	margin-top:30px;
	cursor:pointer;
	text-decoration:none;
	color:white;
}

@media (max-width: 1000px) {
	.header_text
	{
		font-size:40px;
		line-height:42px;
	}
}

@media (max-width: 700px) {
	
	.header_text
	{
		font-size:32px;
		line-height:36px;
	}
	
	.carousel-indicators
	{
		bottom:0;
	}
	
	.carousel-indicators li 
	{
		margin-top:15px;
		width:10px;
		height:10px;
	}
	
	.carousel-item
	{
		
		height:600px;
	}

	.carousel img
	{	
		height:600px;
	}
}

@media (max-width: 500px) {
	
	.header_text_container
	{
		top:15%;
	}
	
	.header_text
	{
		font-size:20px;
		line-height:24px;
	}
	
	.header_button
	{
		font-size:12px;
		padding:0px;
		padding-left:10px;
		padding-right:10px;
		margin-top:10px;
	}
	
	.carousel-item
	{
		
		height:400px;
	}
	
	.carousel img
	{	
		height:400px;
	}
}
/* HEADER SLIDER */

/* LEISTUNGEN */

.leistung_overlays div:first-of-type
{
	position:absolute; 
	bottom:-50px; 
	background-color:white; 
	width:100%; 
	max-width:200px; 
	left:15%; 
	padding:15px;
	text-align:center;
	height:200px;
}

.leistung_overlays div:last-of-type
{
	position:absolute; 
	bottom:-50px; 
	background-color:white; 
	width:100%; 
	max-width:200px; 
	right:15%; 
	padding:15px;
	text-align:center;
	height:200px;
}

.leistung_overlays div:first-of-type h3,
.leistung_overlays div:last-of-type h3
{
	font-size:16px;
	text-align:center;
	height:40px;
	margin-bottom:10px;
}

.leistung_overlays div:first-of-type p,
.leistung_overlays div:last-of-type p
{
	font-size:14px;
	line-height:1.3;
	margin-bottom:15px;
}

@media (max-width: 800px) {
	
	.leistung_overlays div:first-of-type,
	.leistung_overlays div:last-of-type
	{
		position:relative;
		width:100%;
		bottom:unset;
		left:unset;
		right:unset;
		max-width:100%;
		height:auto;
		margin-top:15px;
	}
	
	.leistung_overlays div:first-of-type h3,
	.leistung_overlays div:last-of-type h3
	{
		height:auto;
	}
}

/* LEISTUNGEN */

/* SM Icons */

.social_media_icons img
{
	height:30px;
	width:auto;
	margin-right:15px;
}
/* SM Icons */

/* MENU */
	
	.sidr
	{
		background:#f68e43;
	}
	
	
	.sidr ul
	{
		margin-top:10px;
	}
	
	.sidr ul li:hover, .sidr ul li.active, .sidr ul li.sidr-class-active, .sidr ul li ul li, .sidr ul li ul li:hover, .sidr ul li ul li.active, .sidr ul li ul li.sidr-class-active, .sidr ul li
	{
		line-height:1.25em;
		padding-top:5px;
		padding-bottom:5px;
	}
	
	.sidr ul li a, .sidr ul li span
	{
		color:white;
		font-size:14px;
		padding-top:2px;
		padding-bottom:2px;
		padding-left:5px;
		padding-right:5px;
		padding:10px;
	}
	
	.sidr ul a
	{
		border:1px solid transparent;
	}
	
	.sidr ul a:hover
	{
		color:white;
	}
	
	.sidr div
	{
		padding-left:10px;
		padding-right:10px;
	}
	
	.sidr div.current_page_item a
	{
		font-family: minion-pro;
		color:white;
		font-size:14px;
		border:1px solid white;
	}
	
	.sidr ul li ul li a, .sidr ul li ul li span
	{
		font-size:12px;
		font-weight:normal;
	}
	
	
	.menu-button
	{
		position:absolute;
		right:0;
		top:60px;
		z-index:100;
		display:none;
	}
	
	.main_menu
	{
		height:120px; 
		width:100%;
		text-align:center;
		margin:auto;
		max-width:100%;
		border-bottom:5px solid #f68e43;
		float:left;
	}

	.main_menu_content
	{
		max-width:1000px;
		padding-left:15px;
		padding-right:15px;
		text-align:right;
		/* padding-top:40px; */
		margin:auto;
		box-sizing:border-box;
		color:white;
		display:inline-block;
		width:100%;
	}

	.logo_div
	{
		float:left;
		display:inline-block;
	}

	.logo_div img
	{
		float:left;
		height:72px;
		margin-top:20px;
		width:auto;
	}

	.level1
	{
		margin-top:15px;
	}

	.level2
	{
		margin-top:70px;
	}

	.main_menu_item
	{
		margin-left:30px;
		color:white;
		display:inline-block;
		margin-bottom:10px;
	}

	.main_menu_item a
	{
		color:black;
		/* font-size:18px; */
	}
	
	.main_menu_item a:hover, .main_menu_item a.active
	{
		color:#f68e43;
	}
	
	.second_menu
	{
		background-color:#f68e43;
		float:left;
		width:100%;
		display:inline-block;
		padding:0px; 
		text-align:center;
	}

	.second_menu_content
	{
		width:100%;
		box-sizing:border-box;
		position:relative;
		background-color:#f68e43;
		color:black;
		/* float:left; */
		display:inline-block;
		color:black;
		max-width:1000px;
		margin:auto;
	}
	
	.second_level .second_menu_item 
	{
		float:left;
	}
	
	.second_level
	{
		float:left;
		margin:0px;
		margin-top:5px;
	}
	
	.second_level2
	{
		float:right;
		margin:0px;
		margin-top:5px;
	}
	
	.second_level2 .second_menu_item , .second_level .second_menu_item 
	{
		float:left;
	}
	
	.second_menu_content a, .second_menu_content li
	{
		color:black;
		font-size:13px;
		list-style:none;
		padding:5px;
		line-height:20px;
	}

	.second_menu_content ul.second_level
	{
		
	}

	.second_menu_content ul.second_level li {
		color:white;
		list-style-type:square; 
		position:relative;
		float:left;
		/* margin:5px; */
		margin-left:30px;
		text-align:left;
	}

	.second_menu_content ul.second_level li:before {
		font-weight:bold;
		position:absolute;
		left:0;
		top:0;
	}

	.second_menu_content  ul.second_level li .li_content {
		color:black;
	}

	@media (max-width: 900px) {
	
		.menu-button
		{
			display:block;
			top:32px;
			position:fixed;
		}
		
		.level2, .second_level2
		{
			display:none;
		}
		
		.second_menu_content ul.second_level li
		{
			margin-left:20px; 
			/* list-style:none; */
		}
		
		.second_level
		{
			margin-top:0px;
		}
		
		.second_menu_content a, .second_menu_content li
		{
			padding-top:0px;
			padding-bottom:0px;
			padding:0px;
		}
		
		.second_menu_content
		{
			float:left;
		}
		
		.logo_div img
		{
			height:30px;
			margin-top:10px;
		}
		
		.main_menu
		{
			height:50px;
		}
		
		
	}
	
	@media (max-width: 505px) {
	
		.menu-button
		{
			display:block;
			top:56px;
		}
	}
/* MENU */

/* FOOTER */

.content_container_div_footer
{
	padding:0px; 
	float:left; 
	width:100%; 
	display:inline-block;
	color:white;
	margin-top:50px;
}

.footer_item_container
{
	width:100%;
	box-sizing:border-box;
	position:relative;
	background-color:#dedede;
	color:black;
	float:left;
	display:inline-block;
	border-top:20px solid #f68e43;
}

.footer
{
	width:100%;
	box-sizing:border-box;
	margin:auto;
	position:relative;
	max-width:1000px;
	padding:50px;
	padding-left:15px;
	padding-right:15px;
	font-size:12px;
	line-height:1.3em; 
}

.footer img
{
	width:100%;
	max-width:100px;
	margin-bottom:30px;
}

/* FOOTER */

* Paste this css to your style sheet file or under head tag */
/* This only works with JavaScript, 
if it's not present, don't show loader */
.no-js #loader { display: none;  }
.js #loader { display: block; position: absolute; left: 100px; top: 0; }
.se-pre-con {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background: #fff;
}

.overlay {
	background:transparent;
	position:relative;
	width:100%; /* your iframe width */
	height:450px; /* your iframe height */
	top:450px; /* your iframe height */
	margin-top:-450px; /* your iframe height */
}