@font-face {font-family: 'Merriweather';font-style: normal;font-weight: 300;src: local(''),url('/data/webfonts/merriweather-v25-latin-300.woff2') format('woff2'),url('/data/webfonts/merriweather-v25-latin-300.woff') format('woff');}
@font-face {font-family: 'Merriweather';font-style: normal;font-weight: 400;src: local(''),url('/data/webfonts/merriweather-v25-latin-regular.woff2') format('woff2'), url('/data/webfonts/merriweather-v25-latin-regular.woff') format('woff');}
@font-face {font-family: 'Merriweather';font-style: normal;font-weight: 700;src: local(''),url('/data/webfonts/merriweather-v25-latin-700.woff2') format('woff2'),url('/data/webfonts/merriweather-v25-latin-700.woff') format('woff'); }
@font-face {font-family: 'Merriweather';font-style: normal;font-weight: 900;src: local(''),url('/data/webfonts/merriweather-v25-latin-900.woff2') format('woff2'),url('/data/webfonts/merriweather-v25-latin-900.woff') format('woff');}

/*########## HTML ########### */

* {
	box-sizing: border-box
}

.d-grid {
	display: grid;
}

body {
	font-size: 1.1rem;
	font-family: 'Merriweather';
	font-weight: 300;
	color: #6F6F6F;
	line-height: 180%;
	margin: 0;
}

h1,h2,h3  {	
	font-size: 2.3rem;
	font-weight: 700;margin-top:-7px;line-height:130%;margin-bottom:1rem;}



h3 {
	font-size: 1.5rem;
	font-weight: 700;
	color: #A81E1C;}


strong,b {
	font-weight: 700}

a {
	text-decoration: none;
	border-bottom: 1px solid #A81E1C;
	color: #A81E1C;}

a:active,
a:focus {
	outline: none;}

a:hover {
	color: #A81E1C;}

a:active,
a:focus {
	outline: none;}

button:active,
button:focus {
	outline: none}

::selection {
	background: #A81E1C;
	color: #FFF;
	text-shadow: none}

::-moz-selection {
	background: #A81E1C;
	color: #FFF;
	text-shadow: none}

p {
	margin: unset;}

img {
	max-width: 100%;
	height: auto}

img,
input[type="image"],
video,
embed,
iframe,
marquee,
object,
table {
	aspect-ratio: attr(width) / attr(height);}

img.dontfit {
	width: unset;
	height: auto}

.hyphened {
	-webkit-hyphens: auto;
	-webkit-hyphenate-character: "\2010";
	-webkit-hyphenate-limit-after: 1;
	-webkit-hyphenate-limit-before: 3;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto}

.QuicknavMobile {display: none;}

/*########## custom tiny styles ########### */

.grau {background:#929292; color:#fff;}
.nurDesktop {display:block;}
.nurMobile {display:none;}
.Abstandoben {margin: 40px 0;}
.Block1top70 {margin-top:70px;}
.Block2top70 {margin-top:70px;}
.Block3top70 {margin-top:70px;}
.Block1top35 {margin-top:35px;}
.Block2top35 {margin-top:35px;}
.Block3top35 {margin-top:35px;}
.Block1bottom70 {margin-bottom:70px;}
.Block2bottom70 {margin-bottom:70px;}
.Block3bottom70 {margin-bottom:70px;}
.Block1bottom35 {margin-bottom:35px;}
.Block2bottom35 {margin-bottom:35px;}
.Block3bottom35 {margin-bottom:35px;}
.MinusAbstandoben {margin-top:-70px;}
/*########## SVG ########### */

.schlossFFF {fill:#FFFFFF}
.svgSchloss {
	display: block;
	margin: 1px auto 0 auto;
	width: 367px;
}

img.svgLogo {
	width: 180px !important;
	margin: auto;
	margin-top: 10px;
	display: block;}

.svgIcon {
	width: 120px;}

.svgIcon:hover {
	transition: width .5s;
	width: 140px;
	transition-property: width;}

.IconBox {
	text-align: center;
	margin-top:-20px;
	font-size: 1.7rem;
	font-weight: 700;
	overflow: hidden;
	height: 300px;
}

.IconBox a {
	border: none;
}

.IconBox img {
	margin-bottom: 20px;
	margin-top: 20px;
	width: 180px;
	transition: all .2s ease-in-out;
}

.IconBox img:hover{
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);}

.headerSpace {
	height: 120px;
}


/* ########### Head ########### */

.Head {
	padding: 0}

.Head,
.Head .col-sm-12 {
	padding: 0 !important}

.headspacer {
	background: yellowgreen;
	width: 100%;
	height: 100px;
}

.container-fluid .headbild,
.container-fluid .ganzebreite {
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding:0;}

.container-fluid .ganzebreite img {
	width: 100%;}

.container-fluid {
	padding: 0}

.container-fluid.header {
	padding:15px 0;
}

.container-fluid.headcontainer {
	margin:0;
}

.container-fluid .row .col-sm-12 img {
	/*! padding-left: 0 !important; */
	/*! padding-right: 0 !important; */
	/*! width: 100%; */}

.headcontainer {
	position: fixed;
	top: 0;
	z-index: 4000!important}

svg.svglogo {
	width: 380px;}

.logoA {
	fill: #163653}

.logoB {
	fill: #163653}

svg.svgmobilelogo,
.einblendenAbSmartphone,
.einblendenAbTabletHoch {display: none}
.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto {
	padding:70px 15px;
}

.Navigation .col-sm-12 {padding:0 15px;}
/* ########### Navigation ME ########### */

.header   {
	position: fixed;
	top: 0;
	background: #a81e1c;
	z-index: 10000;
	width: 100%;
	height: 120px;}

.navspacer {display: none;}

.mobileNav {display: none;}
.NavcontainerOut {
	padding: 0;
	position:  relative;
	height:1064px;
}
.Navigation {height: 0px;}

.Navcontainer {
	position: relative;
	z-index: 1000;
	width: 100% !important;
	background: rgba(90,90,90);
	opacity: 0.9}

.NavOut {
	width: 1500px;
	margin: auto;}

.navcol a {
	color: #FFF;
	border: none;
	line-height: 2.6rem;
	font-size: 1.4rem;}

.NavOut ul {
	list-style: none;
	font-size: 1.7rem;
	padding: 50px 35px 0 0px;}

#NavOut {
	text-align: right;
	margin-left: -15px;}

/* ########### Quicknav ########### */
.Quicknav {
	text-align: right;
} 

.Quicknav a {
	color: #fff;
	font-size: 1rem;
} 

.Quicknav a:hover {
	text-decoration: none;
} 

/* ########### Content ########### */
.positionFIX {
	position: absolute;
	bottom: 130px;}

.container {
	max-width: 1500px;
	background: #FFF;}

.XXXXXXmitAbstandA {
	padding: 2rem 0;}

.XXXXXXmitAbstandB {
	padding: 2rem 0;}

.container-fluid .row.headbild {
	margin-left: 0 !important;
	margin-right: 0 !important;}

.ContentFull {
	margin: 0 !important;
	overflow: hidden;
	padding: 0;}

.clear {
	clear: both;}

.nurPhone {
	display: none;}


/* ########### WOW fadeInUp ########### */

@-webkit-keyframes fadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 0%, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}

@keyframes fadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 40%, 0);
		-ms-transform: translate3d(0, 40%, 0);
		transform: translate3d(0, 40%, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
	}
}

.fadeInUp {
	-webkit-animation-name: fadeInUp;
	animation-name: fadeInUp;
}



/*########## parallax ########### */

.parallax-innen {}

.parallax-window {
	min-height: 490px;
	background: transparent;}

.parallax-window {
	border-bottom: none;}


/* ########### Galerie ########### */

.GalerieHB a,.GalerieHB a:hover, .GalerieGB a, .GalerieGB a:hover  {
	color:#fff;
	border-bottom: none;}

.GalerieGB img {margin: 0.8%;width: 23.5%}
.GalerieGB img.DTimg1 {margin: 0.8% 0.8% 0.8% 0% } 
.GalerieGB img.DTimg4 {margin: 0.8% 0 0.8% 0.8% }

.GalerieHB img {margin: 0.8%;width: 31.7%}
.GalerieHB img.DTimg1 {margin: 0.8% 0.8% 0.8% 0% } 
.GalerieHB img.DTimg3 {margin: 0.8% 0 0.8% 0.8%;}

@media (max-width: 1080px) {
	.GalerieGB img {margin: 0.8%;width: 31.5%}
	.GalerieGB img.DTimg1 {margin: 0.8% }
	.GalerieGB img.DTimg4 {margin: 0.8% }
	.GalerieGB img.Timg1 {margin: 0.8% 0.8% 0.8% 0% } 
	.GalerieGB img.Timg4 {margin: 0.8% 0 0.8% 0.8% }
	.GalerieHB img {margin: 0.8%;width: 48.5%}
	.GalerieHB img.Timg2 {margin: 0.8% 0 0.8% 0.8% }	
	.GalerieHB img.Timg1 {margin: 0.8% 0.8% 0.8% 0% } 
}

@media (max-width: 600px) {
	.GalerieGB img {margin: 0.8%;width: 30%}
}

@media (max-width: 450px) {
	.GalerieGB img {margin: 0.8%;width: 48.5%}
	.GalerieGB img.Timg1 {margin: 0.8% } 
	.GalerieGB img.Timg4 {margin: 0.8% }
	.GalerieGB img.Mimg1 {margin: 0.8% 0.8% 0.8% 0} 
	.GalerieGB img.Mimg2 {margin: 0.8% 0 0.8% 0.8%} 
}

.gslide-title {	font-family: 'Merriweather';color: #6F6F6F!important;}
.gslide-description {max-height:40px;}
/* ########### Formular ########### */ 

.error {color: red;font-size: 1.3rem;}
.code img {width: 120px;}

::-webkit-input-placeholder {color: red;}
:-ms-input-placeholder {color: red;}
::placeholder {color: red;}

fieldset#formularA, fieldset#formularB {
	width: 50%;
	border: none;
	overflow: hiddden;
	float: left;}



#formularA input {
	border-radius: 0;
	-webkit-appearance: none;
	width: 85%;
	height: 46px;
	border: 1px solid silver;
	margin: 10px 0 0 0;
	padding: 10px;
	font-size: 1rem}

fieldset#formularA input:focus,fieldset#formularB input:focus,fieldset#formularA textarea  {
	outline:2px solid silver;}

#formularA textarea {
	width: 85%;
	padding: 10px;
	border: 1px solid silver;
	height: 200px;
	font-size: 1rem}

#formularB input {
	border-radius: 0;
	-webkit-appearance: none;
	width: 200px;
	height: 30px;
	border: 1px solid silver;
	padding: 10px;
	font-size: 1rem;
	color: #6F6F6F;
}

#formularB select {
	width: 100px;
	height: 30px;
	border: 1px solid silver;
	padding: 1px;
	color: #6F6F6F;
}

#formularB select.selectB {
	width: 200px;
	height: 30px;
	border: 1px solid silver;
	padding: 1px;
	color: #6F6F6F;
}

#formularB input#code {
	width: 28%;}

#formularB .sendform {
	margin-top: 20px;
	background: #A81E1C;
	width: 30%;
	height: 2.4em;
	color: #fff;
	border: 2px solid #A81E1C;
	outline: none;
	padding: 0;
	border-radius: 0px;
	font-weight: bold;}

#formularB .Datenschutz {
	font-size: 0.8rem}

#formularB label {
	clear: both;
	float: left;
	width: 220px;
}

#formularB div{
	clear: both;
	float: left;
	width: 100%;
	margin: 8px 0 0 0;
}

#formularB #checkBox2 {width: 20px;height: 20px;}


@media (max-width: 480px) {

	fieldset#formularA, fieldset#formularB {
		clear: both;
		width: 100%}

	fieldset#formularA label, fieldset#formularB label {
		display: block;
		height: 40px}

	fieldset#formularA br, fieldset#formularB br {
		display: none	} 

	fieldset#formularA br.specialBR, fieldset#formularB br.specialBR {
		display: block}

}


/* ################## Tabelle ######################*/
.tablemobile {display:none;}
.tableDesktop {display: block;}
table.camptab {width:100%;}
.tabrot {	color: #A81E1C;}

td {vertical-align: top;border-bottom: 1px solid #9d9d9c;}
.tabgross {font-size: 1.5rem;
	font-weight: 700;}
table.camptab td:first-child {width:60%;padding-left:1%}
table.camptab td:nth-child(1),table.camptab td:nth-child(2) {border-right:1px solid #000}
table.camptab td:nth-child(2),table.camptab td:nth-child(3)  {text-align:center} 
.tabgrau {background: #9d9d9c; color:#fff;}
td.tabclear {border-right:1px solid #fff!important;height:2rem; }
td.tabgrau {border-right:1px solid #9d9d9c!important}
td.tabgraurightw {border-right:1px solid #fff!important}
.icontab {max-width:20px;margin-right:1.5%}



/* ################## Footer ######################*/
.footer, .footercontainer {background: #a81e1c;color:#fff;}
.footerA, .footerB, .footerC, .footerD {margin-top:-8px;}
.footer a {color:#fff}
.footername {	line-height: 180%;}
.Fuss_ende {margin-top:50px;
	text-align: center;
	font-size: 11px; }


/*################# Formular ######################*/
.iframebuchung {
	width: 100%;
	height: 1500px
}

/* +++++++++++++++Quicknav ++++++++++++++++++++++++++*/

.QuickNavMobile {
	display: none;
}
.QuickNavMobile > a > img {
	max-width: initial;
	width: 2em;
	position: relative;
	top: .5em;
}
.container .col-12.d-grid {
	grid-template-columns: 200px auto 200px; 
	align-items:center;
	height: 120px; /* Vorgabe header */
}
.flyout {
	position: fixed;
	z-index: 99999;
	top: 120px;
	left: 0;
	width: 100vw;
	overflow: hidden;
	background: rgba(90,90,90, .8);
}
.hasHeaderitems {
	display: grid;
	grid-template-columns: 200px auto 200px; 
	padding:10px 15px; 
	align-items: center
}
@media screen and (max-width: 575px) {
	.Quicknav {
		display: none;
	}
	.QuickNavMobile {
		display: flex;
		justify-content: flex-end;
		gap: .75em;
	}
	.header {
		height: 184px; /* Vorgabe header */
	}
	.flyout {
		top: 184px;
	}
	.hasHeaderitems {
		grid-template-columns: repeat(3, auto);
		grid-row-gap: 20px;
		grid-template-areas: 
			"logo logo logo"
			"hamburger hamburger quicknav";
	}
	.hamburger { grid-area: hamburger; }
	.hasLogo { grid-area: logo; width: calc(100vw - 30px) }
	.Quicknav { grid-area: quicknav; }

}

/* ++++++++++++++++++++++++++++++++++ Hamburger (NOT BOOTSTRAP!) +++++++++++++++++++++++++++++ */
#icon_menu {
	clear: both;
	float: left;
	color: transparent;
	width: 5rem;
	height: 2rem;
	transform: rotate(0deg);
	transition: 0.5s ease-in-out;
	cursor: pointer;
	display: block;
	margin-top: -2px;}

#icon_menu span {
	display: block;
	position: absolute;
	height: 2px;
	width: 90%;
	background: #fff;
	border-radius: 0px;
	opacity: 1;
	left: 0;
	transform: rotate(0deg);
	transition: 0.25s ease-in-out;
}

#icon_menu span:nth-child(1) {
	top: 0px;
}
#icon_menu span:nth-child(2) {
	top: 17px;
}
#icon_menu span:nth-child(3) {
	top: 34px;
}
#icon_menu.mOpen {
	color: transparent;
}
#icon_menu.mOpen span:nth-child(1) {
	top: 15px;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	transform: rotate(135deg);
}
#icon_menu.mOpen span:nth-child(2) {
	display: none;
}
#icon_menu.mOpen span:nth-child(3) {
	top: 15px;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
/* ++++++++++++++++++++++++++++++++++ FLYOUT ++++++++++++++++++++++++++++ */
.flyout > .container >.row .col-12 ul {
	padding-top: 1.5em;
	padding-bottom: 1em;
}
.flyout li {
	list-style-type: none;
	list-style: none;
}
.flyout li::marker {
	content: "";
}
.flyout a {
	text-decoration: none;
	display: inline;
	position: relative;
	overflow: hidden;
	color: #fff; 
	border-bottom: 0;
	font-size: 1.2em;
}
.flyout i {
	cursor: pointer;
	position: relative;
}
.flyout .icon-right-open:before {
	content: none
}
.icon-right-open::after {
	font-family: fontello;
	content: '\e8af';
	margin-left: 5px;
}
.flyout .col-4 {
	box-sizing: border-box;
	width: 33.33%;
	float: left;
	position: relative;
}
.flyout .col-4:nth-child(2) {
	text-align: center;
}
.flyout .col-4:nth-child(3) {
	text-align: right;
}
.flyout ul {
	display: none;
	box-sizing: border-box;
	list-style: none;
	clear: both;
	padding: 1rem 2rem 0;
	position: relative;
	z-index: 1050;
	text-align: left;
	height: 100%;
	width: 25%;
}
.flyout ul > li {
	margin-bottom: 1.25em;
}
.flyout ul.level_1 {
	border-right: 1px solid #999;
}
.flyout ul ul {
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1040;
}
.flyout ul ul ul {
	z-index: 1030;
}
.flyout ul ul ul ul {
	z-index: 1020;
}
@media (max-width: 991px) {
	.flyout ul {
		width: 50%;
	}
	.flyout ul ul ul {
		left: 100%;
	}
	.flyout .col-4 {
		width: 50%;
	}
}
@media (max-width: 480px) {
	.flyout ul { width: 100%;}
	.flyout a {
		line-height: 1;
		font-size: 1rem;
		line-height: 2rem;
		text-decoration: none;
		display: block;
	}
	.header {
		height: 160px;
	}
	.flyout {
		top: 160px; 
	}
	.flyout ul > li {
		margin-bottom: .2em;
	}
}

