/* italianno-regular - latin */
@font-face {
  font-family: 'Italianno';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/italianno-v14-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/italianno-v14-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/italianno-v14-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/italianno-v14-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/italianno-v14-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/italianno-v14-latin-regular.svg#Italianno') format('svg'); /* Legacy iOS */
}
/* lora-regular - latin */
@font-face {
  font-family: 'Lora';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/lora-v23-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/lora-v23-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/lora-v23-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/lora-v23-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/lora-v23-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/lora-v23-latin-regular.svg#Lora') format('svg'); /* Legacy iOS */
}
/* lora-700 - latin */
@font-face {
  font-family: 'Lora';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/lora-v23-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/lora-v23-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/lora-v23-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/lora-v23-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/lora-v23-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/lora-v23-latin-700.svg#Lora') 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(150,150,150);
	width: 50%;
	margin: 2em auto;
}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: 'Italianno', cursive;
font-family: 'Lora', 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 'Lora', serif;
	position: relative;
	background: rgb(255,255,250);
}
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(125,25,25);
	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-top: 1em;
} 
.logo {
	z-index: 10;
	margin: auto;
	position: relative;
	display: inline-block;
	width: 147px;
	padding: 0.5rem 0;
}
.logo img { width: 100%; height: auto;}
/*----------------------------------------------------------------*/
.sprachen {
    position: absolute;
    top: 50%;
    right: 3%;
    transform: translate(0, -50%);
}
.sprachen a{
    margin-left:5px;
}
/*----------------------------------------------------------------*/
.bild {
	z-index: 1;
	position: relative;
	padding: 0;
	margin: auto;
	overflow: hidden;
	margin-top: -2em;
	max-height: 900px;
}
.bild img {
	width: 100%;
	margin: 0 auto;
	height: auto;}
/*----------------------------------------------------------------*/
.owl-dots { top: 100px !important; bottom:auto !important; right: 2vw !important; left:auto !important;  width: auto !important;}
.owl-dot span {
	box-shadow: 0 0 5px rgba(0,0,0,0.5);
	background-color: rgb(255,255,255) !important;
	border: 2px solid #EFEDE1;
	width: 20px !important;
	height: 20px !important;
	border-radius:0 !important;
}
.owl-dot span:hover { background-color: rgb(66,92,47) !important; }
.owl-dot.active span { background-color: rgb(125,25,25) !important; }
/*----------------------------------------------------------------*/
main {
	position: relative;
	padding: 0;
	margin: auto;
}
.content {
	margin: 0 auto;
	padding: calc(0.5em + 0.5vw + 0.5vh);
	max-width: 1400px;
}
.content-23, .content-13, .full { margin-bottom: 2em; }
/**/
.preise td {
	padding: 0.25rem 0.5rem;
	border: 1px solid rgba(113,69,26,0.5);
}

/**/
.mfp-iframe-holder .mfp-content { max-width:380px !important; min-height:260px !important;}
/*----------------------------------------------------------------*/
.galerie {
	position: relative;
	text-align: center;
	margin: 3vw auto;
	background-color: rgb(255,247,226);
}
.galerie ul {
	list-style: none;
	margin: auto;
	padding: 1.5em 0.5em;
	display: flex;
	flex-flow: row wrap;
	justify-content:center;
	max-width:1400px;
}
.galerie ul li {
	list-style: none;
	flex: 0 0 33%;
	border: 2px solid transparent;
}
.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 {
	height: auto;
	width: 100%;
}
.galerie ul li a img:hover {
	transform: scale(1.05);
}
.galerie ul li:hover { border: 2px solid rgb(125,25,25); 
}
/*----------------------------------------------------------------*/
footer{
	padding: 1em;
	margin: 0 auto;
	background-color: rgb(55,75,35);
	color: rgb(255,255,255);
	position: relative;
	text-align: center;
	border-top: 3px solid rgb(180,150,0);
}
footer a { text-decoration-color: rgba(255,255,255,0.25);}
footer a:hover, footer a:focus {
	text-decoration-color: rgba(255,255,255,0.75);
	color: #fff;
}
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;
	text-align: left;
	padding: 1rem; padding: calc(0.5rem + 0.5vw + 0.5vh);
}
footer .small { font-size:0.75em;}
footer .special { color:rgb(225,200,115);}
/*----------------------------------------------------------------*/
p, h1, h2, h3, h4, h5, h6 {
	margin: 0 0 1em 0;
	font-size: 1em;
	font-weight: normal;
}
.special {
	font-family: 'Italianno', 'Lora', serif;
	font-size: 200%;
}
h1 {
	font-size: 2em;
	font-size: calc(1.5em + 1vw + 1vh);
	color: rgb(125,25,25);
	font-family: 'Italianno', 'Lora', serif;
	line-height: 1.125em;
	margin: 0;
}
h2 { font-size: 1.25em; }
h3 { font-size: 1.125em; }
/*----------------------------------------------------------------*/
.button {
	border: 1px solid rgb(105,75,35);
	text-decoration: none;
	padding:  0.25rem 0.5rem;
	display: inline-block;
}
.button:hover {
	background-color: rgb(125,25,25); color:rgb(255,255,255);
	text-decoration: none;
}
/**/
.news img {
	border-radius: 0.25rem;
	border: 2px solid rgb(255,255,255);
	margin-bottom: 0.75rem;
}
.news > div {
	float: left;
	margin-right: 2rem;
}
/**/
.quicklinks {  background-color:rgb(255,247,226); }

.quicklinks ul { list-style:none; padding:0; margin:auto; display:flex; flex-flow: row wrap; justify-content: space-around; max-width:1400px;}
.quicklinks ul li {
	margin: 0;
	padding: calc(1rem + 1vw);
	position: relative;
	flex: 0 0 33%;
	text-align: center;
	min-width: 200px;
}
.quicklinks ul.quarter li {
	flex: 0 0 25% !important;
	min-width: 190px;
}
.quicklinks a img { width:100%; height:auto;}

.quicklinks h2 {
	color: rgb(255,255,255);
	font-size: calc(1.5em + 1.5vw);
	position: absolute; left:calc(1rem + 1vw); right:calc(1rem + 1vw);
	text-align: center;
	background: -moz-linear-gradient(top,  rgba(0,0,0,0.65) 0%, rgba(0,0,0,0.65) 20%, rgba(0,0,0,0) 100%);
background: -webkit-linear-gradient(top,  rgba(0,0,0,0.65) 0%,rgba(0,0,0,0.65) 20%,rgba(0,0,0,0) 100%);
background: linear-gradient(to bottom,  rgba(0,0,0,0.65) 0%,rgba(0,0,0,0.65) 20%,rgba(0,0,0,0) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 );

}
.quicklinks a:hover img  { transform:scale(1.1);}

/*----------------------------------------------------------------*/
main .subnavi, main .subnavi li  { list-style:none; padding:0.125rem; margin:0.125rem;} 
main .subnavi li { display:inline-block; }
main .subnavi a {
	display: block;
	border: 1px solid rgb(125,25,25);
	padding: 0.25rem 0.5rem;
	text-decoration: none;
}
main .subnavi a:hover, main .subnavi a.aktiv { background-color:rgb(125,25,25); color:rgb(225,200,115);}
/*----------------------------------------------------------------*/
#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: 100%;
	padding: 0px 0.25rem;
	color: #000;
	height: 2em;
	max-width: 450px;
	font: normal 1em/1.25em 'Lora', serif;
	border-radius: 0.25em;
	margin-bottom: 0.5rem;
}

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: 700 1em 'Lora', serif;
	border: 2px solid #fff;
	background-color: rgb(125,25,25);
	color: rgb(255,255,255);
	padding: 0.25em 1.5em;
}
.send:hover, .send:focus {
	background-color: #FFF;
	color: rgb(125,25,25);
	border-color: rgb(125,25,25);

}
img.ui-datepicker-trigger {
	position: absolute;
	margin-top: 8px;
	margin-left: -22px;
	cursor: pointer;
	display: inline;}
.pflicht {
	line-height: 15px;
	color: #B41412;
	font-weight: 700;}
.aktuelles p{
	margin-top: 0px;
	margin-bottom: 0px;
}
.aktuelles ul,.aktuelles ol{
	padding-left: 20px;
	margin: 0px;
	display:inline-block;
}
.aktuelles img{
	max-width:100%;
	height:auto !important;
}
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
      /*                      MEDIA QUERY                  */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
@media only screen and (max-width: 600px) {
.preise.lang td { display:block; text-align:left;}
.preise.lang tr:first-child { display:none;}
.preise.lang td:nth-child(2)::before { content:'pro Person';    width:120px; display:inline-block; text-align:right; margin-right:0.5em; padding-right:0.5em; border-right: 1px solid gray;}
.preise.lang td:nth-child(3)::before { content:'+ Halbpension'; width:120px; display:inline-block; text-align:right; margin-right:0.5em; padding-right:0.5em; border-right: 1px solid gray;}
.preise.lang td:nth-child(4)::before { content:'+ Vollpension'; width:120px; display:inline-block; text-align:right; margin-right:0.5em; padding-right:0.5em; border-right: 1px solid gray;}
}
@media only screen and (max-width: 759px) {
 main .subnavi { display:none;}
	#menuToggle {
	display: block;
	border-radius: 0.25em;
	position: fixed;
	top: 0.5rem;
	left: 0.5rem;
	width: 44px;
	z-index: 10;
	padding: 8px 0 4px 5px;
	-webkit-user-select: none;
	user-select: none;
	background-color: rgb(255,255,250);
	z-index: 50;
	}
	#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: 3px;
		margin-bottom: 6px;
		position: relative;
		background-color: rgb(125,25,25);
		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);
	}
	/*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: 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-color: rgb(255,255,250);
	background-size: 500%;
	right: 0;
	left: 0;
	top: 0;
	box-shadow: 0 0 100px rgba(0,0,0,0.5);
	}
	#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;
	color: rgb(125,25,25);
	font-weight: 700;
		}
	.subnavi ul {  margin:0 auto;}
	.subnavi li { display:inline-block;}
	.subnavi ul li a {
	text-transform: none;
	font-weight: 400;
	font-size: 16px;
	background-color: rgba(255,255,255,0.3);
} 
	nav a:hover, nav a:focus, nav a.aktiv {
		background-color: rgb(125,25,25) !important;
		color: rgb(255,249,244);
		text-decoration: none;
	}
}
/*  ////////////////////////////////////////////////////////////////////////////  */
@media only screen and (min-width: 760px){
	header { padding-top:3em;}
	.logo { width: 200px; }
	.bild { margin-top:-3rem;}
	.sticky nav { box-shadow:0 0 50px rgba(0,0,0,0.5); top:0; z-index:100;}
	
	.flex {
	display: flex;
	flex-flow: row wrap;
	width: 100%;
	max-width: 1400px;
}
	.flex > div { flex: 1 1 auto; padding:1em; margin:1em;}
	.content { padding:0; }
	.content-23 {
	width: calc(100% - 280px - 4em);
	max-width: 980px;
}
	.content-13 { width:280px; flex-grow: 0; position:relative;}
	.content-13:before { content:''; border:1px solid gray; height:156px; width:1px; position:absolute; left:-1em;}
	.content-12 { width:calc(50% - 4em);}
	.full { width: 100%;}
		
	.galerie ul li { flex: 0 0 33%;}
	/*--------------------------*/
	#menuToggle input {
		display: none;
	}
	#menuToggle {
		margin: 0 auto;
		position: relative;
	}
	nav {
	text-align: center;
	margin: 0 auto;
	line-height: 2.5em;
	z-index: 500;
	position: fixed;
	padding-top:0.25em;
	left: 0;
	right: 0;
	text-align: center;
	}
	.sticky nav{
	background-color: rgb(255,255,250);
	}
	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.375em;
	text-decoration: none;
	color: rgb(41,32,28);
	line-height: 2.5em;
	}
	nav a:hover, nav a.aktiv {
		position: relative;
		text-decoration: none;
		color: rgb(125,25,25);
	}
	nav a.aktiv:before { content: url(../images/navi-aktiv.png); width:100%; position:absolute; top:-23px; left:0; color:rgb(125,25,25); font-weight:700; font-size:2rem;}
	.subnavi { position:relative;}
	.subnavi ul {
	display: none;
	text-align: center;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 0;
	padding: 0.5rem;
	background-color: rgb(125,25,25);
	z-index: 100;
	line-height: 2rem;
	width: 100%;
}
	.subnavi:hover ul { display:block;  top:2.5rem;  }
	.subnavi ul li { display:inline-block;}
	.subnavi ul li a { color:rgb(255,255,255); }
	.subnavi ul li a:hover { background-color:rgb(255,255,255); color:rgb(125,25,25);}
}

@media only screen and (min-width: 1000px){	
	.logo { width: 294px; }
	
	.sticky header { position:fixed; left:0; top:0; z-index:150; text-align:left; padding:0;}
	.sticky .logo  { width: 104px; top:8px; left:8px; padding:0; margin:auto;}
	header { padding-top:4em;}
	.bild { margin-top:-4rem;}
	}
@media only screen and (min-width: 1200px){	
html { font-size:18px;}
h1 { font-size: 3rem; }
}

/*-----------------------------------------------------------------------*/
/*-----------------------------------------------------------------------*/
#totop {
	position: fixed;
	z-index: 150;
	right: 0;
	bottom: calc(5vw + 5vh);
	text-decoration: none;
	opacity: 0;
	padding: 6px 8px;
	margin: 0;
	background-color: rgba(255,255,255,0.9);
	box-shadow: 0 0 10px rgb(50,40,40);
	-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(245,245,245);
}
#totop.show { cursor: pointer;	opacity: 1.0;}
/*---------------------------------------------------------------------------------------*/
::-moz-selection { background-color: rgb(125,25,25); color:rgb(255,255,255);}
	 ::selection { background-color: rgb(125,25,25); color:rgb(255,255,255);}
/* { background-color:rgba(0,0,0,0.05);}*/
