/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/open-sans-v27-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v27-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v27-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v27-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v27-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v27-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-600 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/open-sans-v27-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v27-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v27-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v27-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v27-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v27-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{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}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}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,input{overflow:visible}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:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[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}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}/**/

/*font-family: 'Open Sans', sans-serif;*/
html {
	overflow-y: scroll;
	height: 100%;
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
	font-size:16px;
}
*, *:before, *:after, div {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	margin: 0;
	padding: 0;
	color: rgb(75,75,75);
	height: 100%;
	font: 400 1em/1.375 'Open Sans', sans-serif;
	position: relative;
	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 {
	border: 0;
	margin: 0;
	padding: 0em;
	vertical-align: top;
}
a {	color: inherit;	outline: none;}
a:hover {
	color: rgb(0,145,55);
	text-decoration: underline;
}
strong { font-weight: 600; }
.clear { 	clear: both;	line-height: 0px;	height: 0px;}
.clear:after {     content:"";    display:block;    clear:both;}
/*-------------------------------------------------------------------------------------*/
main *, nav, nav *, .logo, .logo *, header {
	-webkit-transition: all 0.15s;
	transition: all 0.15s;}
header {
	margin: 0 auto;
	z-index: 20;
	text-align: center;
	position: relative;
} 
.logo {
	z-index: 10;
	padding: 0.5rem;
}
/*----------------------------------------------------------------*/
.bild {
	z-index: 1;
	position: relative;
	padding: 0;
	margin: 0 auto;
	overflow: hidden;
}
.bild img {
	width: 100%;
	margin: 0 auto;
	height: auto;}
/*----------------------------------------------------------------*/
.owl-dots { top: 25vw !important; bottom:auto !important; right: 2vw !important; left:auto !important;  width: auto !important; transform:rotate(90deg); transform: right top; }
.owl-dot span {
	box-shadow: 0 0 5px rgba(0,0,0,0.5);
	background-color: rgb(35,26,22) !important;
	border: 2px solid #EFEDE1;
	width: 16px !important;
	height: 16px !important;
}
.owl-dot span:hover { background-color: rgb(105,175,35) !important; }
.owl-dot.active span { background-color: rgb(65,115,40) !important; }
/*----------------------------------------------------------------*/
.quicklinks {
	position: fixed;
	top: 20%;
	right: 0;
	text-align: right;
}
.quicklinks a {
	display: inline-block;
	margin: 4px 0;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 0.5rem 0 0 0.5rem;
	border-right: none;
	padding: 0.25rem 0.5rem;
	text-decoration: none;
}
.quicklinks a span { display:none;}
.quicklinks a:hover span { display:inline-block;}
/*----------------------------------------------------------------*/
main {
	position: relative;
	padding: 0;
	margin: 0 auto;
}
.content {
	margin: 0 auto;
	padding: calc(1em + 0.5vw + 0.5vh);
	max-width: 60em;
}
.content-23, .content-13, .full { padding: 1rem; }
/*----------------------------------------------------------------*/
.galerie {
	position: relative;
	text-align: center;
	margin: 2rem auto;
	max-width: 1200px;
}
.galerie ul {
	list-style: none;
	margin: auto;
	padding: 0;
	display: flex;
	flex-flow: row wrap;
	justify-content:center;
}
.galerie ul li {
	list-style: none;
	padding: 0.25rem;
	flex: 0 0 33%;
}
.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;
}
.galerie ul li img {
	height: auto;
	width: 100%; 
}
.galerie ul li a img:hover {
	transform: scale(1.05);box-shadow:0 0 5px rgba(0,0,0,0.5);} 
	
/*----------------------------------------------------------------*/
footer{
	margin: 0 auto;
	position: relative;
	padding: 0;
}
footer ul {
	list-style: none;
	margin: auto;
	padding: 1rem;
	margin: 0 auto;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
}
footer ul li {
	display: inline-block;
	flex: 1 1 auto;
	text-align: left;
	padding: 1rem;
	align-self:center;
}
footer .small {
	font-size: 0.75em;
}
.tafel {
	background-image: url(../images/tafel.jpg);
	background-size: cover;
	background-position: center;
	color: #fff;
	text-align: center;
}
.tafel .title {
	text-shadow: 1px 1px 3px rgba(0,0,0,0.75);
	align-self:center; font-size:calc(1rem + 2vw); padding:calc(1rem + 2vw); z-index:2;}
.tafel .link { align-self:center; font-size:1.25em; font-size:calc(0.75rem + 0.5vw + 0.5vh); position:relative; z-index:2;}	
.tafel .deco { margin-top:-10vw; padding:0; z-index:1;}
.tafel .deco img { width:100%; height:auto;}
/*----------------------------------------------------------------*/
p, h1, h2, h3, h4, h5, h6 {
	margin: 0 0 1em 0;
	font-weight: 400;
	font-size: 1rem;
}
h1 + h2 { margin-top:-1em;}
h1 {
	font-size: 1.5rem;
	font-size:calc(1rem + 0.5vw + 0.5vh);
	font-weight: 600;
	color: rgb(0,145,55);
	font-weight: 600;
}
h2 {
	font-size: 1.375rem;
	font-weight: 600;
}
h3 { font-size: 1.25rem;
	font-weight:600;}
/*----------------------------------------------------------------*/
.button {
	color: rgb(255,255,255);
	text-decoration: none;
	padding: 0.125rem 0.5rem;
	background-color: rgb(0,145,55);
	border-radius: 2px;
	font-weight: 600;
	display: inline-block;
	margin-top: 0.5rem;
}
.button:hover {
	color: rgb(255,255,255);
	text-decoration: none;
}
.button.white { border:1px solid #fff; background:none; color:#fff;}
.button.white:hover {
	border-color: #000;
	background-color: rgba(255,255,255,0.75);
	color: #000;
}
/**/
hr { border:1px solid rgb(80,130,30); width:62%; margin:1rem auto;}
/**/
/*----------------------------------------------------------------*/
#formular {
	position: relative;
	alignment-adjust: 0;
	margin: 0 auto;
}
form {
	margin: 0;
	padding: 0;
	display: block;}
input, textarea {
	position: relative;
	border: 1px solid rgb(75,75,75);
	width: 100%;
	padding: 4px;
	color: #000;
	height: 2rem;
	font: normal 1rem/1.25rem 'Open Sans', sans-serif;
	border-radius: 2px;
	margin: 0 0 8px 0;
}
.check {
	width: 1.75rem;
	height: 1.75rem;
	margin: 0 0 4px 0;
}
textarea { height: 160px; 
}
input:focus, textarea:focus {	border: 1px solid rgb(190,22,34);}
.send {
	margin: 0 auto;
	border-radius: 2px;
	cursor: pointer;
	height: 2.5em;
	text-decoration: none;
	font: 600 1em 'Open Sans', sans-serif;
	border: 2px solid #fff;
	background-color: rgb(0,145,55);
	color: rgb(255,255,255);
	padding: 0.25em 1.5em;
	width: 200px;
}
.send:hover, .send:focus {
	color: rgb(255,255,255);
	background-color: rgb(0,145,55);

}
img.ui-datepicker-trigger {
	position: absolute;
	margin-top: 8px;
	right:24px;
	cursor: pointer;
	display: inline;}
.ui-widget-header {
    border: 1px solid #bbb0ad !important;
    background: #d9d3d0 !important;
    color: #604a41 !important;
}
.pflicht {
	line-height: 15px;
	color: #B41412;
	font-weight: 600;}
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
      /*                      MEDIA QUERY                  */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
@media only screen and (min-width: 480px) {

}
@media only screen and (max-width: 759px) {
	#menuToggle {
	display: block;
	position: fixed;
	top: 15px;
	right: 0;
	width: 44px;
	z-index: 10;
	padding: 8px 0 4px 5px;
	-webkit-user-select: none;
	user-select: none;
	z-index: 50;
	background-color: #FFF;
	}
	#menuToggle input {
		display: block;
		width: 44px;
		height: 44px;
		position: absolute;
		top: -7px;
		left: -5px;
		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(0,145,55);
	z-index: 3;
	transform-origin: center;
	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(45deg) translate(6px, 6px);
	background-color: rgb(255,255,255);
	}
	/*hide the middle one */
	#menuToggle input:checked ~ span:nth-last-child(3) {
		opacity: 0;
		transform: scale(0.1, 0.1) rotate(360deg);
	}
	/* the last one go the other direction */
	#menuToggle input:checked ~ span:nth-last-child(2) {
		opacity: 1;
		transform: rotate(-45deg) translate(6px, -6px);
	}
	/*	 * Make this absolute positioned at the top right of the screen	 */
	#menu {
	position: fixed;
	width: 100%;
	margin: 0;
	padding: 2.5rem 0;
	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);
	right: 0;
	left: 0;
	bottom: 0px;
	top: 5px;
	background-color: #333333;
	background-image: url(../images/tafel.jpg);
	}
	#menuToggle input:checked ~ ul {
		transform: scale(1.0, 1.0);
		opacity: 1;	}
	nav, nav ul, nav ul li {
	padding: 0;
	margin: 0;
	list-style: none;
	postition: relative;
	text-align: center;
		}
	nav ul li a {
	text-decoration: none;
	padding: 0 0.75em;
	margin: 4px auto;
	display: inline-block;
	font-size: 1rem;
	line-height: 40px;
	height: 40px;
	text-align: center;
	color: rgb(255,255,255);
	text-transform: uppercase;
	border-radius: 4px;
	text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
		}
	nav a:hover, nav a:focus, nav a.aktiv {
	background-color: rgba(255,255,255,0.95) !important;
	color: rgb(100,100,100); font-weight:600;
	text-decoration: none;
	text-shadow: 1px 1px 2px rgba(255,255,255,0.5);
	box-shadow: 2px 2px 2px rgba(0,0,0,0.5);
	}
}
/*  ////////////////////////////////////////////////////////////////////////////  */
@media only screen and (min-width: 760px){
	.logo {
	display: inline-block;
	float: left;}
	
	.flex { display:flex; flex-flow: row wrap; width:100%;}
	.flex > div { flex: 1 1 auto; padding:1em;}
	
	.content-23 { width:62%;}
	.content-13 { width:38%;}
	.content-12 {
	width: 50%;
	position: relative;
}
	.full { width: 100%;}
	/*--------------------------*/
	#menuToggle input {
		display: none;
	}
	#menuToggle {
		margin: 0 auto;
		position: relative;
	}
	nav {
	z-index: 500;
	z-index: 100;
	padding: 32px 0 0 0;
	}
	.sticky nav {
	box-shadow: 0 0 25px rgba(0,0,0,0.5);
}
	nav ul {
		margin: 0 auto;
		padding: 0;
		list-style-type: none;
		display: flex;
		 justify-content: center;}
	nav ul li {
		margin: 0;
		padding: 0;
		flex: 0 0 auto;
	}
	nav a {
	font-size-adjust: none;
	display: block;
	margin: 0.25em;
	padding: 0 0.5em;
	text-decoration: none;
	color: rgb(0,0,0);
	line-height: 2em;
	text-transform: uppercase;
	border-radius: 4px;
	}
	nav a:hover, nav a.aktiv {
	position: relative;
	text-decoration: none;
	background-color: rgb(255,255,255);
	color: rgb(227,6,19);
	}	
}

@media only screen and (min-width: 1200px){	
	nav { font-size:1.125rem;} 
}

/*-----------------------------------------------------------------------*/
/*-----------------------------------------------------------------------*/
#totop {
	position: fixed;
	z-index: 150;
	right: 2rem;
	bottom: 2rem;
	text-decoration: none;
	opacity: 0;
	padding: 2px;
	margin: 0; 
	color:#fff;
	border-radius:4px;
	background-color: rgb(0,145,55);
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
#totop img { border-radius:2px;}
#totop:hover {
	background-color: #fff;
	color: rgb(145,68,38);
	box-shadow: 0 0 10px rgb(50,40,40);
}
#totop.show { cursor: pointer;	opacity: 1.0;}
/*---------------------------------------------------------------------------------------*/
::-moz-selection {  color: rgb(255,255,255); background-color: rgb(174,15,10);}
	 ::selection { 	color: rgb(255,255,255); background-color: rgb(174,15,10);}
/* { background-color:rgba(0,0,0,0.05);}*/
