@import url(webfonts.css);

/* ALLGEMEIN START */
html {
	height: 100%;
	overflow: hidden;
	overflow-y: scroll;
	-webkit-font-smoothing: antialiased;
}
* {
	margin: 0;
	padding: 0;
}
body {
	min-height: 100%;
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
	text-align: center;
	font-family: 'DP-Regular', Calibri, Trebuchet, Lucida Grande, Lucida Sans, Lucida Sans Unicode, Arial, Helvetica, Verdana, sans-serif;
	font-weight: normal;
	font-size: 0px;
	color: #fff;
	background-color: #000;

	-webkit-appearance:none;
}


h1, h2, h3 {
	text-transform:uppercase;
  font-weight: normal;
  font-family: "vossSpecialFont", sans-serif;
  letter-spacing: 1.2px;
	color: #fff;	
	padding-bottom: 20px;
}

h4, h5, h6 {
	text-transform:uppercase;
  font-weight: normal;
  letter-spacing:1.8px;
	padding-bottom: 12px;
}

h1  {font-size: 34px;}
h2  {font-size: 28px;}
h3  {font-size: 24px;}

.c1 {color: #fff;}
.c2 {color: #aa622a;}

.f1 {font-family: 'DP-Regular', Calibri, Trebuchet, Lucida Grande, Lucida Sans, Lucida Sans Unicode, Arial, Helvetica, Verdana, sans-serif;}
.f2 {font-family: "vossSpecialFont", sans-serif;}

b {
	font-weight: normal;
}
img {
	border: none;
}
a, a:visited {
	text-decoration: none;
	cursor: pointer;
}

a#a-privacy, a#a-privacy:visited {
	color: #aa622a;
}

a:hover, a:active, a.on {
	text-decoration: none;
	cursor: pointer;
	color: #aa622a;
}
.hide {
	float: left;
	display: none;
}
.clear {
	clear: both;
	margin: 0;
	padding: 0;
	height: 0px;
	line-height: 0px;
	font-size: 0px;
	visibility: hidden;
}
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {	display: inline-block;}
* html .clearfix {	height: 1%;}
.clearfix {display: block;}

.mob-hide {display: inline;}
.mob-show {display: none;}

::selection {
  background: #aa622a;
	color: #fff;
}
::-moz-selection {
  background: #aa622a;
	color: #fff;
}
::-webkit-selection {
  background: #aa622a;
	color: #fff;
}

.sep-line {
	font-size: 0;
	line-height: 0;
	height: 1px;
	width: 90%;
	margin: 40px auto 30px auto;
	padding: 0;
	display: block;
}

hr, .sep-line  {
	color: #b78e7a;
	border: 0; 
  height: 1px; 
  background-image: -webkit-linear-gradient(left, #000, #b78e7a, #000);
  background-image: -moz-linear-gradient(left, #000, #b78e7a, #000);
  background-image: -ms-linear-gradient(left, #000, #b78e7a, #000);
  background-image: -o-linear-gradient(left, #000, #b78e7a, #000); 
}
	
h4.event {
  width: 100%;
	min-height: 40px;
	margin: 0 auto;
	padding: 20px 0 10px 0;
	display: none;
}	

p {color: #fff;}

.col-2 {color: #aa816d;}

a.logo {
	display: block;
	width: 100%;
	max-width: 220px;
	height: auto;
	margin: 0 auto 60px auto;
}

a.logo img {
	max-width: 100%;
	height: auto;
}



#wrapper {
	position: relative; 
	z-index: 1; 
	padding: 0; 
	border: none; 
	margin: 0 auto -56px; 
	width: 100%; 
	min-height: 100%; height: auto; 
	height: 100%;
	background-color: #000;
	color: #fff;
	/*color: #b78e7a;*/
}

#footer-push{clear: both; height: 56px; font-size: 0px;}

footer {
	border-top: 1px solid #fff;
	background-color: #000;
	clear: both; 
	position: relative; 
	z-index:1; 
	width: 100%; 
	min-height: 55px; 
	margin: 0 auto;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-family: 'DP-Regular', Calibri, Trebuchet, Lucida Grande, Lucida Sans, Lucida Sans Unicode, Arial, Helvetica, Verdana, sans-serif;
	
}	

section {
	position: relative;
	width: 100%;
	margin: 0 auto;

}	

section .container {
	font-size: 18px;
	padding: 60px 20px;
	max-width: 1000px;
	width: calc(100% - 40px);
	position: relative;
	margin: 0 auto;
	
}	


footer .footer-inner {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 15px 0;
}	

footer p {
	color: #000;
	font-size: 13px;
	line-height: 1.4em;
}

footer  .l, footer  .m, footer  .r {
	padding: 30px 10px 0px 10px;
}
footer  .l {
	float: left;
	text-align: left;
	width: 36%;
	width: calc(35% - 20px);	
}	
footer  .m {
	float: left;
	text-align: center;
	width: 30%;
	padding-left: 0;
	padding-right: 0;
}	
footer  .r {
	float: right;
	text-align: right;
	width: 33%;	
	width: calc(35% - 20px);	
	padding-top: 55px;
}	


#footer-slides {
	position: relative;
	overflow: hidden;
	height: 0;
	width: 100%;
	padding: 0;
	margin: 0 auto;
	-webkit-transition: height 0.6s linear;
	-o-transition: height 0.6s linear;
	-ms-transition: height 0.6s linear;
	transition: height 0.6s linear;	
	background-color: #000;
}	

#imprint, #privacy {
	position: absolute;
	color: #fff;
	z-index: 0;
	width: 100%;
	width: calc(100% - 40px);
	padding: 60px 20px;
	margin: 0 auto;
	font-size: 16px;
	height: 0;
	opacity: 0;
	overflow: hidden;
	-webkit-transition: all 0.4s linear;
	-o-transition: all 0.4s linear;
	-ms-transition: all 0.4s linear;
	transition: all 0.4s linear;		
}

#imprint.on, #privacy.on {
	z-index: 1;
	opacity: 1;
	height: auto;
}

#imprint .inner, #privacy .inner {
	position: relative;
	max-width: 900px;	
	width: 100%;
	margin: 0 auto;
}

#imprint .inner a, #imprint .inner a,
#privacy .inner a, #privacy .inner a{
	color: #aa622a;
}
#imprint .inner a:hover, #imprint .inner a:active,
#privacy .inner a:hover, #privacy .inner a:active{
	color: #fff;
}
#privacy .inner ul.datenschutz li {
	float: left;
	list-style: none;
	width: 100%;
	margin-right: 50px;
	margin-bottom: 22px;
}

#privacy .inner ul.datenschutz > li {
	width: 45%;
	width: calc(50% - 25px);
}

#privacy .inner ul.terms{
	list-style-type: none;
}
#privacy .inner ul.terms li {
	list-style-type: none;
	text-align: justify;
	margin: 0;
}	

#imprint .inner h3, #privacy .inner h3 {
    font-size: 20px;
    padding-bottom: 20px;
}


a#btn-imprint:hover, a#btn-privacy:hover,
a#btn-imprint.on, a#btn-privacy.on,
a#btn-imprint:active, a#btn-privacy:active{
		color: #fff;
}	


#footer-slides .close-btn {
	position: relative;
	width: 40px;
	height: 40px;
	overflow: hidden;
	clear: both;
	margin: 40px auto 60px auto;
}
#footer-slides .close-btn a {
	height: 40px; display: block; font-size: 0; background-repeat: no-repeat; background-image: url(../img/up-light-close.png); background-position: 0px 0px;
}
#footer-slides .close-btn a:hover {
	background-position: 0px -40px;
}


.btn-anim {
  min-height: 40px;
	margin: 40px auto;
  display: inline-block;

}

.btn-anim a {
  color: #fff;
  text-decoration: none;
  -webkit-transition: 0.3s all ease;
  transition: 0.3s ease all;
}
.btn-anim a:hover {
  color: #000;
}
.btn-anim a:focus {
  color: #000;
}

.btn-anim a {
	font-family: 'DP-Regular', Calibri, Trebuchet, Lucida Grande, Lucida Sans, Lucida Sans Unicode, Arial, Helvetica, Verdana, sans-serif;
  font-size: 18px;
	white-space: nowrap;
  letter-spacing: 2px;
  text-transform: uppercase;
  text-align: center;
  width: 100%;
	max-width: 250px;
  padding: 12px 20px 17px 20px;
  border: 2px solid #fff;
  border-radius: 0;
  position: relative;
  /*box-shadow: 0 2px 10px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.1);*/
  z-index: 2;
}
.btn-anim a:before {
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
  position: absolute;
  top: 0;
  left: 50%;
  right: 50%;
  bottom: 0;
  opacity: 0;
  content: '';
  background-color: #fff;
	color: #000;
  z-index: -1;
}
.btn-anim a:hover:before {
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
  left: 0;
  right: 0;
  opacity: 1;
	color: #000;
}
.btn-anim a:focus:before {
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
  left: 0;
  right: 0;
	color: #000;
  opacity: 1;
}


a#btn-circle {
	position: relative;
  display: inline-block;
  border-radius: 50%;
	top: 12px;
	margin: 0 25px;
  -moz-transform: scale(0.8);
  -webkit-transform: scale(0.8);
  transform: scale(0.8);	
}
a#btn-circle:hover span.arr {
  border: 2px solid #000;
}
a#btn-circle:hover span.arr:after {
  border-top: 2px solid #000;
  border-right: 2px solid #000;
}
a#btn-circle span.arr {
  display: inline-block;
  width: 50px;
  height: 50px;
  border: 2px solid #aa622a;
  border-radius: 50%;
  margin-left: 0;
}

a#btn-circle  span.arr:after {
  content: '';
	display: inline-block;
	position: absolute;
	top: 27%;
	left: 30%;
  width: 20px;
  height: 20px;
  border-top: 2px solid #aa622a;
  border-right: 2px solid #aa622a;
  -moz-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

a#btn-circle span.line {
	position: absolute;
  display: inline-block;
  margin-left: 0;
}

a#btn-circle  span.line:after {
	position: absolute;
	top: 8px;
	left: -3px;	
  content: '';
	display: inline-block;
	border-top: 2px solid #aa622a;
  width: 30px;
  height: 30px;
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);	
}

a#btn-circle:hover span.line:after{
	border-top: 2px solid #000;
}	

footer .m img.mh {
	margin: 0 10px 0 0;
	width: 160px;
	height: auto;
}
footer .m img.ep {
	margin: 0;
	width: 155px;
	height: auto;
}

footer img {
  -webkit-filter: contrast(115%); 
	filter: contrast(115%);
}

footer:hover img {
  -webkit-filter: contrast(130%); 
	filter: contrast(130%);
}

@media screen and (min-width: 2100px){
	a#btn-circle {
    top: 7px;
	}

	a#btn-circle span.arr:after {
    top: 38%;
	}
	a#btn-circle span.line {
		top: 15%;
	}	
}

@media screen and (max-width: 1110px){
	footer .m img.mh{
		width: 150px;
	}
	footer .m img.ep{
		width: 145px;
	}		
}

@media screen and (max-width: 1060px){
	footer {
		float: left;
	}
	footer  .l, footer  .m, footer  .r {
		display: block;
		width: 80%;
		text-align: center;
		padding-left: 10%;
		padding-right: 10%;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	footer  .l {
		padding-top: 20px;
	} 	
	footer  .r {
		width: 100%;
		padding-left: 0;
		padding-right: 0;		
		padding-bottom: 20px;
	} 
	
	#btn-imprint, #btn-privacy {
		min-width: 128px;
		display: inline-block;
	}	
	
	#btn-imprint {text-align: right;}
	#btn-privacy {text-align: left;}
	
	footer .m img.mh{
		width: 220px;
		margin: 10px;
	}
	footer .m img.ep{
		width: 215px;
		margin: 10px;
	}		
	
}

@media screen and (max-width: 759px){
	
	h2 {
    font-size: 30px;	
	}
	
	.btn-anim a {
		font-size: 16px;
		max-width: 250px;
		padding: 14px 15px;
	}
	
	#privacy .inner ul.datenschutz > li {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}	
	#privacy .inner ul.terms li {
		text-align: center;
	}
	
	.mob-hide {display: none;}
	.mob-show {display: inline;}
	
	.mobile-hide-break {
		clear: both;
		font-size: 0;
		padding: 0;
		margin: 0;
		border: 0;
		height: 0;
		display: block;
	}	
}

@media screen and (orientation: portrait) and (max-width: 460px){
	span.desk {display: none;}
}


@media screen and (max-width: 359px){
	.btn-anim a {font-size: 12px;}
	
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.25), only screen and ( min-device-pixel-ratio: 1.25), only screen and ( min-resolution: 200dpi), only screen and ( min-resolution: 1.25dppx) {
	-webkit-font-smoothing: subpixel-antialiased; 
}

