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

*
{
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent;
}

html
{
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
}

body
{
	background: #3c3c3b;
	font-size: 1em;
	line-height: 1em;
	color: #3c3c3b;
}

b
{
	font-family: 'montserratbold', Arial, sans-serif;
}

p 
{
	margin: 0px 0px 15px 0px;
	font-size: 0.875em;
	line-height: 1.6em;
	font-family: 'montserratlight', Arial, sans-serif;
}

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

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

h1
{
	font-family: 'montserratregular', Arial, sans-serif;
	font-size: 2em;
	line-height: 1em;
	margin: 0px 0px 30px 0px;
	padding: 30px 20px 0px 27px;
	text-align: center;
}

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

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

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

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

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

	[class^='column']
	{
		clear: none;
		float: left;
	}

	.column_25
	{
		width: 25%;
	}

	.column_33
	{
		width: 33.33%;
	}

	.column_50
	{
		width: 50%;
	}

	.column_66
	{
		width: 66.66%;
	}

	.column_75
	{
		width: 75%;
	}

	.column_100
	{
		width: 100%;
	}
}

/*******************************************************************
	3. INDIVIDUELLE STYLES
*******************************************************************/

#container_headline
{
	position: relative;
	background: #eb4808;
	width: 100%;
	border-top: 5px solid #3c3c3b;
}

	#wrap_headline
	{
		position: relative;
		background: url('../images/slogan.svg') 330px 35px no-repeat;
		background-size: 350px;
		width: 100%;
		height: 150px;
		max-width: 1280px;
		margin: auto auto;
	}
	
		#logo
		{
			position: relative;
			background: url('../images/logo.svg') 0px 15px no-repeat;
			background-size: 300px;
			height: 150px;
		}
		
			.link_logo:link
			{
				display: block;
				width: 300px;
				height: 150px;
			}
		
		#list_menu
		{
			display: none;
		}
		
		@media screen and (min-width : 770px) {
			#list_menu
			{
				display: block;
				position: absolute;
				background: white;
				height: 60px;
				top: 120px;
				right: 0px;
				box-shadow: 0px 0px 8px rgba(0,0,0,0.3);
				z-index: 2;
			}
		}
			.item_menu
			{
				float: left
			}
			
			.item_menu_active,
			.item_menu:hover
			{
				border-bottom: 6px solid #eb4808;
			}
			
				.link_menu:link, .link_menu:visited, .link_menu:hover, .link_menu:active, .link_menu:focus
				{
					outline: none;
					display: block;
					font-family: 'montserratlight', Arial, sans-serif;
					font-size: 0.875em;
					text-decoration: none;
					color: #3c3c3b;
					padding: 22px 30px 16px 30px;
				}
				
		nav:not(.mm-menu)
		{
			display: none;
		}
		
		#mobile_menu
		{
			font-family: 'montserratlight', Arial, sans-serif;
		}
		
		@media screen and (min-width : 770px) {
			#mobile_menu
			{
				display: none;
			}
		}
		
		#hamburger
		{
			position: absolute;
			display: block;
			width: 57px;
			height: 57px;
			top: 0px;
			left: 0px;
			font-size: 2em;
			z-index: 4;
		}
		
		@media screen and (min-width : 1280px) {
			#hamburger
			{
				display: none;
			}
		}
		
			#hamburger > a
			{
				display: block;
				padding: 18px 0px 13px 20px;
				color: white;
			}
			
#container_hero
{
	position: relative;
	background: url('../images/hero_home.jpg') 0px 0px no-repeat;
	background-size: cover;
	width: 100%;
	height: 35vw;
	z-index: 1;
}

	#wrap_hero
	{
		position: relative;
		width: 100%;
		max-width: 1280px;
		height: 100%;
		margin: auto auto;
	}
	
		#slogan_hero
		{
			position: absolute;
			bottom: 20%;
		}
		
			.preline_hero
			{
				font-family: 'montserratlight', Arial, sans-serif;
				font-size: 1.25em;
				text-transform: uppercase;
				margin: 0px 0px 0px 0px;
				padding: 0px 0px 0px 0px;
			}
		
			.headline_hero
			{
				font-family: 'montserratlight', Arial, sans-serif;
				font-size: 3.75em;
				text-transform: uppercase;
				text-align: left;
				padding: 0px 0px 0px 0px;
			}
			
#container_content
{
	position: relative;
	width: 100%;
	background: white;
}

	#wrap_content
	{
		position: relative;
		width: 100%;
		max-width: 1280px;
		margin: auto auto;
		padding: 0px 0px 30px 0px;
	}
	
		#list_feature
		{
			position: relative;
			background: white;
			width: 100%;
			top: -100px;
			box-shadow: 0px 0px 8px rgba(0,0,0,0.3);
			overflow: hidden;
			z-index: 2
		}
		
			.item_feature
			{
				position: relative;
				width: 33.3333333333%;
				float: left;
				padding: 0px 40px 0px 40px;
				border-bottom: 10px solid #eb4808;
			}
			
				.feature_icon
				{
					width: 120px;
					height: 120px;
					margin: 20px 0px -30px calc(50% - 60px);
					text-align: center;
				}
				
				.feature_headline
				{
					color: #eb4808;
					text-align: center;
				}
			
				.feature_text
				{
					margin: 0px 0px 20px 0px;
				}
				
				.feature_link:link
				{
					position: relative;
					display: inline-block;
					width: 180px;
					background: #3c3c3b;
					padding: 20px 20px 20px 20px;
					margin: 0px 0px 20px calc(50% - 90px);
					color: white;
					text-align: center;
					text-decoration: none;
					font-family: 'montserratbold', Arial, sans-serif;
					border-radius: 5px;
					font-size: 0.875em;
				}
				
		.preline_content
		{
			font-family: 'montserratlight', Arial, sans-serif;
			font-size: 1.25em;
			text-transform: uppercase;
			margin: 0px 0px 0px 0px;
			padding: 0px 0px 0px 0px;
			color: #eb4808;
		}
		
		.headline_content
		{
			font-family: 'montserratlight', Arial, sans-serif;
			font-size: 2.5em;
			text-transform: uppercase;
			text-align: left;
			padding: 0px 0px 0px 0px;
		}
		
		.list_gallery
		{
			width: 100%;
			overflow: hidden;
			padding: 2.6666666667% 0px 0px 0px;
		}
		
			.item_gallery
			{
				width: 23%;
				float: left;
				margin: 0 2.6666666667% 2.6666666667% 0;
			}
		
			.item_gallery:nth-child(4n)
			{
				margin: 0 0 2.6666666667% 0;
			}
			
				.gallery_thumbnail
				{
					width: 100%;
				}
				
#container_footer
{
	position: relative;
	width: 100%;
}

	#wrap_footer
	{
		position: relative;
		width: 100%;
		max-width: 1280px;
		margin: auto auto;
		padding: 30px 0px 30px 0px;
		overflow: hidden;
	}
	
		#footer_socialmedia
		{
			width: 50%;
			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: #eb4808;
				outline: none;
			}
	
		#footer_copyright
		{
			width: 50%;
			color: #979797;
			font-family: 'montserratlight', Arial, sans-serif;
			font-size: 0.75em;
			line-height: 1.6em;
			text-align: right;
			margin: 0px 0px 0px 50%;
		}
			
			.link_pixel:link, .link_pixel:visited
			{
				font-family: 'montserratbold', 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: #1aa69c;
	height: 40px;
	padding: 10px;
	margin: 0px;
	color: white;
	border: 0px;
	float: right;
	font-family: 'montserratlight', Arial, sans-serif;
	font-size: 1.125em;
	line-height: 0.5em;
	border-radius: 0;
	cursor: pointer;
}

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

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

	}

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

	.checkout_button_forward:hover
	{
		background: #57a82b;
	}

	.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: 100%;
	height: 40px;
	padding: 10px;
	margin: 0px;
	font-family: 'montserratlight', Arial, sans-serif;
	font-size: 1.125em;
	border: 1px solid #b8b8b8;
	cursor: auto;
    -webkit-border-radius:0;
    border-radius:0;
	float: left;
	outline: none;
}

	.field
	{
		position: relative;
		width: 100%;
		height: 55px;
		font-family: 'montserratlight', Arial, sans-serif;
	
	}
	
		.mobile_input
		{
			display: block;
		}
	
		@media screen and (min-width : 1280px)
		{
			.mobile_input
			{
				display: none;
			}
		}
	
	label
	{
		position: absolute;
		left: 11px;
		top: 0px;
		transition: all .2s linear;
		color: #999;
		font-size: 0.6875em;
	}
	
	input:invalid + label
	{
		top: 3px;
		opacity: 0;
	}
	
	input:valid + label
	{
		opacity: 1;
		top: 0;
	}
	
	input:focus
	{
		outline: none;
	}
	
	input:focus + label
	{
		color: #575756;
	}
	


textarea
{
	height: 150px;
	padding: 10px;
	font-family: 'montserratlight', 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;
}