/* 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 */
}
/* averia-libre-regular - latin */
@font-face {
  font-family: 'Averia Libre';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/averia-libre-v9-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/averia-libre-v9-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/averia-libre-v9-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/averia-libre-v9-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/averia-libre-v9-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/averia-libre-v9-latin-regular.svg#AveriaLibre') format('svg'); /* Legacy iOS */
}


/*! normalize.css v4.2.0 | MIT License | github.com/necolas/normalize.css */button,hr,input{overflow:visible}audio,canvas,progress,video{display:inline-block}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=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{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}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-cancel-button,[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;
}
*, *:before, *:after, div {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	margin: 0;
	padding: 0;
	color: rgb(10,15,10);
	height: 100%;
	font: normal 1em/1.25em 'Open Sans', 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: 0em;
	vertical-align: top;
}
a {
	color: inherit;
	outline: none;
}
a:hover {
	color: rgb(103,136,22);
}
strong  {font-weight:600;}
/*-----------------------------------------------------------------------------*/
header {
	position: relative;
	margin: 0 auto;
	padding: 0;
	z-index: 51;
	text-align: center;
	background: url(../images/bg-holz.jpg) repeat-x center top;
}
.logo {
	position: absolute;
	z-index: 5;
	top: 0em;
	left: 2em;
	background-color: rgb(255,255,255);
	border-radius: 0 0 1em 1em;
	padding: 1em;
	box-shadow: 0px 0px 8px 0px rgba(100,12,0,0.2);
}
.logo img { width:135px; height:auto;}
/*----------------------------------------------------------------*/
.bild {
	position: relative;
	z-index: 1;
	width: 100%;
	margin: auto;
	max-height: 70vh;
	max-width: 70em;
	overflow:hidden;
	border: 10px solid #fff;
	border-top: 0;
	background-color: #fff;
}
.bild img {
	width: 100%;
	height: auto;
	border-radius: 0 0 1em 1em;} 
.adresse a {
	text-decoration: none;
	display: block;
	background-color: rgba(255,255,255,0.85);
	color: rgb(10,15,10);
	border-radius: 0.25em;
	font-weight: bold;
	margin: -6px;
	padding: 6px;
}
.adresse a:hover {
	color: rgb(99,64,54);
	background-color: rgb(251,185,0);
}
/*----------------------------------------------------------------*/
.subnav {
	background-color: #FFF;
	padding-left: 2em;

}
.subnav ul {
	z-index: 2; list-style:none;
	padding:0; margin:0; display:flex; flex-flow:row nowrap; justify-content:flex-start;
}
.subnav ul li {
	padding: 0; padding-right:calc(0.5em + 0.5vw)
}
.subnav ul li a {
	text-decoration: none;
	padding: 0.5em 0.875em;
	margin: 0;
	display: block;
	font-size: 1rem;
	font-weight: 600;
	text-align: center;
	color: rgb(255,255,255);
	border-radius: 0.25em;
	border: 2px solid rgb(103,136,22);
	color: rgb(103,136,22);
	background-color: rgb(247,252,233);
}
.subnav ul li a:hover, .subnav ul li a.aktiv {
	background-color: rgb(103,136,22);
	border: 2px solid rgb(247,252,233);
	color: rgb(255,255,255);
}
.smart { display:none;}
/*----------------------------------------------------------------*/
.container {
	position: relative;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}
.center {
	max-width: 70em;
	margin: 0 auto;
	width: 100%;
	position: relative;
}
.content {
	padding: 2em;
	position: relative;
	z-index: 2;
	max-width: 980px;
	background: rgb(255,255,255);
	margin:/* calc(15vw + 25vh)*/ auto;
	position: relative;
	border-radius: 1em;
}
.deko {
	position: absolute;
	right: -1.5em;
	bottom: 0.25em;
}
footer {
	text-align: left;
	width: 100%;
	margin: 0 auto;
	vertical-align: top;
	padding: 0.75em 2em;
	position: fixed;
	font-size: 0.75em;
	color: #fff;
	background: rgb(103,136,22);
	bottom: 0px;
	z-index: 5;
}
footer a {
	text-decoration: none;
}
footer a:hover {
	text-decoration: underline;
	color: #000;
	background-color: #FFF;
	padding: 3px;
	margin: -3px;
}
footer .left {
	float: left;
	margin: 0;
}
footer .right {
	float: right;
	margin: 0;
}
/*----------------------------------------------------------------*/
.galerie {
	position: relative;
	width: auto;
}
.galerie ul {
	list-style: none;
	margin: 2em -0.5em;
	padding: 0;
	display:flex; flex-flow: row wrap; justify-content:space-between;
}
.galerie ul li {
	list-style: none;
	padding: 0.5em; margin:0;
	flex: 0 0 33%; flex-basis: calc(100% / 3);
}
.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 {
	border: 1px solid rgb(103,136,22);
	height: auto;
	width: 100%;
	border-radius: 1vw;
}
.galerie ul li a img:hover {
	border: 1px solid rgb(227,6,19);
}
/*----------------------------------------------------------------*/
p, h1, h2, h3, h4, h5, h6 {
	margin: 0.25em 0 0.75em; font-weight:normal;
}
h1, .h1 {
	font-size: calc(1em + 0.5vw);
	color: rgb(103,136,22);
	line-height: 1em;
	font-family: 'Averia Libre', cursive;
}
h2 {
	font-size: 1.25em;
	color: rgb(227,6,19);
	font-family: 'Averia Libre', cursive;
}
h3 {
	font-size: 1.125em;
}
.averia {
	font-family: 'Averia Libre', cursive;
	font-size: 1.125em;
}

.gelb {
	color: rgb(251,185,0);
}
.left {
	float: left;
	margin: 0 1% 1% 0;
}
.right {
	float: right;
	margin: 0 0 1% 1%;
}
.clear {
	clear: both;
	line-height: 0px;
	height: 0px;
}
.image {
	border: 1px solid rgb(149,193,31);
}
.trennlinie, hr {
	height: 0px;
	line-height: 0px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #ccc;
	margin-bottom: 20px;
	border-top-style: none;
	border-right-style: none;
	border-left-style: none;
	margin-top: 20px;
}
/*----------------------------------------------------------------*/
#formular {
	position: relative;
	alignment-adjust: 0;
	margin: 0;
	padding: 0;
}
form {
	margin-top: 0px;
	margin-bottom: 0px;
}
input, textarea, button {
	position: relative;
	border: 1px solid #796D5C;
	width: 100%;
	padding: 0px 5px;
	color: #333;
	height: 30px;
	font: bold 16px/24px 'Open Sans', sans-serif;
	border-radius: 0.25em;
}
.check {
	width: 20px;
	padding: 0;
	margin: 0;
	height: 20px;
}
textarea {
	height: 150px;
}
input:focus, textarea:focus {
	border: 1px solid #B41412;
}
.send {
	border-radius: 0.25em;
	font: bold 16px/24px  'Open Sans', sans-serif;
	color: rgb(255,255,255);
	margin: 0 auto;
	width: auto;
	cursor: pointer;
	padding: 6px 55px 4px;
	height: 43px;
	background-color: rgb(227,6,19);
	border: 0;
}
.send:hover, .send:focus {
	color: #FFFFFF;
	border: 0;
	background: rgb(103,136,22);
}
img.ui-datepicker-trigger {
	position: absolute;
	margin-top: 6px;
	margin-left: -22px;
	cursor: pointer;
	display: inline;
}
.pflicht {
	line-height: 15px;
	color: #B41412;
}
/*----------------------------------------------------------------*/
/*                MEDIA QUERY            */
/*----------------------------------------------------------------*/

@media only screen and (max-width: 500px) {
	.galerie ul li { flex-basis:49%;} 
}
@media only screen and (max-width: 600px) {
	.subnav a span { display:none;} .subnav li { padding:0;} .smart { display:inline;}
}
@media only screen and (min-width: 601px) {
	.smart { display:none;}
}	
@media only screen and (max-width: 768px) {
	.container, .center, header, .bild, .content, footer {
		width: 100%;
		margin: 0;
		position: relative;
	}
	.left, .right, .content-left, .content-right {
		float: none;
		width: auto;
		height: auto;
		position: relative;}
	header { height:0px; background:none;}
	.logo { padding:0.5em; left:1em;}
	.content { padding: 2em 1em; border-radius:0;}
	.deko { right:2em;}
	.content-right { background-color: rgba(103,136,22,0.1); 	padding:1em; border-radius:1em !important; margin-bottom:2em;}
	/*--------------------------------------------------------------*/
	form .left {
		width: 100%;
	}
	input, textarea {
		width: 90%;
	}
	/*---------------------------------------------------------------*/  
	nav {
		z-index: 100;
	}
	nav, nav ul, nav ul li {
		padding: 0;
		margin: 0;
		list-style: none;
		position: relative;
	}
	nav ul li a {
		text-decoration: none;
		padding: 0;
		margin: 2px 0;
		display: block;
		font-size: 1.25rem;
		line-height: 44px;
		text-align: center;
		color: rgb(255,255,255);
		text-transform: uppercase;
		border-radius: 2vw;
		font-weight: 600;
	}
	nav a:hover, nav a:focus, nav .aktiv {
		background-color: rgb(255,255,255);
		color: rgb(99,64,54);border-radius: 2vw;
	}
	nav .aktiv:focus {
		color: #000;
	}
	nav a img {
		display: none;
	}
	
	#menuToggle {
		display: block;
		position: fixed;
		top: 16px;
		right: 16px !important;
		width: 48px;
		z-index: 10;
		padding:4px 0 0px 6px;
		-webkit-user-select: none;
		user-select: none;
		background-color: rgb(103,136,22);
		box-shadow: 0 0 4px rgba(0,0,0,0.5);
		border-radius: 0.5em;
		border: 2px solid rgb(103,136,22);
		height: 48px;
	}
	#menuToggle input {
		display: block;
		width: 48px;
		height: 48px;
		position: absolute;
		top: -2px; bottom:0;
		left: -2px; right:0;
		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: 32px;
		height: 4px; border-radius:2px;
		margin: 6px 0;
		position: relative;
		background-color: rgb(255,255,255);
		z-index: 3;
		transform-origin: 0px 0px;
		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;
	}
	#menuToggle span:first-child {
		transform-origin: 0% 0%;
	}
	#menuToggle span:nth-last-child(2) {
		transform-origin: 0% 100%;
	}
	/* Transform all the slices of hamburger into a crossmark */
	#menuToggle input:checked ~ span {
		opacity: 1;
		transform: rotate(45deg) translate(2px, -6px);
		background: #fff;
	}
	/*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(-45deg) translate(4px, 3px);
	}
	/*	 * Make this absolute positioned at the top right of the screen	 */
	#menu {
		position: absolute;
		width: 250px;
		margin: -100px 0 0 -197px;
		padding: 20px;
		padding-top: 125px;
		list-style-type: none;
		-webkit-font-smoothing: antialiased;
		/* to stop flickering of text in safari */	  
		transform-origin: 0% 0%;
		transform: translate(-300%, 0);
		transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0);
		background-size: 500%;
		background: rgb(103,136,22) url(../images/bg-holz.jpg);
	}
	#menuToggle input:checked ~ ul {
		transform: scale(1.0, 1.0);
		opacity: 1;
	}
	/*  ////////////////////////////////////////////////////////////////////////////  */
}
@media only screen and (min-width: 769px) {
	.content { display:flex; flex-flow: row wrap; justify-content:space-between; align-items:flex-start;}
	.content-left {
	flex:0 1 65%;
	order:1;
	} 
	.content-right {
	flex:0 0 calc(33% - 10px); order:2;
	}
	.galerie {flex:1 1 100%; order:3;}
	.content-right .dunkel {
	border-radius: 1em;
	background-color: rgb(103,136,22);
	color: rgb(255,255,255);
	padding: 1em 1.5em;
	border: 2px solid rgb(255,255,255);
	}
	.content-right .hell {
	border-radius: 1em;
	background-color: rgb(247,252,233);
	color: rgb(10,15,10);
	padding: 1em 1.5em;
	border: 2px solid rgb(103,136,22);
	font-size: 0.875em;
	}
	.galerie ul li { flex-basis:  33%;}
	
	.logo img { width:150px; height:auto;}
	.sticky header { position:fixed; width:100%; top:0;}
	.sticky .logo { padding:0.5em; border-radius:0 0 0.5em 0.5em;}
	.sticky .logo img { height:50px; width:auto; }
	.logo, .logo img, nav {
		-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;}
	/*-------------------------------------------------------------------*/
	#menuToggle input {
		display: none;
	}
	#menuToggle {
		margin: 0 auto;
		position: relative;
	}
	nav {
		/* [disabled]margin: 0 auto; */
		position: relative;
		height: 52px;
		text-align: center;
		line-height: 52px;
		z-index: 50;
		padding-left: 310px; 
	}
	nav ul {
		list-style-type: none;
		margin: 0 auto;
		padding: 0px;
		display: flex; justify-content: center;
	}
	nav ul li {
		padding: 0;
		margin: 0;
		text-align: center;
		flex: 0 0 auto;
	}
	nav ul li a {
		text-decoration: none;
		display: block;
		padding: 0 0.5em;
		margin: 0 0.25em;
		font-size: 1.125em;
		color: rgb(255,255,255);
		position: relative;
		font-weight: 600;
	}
	nav ul li a:hover {
		color: rgb(100,12,0); background-color:rgba(255,255,255,0.5);
	
	} 
	nav a.aktiv:before {    content: url(../images/bg-navi-aktiv.png);
		position: absolute;
		left: 50%; margin-left:-7px;
		top: -16px;}
	/*--------------------------------------------------------------*/
	form .left {
	width: 48%;
	margin-right: 2%;
	}
	input, textarea {
		width: 100%;
	}
}
@media only screen and  (min-width: 768px) and  (max-width: 980px) { 
	.content { border-radius:0;}  .logo {left:1em; padding:0.5em;} nav a {font-size:1em;}  nav {  padding-left:190px;}
}
@media only screen and  (min-width: 981px) {
	.logo img { width:270px;}
	}
@media only screen and  (max-width: 1182px) {
	.deko { right:1em;} 
	.content-right { border-radius:1em 0 0 1em; border-right:0;}
	footer { position:relative;}
}
/*---------------------------------------------------------------------------------------*/

@media only screen and  (max-width: 980px) {.content { margin:0 auto;}}
@media only screen and  (min-width: 981px) { 
	
	.content { max-width:70em; border:10px solid #fff; border-radius:0 0 1em 1em; margin:auto; margin-bottom:25vh;}
	.hintergrund { position:fixed; top:0; right:0; bottom:0; left:0; z-index:-1;
	background-image: url(../images/hintergrund.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
}
	
}
/*---------------------------------------------------------------------------------------*/
/* Feel free to change duration  */ 
.animated {
	-webkit-animation-duration : 1000 ms;
	animation-duration : 1000 ms;
	-webkit-animation-fill-mode : both;
	animation-fill-mode : both;
}
/* .owl-animated-out - only for current item */ 
/* This is very important class. Use z-index if you want move Out item above In item */ 
.owl-animated-out {
	z-index : 1
}
/* .owl-animated-in - only for upcoming item
/* This is very important class. Use z-index if you want move In item above Out item */ 
.owl-animated-in {
	z-index : 0
}
/* .fadeOut is style taken from Animation.css and this is how it looks in owl.carousel.css:  */ 
.fadeOut {
	-webkit-animation-name : fadeOut;
	animation-name : fadeOut;
}
@-webkit-keyframes fadeOut {
 0% {
 opacity : 1;
}
 100% {
 opacity : 0;
}
}
@keyframes fadeOut {
 0% {
 opacity : 1;
}
 100% {
 opacity : 0;
}
}


::-moz-selection {
background: #CEE096;
}
::selection {
	background: #CEE096;
}
/*-----------------------------------------------------------------------*/
#totop {
	position: fixed;
	z-index: 150;
	right: calc(1vw + 1vh);
	bottom: calc(3vw + 3vh);
	text-decoration: none;
	opacity: 0;
	padding: 0 13px;
	margin: 0;
	width: 50px;
	height: 50px;
	background-color: rgb(100,12,0);
	color: rgb(255,255,255);
	line-height: 46px;
	font-size: 1.5em;
	border-radius: 25%;
	-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:hover {
	color: rgb(255,255,255);
	background-color: rgb(227,6,19);
}
#totop.show {
	cursor: pointer;
	opacity: 1.0;
}
