/* nunito-regular - latin */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/nunito-v22-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/nunito-v22-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/nunito-v22-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/nunito-v22-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/nunito-v22-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/nunito-v22-latin-regular.svg#Nunito') format('svg'); /* Legacy iOS */
}
/* sacramento-regular - latin */
@font-face {
  font-family: 'Sacramento';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/sacramento-v12-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/sacramento-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/sacramento-v12-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/sacramento-v12-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/sacramento-v12-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/sacramento-v12-latin-regular.svg#Sacramento') format('svg'); /* Legacy iOS */
}
/*! normalize.css v6.0.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{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}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;
	border: 1px dashed rgb(224,164,64);
	width: 62%;
	margin: 2em 0;
}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}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{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}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}
/**/

/*font-family: 'Nunito', sans-serif;
font-family: 'Sacramento', cursive;*/
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(50,50,50);
	height: 100%;
	font: 400 1em/1.375 Arial, sans-serif;
	position: relative;
	background: rgb(253,249,242);
}
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(148,30,26);
	text-decoration: underline;
}
strong { font-weight:700;}
.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;
	padding: 0.5rem;
	padding-top: 4.25rem;
	position: relative;
} 
header .logo {
	z-index: 10;
	margin: auto;
	width: 300px;
	position: relative;
	display: inline-block;
	font-size: 14px;
}
.logo a { text-decoration:none;}
header .logo img {
	width: 45px;
	height: auto;
	float: left;
}
.logo .line1 {
	font-size: 2.75em;
	color: rgb(148,30,26);
	font-family: 'Sacramento', cursive;
	line-height: 36px;
}
.logo .line2{
	font-size: 0.875em;
	color: rgb(91,120,19);
	font-family: 'Nunito', sans-serif;
	text-transform: uppercase;
}
.bioland { position:absolute; left:8px; top:8px;}
.bioland img {
	width: 40px;
	height: auto;
}
.sprachen { position:absolute; top:8px; left:0; right:0;}
.sprachen ul{list-style-type:none;margin:0px;padding: 0px;}
.sprachen ul li{display: inline-block;}
.sprachen ul li a{display: block;}
.sprachen ul li img{margin:2px;}
.sprachen ul li.active a{transform: scale(1.2);}
/*----------------------------------------------------------------*/
.bild {
	z-index: 1;
	position: relative;
	padding: 0;
	margin: auto;
	width: 100%;
	padding-top: 66%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.bild img {
	width: 100%;
	margin: 0 auto;
	height: auto;}
.deco-top { position:relative} 
.bild:before, .deco-top:before { content:''; height:25px; position:absolute; left:0; top:-1px; right:0; background-image:url(../images/deco-top.png); background-size:cover; background-position:top center;}
.text-im-bild { max-width:360px; color:#fff; margin: 0 0 0 20vw;  padding-bottom:20vw; text-shadow: 0 0 3px rgba(0,0,0,0.95); }
.text-im-bild * { color:#fff;}
.deco-bottom { position:relative;}
.deco-bottom:after { content:''; height:25px; position:absolute; left:0; bottom:-1px; right:0; background-image:url(../images/deco-bottom.png); background-size:cover; background-position:bottom center;}
.imagedeco-gold { position:relative;}
.imagedeco-gold.herr-ortlieb span { position:absolute; left:10px; bottom:10px; color:#fff; font-size:24px; width: 120px; line-height:24px;}
.imagedeco-gold:before { content:''; position:absolute; left:-8px; bottom:-8px; width:120px; height:120px; border:2px solid #fff; border-color: transparent transparent #fff #fff;}
.imagedeco-gold:after { content:''; position:absolute; top:-8px; right:-8px; width:120px; height:120px; border:2px solid #fff; border-color:#fff #fff transparent transparent ;}

.imagedeco-white { position:relative;}
.imagedeco-white:before { content:''; position:absolute; left:-8px; bottom:-8px; width:120px; height:120px; border:2px solid #ccc; border-color: transparent transparent #ccc #ccc;}
.imagedeco-white:after { content:''; position:absolute; top:-8px; right:-8px; width:120px; height:120px; border:2px solid #ccc; border-color:#ccc #ccc transparent transparent ;}
/*----------------------------------------------------------------*/
main {
	position: relative;
	padding: 0;
	margin: auto;
}
.content {
	margin: 0 auto;
	 padding:calc(0.75rem + 0.75vw + 0.75vh);
	max-width: 1400px;
}
.content-23, .content-13, .content-12, .full { margin-bottom: 2em; }
section.bg-gold {background-color:rgb(224,164,64);}
/**/
.button {
	text-decoration: none !important;
	padding: 0 12px;
	border-radius: 4px;
	display: inline-block;
	background-color: rgb(150,150,150);
	line-height: 36px;
	text-transform: uppercase;
	font-size: 15px;
	border:1px solid rgba(150,150,150,0);
}
.button:hover { color:rgb(150,150,150); background-color:rgb(255,255,255); 	box-shadow: 2px 2px 5px rgba(130,130,130,0.5);
	border:1px solid rgba(150,150,150,1);}
.button.rot { 		 color:rgb(255,255,255); background-color:rgb(148,30,26);}
.button.rot:hover {  color:rgb(148,30,26);   background-color:rgb(255,255,255); }
.button.gruen {      color:rgb(255,255,255); background-color:rgb(91,120,19);}
.button.gruen:hover {color:rgb(91,120,19);   background-color:rgb(255,255,255);  }
.button.weiss { color:rgb(255,255,255); background:none; border:2px solid #fff;}
.button.weiss:hover { color:rgb(50,50,50); background-color:#fff;}
/**/
.preise td {
	padding: 0.25rem;
	border: 1px solid rgba(113,69,26,0.5);
	font-size: 15px;
}
/**/
.box {
	background-color: rgb(249,237,217);
	border-radius: 0.5rem;
	padding: 1.5rem 0.5rem 0.5rem 1.25rem;
	margin: 0 -0.5rem;
}
/*----------------------------------------------------------------*/
.galerie {
	position: relative;
	text-align: center;
	margin: 0 auto;
}
.galerie ul {
	list-style: none;
	margin: auto;
	padding: 0;
	display: flex;
	flex-flow: row wrap;
	justify-content:flex-start;
}
.galerie ul li {
	list-style: none;
	padding: 1vw;
	flex: 0 0 33%;
	max-width:900px;
}
.zimmer ul { justify-content:center;}
.zimmer ul li {  flex: 0 0 100%; }
.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;
	border:1px solid rgba(130,0,0,0.25);
}
.galerie ul li img {
	height: auto;
	width: 100%;
}
.galerie ul li a img:hover {
	transform: scale(1.05);
}
/*----------------------------------------------------------------*/
.aktuelles h2{
	font-size: 2.5em;
	color: rgb(91,120,19);
	font-family: 'Sacramento', cursive;
	font-weight:normal;
	margin-top:1rem;
}
.aktuelles p{
	margin-top: 0px;
	margin-bottom: 0px;
}
.aktuelles ul,.aktuelles ol{
	padding-left: 20px;
	margin: 0px;
	display:inline-block;
}
.aktuelles img{
	width:auto;
	max-width:100%;
	height:auto !important;
}
.datum{
	font-size:0.9em;
	margin-bottom:5px;
}
/*----------------------------------------------------------------*/
footer{
	padding: 1em 1em 4em 1em;
	margin: 0 auto;
	position: relative;
	text-align: center;
	background-color: rgb(91,120,19);
	color: rgb(255,255,255);
}
footer a { text-decoration-color: rgba(75,75,75,0.25);}
footer a:hover, footer a:focus {
	text-decoration-color: rgba(0,102,51,0.75);
	color: rgb(148,30,26);
}
footer ul { list-style:none; margin:auto; padding:0; margin:0; display:flex; flex-flow:row wrap; justify-content:center; }
footer ul li {
	display: inline-block;
	flex: 0 0 auto;
	padding: 1rem;
	padding: calc(0.5rem + 0.5vw + 0.5vh);
	text-align: left;
}
footer .small { font-size:15px;}
/*----------------------------------------------------------------*/
p, h1, h2, h3, h4, h5, h6 {
	margin: 0 0 1rem 0;
	font-weight: 400;
	font-size: 1em;
}
h1 {
	font-size: 1.5rem;
	color: rgb(148,30,26);
	line-height: 1.25em;
	font-family: 'Nunito', sans-serif;
	text-transform: uppercase;
}
.bg-gold h1 { color:rgb(255,255,255);}
h2 {
	font-size: 1.25rem;
	color: rgb(148,30,26);
	font-family: 'Nunito', sans-serif;
}
h3 { font-size: 1.125rem; 
}
.red {	color: rgb(148,30,26);}
.green { color:rgb(91,120,19);}
.white { color:rgb(255,255,255);}
.gold {color:rgb(224,164,64);}
.special {
	font-family: 'Sacramento', cursive;
	font-size: 2.5em;
}
h1.special { text-transform:none !important;}
.nunito {font-family: 'Nunito', sans-serif;}
/*----------------------------------------------------------------*/
#formular {
	position: relative;
	alignment-adjust: 0;
	margin: 0 auto;
	padding: 0;
}
form {
	margin: 0;
	padding: 0;
	display: block;}
input, textarea {
	position: relative;
	border: 1px solid rgb(75,75,75);
	width: 95%;
	padding: 0px 0.25em;
	color: #000;
	height: 2em;
	font: normal 1em/1.25em 'Lato', sans-serif;
	border-radius: 0.25em;
	margin: 0 4px 4px 0;
}
textarea {	height: 170px;}
input:focus, textarea:focus {	border: 1px solid rgb(190,22,34);}
.send {
	margin: 0 auto;
	border-radius: 0.25em;
	cursor: pointer;
	height: 2.5em;
	text-decoration: none;
	font: 1em 'Nunito', sans-serif;
	border: 2px solid #fff;
	background-color: rgb(148,30,26);
	color: rgb(242,237,233);
	padding: 0.25em 1.5em;
}
.send:hover, .send:focus {
	background-color: #F2EDE9;
	color: rgb(148,30,26);
	border-color: rgb(148,30,26);

}
img.ui-datepicker-trigger {
	position: absolute;
	margin-top: 8px;
	margin-left: -28px;
	cursor: pointer;
	display: inline;}
.pflicht {
	line-height: 15px;
	color: #B41412;
	font-weight: 700;}
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
      /*                      MEDIA QUERY                  */
/*----------------------------------------------------------------*/
@media only screen and (max-width: 639px) {
	.preise-container  {overflow-x:auto;}}
@media only screen and (min-width: 640px) {
	.bild { padding-top:320px;}
}
/*----------------------------------------------------------------*/
@media only screen and (max-width: 766px) {
	header:before { content:''; height:3.5rem; left:0; right:0; top:0; background-color:rgb(247,232,207); position:absolute;}

	#menuToggle {
	display: block;
	position: fixed;
	top: 8px;
	right: 8px;
	width: 44px;
	z-index: 10;
	padding: 8px 0 4px 5px;
	-webkit-user-select: none;
	user-select: none;
	background-color: rgb(148,30,26);
	z-index: 50;
	border-radius: 3px;
	}
	#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: rgba(255,255,255,0.9);
	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(148,30,26);
	}
	/*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: 3rem 1.5rem 1.5rem 1.5rem;
	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-color: rgb(247,232,207);
	background-size: 500%;
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	box-shadow: 0 0 100px rgb(75,75,75);
	}
	#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.5em;
	margin: 4px auto;
	display: inline-block;
	font-size: 1rem;
	line-height: 40px;
	height: 40px;
	text-align: center;
	border-radius:3px;
		}
	
	nav a:hover, nav a:focus, nav a.aktiv {
	color: rgb(255,255,255);
	text-decoration: none;
	background: rgb(91,120,19);
	}
	nav a i { font-style:normal;}
}
/*  ////////////////////////////////////////////////////////////////////////////  */
@media only screen and (min-width: 767px) and (max-width: 840px){
	nav a i { display:none;}
	}
@media only screen and (min-width: 767px){
	header { padding:1rem; padding-top:2rem;}
	.sprachen { left: 8px; right: auto; /*top:-36px;*/}
	.sprachen img { display:inline-block; margin:8px 4px;}
	.bild { padding-top:480px;}

	header .logo { width: 380px; font-size: 18px;	}
	header .logo img { width: 60px; }
	header .logo .line1 { line-height: 44px; }

	.bioland { position:absolute; left:auto; right:8px; top:24px;}
	.bioland img { 		width: 60px;	}
	.sticky nav {
	position: fixed;
	top:0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 10;
	box-shadow: 0 0 25px rgba(0,0,0,0.5);
	}
	.sticky header .logo  { transform: scale(0.01);}
	
	
	.flex { display:flex; flex-flow: row wrap; width:100%; justify-content: space-evenly;}
	.flex > div { flex: 1 1 auto; padding:calc(0.75rem + 0.75vw + 0.75vh);}
.content { padding:0;}
	.content-23 { width:62%; max-width:800px;}
	.content-13 { width:38%; max-width:360px; }
	.content-12 { width:50%;}
	.full { width: 100%;}
	.adresse {align-self:flex-start;}
	
	/*--------------------------*/
	.navilogo { display:none;}
	#menuToggle input {
		display: none;
	}
	#menuToggle {
		margin: 0 auto;
		position: relative;
	}
	nav {
	text-align: center;
	margin: 0 auto;
	line-height: 2.5em;
	z-index: 500;
	background: rgb(247,232,207);
	}
	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 0.25em;
	padding: 0 0.5em;
	text-decoration: none;
	color: rgb(89,89,89);
	}
	nav a:hover, nav a.aktiv {
	position: relative;
	text-decoration: none;
	background-color: rgb(148,30,26);
	color: rgb(255,255,255);
	}
	nav i { font-style:normal;}
}

@media only screen and (min-width: 1200px){	
	header { max-width:1200px;}
	nav { font-size:1.125rem;}
	.bild { padding-top:600px;}
	.imagedeco-gold.herr-ortlieb span { font-size: 32px; width:200px; line-height:32px; left:20px; bottom:20px;}
	.sprachen img { display:inline-block;}
	.bioland img { width:75px;}
}
@media only screen and (min-width: 1600px){	
	.bild { padding-top:720px;}
}

/*-----------------------------------------------------------------------*/
/*-----------------------------------------------------------------------*/
#totop {
	position: fixed;
	z-index: 150;
	right: calc(1vw + 1vh);
	bottom: calc(3vw + 3vh);
	text-decoration: none;
	font-weight:bold;
	font-size:1.5rem;
	opacity: 0;
	padding: 2px 12px 8px 12px;
	margin: 0;
	border-radius: 4px;
	color: rgb(255,255,255);
	background-color: rgb(224,164,64);
	box-shadow: 4px 4px 12px rgb(100,100,100);
	-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 {
	background-color: rgb(255,255,255);
	color: rgb(100,100,100);
	box-shadow: 2px 2px 6px rgb(100,100,100);
}
#totop.show { cursor: pointer;	opacity: 1.0;}
/*---------------------------------------------------------------------------------------*/
::-moz-selection { background-color: rgb(80,30,0); color:rgb(255,255,255);}
	 ::selection { background-color: rgb(80,30,0); color:rgb(255,255,255);}
/* { background-color:rgba(0,0,0,0.05);}*/
