/* --------------------------------------------------------------------------
   Google Fonts
   -------------------------------------------------------------------------- */
/* playfair-display-regular - latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/playfair-display-v13-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Playfair Display Regular'), local('PlayfairDisplay-Regular'),
       url('../fonts/playfair-display-v13-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/playfair-display-v13-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/playfair-display-v13-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/playfair-display-v13-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/playfair-display-v13-latin-regular.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}

/* playfair-display-italic - latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/playfair-display-v13-latin-italic.eot'); /* IE9 Compat Modes */
  src: local('Playfair Display Italic'), local('PlayfairDisplay-Italic'),
       url('../fonts/playfair-display-v13-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/playfair-display-v13-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/playfair-display-v13-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/playfair-display-v13-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/playfair-display-v13-latin-italic.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}

/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/open-sans-v15-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Regular'), local('OpenSans-Regular'),
       url('../fonts/open-sans-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/open-sans-v15-latin-italic.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Italic'), local('OpenSans-Italic'),
       url('../fonts/open-sans-v15-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* cinzel-regular - latin */
@font-face {
  font-family: 'Cinzel';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/cinzel-v7-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Cinzel Regular'), local('Cinzel-Regular'),
       url('../fonts/cinzel-v7-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/cinzel-v7-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/cinzel-v7-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/cinzel-v7-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/cinzel-v7-latin-regular.svg#Cinzel') format('svg'); /* Legacy iOS */
}

/* --------------------------------------------------------------------------
   Website Hilgendorf
   -------------------------------------------------------------------------- */
html,
body {
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 150%;
	text-align: center;
	color: #fff;
}

/* --------------------------------------------------------------------------
   Parallax Section Top
   -------------------------------------------------------------------------- */
.scroll-cont {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
	z-index: 100;
}

img.startlogo {
	position: relative;
	top: 50%;
	width: 40%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.scroll-cont .sc-top {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 30px);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url("../img/bg_p1.jpg");
}

.scroll-cont .sc-bot {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 60px;
	background-size: auto 100%;
	background-repeat: repeat-x;
	background-image: url("../img/muster.svg");
}

/* --------------------------------------------------------------------------
   Content Section
   -------------------------------------------------------------------------- */
.scroll-helper {
	width: 100%;
}

.rel-wrapper {
	position: fixed;
	top: 0;
	box-sizing: border-box;
	width: 100%;
	z-index: 50;
}

.rel-wrapper.rel {
	position: relative;
}

.rel-cont {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
}

.rel-cont.infobox, 
.rel-cont.kontaktbox, 
.rel-cont.footerbox {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.rel-cont.infobox {
	display: -webkit-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-image: url("../img/bg_p2.jpg"); 
}

.rel-cont.infobox h1 {
	width: 50%;
	margin: 0 auto;
	font-family: 'Cinzel';
	font-size: 3rem;
	line-height: 120%;
	font-style: normal;
	font-weight: 400;
}

.rel-cont.infobox h1 span {
	display: block;
	margin-top: 15px;
	font-family: 'Open Sans';
	font-size: 1.3rem;
	line-height: 100%;
	font-style: normal;
	font-weight: 400;
	text-transform: uppercase;
}

a {
	color: #ae9150;
	text-decoration: none;	
}

a:hover {
	color: #ae9150;
	text-decoration: underline;	
}

/* --------------------------------------------------------------------------
   Kontaktformular
   -------------------------------------------------------------------------- */
.rel-cont.kontaktbox {
	max-width: 1200px;
	padding: 120px 60px;
	background-color: #fff; 
}

.rel-cont.kontaktbox h2 { 
	margin: 0 auto 50px;
	font-family: 'Cinzel';
	font-size: 3rem;
	line-height: 120%;
	font-style: normal;
	font-weight: 400;
	color: #1d421b;
}

.rel-cont.kontaktbox p { 
	margin: 0 auto 50px;
	font-family: 'Open Sans';
	font-size: 1.3rem;
	line-height: 130%;
	font-style: normal;
	font-weight: 400;
	color: #000;
}

.rel-cont.kontaktbox .formboxbox {
	position: relative;
	box-sizing: border-box;	
}

.rel-cont.kontaktbox .formbox { 
	position: relative;
	box-sizing: border-box;
	width: 48%;
	width: calc(50% - 10px);
	text-align: left;
	color: #ae9150;
}

.rel-cont.kontaktbox .jur {
    margin: -20px 0 0 20px;
}

.rel-cont.kontaktbox .jur .showDs {
	color: #ae9150;
}
.rel-cont.kontaktbox .jur .showDs:hover {
	text-decoration: underline;	
}

.rel-cont.kontaktbox div.w100p {
	padding: 5px 0;	
	font-size: 1.0rem;
}

.rel-cont.kontaktbox div.w100p.e1 {
	height: 50px;
	margin-bottom: 3px;
	padding: 3px;
	font-family: 'Playfair Display';
	line-height: 50px;
	font-style: italic;
	font-weight: 400;
	color: #ae9150;	
}

.rel-cont.kontaktbox .w100p.e2 {
	margin: -6px 0 0 0;
	border: 0;
	padding: 0;
	display: block;
	height: 60px;
	font-family: 'Open Sans';
	font-size: 1.3rem;
	line-height: 100%;
	font-style: normal;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #fff;
	background-color: #1d421b;
}

.rel-cont.kontaktbox .w100p.e3 {
	margin-top: 15px;
}

.rel-cont.kontaktbox input.w100p,
.rel-cont.kontaktbox select.w100p {
	padding: 3px;	
	margin: 5px 0;
}

.rel-cont.kontaktbox textarea.w100p {
	height: 303px;
	margin-bottom: 0;
}
	
.rel-cont.kontaktbox input[type="submit"].w050p {
	border: 0;
	margin-top: 7px;
	padding: 8px;
	float: right;
	color: #fff;
	font-size: 0.9rem;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
	background-color: #ae9150;
	outline: none;
}

.rel-cont.kontaktbox .pflicht {
    position: relative;
    margin: 10px 0 0 0;
	font-style: italic;
}

.form_anfrage input[type="text"], 
.form_anfrage input[type="email"], 
.form_anfrage input[type="password"],
.form_anfrage select {
    height: 50px;
    line-height: 48px;
	padding: 0 10px;
	border: 0;
	border-bottom: 1px solid #ae9150;
}

.form_anfrage textarea {
    line-height: 135%;
	border: 1px solid #ae9150;
}

.form_anfrage .checkBx.last {
	padding-bottom: 20px;
}

.back {
	display: inline-block;
	margin-top: 15px;
}

::placeholder {
	font-family: 'Playfair Display';
	font-style: italic;
	font-weight: 400;
	color: #ae9150;
}

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */
.rel-cont.footerbox {
	padding: 80px 60px;
	background-color: #1d421b;
	background-size: auto 60%;
	background-image: url("../img/bg_footer.png");
}

.rel-cont.footerbox .fc-top {
	position: absolute;
	top: -30px;
	left: 0;
	width: 100%;
	height: 60px;
	background-size: auto 100%;
	background-repeat: repeat-x;
	background-image: url("../img/muster.svg");
}

.rel-cont.footerbox h3 {
	font-family: 'Open Sans';
	font-size: 1.1rem;
	line-height: 150%;
	font-style: normal;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-weight: 400; 
}

.rel-cont.footerbox p {
	font-family: 'Playfair Display';
	font-size: 1.1rem;
	line-height: 150%;
	font-style: italic;
	letter-spacing: 0.08em;
	font-weight: 400; 
}

.rel-cont.footerbox p span {
	display: inline-block;
	margin: 0 15px 0 25px;
	font-weight: bold;
	font-style: normal;
	text-transform: uppercase;
	color: #ae9150;
}

.rel-cont.footerbox .footerMenu {
	font-family: 'Playfair Display';
	font-size: 1.2rem;
	font-style: italic;
	font-weight: 400;
	color: #ae9150;
}

.rel-cont.footerbox .footerMenu span {
	cursor: pointer;
}

/* --------------------------------------------------------------------------
   Sonstige Definitionen
   -------------------------------------------------------------------------- */
.w006p, .w010p, .w012p, .w1-8, .w015p, .w01-6, .w020p, .w025p, .w030p, 
.w1-3, .w040p, .w050p, .w050p_mob, .w060p, .w01-6, .w070p, .w075p, .w080p, .w090p, .w100p {
	box-sizing: border-box;
}

.w006p			{ width: 6%; }
.w010p			{ width: 10%; }
.w012p			{ width: 12%; }
.w1-8			{ width: 12.5%; }
.w015p			{ width: 15%; }
.w01-6			{ width: 16.666%; }
.w020p			{ width: 20%; }
.w025p			{ width: 25%; }
.w030p			{ width: 30%; }
.w1-3			{ width: 33.333%; }
.w040p			{ width: 40%; }
.w050p			{ width: 50%; }
.w050p_mob		{ width: 50%; }
.w060p			{ width: 60%; }
.w01-6			{ width: 66.666%; }
.w070p			{ width: 70%; }
.w075p			{ width: 75%; }
.w080p			{ width: 80%; }
.w090p			{ width: 80%; }
.w100p			{ width: 100%; }

.small			{ font-size: 0.75em !important; }

.zentriert		{ width: 100%; }

.hidden			{ display: none; }

.aLeft			{ text-align: left; }

.flLeft 		{ float: left; }
.flRight 		{ float: right; }

.red			{ color: #f00 !important; }

.clear			{ clear: both; }

/* --------------------------------------------------------------------------
   Modal Windows - Impressum / Datenschutz
   -------------------------------------------------------------------------- */
.modal_imp,
.modal_ds {
	position: fixed;
	box-sizing: border-box;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	color: #000;
	background-color: rgba(0, 0, 0, 0.7);
	z-index: 99999;
	display: none;
}

.modal_imp .close,
.modal_ds .close {
	position: absolute;
	width: 40px;
	height: 40px;
	top: 20px;
	right: 20px;
	border: 1px solid #fff;
	cursor: pointer;
    background-color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url("../img/close.png");
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
}

.modal_imp.show,
.modal_ds.show {
	opacity: 1;
	display: block;
}

.contentBox_imp,
.contentBox_ds {
	position: absolute;
	box-sizing: border-box;
	top: 6%;
	left: 5%;
	width: 90%;
	height: 88%;
	background-color: #fff;
	overflow: auto;
}

.contentBox_imp .content,
.contentBox_ds .content {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	padding: 30px 30px 250px;
	text-align: left;
}

.contentBox_imp .content h2,
.contentBox_ds .content h2 {
	margin-top: 40px;
	margin-bottom: 20px;
}

.contentBox_imp .content h3,
.contentBox_ds .content h3 {
	margin-top: 20px;
	margin-bottom: 10px;
}

.contentBox_imp .content p,
.contentBox_ds .content p {
	font-size: 1rem;
}

.showImp,
.showImp2,
.showDs,
.showDs2 {
	cursor: pointer;
}

.showDs2,
.showImp2 {
	color: #000;
	text-decoration: underline;
	
}

.showImp:hover,
.showImp2:hover,
.showDs:hover,
.showDs2:hover { text-decoration: underline; }

/* --------------------------------------------------------------------------
   Cookiebanner
   -------------------------------------------------------------------------- */
#cookiebanner a { 
	color: #4b3b32;
	text-decoration: underline; 
}

#cookiebanner a:hover { 
	text-decoration: underline;
	opacity: 0.6;
}

#cookiebanner {  
	position: fixed;
	box-sizing: border-box;
	top: 0; 
	width: 100%;
	padding: 0 20px;
	border-bottom: 1px solid #4b3b32;
	background: #f5ece7;
  	z-index: 10000;
}

#cookiebanner p {
	width: 70%;
	width: calc( 100% - 150px );
	color: #000;
	font-size: 0.8rem; 
	line-height: 130%;
	text-align: left;
}

#cookiebanner p span.showDs {
	cursor: pointer;
	font-weight: 700;
}
#cookiebanner p span.showDs:hover {
	text-decoration: underline;
}

#cookiebanner .imp { text-align: right; }

#cookiebannerCloser {
	position: absolute;
	display: inline-block;
	bottom: 10px;
	right: 20px;
	width: 140px;
	height: 16px;
	border: 1px solid #4b3b32;
	font-size: 12px;
	line-height: 16px;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-decoration: none;
	font-style: normal;
	text-transform: uppercase;
	text-align: center;
	color: #4b3b32;
	background: #fff;
	cursor: pointer;
}

#cookiebannerCloser:hover {
	opacity: 0.6;
}

/* --------------------------------------------------------------------------
   Media Queries
   -------------------------------------------------------------------------- */
@media only screen and (max-width: 699px) {
/* --------------------------------------------------------------------------
   Parallax Section Top
   -------------------------------------------------------------------------- */
	img.startlogo {
		width: 70%;
	}
	
/* --------------------------------------------------------------------------
   Content Section
   -------------------------------------------------------------------------- */
	.rel-cont.infobox h1 {
		width: 80%;
		font-size: 2.5rem;
	}
	
/* --------------------------------------------------------------------------
   Kontaktformular
   -------------------------------------------------------------------------- */
	.rel-cont.kontaktbox {
		padding: 80px 20px;
	}

	.rel-cont.kontaktbox .formbox { 
		width: 100%;
	}
	
	.rel-cont.kontaktbox .w100p.e2 {
		height: auto;
		margin: 10px 0 0 0;
		padding: 8px 0;
	}
	
	.rel-cont.kontaktbox textarea.w100p {
		height: 90px;
	}
	
/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */
	.rel-cont.footerbox {
		padding: 80px 20px;
	}
	
	.rel-cont.footerbox h3 {
		font-size: 1.0rem;
	}
	
	.rel-cont.footerbox p {
		font-size: 1.0rem; 
	}
}

@media only screen and (max-width: 699px) {
/* --------------------------------------------------------------------------
   Cookiebanner
   -------------------------------------------------------------------------- */
	#cookiebanner p {
		width: 100%;
	}
	
	#cookiebannerCloser {
		position: relative;
		display: block;
		bottom: 0;
		right: 0;
		width: 140px;
		height: 16px;
		margin-top: 10px;
	}
}
