/*******************************************************************
	0. FONTS
*******************************************************************/

@charset "utf-8";

@font-face {
	font-family: 'SourceSansPro-Regular';
	src:url('../SHARED/fonts/sourcesanspro/SourceSansPro-Regular.woff') format('woff'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Regular.woff2') format('woff2'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Regular.eot'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Regular.eot?#iefix') format('embedded-opentype'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Regular.otf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'SourceSansPro-Light';
	src:url('../SHARED/fonts/sourcesanspro/SourceSansPro-Light.woff') format('woff'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Light.woff2') format('woff2'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Light.eot'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Light.eot?#iefix') format('embedded-opentype'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Light.otf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'SourceSansPro-Bold';
	src:url('../SHARED/fonts/sourcesanspro/SourceSansPro-Bold.woff') format('woff'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Bold.woff2') format('woff2'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Bold.eot'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Bold.eot?#iefix') format('embedded-opentype'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Bold.otf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'SourceSansPro-Semibold';
	src:url('../SHARED/fonts/sourcesanspro/SourceSansPro-Semibold.woff') format('woff'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Semibold.woff2') format('woff2'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Semibold.eot'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Semibold.eot?#iefix') format('embedded-opentype'),
			url('../SHARED/fonts/sourcesanspro/SourceSansPro-Semibold.otf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Libre-Baskerville-Italic';
	src: url('../SHARED/fonts/libre_baskerville/LibreBaskerville-Italic.woff2') format('woff2'),
		url('../SHARED/fonts/libre_baskerville/LibreBaskerville-Italic.woff') format('woff');
	font-weight: normal;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Libre-Baskerville-Bold';
	src: url('../SHARED/fonts/libre_baskerville/LibreBaskerville-Bold.woff2') format('woff2'),
		url('../SHARED/fonts/libre_baskerville/LibreBaskerville-Bold.woff') format('woff');
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Libre-Baskerville';
	src: url('../SHARED/fonts/libre_baskerville/LibreBaskerville-Regular.woff2') format('woff2'),
		url('../SHARED/fonts/libre_baskerville/LibreBaskerville-Regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

/*******************************************************************
	1. ALLGEMEIN
*******************************************************************/

body
{
	background: #6b745a;
	font-size: 1em;
	line-height: 1.4em;
	color: #606060;
}

b, strong
{
	font-family: 'SourceSansPro-Bold', Arial, sans-serif;
}

p 
{
	margin: 0px 0px 15px 0px;
	font-family: 'SourceSansPro-Light', Arial, sans-serif;
	font-size: 1.3em;
	line-height: 1.4em;
}

a:link, a:visited
{
	text-decoration: underline;
	color: #6a745a;
}

a:hover, a:active, a:focus
{
	text-decoration: none;
	color: #6a745a;
	outline: none;
}

h1
{
	font-family: 'Libre-Baskerville', Arial, sans-serif;
	font-size: 1.5em;
	line-height: 1em;
	margin: 30px 0px 20px 0px;
	padding: 0px 0px 0px 0px;
	text-align: left;
	color: #1e1e1e;
}

@media screen and (min-width : 1024px) {
	h1
	{
		font-size: 2.5em;
		margin: 0px 0px 30px 0px;
	}
}

h2
{
	font-family: 'SourceSansPro-Light', Arial, sans-serif;
	font-size: 1.4em;
	line-height: 1em;
	margin: 45px 0px 15px 0px;
	text-transform: uppercase;
}

h3
{
	font-family: 'Libre-Baskerville', Arial, sans-serif;
	font-size: 1.4em;
	line-height: 1.4em;
	margin: 45px 0px 15px 0px;
}

.kleiner
{
	font-size: 0.75em;
	line-height: 1em;
}

/*******************************************************************
	2. GRID
*******************************************************************/

[class^='column']
{
  width: 100%;
  clear: both;
  margin: 0px 0px 8px 0px;
}

@media screen and (min-width : 768px) {

	[class^='column']
	{
		clear: none;
		float: left;
	}
	
	.column_20
	{
		width: 20%;
	}
	
	.column_25
	{
		width: 25%;
	}
	
	.column_30
	{
		width: 30%;
	}

	.column_33
	{
		width: 33.33%;
	}
	
	.column_50
	{
		width: 50%;
	}

	.column_66
	{
		width: 66.66%;
	}
	
	.column_70
	{
		width: 70%;
	}
	
	.column_75
	{
		width: 75%;
	}
	
	.column_80
	{
		width: 80%;
	}

	.column_100
	{
		width: 100%;
	}
}

/*******************************************************************
	3. INDIVIDUELLE STYLES
*******************************************************************/
.container_floatingbutton
{
	position: fixed;
	width: 100%;
	top: calc(100vh - 3.625em);
	right: 0px;
	z-index: 2;
}

@media screen and (min-width : 1024px) {
	.container_floatingbutton
	{
		top: 80px;
	}
}

	.wrap_floatingbutton
	{
		position: absolute;
		width: 100%;
		top: 0px;
		right: 0px;
		background: #b8c0b3;
		border-radius: none;
		box-shadow: 0px 0px 5px rgba(0,0,0,0.3);
	}

	@media screen and (min-width : 1024px) {
		.wrap_floatingbutton
		{
			position: absolute;
			width: auto;
			right: 10%;
			border-radius: 10px;
			text-align: center;
		}
	}
		
		.wrap_floatingbutton > a:link,
		.wrap_floatingbutton > a:visited
		{
			padding: 20px 40px 20px 40px;
			width: 100%;
			display: block;
			float: left;
			color: #6b745a !important;
			text-decoration: none !important;
			text-align: center;
			font-family: 'SourceSansPro-Bold', Arial, sans-serif;
			font-size: 1.125em;
		}
		
		@media screen and (min-width : 1024px) {
			.wrap_floatingbutton > a:link,
			.wrap_floatingbutton > a:visited
			{
				width: auto;
				font-size: 1.2em;
			}
		}
		
		.wrap_floatingbutton > a:hover,
		.wrap_floatingbutton > a:active,
		.wrap_floatingbutton > a:focus
		{
			
			font-family: 'SourceSansPro-Bold', Arial, sans-serif;
		}
		
#popup_background,
#intro_background
{
	display: block;
	position: fixed;
	background: rgba(0,0,0,0.8);
	width: 100%;
	height: 100vh;
	top: 0px;
	left: 0px;
	z-index: 100;
}

	#intro_background
	{
		background: white;
	}
	
	#popup_container,
	#intro_container
	{
		display: block;
		position: relative;
		width: 90vw;
		height: 90vw;
		top: 20vh;
		margin: auto auto;
	}
	
	@media screen and (min-width : 1023px) {
		#popup_container,
		#intro_container
		{
			width: 80vh;
			height: 80vh;
			top: 10vh;
		}
	}
	
		.popup_image,
		.intro_image
		{
			width: 100%;
		}
		
		.popup_close
		{
			position: absolute;
			background: white;
			width: 50px;
			height: 50px;
			top: -25px;
			right: -25px;
			border-radius: 25px;
			border: 3px solid black;
			cursor: pointer;
			z-index: 2;
		}
		
			.popup_close > i
			{
				position: relative;
				font-size: 2.1em;
				top: 6px;
				left: 9px;
			}
			
		.popup_link
		{
			position: absolute;
			display: block;
			width: 100%;
			height: 100%;
			top: 0px;
			left: 0px;
			z-index: 1;
		}
		
		.indicator_container
		{
			position: relative;
			background: rgb(215, 215, 215);
			width: 50%;
			height: 5px;
			border-radius: 5px;
			margin: auto auto;
			padding: 0px;
		}
		
		.indicator_bar {
			background: #b8c0b3;
			height: 5px;
			left: 0;
			border-radius: 5px;
			animation: progressAnimationStrike 4s;
		}
		
		@keyframes progressAnimationStrike {
			from { width: 0 }
			to { width: 100% }
		}

.text_red
{
	color: #ba372a;
}

#container_headline
{
	position: relative;
	background: transparent;
	width: 100%;
	z-index: 2;
}

	#wrap_headline
	{
		position: relative;
		width: 100%;
		height: 65px;
		max-width: 100%;
		margin: auto auto;
	}
		
		#logo
		{
			background: url('../images/logos/logo_libre_mobile.svg') 50% 0px no-repeat;
			background-size: 180px;
			position: relative;
			height: 50px;
			top: 8px;
		}
		
		.link_logo:link
		{
			display: none;
		}
		
		@media screen and (min-width : 1024px) {
			#logo
			{
				background: url('../images/logos/logo_libre.svg') 0px 0px no-repeat;
				background-size: 220px;
				width: 250px;
				height: 55px;
				top: 5px;
				left: 10%;
			}
		}
		
		@media screen and (min-width : 1024px) {
			.link_logo:link
			{
				display: block;
				width: 120px;
				height: 90px;
			}
		}
		
			
		
		#container_menu
		{
			position: absolute;
			width: 100%;
			height: 65px;
			top: 0px;
			background: transparent;
		}
		
			#wrap_menu
			{
				position: relative;
				width: 100%;
				max-width: 80%;
				margin: auto auto;
			}
		
		#list_menu
		{
			display: none;
		}

		@media screen and (min-width : 1024px) {
			#list_menu
			{
				display: block;
				position: absolute;
				background: transparent;
				height: 60px;
				top: 0px;
				right: 0px;
				box-shadow: 0px 0px 0px rgba(0,0,0,0);
				z-index: 2;
			}
		}
		
			#list_menu li
			{
				position: relative;
			}
			
			#list_menu ul
			{
				position: absolute;
				display: none;
				left: 0;
				z-index: 99;
				/* border-bottom: 6px solid transparent; */
			}
			
			#list_menu ul:hover
			{
				/* border-top: 6px solid transparent; */
			}
			
			#list_menu > li
			{
				float: left;
			}
			
			#list_menu li:hover > ul,
			#list_menu li.sfHover > ul
			{
				display: block;
			}
			
			#list_menu a
			{
				display: block;
				position: relative;
				font-family: 'SourceSansPro-Light', Arial, sans-serif;
				font-size: 0.875em;
				font-style: normal;
				font-size: 1em;
				text-decoration: none;
				color: #1e1e1e;
				text-transform: uppercase;
				padding: 22px 15px 16px 15px;
			}
			
			@media screen and (min-width : 1500px) {
				#list_menu a
				{
					padding: 22px 30px 16px 30px;
				}
			}
			
				#list_menu a > i
				{
					position: relative;
					top: -2px;
					left: 5px;
					color: #b0b0b0;
					font-size: 0.4em;
				}
			
			#list_menu > li > a:hover
			
			{
				color: #6b745a;
				font-family: 'SourceSansPro-light', Arial, sans-serif;
				
			}
			
			#list_menu > li.menu_active,
			#list_menu > li.menu_active > a:link
			{
				border-bottom: 6px solid transparent;
				color: #6b745a;
				font-family: 'SourceSansPro-Bold', Arial, sans-serif;
				
			}
			
			#list_menu > li.menu_active > a:hover
			{
				border-bottom: none;
				color: #6b745a;
			}
			
			#list_menu ul ul
			{
				top: 0;
				left: 100%;
				background:red;
			}
			
				#list_menu > li > ul
				{
					background: white;
				}
				
					#list_menu > li > ul > li > a:link
					{
						/* border-bottom: 6px solid transparent; */
					}
				
					#list_menu > li > ul > li > a:hover
					{
						color: #6b745a;
						font-family: 'SourceSansPro-Bold', Arial, sans-serif;
						/* border-bottom: 6px solid #dedc00; */
					}
				
		nav:not(.mm-menu)
		{
			display: none;
		}
		
		#mobile_menu
		{
			font-family: 'SourceSansPro-Light', Arial, sans-serif;
		}
		
		@media screen and (min-width : 1024px) {
			#mobile_menu
			{
				display: none;
			}
		}
		
		#hamburger
		{
			position: absolute;
			display: block;
			width: 57px;
			height: 57px;
			top: -3px;
			left: -40px;
			font-size: 2em;
			z-index: 999;
		}
		
		@media screen and (min-width : 1024px) {
			#hamburger
			{
				display: none;
			}
		}
		
			#hamburger > a
			{
				display: block;
				padding: 18px 0px 13px 20px;
				color: #1e1e1e;
			}
			
#icon_chat
{
	position: fixed;
	bottom: 30px;
	right: 30px;
	width: 50px;
	height: 50px;
	border-radius: 25px;
	padding: 7px 0px 0px 6px;
	background: red;
	cursor: pointer;
	z-index: 100;
}

	#icon_chat > i
	{
		font-size: 2em;
	}
	
#container_chat
{
	display: none;
	position: fixed;
	width: 355px;
	height: 500px;
	right: 10px;
	bottom: 10px;
	border-radius: 15px;
	background: white;
	box-shadow: 0px 0px 5px rgba(0,0,0,0.5);
	z-index: 101;
}

@media screen and (min-width : 1024px) {
	#container_chat
	{
		width: 400px;
		right: 30px;
		bottom: 30px;
		border-radius: 15px;
	}
}

	#close_chat > i
	{
		position: absolute;
		background: white;
		font-size: 2em;
		border-radius: 2em;
		cursor: pointer;
		top: 5px;
		right: 5px;
		z-index: 102;
	}
	
	#content_chat
	{
		width: 400px;
		height: 425px;
		padding: 10px;
	}
	
	@media screen and (min-width : 1024px) {
		#content_chat
		{
			padding: 30px;
		}
	}
	
		#list_chat
		{
			overflow-y: scroll;
			height: 370px;
			display: flex;
			flex-direction: column-reverse;
			padding: 0px 5px 10px 5px;
		}
		
			.item_chat_right,
			.item_chat_left
			{
				position: relative;
				width: 55%;
				background: lightgreen;
				border-radius: 10px;
				border-top-right-radius: 0px;
				padding: 10px;
				margin: 10px 0px 0px calc(45% - 45px);
				font-family: 'SourceSansPro-Light', Arial, sans-serif;
				box-shadow: 0px 3px 5px rgba(0,0,0,0.15);
			}
			
			.item_chat_left
			{
				border-radius: 10px;
				border-top-left-radius: 0px;
				background: lightblue;
				margin: 10px 0px 0px 0px;
				box-shadow: 0px 3px 5px rgba(0,0,0,0.15);
			}
		
			@media screen and (min-width : 1024px) {
				.item_chat_right,
				.item_chat_left
				{
					margin: 10px 0px 0px 45%;
				}
				
				.item_chat_left
				{
					margin: 10px 0px 0px 0px;
				}
			}
			
				.chat_timestamp
				{
					position: absolute;
					font-size: 0.6em;
					bottom: 0px;
					right: 10px;
					color: #616161;
				}
		
		#chat_message
		{
			width: 275px;
			margin: 0px 15px 0px 15px;
			border-radius: 5px;
		}
		
		@media screen and (min-width : 1024px) {
			#chat_message
			{
				width: 290px;
				margin: 0px 5px 0px 35px;
				border-radius: 5px;
			}
		}


.container_minihero
{
	position: relative;
	background-image: url('../images/static/hero_home.jpg');
	background-size: cover;
	background-repeat: no-repeat;
	/* background-attachment: fixed; */
	background-position: 50% 0px; 
	top: -65px;
	width: 100%;
	height: 65vw;
	margin: 0px 0px -65px 0px;
	z-index: 1;
}

@media screen and (min-width : 1024px) {
	.container_minihero
	{
		background-position: 100% 0px; 
		height: 25vw;
	}
}


.container_hero
{
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: white;
	/* background-attachment: fixed; */
	background-position: 100% 0px; 
	top: -65px;
	width: 100%;
	height: 55vh;
	margin: 0px 0px -65px 0px;
	z-index: 1;
}

@media screen and (min-width : 1024px) {
	.container_hero
	{
		background-size: cover;
		background-repeat: no-repeat;
		background-color: white;
		background-position: 0px 0px; 
		height: 45vw;
		z-index: 1;
	}
}

	.container_hero picture,
	.container_hero img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover; /* Bild wird zugeschnitten, um den Container zu füllen */
	}

.superhero
{
	width: 100%;
	height: 65vh;
	object-fit: cover;
	margin: 0px 0px -72px 0px;
}

@media screen and (min-width : 1024px) {
	.superhero
	{
		height: 45vw;
	}
}

	#wrap_hero
	{
		position: absolute;
		top: 0px;
		left: 10%;
		width: 100%;
		max-width: 80%;
		height: 100%;
		margin: auto auto;
		z-index: 2;
	}
	
		#slogan_hero
		{
			display: none;
		}
	
		@media screen and (min-width : 1024px) {
			#slogan_hero
			{
				display: block;
				position: absolute;
				bottom: 20vh;
				left: 0px;
			}
		}
		
			.preline_hero
			{
				font-family: 'Libre-Baskerville', Arial, sans-serif;
				font-size: 1em;
				margin: 0px 0px 20px 0px;
				padding: 0px 0px 0px 20px;
				color: #1e1e1e;
				text-transform: none;
				text-align: left;
			}
			
			@media screen and (min-width : 1024px) {
				.preline_hero
				{
					font-size: 5em;
					padding: 0px 0px 0px 0px;
				}
			}
		
			.headline_hero
			{
				font-family: 'SourceSansPro-Light', Arial, sans-serif;
				font-size: 1em;
				text-transform: none;
				text-align: left;
				padding: 0px 0px 0px 0px;
				color: #6a6a6a;
				width: 100%;
			}
		
			@media screen and (min-width : 1024px) {
				.headline_hero
				{
					font-size: 1.4em;
					line-height: 1.4em;
					padding: 0px 0px 0px 0px;
				}
			}
			
				.cta_button_hero:link,
				.cta_button_hero:visited,
				.cta_button_hero:hover,
				.cta_button_hero:active,
				.cta_button_hero:active
				{
					position: relative;
					display: inline-block;
					background: #6a745a;
					padding: 12px 12px 12px 12px;
					margin: 0px 15px 0px 0px;
					color: white;
					text-align: center;
					text-decoration: none;
					font-family: 'SourceSansPro-Light', Arial, sans-serif;
					font-size: 1.2rem;
					border-radius: 5px;
					outline: none;
				}

.container_content
{
	position: relative;
	width: 100%;
	background: white;
}

	.wrap_content
	{
		position: relative;
		width: 100%;
		max-width: 80%;
		margin: auto auto;
		padding: 20px 20px 20px 20px;
	}

	@media screen and (min-width : 1024px) {
		.wrap_content
		{
			padding: 30px 0px 30px 0px;
		}
	}

.container_rental
{
	position: relative;
	width: 100%;
	background: white;
	overflow: hidden;
}

	.wrap_rental
	{
		position: relative;
		width: 100%;
		max-width: 100%;
		margin: auto auto;
		padding: 20px 20px 20px 20px;
	}
	
	@media screen and (min-width : 1024px) {
		.wrap_rental
		{
			max-width: 80%;
			padding: 30px 0px 30px 0px;
		}
	}
	
		#rental_filters
		{
			display: none;
			width: 100%;
			background: white;
			overflow: hidden;
			border-radius: 10px;
			padding: 30px 30px 30px 30px;
			margin: 40px 0px 0px 0px;
			box-shadow: 0 0 5px rgba(0,0,0,0.3);
		}
		
		/* #rental_itemlist
		{
			width: calc(100%+10px);
			margin: 0px 0px 0px -5px;
			padding: 5px;
			overflow: hidden;
		}
		
			.rental_item
			{
				position: relative;
				background: white;
				width: calc(50% - 12.5px);
				float: left;
				list-style-type: none;
				margin: 0px 25px 25px 0px;
				padding: 20px;
				box-shadow: 0 0 5px rgba(0,0,0,0.3);
				border-radius: 10px;
			}
			
			.rental_item:nth-child(2n)
			{
				margin: 0px 0px 25px 0px;
			}
			
			.rental_item_inactive
			{
				position: absolute;
				width: 100%;
				height: 100%;
				top: 0px;
				left: 0px;
				background: rgba(255, 255, 255, 0.8);
				z-index: 10;
				border-radius: 10px;
			}
			
				.rental_item_preheadline
				{
					position: absolute;
					right: 20px;
					font-family: 'SourceSansPro-Bold', Arial, sans-serif;
					background: #fedf6b;
					display: inline-block;
					padding: 2px 5px 2px 5px;
					margin: 0px;
					border-radius: 3px;
					
				}
			
				.rental_item_headline
				{
					margin: 0px 0px 20px 0px;
				}
				
				.rental_item_description
				{
					
				}*/
				
			.rental_filter_button
			{
				list-style: none;
				padding: 5px 10px 5px 10px;
				margin: 0px 5px 5px 0px;
				float: left;
				border-radius: 20px;
				border: 1px solid #ccc;
				background-color: #f9f9f9;
				cursor: pointer;
				user-select: none;
				transition: all 0.3s ease;
				font-family: 'SourceSansPro-Light', Arial, sans-serif;
			}
			
			.rental_filter_button.active {
				background-color: #fedf6b;
				color: #606060;
				border-color: #fedf6b;
				font-family: 'SourceSansPro-Bold', Arial, sans-serif;
			}
			
			.rental_filter_button:hover {
				background-color: #e2e6ea;
				border-color: #d6d8db;
			}
	
			.list_rental_steps
			{
				position: relative;
				width: 70%;
				overflow: hidden;
				margin: 0px 0px 0px 13%;
			}
		
				.item_rentalstep
				{
					float: left;
					width: 25%;
					color: grey;
					font-family: 'SourceSansPro-Light', Arial, sans-serif;
					font-size: 1.6em;
					text-transform: uppercase;
					text-align: center;
				}
				
				.rentalstep_active
				{
					color: #81CB24;
				}
				
					.item_rentalstep > .rental_stepcount
					{
						background: grey;
						color: white;
						position: relative;
						text-align: center;
						top: -3px;
						display: inline-block;
						width: 20px;
						height: 20px;
						border-radius: 10px;
						font-size: 1.2rem;
						line-height: 1.2rem;
						padding: 0px 0px 0px 0px;
						margin: 0px 5px 0px 25px;
					}
				
					.rentalstep_active > .rental_stepcount
					{
						background: #81CB24;
					}
					
			#rental_step
			{
				width: 98%;
				background: white;
				overflow: hidden;
				border-radius: 10px;
				padding: 30px 30px 18px 30px;
				margin: 50px 0px 50px 0px;
				box-shadow: 0 0 5px rgba(0,0,0,0.3);
			}
			
				.columns_products
				{
					border-bottom: 1px solid rgb(195, 195, 195);
					margin-bottom: 100px; padding-bottom: 80px;
				}
				
					.products_thumbnails
					{
						width: 100%;
					}
				
					.columns_products img 
					{
						width: 100%;
					}
					
					.description_padding
					{
						padding: 0px 0px 0px 0px;
					}
					
					@media screen and (min-width : 1023px) {
						.description_padding
						{
							padding: 0px 0px 0px 50px;
						}
					}
					
				.rentalitem_headline
				{
					position: relative;
				}
				
				.rentalitem_price
				{
					position: relative;
					top: -69px;
					text-align: right;
					color: green;
				}
				
				.rentalitem_checkbox
				{
					background: red;
					margin: 0px 8px 0px 20px;
				}
				
				/* Der umschließende Label-Block: stilisiert den "Button" */
				.setitem_label {
				  display: inline-block;
				  margin: 5px;
				  cursor: pointer;
				  font-family: 'SourceSansPro-Light', Arial, sans-serif;
				}
				
				/* Der Radio-Button selbst wird unsichtbar gemacht */
				.setitem_label input[type="radio"] {
				  position: absolute; 
				  opacity: 0;         /* Unsichtbar machen */
				  pointer-events: none;
				}
				
				/* Das sichtbare "Button"-Element */
				.setitem_label .checkbox_label {
				  display: inline-block;
				  padding: 10px 20px;
				  border: 1px solid #ccc;
				  border-radius: 4px;         /* Abgerundete Ecken */
				  background-color: #f8f8f8; /* Standard Hintergrundfarbe */
				  transition: background-color 0.2s ease, color 0.2s ease;
				}
				
				/* Hover-Effekt: zeigt Interaktivität an */
				.setitem_label:hover .checkbox_label {
				  background-color: #eee;
				}
				
				/* Wenn der Radio-Button ausgewählt (checked) ist */
				.setitem_label input[type="radio"]:checked + .checkbox_label {
				  background-color: #007bff;  /* Blau bei Auswahl */
				  color: #fff;                /* Weißer Text */
				  border-color: #007bff;      /* Rahmen in Blau */
				}
				
				/* Optional: Fokus-Styling, wenn der Radiobutton per Tastatur angesteuert wird */
				.setitem_label input[type="radio"]:focus + .checkbox_label {
				  outline: 2px dashed #007bff;
				  outline-offset: 4px;
				}
				
				.set_buttons,
				.item_buttons
				{
					margin-top: 10px;
					background: red;
					width: 100%;
					height: auto;
				}
				
				.set_book_button,
				.set_reset_button,
				.item_book_button
				{
					padding: 8px 16px;
					margin: 5px;
					border: 1px solid #ccc;
					border-radius: 4px;
					background-color: #f8f8f8;
					cursor: pointer;
					transition: background-color 0.2s ease;
					color: #606060;
					float: right;
				}
				
				.set_book_button:hover,
				.item_book_button:hover
				{
					background-color: #28a745; /* Grün */
					color: #fff;
				}
				
				.set_reset_button:hover
				{
					background-color: #dc3545; /* Rot */
					color: #fff;
				}

			
			#rental_cart
			{
				width: 100%;
				background: #f7f7f7;
				padding: 30px;
				margin: 50px 0px 50px 0px;
				overflow: hidden;
				border-radius: 10px;
				box-shadow: 0 0 5px rgba(0,0,0,0.3);
			}
			
				.trash_icon
				{
					position: relative;
					margin: 0px 0px 0px 10px;
					font-size: 0.75em;
					top: -2px;
					color: #b7b7b7;
				}
				
				.trash_icon:hover
				{
					color: #606060;
					cursor: pointer;
				}
	
.container_booking
{
	position: relative;
	width: 100%;
	background: white;
}

	.wrap_booking
	{
		position: relative;
		width: 100%;
		max-width: 100%;
		margin: auto auto;
		padding: 20px 20px 20px 20px;
	}

	@media screen and (min-width : 1024px) {
		.wrap_booking
		{
			max-width: 80%;
			padding: 30px 0px 30px 0px;
		}
	}
	
		.booking_subline
		{
			font-family: 'SourceSansPro-Bold', Arial, sans-serif;
			font-size: 1em;
			text-transform: uppercase;
			margin: 0px 0px 0px 0px;
			padding: 0px 0px 5px 0px;
		}
		
		.booking_headline
		{
			position: relative;
			font-family: 'SourceSansPro-Bold', Arial, sans-serif;
			font-size: 1.7em;
			text-transform: uppercase;
			margin: 0px 0px 30px 0px;
			padding: 0px 0px 5px 0px;
			color: #dedc00;
		}
		
		.wrap_booking > ul
		{
			margin: 0px 0px 15px 0px;
			padding: 0px 0px 0px 50px;
		}
		
			.wrap_booking > ul li,
			.wrap_booking > ol li
			{
				font-family: 'SourceSansPro-Light', Arial, sans-serif;
				font-size: 1em;
				line-height: 1.6em;
				margin: 3px 0px 3px 0px;
				list-style: square;
			}
		
		
		.booking_price
		{
			font-family: 'SourceSansPro-Light', Arial, sans-serif;
			margin: 40px 0px 40px 0px;
		}
		
			.booking_price > b
			{
				font-size: 1.2em;
				color: #dedc00;
				margin: 0px 0px 0px 6px;
			}
		
		.booking_form
		{
			
		}
		
			#container_shippingaddress
			{
				display: none;
			}
		
			.wrap_inputs
			{
				overflow: hidden;
				margin: 0px 0px 10px 0px;
			}
			
				.booking_label
				{
					font-family: 'SourceSansPro-Light', Arial, sans-serif;
					font-size: 1em;
					line-height: 1.6em;
					margin: 3px 0px 3px 0px;
					list-style: square;
				}
				
				.wrap_inputs > .column_50:nth-child(1)
				{
					padding: 0px 30px 0px 0px;
				}
				
				.wrap_inputs > .column_50:nth-child(2)
				{
					padding: 0px 0px 0px 30px;
				}
				
					.input_select_booking,
					.input_text_booking
					{
					}
					
					.input_submit_booking
					{
						background: #dedc00 !important;
					}
					
			.wrap_confirmations
			{
				margin: 30px 0px 30px 0px;
			}

.block_feature,	
.block_text,
.block_tables,
.block_gallery,
.block_gallery_alt,
.block_quote,
.block_module,
.block_contact,
.block_map,
.block_youtube,
.block_textimage,
.block_link_gallery
{
	position: relative;
	width: 100%;
	background: white;
	padding: 1px 0px 1px 0px;
}

.block_gallery_alt,
.block_link_gallery
{
	background: white;
}

.block_textimage
{
	background: #fafafa;
	padding: 100px 5% 100px 5%;
}

@media screen and (min-width : 1024px) {
	.block_textimage
	{
		background: #fafafa;
		padding: 100px 10% 100px 10%;
	}
}

		.wrap_text_left
		{
			padding: 0px 0px 0px 30px;
		}
		
		.wrap_text_right
		{
			padding: 0px 30px 0px 0px;
		}

	
	/* mobile view of content element */
	.wrap_ti_image_mobile
	/* {
		position: relative;
		width: calc(100% - 40px);
		left: 0px;
	} */
	
		.wrap_ti_image_mobile > img
		{
			position: relative;
			width: 100%;
		}
		
	/* .wrap_ti_text_mobile
	{
		position: relative;
		width: calc(100% - 40px);
		top: 0px;
		padding: 0px 0px 20px 0px;
		margin: 0px 0px 0px 0px;
	} */
	
	/* @media screen and (min-width : 1024px) {
		.wrap_ti_text_mobile
		{
			position: relative;
			width: 80%;
			top: -90px;
			padding: 20px 0px 10px 0px;
			margin: 0px 0px -30px 10%;
			background: rgba(255, 255, 255, 0.9);
			box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3);
		}
	} */
	
		.wrap_ti_text_mobile h1
		{
			text-align: center;
			margin: 20px 0px 30px 0px;
		}
		
		.wrap_ti_text_mobile h2
		{
			margin: 0px 0px 0px 0px;
			text-transform: none;
			font-family: 'SourceSansPro-Light', Arial, sans-serif;
			color: #606060;
			font-size: 1.2em;
			text-align: center;
			margin: -30px 0px 30px 0px
		}

.block_quote
{
	padding: 0px 0px 60px 0px;
}

.block_youtube
{
	padding: 0px 0px 60px 0px;
}

	.wrap_feature,
	.wrap_team
	{
		position: relative;
		width: 90%;
		max-width: 90%;
		margin: auto auto;
		padding: 20px 20px 20px 20px;
	}
	
	@media screen and (min-width : 1024px) {
		.wrap_feature,
		.wrap_team
		{
			padding: 30px 0px 30px 0px;
		}
	}
	
	@media screen and (min-width : 1300px) {
		.wrap_feature,
		.wrap_team
		{
			max-width: 80%;
			padding: 30px 0px 30px 0px;
		}
	}
	
	@media screen and (min-width : 1800px) {
		.wrap_feature,
		.wrap_team
		{
			max-width: 60%;
		}
	}
		
		.list_feature
		{
			display: block;
			position: relative;
			background: white;
			width: 100%;
			top: 0px;
			box-shadow: 0px 0px 8px rgba(0,0,0,0.3);
			margin: 0px 0px 0px 0px;
			overflow: hidden;
			z-index: 2;
		}
		
		@media screen and (min-width : 1024px) {
			.list_feature
			{
				top: -130px;
				margin: 0px 0px -130px 0px;
			}
		}
		
		.list_team
		{
			display: block;
			position: relative;
			background: white;
			width: 100%;
			top: 0px;
			margin: 0px 0px 0px 0px;
			overflow: hidden;
			z-index: 2;
		}
	
			.item_feature,
			.item_team
			{
				clear: both;
				position: relative;
				width: 100%;
				padding: 0px 20px 0px 20px;
			}
		
			@media screen and (min-width : 1024px) {
				.item_feature
				{
					clear: none;
					width: 33.3333333333%;
					float: left;
					padding: 0px 40px 0px 40px;
					border-bottom: 10px solid #a12918;
				}
				
				.item_team
				{
					clear: none;
					width: 25%;
					float: left;
					padding: 0px 40px 0px 40px;
					text-align: center;
				}
			}
		
			.feature_image
			{
				width: 80px;
				height: 80px;
				margin: 20px 0px 20px calc(50% - 40px);
				text-align: center;
			}
			
			@media screen and (min-width : 1024px) {
				.feature_image
				{
					width: 100px;
					height: 100px;
					margin: 40px 0px 40px calc(50% - 50px);
				}
			}
			
			.team_image
			{
				width: 120px;
				height: 120px;
				margin: 20px 0px 0px 0px;
				border-radius: 60px;
				text-align: center;
			}
			
			@media screen and (min-width : 1024px) {
				.team_image
				{
					width: 160px;
					height: 160px;
					border-radius: 80px;
				}
			}
				
				.team_headline
				{
					color: #a12918;
					text-align: center;
					font-family: 'oktaneue-bold', Arial, sans-serif;
				}
				
				.team_position
				{
					
				}
			
				.feature_text
				{
					margin: 0px 0px 30px 0px;
				}
				
				.feature_link:link, .feature_link:visited, .feature_link:hover, .feature_link:focus, .feature_link:active
				{
					position: relative;
					display: inline-block;
					background: #3c3c3b;
					padding: 20px 20px 20px 20px;
					margin: 0px 0px 30px 0px;
					color: white;
					text-align: center;
					text-decoration: none;
					font-family: 'oktaneue-bold', Arial, sans-serif;
					border-radius: 5px;
					font-size: 0.875em;
					outline: none;
				}

	.wrap_text
		{
			position: relative;
			width: 100%;
			max-width: 100%;
			margin: auto auto;
			padding: 30px 20px 20px 20px;
		}
	
		@media screen and (min-width : 1024px) {
			.wrap_text
			{
				max-width: 80%;
				padding: 30px 0px 30px 0px;
			}
		}
		
		.wrap_text > ul, ol
		{
			margin: 0px 0px 15px 0px;
			padding: 0px 0px 0px 50px;
		}
		
			.wrap_text > ul li,
			.wrap_text > ol li
			{
				font-family: 'SourceSansPro-Light', Arial, sans-serif;
				font-size: 1.3rem;
				line-height: 1.6em;
				margin: 3px 0px 3px 0px;
				list-style: square;
			}
			
			.wrap_text > ul > li > ul,
			.wrap_text > ol > li > ol
			{
				margin: 0px 0px 0px 0px;
				padding: 0px 0px 0px 30px;
			}
			
		table
		{
			font-family: 'SourceSansPro-Light', Arial, sans-serif;
			font-size: 1.3em;
			line-height: 1.6em;
			margin: 35px 0px 30px 0px;
		}
	
			.wrap_tables> tr:first-child
			{
				font-family: 'SourceSansPro-Bold', Arial, sans-serif;
				background: #deebcb;
			}
			
			tr
			{
				border: none;
			}
			
				td
				{
					margin: 0px 0px 0px 0px;
					padding: 5px 20px 5px 0px;
				}
		
		.table_events
		{
			width: 100%;
		}
		
			.table_events tr:nth-child(odd)
			{
				background: rgba(0,0,0,0.1);
			}
			
				.table_events td
				{
					margin: 0px 0px 0px 0px;
					padding: 5px 20px 5px 20px;
				}
			
				.table_events td:nth-child(1)
				{
					width: 250px;
				}
			
				.table_events td:nth-child(3),
				.table_events td:nth-child(5)
				{
					text-align: right;
				}
				
		.wrap_tables > table
		{
			font-family: 'SourceSansPro-Light', Arial, sans-serif;
			font-size: 1em;
			line-height: 1.6em;
			margin: 35px 0px 30px 0px;
		}
		
			.wrap_tables > tr:first-child
			{
				font-family: 'SourceSansPro-Bold', Arial, sans-serif;
				background: #deebcb;
			}
			
				.wrap_tables > td
				{
					margin: 0px 0px 0px 0px;
					padding: 5px 20px 5px 20px;
					border: 1px solid #dadada;
				}
		
	.wrap_quote
	{
		position: relative;
		width: 100%;
		max-width: calc(100% - 40px);
		margin: auto auto;
		padding: 20px 20px 5px 20px;
		background: #b8c0b3;
		border: 1px solid #6b745a;
	}

	@media screen and (min-width : 1024px) {
		.wrap_quote
		{
			max-width: 80%;
			padding: 30px 30px 15px 30px;
		}
	}
	
		.wrap_quote > h1,
		.wrap_quote > h2
		{
			margin: 0px 0px 20px 0px;
		}
		
		.wrap_quote > p
		{
			color: #6b745a;
			margin: 0px 0px 15px 0px;
		}
		
	.wrap_youtube
	{
		position: relative;
		width: 60%;
		margin: auto auto;
	}
	
		.container_video
		{
			position: relative;
			width: 100%;
			height:0;
			padding-bottom: 56.25%;
		}
		
			.container_video > iframe
			{
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
			}
		
	.wrap_tables,
	.wrap_gallery,
	.wrap_module,
	.wrap_contact,
	.wrap_link_gallery
	{
		position: relative;
		width: 100%;
		max-width: 100%;
		padding: 1px 20px 1px 20px;
	}
	
	@media screen and (min-width : 1024px) {
		.wrap_tables,
		.wrap_gallery,
		.wrap_module,
		.wrap_contact,
		.wrap_link_gallery
		{
			max-width: 80%;
			margin: auto auto;
			padding: 1px 0px 1px 0px;
		}
	}
	
	.wrap_map
	{
		position: relative;
		width: 100%;
		background: red;
	}
	
	.wrap_module 
	{
		overflow: hidden;
	}
	
	.wrap_module > ul
	{
		width: 100%;
		min-height: 160px;
		margin: 0px 0px 30px 0px;
		font-family: 'SourceSansPro-Light', Arial, sans-serif;
		font-size: 1em;
		border: 1px solid #dedc00;
		padding: 10px;
	}
	
	@media screen and (min-width : 1024px) {
		.wrap_module > ul
		{
			position: relative;
			width: calc(50% - 15px);
			min-height: 160px;
			margin: 0px 30px 30px 0px;
			float: left;
		}
	}
	
	.wrap_module > ul:nth-child(even)
	{
		margin: 0px 0px 30px 0px;
	}

	.wrap_module > ul > li:nth-child(1)
	{
		font-family: 'SourceSansPro-Bold', Arial, sans-serif;
		font-size: 0.85em;
		text-transform: none;
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 5px 0px;
	}

	.wrap_module > ul > li:nth-child(2)
	{
		position: relative;
		font-family: 'Libre-Baskerville', Arial, sans-serif;
		font-size: 1.2em;
		line-height: 1em;
		text-transform: none;
		margin: 0px 0px 30px 0px;
		padding: 0px 0px 5px 0px;
		color: #1e1e1e;
	}
	
		.clickMe
		{
			cursor: pointer;
		}
	
		.wrap_module > ul > li:nth-child(2):after
		{
			content: 'mehr Infos';
			position: absolute;
			top: 0px;
			right: 0px;
			z-index: 10;
			text-transform: none;
			font-family: 'SourceSansPro-Light', Arial, sans-serif;
			color: #3c3c3b;
			font-size: 1rem;
		}
	
		.wrap_module > ul > li > ul
		{
			
		}
		
		.wrap_module > ul > li:nth-child(2) > ul
		{
			display: none;
			font-family: 'SourceSansPro-Light', Arial, sans-serif;
			font-size: 1em;
			text-transform: none;
			color: #3c3c3b;
		}
		
			.wrap_module > ul > li:nth-child(2) > ul > li
			{
				list-style: square;
				margin: 5px 0px 10px 40px;
				font-size: 1rem;
			}
		
			.wrap_module > ul > li:nth-child(3) > ul
			{
				padding: 10px 0px 0px 0px;
			}
		
				.wrap_module > ul > li:nth-child(3) > ul > li
				{
					padding: 0px 0px 7px 0px;
				}
				
		.wrap_module > ul > li:last-child
		{
			position: absolute;
			bottom: 10px;
			right: 10px;
			color: white;
		}
		
			.wrap_module > ul > li:last-child > a:link,
			.wrap_module > ul > li:last-child > a:visited,
			.wrap_module > ul > li:last-child > a:active,
			.wrap_module > ul > li:last-child > a:focus,
			.wrap_module > ul > li:last-child > a:hover
			{
				color: white;
				text-decoration: none;
				display: block;
				background: #6a745a;
				padding: 15px;
				border-radius: 5px;
			}
			
			.module_content
			{
				display: none;
			}
		
		
.block_image_text
{
	position: relative;
	width: 100%;
	background: #deebcb;
}

	.wrap_image_text
	{
		position: relative;
		width: 100%;
		padding: 0px 0px 0px 0px;
		overflow: hidden;
	}

	@media screen and (min-width : 1024px) {
		.wrap_image_text
		{
			padding: 0px 0px 0px 0px;
		}
	}

		.wrap_image_text > .column_33 > img
		{
			width: 100%;
		}
	
		.wrap_image_text > .column_66
		{
			padding: 20px 10% 20px 20px;
			height: 33.33vw;
			display: table;
		}
		
			.wrap_image_text > .column_66 > .text_wrapper
			{
				display: table-cell; 
				vertical-align: middle; 
				width: 100%;
				color: #3c3c3b;
			}
		
	
	
		.container_video
		{
			position: relative;
			width: 100%;
			height:0;
			padding-bottom: 56.25%;
		}
		
			.container_video > iframe
			{
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
			}
	
		
		
		.preline_content
		{
			font-family: 'SourceSansPro-Bold', Arial, sans-serif;
			font-size: 1em;
			text-transform: uppercase;
			margin: 0px 0px 0px 0px;
			padding: 0px 0px 20px 0px;
			color: #dedc00;
		}
		
		@media screen and (min-width : 1024px) {
			.preline_content
			{
				font-size: 1.4em;
			}
		}
		
		.headline_content
		{
			font-family: 'SourceSansPro-Bold', Arial, sans-serif;
			font-size: 2em;
			text-transform: uppercase;
			text-align: left;
			padding: 0px 0px 0px 0px;
		}
		
		@media screen and (min-width : 1024px) {
			.headline_content
			{
				font-size: 2em;
			}
		}
		
		.h2_content
		{
			font-family: 'SourceSansPro-Light', Arial, sans-serif;
			font-size: 1em;
			text-transform: uppercase;
			margin: 0px 0px 0px 0px;
			padding: 30px 0px 0px 0px;
			color: #dedc00;
		}
		
		@media screen and (min-width : 1024px) {
			.h2_content
			{
				font-size: 1.25em;
				margin: 30px 0px 0px 0px;
			}
		}
		
		.list_aufzaehlungen
		{
			width: 100%;
		}
		
			.item_aufzaehlungen
			{
				list-style: square;
				margin: 0px 0px 0px 30px;
				padding: 0px 0px 15px 0px;font-family: 'SourceSansPro-Light', Arial, sans-serif;
				font-size: 1em;
				line-height: 1.6em;
			}
		
		.block_gallery
		{
			background: #b8c0b3 url('../images/background_pattern.png') repeat;
		}
		
		.list_gallery,
		.list_employees,
		.list_link_gallery
		{
			position: relative;
			width: 80%;
			overflow: hidden;
			padding: 10% 0px 10% 0px;
			margin: auto auto;
		}
		
		@media screen and (min-width : 1024px) {
			.list_gallery,
			.list_employees,
			.list_link_gallery
			{
				padding: 100px 0px 100px 0px;
			}
		}
		
			.item_link_gallery
			{
				width: 50%;
				float: left;
				margin: 0px 0px -6px 0px;
			}
			
			@media screen and (min-width : 1024px) {
				.item_link_gallery
				{
					width: 10%;
				}
			}
			
				.item_link_gallery img
				{
					width: 100%;
				}
		
			.item_link_gallery
			{
				width: 50%;
				float: left;
				margin: 0px 0px -6px 0px;
			}
			
			@media screen and (min-width : 1024px) {
				.item_link_gallery
				{
					width: 20%;
				}
			}
			
			.item_link_gallery:nth-child(2n)
			{
				margin: 0px 0px -6px 0px;
			}
		
			.item_gallery,
			.item_employees
			{
				width: 100%;
				float: left;
				margin: 0px 0px 10px 0px;
			}
		
			@media screen and (min-width : 1024px) {
				.item_gallery,
				.item_employees
				{
					width: calc(25% - 15px);
					margin: 0px 15px 11px 0px;
				}
				
				.item_gallery:nth-child(2n),
				.item_employees:nth-child(2n)
				{
					margin: 0px 15px 11px 0px;
				}
				
				.item_gallery:nth-child(4n),
				.item_employees:nth-child(4n)
				{
					margin: 0px 0px 11px 0px;
				}
			}
			
				.gallery_thumbnail,
				.employee_thumbnail
				{
					width: 100%;
				}
				
				.item_employees h2
				{
					margin: 10px 0px 0px 0px;
				}
				
				.item_employees h2
				{
					font-size: 0.9em;
					margin: 10px 0px 0px 0px;
				}
				
				@media screen and (min-width : 1024px) {
					.item_employees h2
					{
						font-size: 1.1em;
						margin: 10px 0px 0px 0px;
					}
				}
				
				.item_employees p
				{
					font-size: 0.75em;
					height: 30px;
				}
				
				@media screen and (min-width : 1024px) {
					.item_employees p
					{
						font-size: 0.875em;
						height: 30px;
					}
				}
				
#container_footer
{
	position: relative;
	width: 100%;
	border-bottom: 35px solid #6b745a;
}

	#wrap_footer
	{
		position: relative;
		width: 100%;
		max-width: 80%;
		margin: auto auto;
		padding: 30px 0px 30px 0px;
		overflow: hidden;
	}
	
		#footer_socialmedia
		{
			width: 100%;
			text-align: center;
		}
	
		@media screen and (min-width : 1024px) {
			#footer_socialmedia
			{
				width: 50%;
				text-align: left;
				float: left;
			}
		}
		
			.footer_sociallink:link, .footer_sociallink:visited
			{
				font-size: 2em;
				margin: 0px 10px 0px 0px;
				color: #979797;
			}
			
			.footer_sociallink:hover, .footer_sociallink:active, .footer_sociallink:focus
			{
				color: #dedc00;
				outline: none;
			}
			
		#footer_copyright
		{
			width: 100%;
			color: #979797;
			font-family: 'SourceSansPro-Light', Arial, sans-serif;
			font-size: 0.75em;
			line-height: 1.6em;
			text-align: center;
			margin: 30px 0px 30px 0%;
		}
		
		@media screen and (min-width : 1024px) {
			#footer_copyright
			{
				width: 50%;
				text-align: right;
				margin: 0px 0px 0px 50%;
			}
		}
			
			.link_pixel:link, .link_pixel:visited
			{
				font-family: 'SourceSansPro-Bold', Arial, sans-serif;
				color: #979797;
				text-decoration: none;
			}
			
			.link_pixel:hover, .link_pixel:active, .link_pixel:focus
			{
				text-decoration: underline;
			}
			
			.link_copyright:link, .link_copyright:visited
			{
				color: #979797;
				text-decoration: underline;
			}
			
			.link_copyright:hover, .link_copyright:active, .link_copyright:focus
			{
				text-decoration: none;
				outline: none;
			}

/*******************************************************************
	4. KONTAKTFORMULAR
*******************************************************************/
::-webkit-input-placeholder {
   color: #575756;
}

:-moz-placeholder { /* Firefox 18- */
   color: #575756;
}

::-moz-placeholder {  /* Firefox 19+ */
   color: #575756;
}

:-ms-input-placeholder
{
   color: #575756;
}

.container_support,
#container_danke
{
	position: relative;
	width: 100%;
	margin: 0px 0px 30px 0px;
	overflow: hidden;
}

#wrap_support_userdata,
#wrap_support_select
{
	position: relative;
	width: 100%;
	padding: 30px 0px 30px 0px;
}

@media screen and (min-width : 1280px) {
	#wrap_support_userdata
	{
		width: 50%;
		float: left;
		padding: 15px 30px 0px 0px;
	}
}

#wrap_support_select
{
	width: 100%;
	margin: 0px 0px 10px 0px;
}

.wrap_support_message
{
	width: 100%;
	padding: 30px 0px 15px 0px;
	margin: 0px 0px 0px 0px;
}

@media screen and (min-width : 1280px)
{
	.wrap_support_message
	{
		width: 50%;
		padding: 15px 0px 15px 30px;
		margin: 0px 0px 0px 50%;
	}
}

.container_checkoutbuttons
{
	width: 100%;
	height: 40px;
	margin: -15px 0px 30px 0px;
}
	
input[type='submit'],
button
{
	display: inline-block;
	background: #c4430f;
	height: 40px;
	padding: 10px;
	margin: 0px;
	color: white;
	border: 0px;
	float: left;
	font-family: 'SourceSansPro-Light', Arial, sans-serif;
	font-size: 1.125em;
	line-height: 0.5em;
	border-radius: 5px;
	cursor: pointer;
}

input[type='submit']:hover,
button:hover
{
	background: #18978e;
}

	.checkout_button_forward
	{
		background: #6a745a;
		width: 50%;
		height: 50px;
		line-height: 0.9em;

	}

	@media screen and (min-width : 1280px)
	{
		.checkout_button_forward
		{
			background: #6a745a;
			width: 50%;
			height: 40px;
			line-height: 0.5em;
		}
	}

	.checkout_button_forward:hover
	{
		background: #3c3c3b;
	}

	.checkout_button_backward
	{
		background: #3c3c3b;
		width: 50%;
		height: 50px;
		line-height: 0.9em;
	}

	@media screen and (min-width : 1280px)
	{
		.checkout_button_backward
		{
			background: #3c3c3b;
			width: 50%;
			height: 40px;
			line-height: 0.5em;
		}
	}

	.checkout_button_backward:hover
	{
		background: #333;
	}

	@media screen and (min-width : 1280px)
	{
		.checkout_button_forward
		{
			width: 180px;
		}

		.checkout_button_backward
		{
			width: 180px;
		}
	}
	
input[type='text'],
select
{
	display: block;
	background: white;
	width: 90%;
	height: 40px;
	padding: 10px;
	margin: 0px;
	font-family: 'SourceSansPro-Light', Arial, sans-serif;
	font-size: 1.125em;
	border: 1px solid #b8b8b8;
	cursor: auto;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	float: left;
	outline: none;
}

	.field
	{
		position: relative;
		width: 100%;
		height: 55px;
		font-family: 'SourceSansPro-Light', Arial, sans-serif;
	
	}
	
		.mobile_input
		{
			display: block;
		}
	
		@media screen and (min-width : 1280px)
		{
			.mobile_input
			{
				display: none;
			}
		}
	
	.input_label
	{
		font-family: 'SourceSansPro-Light', Arial, sans-serif;
	}

textarea
{
	height: 150px;
	padding: 10px;
	font-family: 'SourceSansPro-Light', Arial, sans-serif;
	font-size: 1.125em;
	background: white;
	cursor: auto;
	width: 100%;
	margin: 0;
	float: left;
	border: 1px solid #b8b8b8;
	-webkit-border-radius:0;
	border-radius:0;
	-webkit-appearance:none;
	outline:0px !important;
}

/*******************************************************************
5. WYSIWYG ELEMENTE
*******************************************************************/

.wysiwyg_button:link,
.wysiwyg_button:visited,
.wysiwyg_button:hover,
.wysiwyg_button:active,
.wysiwyg_button:focus
{
	position: relative;
	display: inline-block;
	background: #6a745a;
	padding: 12px 12px 12px 12px;
	margin: 0px 15px 0px 0px;
	color: white;
	text-align: center;
	text-decoration: none;
	font-family: 'SourceSansPro-Light', Arial, sans-serif;
	font-size: 1em;
	border-radius: 5px;
	outline: none;
}

.wysiwyg_button:hover,
.wysiwyg_button:active,
.wysiwyg_button:focus
{
	background: #3c3c3b;
}



.wysiwyg_button_feature:link,
.wysiwyg_button_feature:visited,
.wysiwyg_button_feature:hover,
.wysiwyg_button_feature:active,
.wysiwyg_button_feature:focus
{
	display: block;
	margin: 30px auto 30px auto;
	width: fit-content;
	position: relative;
	background: #3c3c3b;
	padding: 20px 20px 20px 20px;
	color: white;
	text-align: center;
	text-decoration: none;
	font-family: 'SourceSansPro-Bold', Arial, sans-serif;
	border-radius: 5px;
	font-size: 1.2em;
	outline: none;
}

.wysiwyg_image_feature
{}

/*******************************************************************
	7. MAP
*******************************************************************/

#mapid
{
	height: 400px;
}

/*******************************************************************
	8. PAYWALL
*******************************************************************/

#list_paywall
{
	width: 50%;
	overflow: hidden;
	margin: 0px 0px 0px 25%;
}

	.item_paywall
	{
		width: 100%;
		clear: both;
		text-align: left;
		padding: 50px 20px 50px 20px;
		font-size: 1rem;
		border-bottom: 1px solid #424242;
		overflow: hidden;
	}
	
	.item_paywall:last-child
	{
		border-bottom: none;
	}
	
		.button_payment
		{
			width: 100%;
		}
		
/*******************************************************************
	9. DATEPICKER
*******************************************************************/

.picker__box
{
	font-family: 'Calps Sans Semilight', Arial, sans-serif;
}

/*******************************************************************
	10. SLIDER
*******************************************************************/
#image-carousel
{
	position: relative;
	top: -70px;
	margin: 0px 0px -70px 0px;
}

.splide__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/*******************************************************************
	11. SPECIAL ELEMENTS
*******************************************************************/

.datepicker,
.timepicker
{
	width: 45% !important;
	float: left !important;
	background: url('../images/static/icon_calendar.svg') calc(100% - 8px) 9px no-repeat !important;
	background-size: 18px 18px !important;
}

.timepicker
{
	background: url('../images/static/icon_time.svg') calc(100% - 8px) 10px no-repeat !important;
	background-size: 18px 18px !important;
}