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

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


/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */button,hr,input{overflow:visible}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}details,main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}[hidden],template{display:none}

html {overflow-y: scroll;height: 100%;-webkit-text-size-adjust: none; -webkit-font-smoothing: antialiased; font-size:16px; 	}
html.nooverflow{	overflow-y:hidden;}
*, *:before, *:after { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
body {
	margin: 0;
	padding: 0;
	color: rgb(60,60,59);
	height: 100%;
	font: normal 1em/1.25em 'Montserrat',  Arial, Helvetica, sans-serif;
	background: rgb(255,255,255);
}
table, td { border: 0px; margin: 0px; padding: 0px;	vertical-align: top; border-collapse: collapse;	border-spacing: 0px;}
iframe { border: 0px; margin: 0px; padding: 0px;}
img {
	display: inline-block;
	border: 0;
	margin: 0;
	padding: 0;
	vertical-align: top;}
a {	color: inherit;	outline: none;}
a:hover { color: rgb(0,130,55); }
strong {font-weight:600;}
/*-------------------------------------------------------------------------------------------------------------------------*/
header *, nav, footer *, .galerie * {
	transition: all 0.15s;
	-moz-transition:all 0.15s;
	-webkit-transition: all 0.15s;}
.container, .center, header, .bild, .content, footer, nav, section, main {
	position: relative;
	margin: 0 auto;
	width: 100%;}
.logo {
	position: relative;
	padding: 1em;
}	
.logo img {
	max-width: 200px;
	height: auto;
}
/*-------------------------------------------------------------------------------------------------------------------------*/
.header-quicklinks{
	position:absolute;
	top:0;
	right:0px;
	display:none;
}
.header-quicklinks ul{
	list-style-type:none;
	padding:0;
}
.header-quicklinks ul li{
	padding:0.5em 0.7em;
	margin-bottom:7px;
	text-align:center;
	background-color:#9E0C26;
	border-radius:0.5em 0 0 0.5em;
	-webkit-transition: all 0.3s ease-in;
	transition: all 0.3s ease-in;
}
.header-quicklinks ul li:nth-child(2){
	background-color:#3C3C3B;
}
.header-quicklinks ul li:hover{
	background-color:#9E0C26;
}
/*-------------------------------------------------------------------------------------------------------------------------*/
.bild {
	position: relative;
	text-align: center;
	margin: 0 auto;
	height: 56vw;	max-height:75vh; overflow:hidden;}
.bild-topper {
	position: absolute;
	top: 75%;
	left: 50%;
	transform: translateX(-50%);
	padding: 0.5em 2em;
	background: rgba(255,255,255,0.85);
	z-index: 2;
	text-transform: uppercase;
	font-size: 1.5em;
	font-size: 2.75vw;
	line-height: 1.25em;
}
/*-----------------------------------------------------*/
#header-image-pager {position: absolute;z-index:999; top: 1em; text-align:center; right:1em;}
#header-image-pager a {
	background-color: rgb(255,255,255);
	border: 1px solid rgb(255,255,255);
	text-indent: -9999px;
	width: 1em;
	height: 1em;
	margin: 0 0.25em;
	outline: 0;
	display: inline-block;
	-webkit-box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.5);
	box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.5);}
#header-image-pager a:hover,#header-image-pager a.active { background-color: rgb(158,12,38); }
/*---------------------------------------------------------------------*/
.content > div { margin: auto; padding: calc(1em + 0.5vw + 0.5vh);}

.button {
	border-radius: 0.25em;
	margin: 1em 0;
	padding: 0.5em 1em;
	color: inherit;
	text-decoration: none;
	white-space: nowrap;
	font-weight:600;
}
.button.hell {
	border: 2px solid rgb(255,255,255);}
.button.dunkel {
	border: 2px solid rgb(140,135,135);}
.button.rot {
	border: 2px solid  rgb(158,12,38); color: rgb(158,12,38);}
.button:hover {
	background-color: rgb(255,255,255);
	color: rgb(140,135,135);
}
.button.rot:hover {
	background-color:rgb(158,12,38) ;
	color: rgb(255,255,255);
}
/*---------------------------------------------------------------------*/
footer {
	position: relative;
	padding: 2em 1em;
	margin: 0 auto 0.5em;
	text-align: left;
	background-color: rgb(60,60,59);
	color: rgb(255,255,255);
	display: flex;
	justify-content: center;
	flex-flow: row wrap;
}
footer a {	color: inherit; text-decoration-color: rgba(255,255,255,0.5); }
footer a:hover { color: rgb(158,12,38); text-decoration-color: rgba(8,93,48,0.5); }
footer > p { padding:0 4em 2em 0; flex: 0 0 auto;}
/*-------------------------------------------------------------------------------------------------------------------------*/
p, h1, h2, h3, h4, h5, h6 {
	margin: 0 0 1em 0;
	font-size: 1em;
	font-weight: normal;
}
h1, .h1 {
	font-size: 1.375em;
	color: rgb(158,12,38);
	line-height: 1.125em;
}
h2, .h2 {
	font-size: 1.25em;
	line-height: 1.125em;
}
h3 {font-size: 1.125em; font-weight:600;}
/*-------------------------------------------------------------------------------------------------------------------------*/
.clear { 	clear: both;	line-height: 0px;	height: 0px;}
.clear:after {	content: "";	display: block;	clear: both;}
hr, .trennlinie {
	clear: both;
	background-color: rgb(53,109,46);
	border: 0;
	margin: 2em 0;
	padding: 0;
	height: 2px;
	text-align: center;
}
.aktuelles a.button_pager{
	cursor: pointer;
	color: #fff;
	text-decoration: none;
	display: inline-block;
	padding: 3px;
	margin-top: 5px;
	background-color: #820f00;
	min-width:16px;
}
.aktuelles a.button_pager:hover,.aktuelles a.pager:hover{
	color: #fff;
	background-color: #4c5659;
}
.aktuelles .pager{
	color: #ccc;
	text-decoration: none;
	padding: 3px;
	display: inline-block;
	margin-top: 5px;
	background-color: #ECEDEE;
	min-width:15px;
}
.aktuelles .pager_active{
	color: #fff;
	text-decoration: none;
	padding: 3px;
	display: inline-block;
	margin-top: 5px;
	background-color: #820f00;
	min-width:15px;
}
.aktuelles .pager_inactive{
	padding: 3px;
	background-color: #ECEDEE;
	color: #ccc;
}
.aktuelles p,.aktuelles ul{
	margin:0px;
}
.aktuelles img{
	max-width:100%;
	height:auto !important;
}
.aktuelles .datum{
	font-size:0.8em;
	margin-bottom:5px;
}
.aktuelles table:not(.pager-table){
	width:100% !important;
}
.aktuelles table:not(.pager-table) td{
	width:100% !important;
	display: block;
	border:none;
}
.aktuelles table:not(.pager-table) tr{
	display:block;
	margin-bottom:10px;
	padding-bottom:10px;
	border-bottom:1px solid #ccc;
}
/*-------------------------------------------------------------------------------------------------------------------------*/
#formular, form {
	position: relative;
	alignment-adjust: 0;
	margin: 0;
	padding: 0;}
input, textarea, select {
	position: relative;
	border: 1px solid rgb(180,180,180);
	width: 100%;
	padding: 4px;
	color: #352515;
	height: 36px;
	margin: 0 8px 8px 0;
	border-radius: 4px;
	background-color: rgb(255,255,255);
	display: inline-block;
	font-family: 'Montserrat', Arial, Helvetica, sans-serif;
}
textarea {	height: 150px;}
input:focus, textarea:focus, select:focus {
	border: 1px solid rgb(158,12,38);}
input[type="radio"], .check {
	width: 32px;
	height: 32px;
	vertical-align: middle;
}
img.ui-datepicker-trigger {
	position: absolute;
	right: 10px;
    top: 9px;
	cursor:pointer;}
.send {
	background-color: rgb(158,12,38);
	color: rgb(255,255,255);
	padding: 0.25em 0.5em;
	border-radius: 0.125em;
	margin: 1em 0;
	font-size: 1.125em;
	border: 1px solid rgb(158,12,38);
	cursor: pointer;
	width:240px;}
.send:hover {
	background-color: rgb(0,130,55);
	color: rgb(255,255,255);
	border-color: rgb(60,60,59);
}
/*-------------------------------------------------------------------------------------------------------------------------*/
.galerie {
	position: relative;
	margin: 4vw 2vw;
	z-index: 1;
	max-width:1640px;
}
.galerie ul {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	display: flex;
	flex-flow: row wrap;
	}
.galerie ul li {
	list-style: none;
	display: inline-block;
	flex: 1 1 auto;
	width: 50%;
	padding: 0.25em;
	margin: 0 auto;
	min-width: 180px;
	max-width: 400px;
}		
.galerie ul li img, .galerie ul li a {
	border: 0;
	padding: 0;
	margin: 0;
	vertical-align: top;
	}
.galerie ul li a {
	display: block;
	position: relative;
	overflow:hidden;}
.galerie ul li img {
	border: 1px solid rgb(255,255,255);
	height: auto;
	width: 100%;}
.galerie ul li a img:hover {
	border: 1px solid rgb(158,12,38);
	transform: scale(1.1);
}
/*-------------------------------------------------------------------------------------------------------------------------*/	
.preise { font-size:14px;}
.preise td {
	border: 1px solid rgb(158,12,38);
	padding: calc(0.375em + 0.125vw + 0.125vh);
	border-collapse: collapse;
	font-weight:600;
	width: 50%;
}
.preise tr:first-child {
	color: rgb(255,255,255);
	background-color: rgb(158,12,38);
}
.preise td:nth-child(1) { text-align:right;}
.preise td:nth-child(2) { text-align:center; width:64px;}
.preise td:nth-child(3) { text-align:left;}

/*-------------------------------------------------------------------------------------------------------------------------*/	
.error { font-size:0.9em; color:#F00;}
/*-------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------*/
@media only screen and (min-width: 830px) { 
	.galerie ul li { width: 25%;}
}
@media only screen and (max-width: 739px) {	
	nav, nav ul, nav ul li {
		padding: 0;
		margin: 0;
		list-style: none;
		postition: relative;
		text-align:center;	}
	nav ul li {margin:4px; border-radius:4px; }
	nav ul li a {
		text-decoration: none;
		padding: 0 0.5em;
		margin: 0;
		display: block;
		line-height: 36px;
		border: 3px solid transparent;
		border-radius: 4px;
		display: inline-block; 
		font-size:16px; text-transform:uppercase;	}
	nav a:hover, nav a:focus {
		background-color: rgba(255,255,255,0.9);
		color: rgb(158,12,38);
		text-decoration: none;	}
	nav a.aktiv {
		background-color: rgb(158,12,38);
		color: rgb(255,255,255);	}	
/**/
	#menuToggle {
	display: block;
	position: fixed;
	top: 1em;
	right: 1em !important;
	width: 44px;
	z-index: 10;
	padding: 8px 0 4px 5px;
	-webkit-user-select: none;
	user-select: none;
	background-color: rgb(158,12,38);
	box-shadow: 0 0 4px rgba(0,0,0,0.5);}
	#menuToggle input {
		display: block;
		width: 50px;
		height: 44px;
		position: absolute;
		top: -2px;
		left: -3px;
		cursor: pointer;
		opacity: 0; /* hide this */
		z-index: 200 !important; /* and place it over the hamburger */
		-webkit-touch-callout: none;	}
	/* Just a quick hamburger */
	#menuToggle span {
		display: block;
		width: 34px;
		height: 4px;
		margin-bottom: 5px;
		position: relative;
		background-color: rgb(255,255,255);
		z-index: 3;
		transform-origin: 50% 50%;
		transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),  background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),  opacity 0.55s ease;	}	
	/* Transform all the slices of hamburger into a crossmark */
	#menuToggle input:checked ~ span {
		opacity: 1;
		transform: rotate(405deg) translate(5px, 7px);
		background: rgb(158,12,38);	}
	/*hide the middle one */
	#menuToggle input:checked ~ span:nth-last-child(3) {
		opacity: 0;
		transform: rotate(0deg) scale(0.2, 0.2);	}
	/* the last one go the other direction */
	#menuToggle input:checked ~ span:nth-last-child(2) {
		opacity: 1;
		transform: rotate(-405deg) translate(5px, -8px);	}
	/*	 * Make this absolute positioned at the top right of the screen	 */
	#menu {
	position: fixed;
	overflow: auto;
	width: 100%;
	height: 100%;
	margin: 0;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	padding: 1.5em;
	list-style-type: none;
	-webkit-font-smoothing: antialiased;
	/* to stop flickering of text in safari */	  
	transform-origin: 0% 0%;
	transform: translate(0%, -300%);
	transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0);
	background-size: 500%;
	background-color: rgb(255,255,255);}
	#menuToggle input:checked ~ ul {
		transform: scale(1.0, 1.0);
		opacity: 1;	}
	#menuToggle input:checked ~ body { overflow:hidden;}
	.header-quicklinks{display:none;}
}
/*-------------------------------------------------------------------------------------------------------------------------*/
@media only screen and (min-width: 740px) {
	.bild { }
	.logo { text-align:right;}
	.sticky header { position:fixed; top:0; z-index:150; }
	.sticky nav { postition:fixed; box-shadow: 0 0 10px rgba(0,0,0,0.25);
	left: 0;
	right: 0;
	top: 0; 
	z-index: 150;}
	.sticky .logo { display:none;}
	.sticky .bild { margin-top:60px;}
	/*-------------------------------------------------------------------------------------------------------------------------*/

	#menuToggle input { display: none;	}
	#menuToggle { margin: 0 auto;	position: relative;	}
	nav {
	text-align: center;
	margin: 0;
	position: relative;
	line-height: 40px;
	z-index: 2;
	background-color: rgb(158,12,38);
} 
	nav * { transition:all 0.2s; -moz-transition:all 0.2s; -webkit-transition:all 0.2s;}
	nav ul {
		margin: 0 auto;
		padding: 0;
		list-style-type: none;
		display: flex;
		justify-content: center;	}
	nav ul li {
		margin: 0;
		padding: 0;
		position:relative;
		flex: 0 0 auto;	}
	nav a {
	font-size-adjust: none;
	display: block;
	margin: 0.25em;
	padding: 0 0.5em;
	color: rgb(255,255,255);
	text-decoration: none;
	text-transform: uppercase;
	font-size: 14px;
}
	nav a.aktiv {
	color: rgb(29,29,27);
	background-color: rgb(255,255,255);
	border-radius: 0.25em;
}
	nav a:hover { 	color: rgb(140,135,135);}
	
/*-------------------------------------------------------------------------------------------------------------------------*/
.content {
	position: relative;
	margin: 0 auto;
	display: flex;
	flex-flow: row wrap;
	align-items: flex-start;
	max-width: 65em;
}	
.content > div {display:inline-block; flex:1 1 auto; margin: auto; padding: calc(1em + 0.5vw + 0.5vh);}
.content-33 {
	width: 100%;
	max-width: 50em;	
}	
.content-23 {  width: 66%;} 	
.content-13 { width: 33%;}	
.content-12 { width:50%; }
.content-12.image {padding:0 !important;}

.css-sticky {
	position: -webkit-sticky;
	position: sticky;
	top: 4em;
	z-index: 5;
}
}
@media only screen and (min-width: 860px) {
nav a {	
	font-size:16px;
}
.logo { text-align:center;}
.header-quicklinks{display:block;}
.sticky .header-quicklinks {top: 50px;}
}

/*-------------------------------------------------------------------------------------------------------------------------*/
.btn.toTop {
	color: #fff;
	position: fixed;
	font-weight: 600;
	right: 3vw;
	bottom: 3vw;
	padding:0.5em; 
	text-decoration: none;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	z-index: 999;}
.btn.toTop:hover {	background-color:rgba(255,255,255); border-radius:1em;}
.btn.toTop.show {
	visibility: visible;
	cursor: pointer;
	opacity: 1.0;}
::-moz-selection { /* Code for Firefox */
 color: rgb(255,255,255); background: rgb(0,130,55);}
::selection {
	color: rgb(255,255,255);	background: rgb(0,130,55);}
/* { background-color:rgba(0,0,0,0.1)}*/

.mfp-iframe {background-color:#fff !important;}
.mfp-calc .mfp-close{font-size:4em;top:-50px;}
.mfp-calc .mfp-iframe-holder {padding-top: 60px;}
.mfp-calc .mfp-iframe-holder .mfp-content{width:100% !important;max-width:640px !important;height:100%;max-height:260px; }
