/*
https://getbootstrap.com/docs/5.0/examples/
https://getbootstrap.com/docs/5.0/components/accordion/
*/
/*lightbox*/
/*https://trvswgnr.github.io/bs5-lightbox/#options*/
/*
X-Small 	None 	<576px
Small 	sm 	≥576px
Medium 	md 	≥768px
Large 	lg 	≥992px
Extra large 	xl 	≥1200px
Extra extra large 	xxl 	≥1460px
*/

* { transition: all .5s ease; }
.red { color: rgb(192,53,67); }/* #c4122f; */
.bg-red { background-color: rgb(192,53,67); }
.lightgreen { color: rgb(228,233,167); }
.bg-lightgreen { background-color: rgb(228,233,167); }
.green { color: rgb(205,216,111); }/* #c8dc5d */
.bg-green { background-color: rgb(205,216,111); }
.beige { color: rgb(243,238,219); }
.bg-beige { background-color: rgb(243,238,219); }
.gray { color: rgb(156,149,139); }/* #9f968c; */
.bg-gray { background-color: rgb(156,149,139); }
.lightgray { color: rgb(228,225,210); }
.bg-lightgray { background-color: rgb(228,225,210); }
.yellow { color: rgb(255,189,49); }/* rgb(232,199,96 *//* #f8c749; */
.bg-yellow { background-color: rgb(255,189,49); }
.white { color: rgb(255,255,255); }
.bg-white { background-color: rgb(255,255,255); }

/* X-Small devices = default (portrait phones, less than 576px)*/

/* Small devices (landscape phones, 576px and up)*/
@media (min-width: 576px) {
	.container-sm, .container {
		max-width: 540px;
		position: relative;
	}
}
/* Medium devices (tablets, 768px and up)*/
@media (min-width: 768px) {
	.container-md, .container-sm, .container {
		max-width: 720px;
		position: relative;
	}
}
/* Large devices (desktops, 992px and up)*/
@media (min-width: 992px) {
	.container-lg, .container-md, .container-sm, .container {
		max-width: 960px;
		position: relative;
	}
}
/* X-Large devices (large desktops, 1200px and up)*/
@media (min-width: 1200px) {
	.container-xl, .container-lg, .container-md, .container-sm, .container {
		max-width: 1140px;
		position: relative;
	}
}
/* XX-Large devices (larger desktops, [neu!]1460px and up)*/
@media (min-width: 1460px) {
	.container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
		max-width: 1400px;/*1320px*/
		position: relative;
	}
}
@media (max-width: 575px) {
	.container-fluid, #content.container {
		padding-right: 0;
		padding-left: 0;
	}
}
:root { --bs-breakpoint-xs: 0;
 --bs-breakpoint-sm: 576px;
 --bs-breakpoint-md: 768px;
 --bs-breakpoint-lg: 992px;
 --bs-breakpoint-xl: 1200px;
 --bs-breakpoint-xxl: 1460px; /*1400px*/
}
:root, [data-bs-theme="light"] {
--bs-link-color: #666666;/*grau*/
--bs-link-color-rgb: 102, 102, 102;
--bs-link-decoration: none;
--bs-link-hover-color: #0504a8; /*blau*/
--bs-link-hover-color-rgb: 5, 4, 168;/*blau*/
--bs-nav-link-font-size: 1.5rem;
--bs-border-width: 0.25rem !important;
 --bs-emphasis-color: #fff;
--bs-emphasis-color-rgb: 255, 255, 255;
}
.btn {  --bs-btn-font-weight: 600;
}
.btn-primary {  --bs-btn-color: #000;
 --bs-btn-hover-color: #000;
 --bs-btn-active-color: #000;
 --bs-btn-disabled-color: #000;
 --bs-btn-bg: rgb(228,233,167);/* lightgreen */
 --bs-btn-border-color: rgb(228,233,167);
 --bs-btn-hover-bg: rgb(205,216,111);
 --bs-btn-hover-border-color: rgb(205,216,111);
 --bs-btn-focus-shadow-rgb: 49, 132, 253;
 --bs-btn-active-bg:rgb(205,216,111);
 --bs-btn-active-border-color: rgb(205,216,111);
 --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
 --bs-btn-disabled-bg: rgb(228,233,167);/* lightgreen */
 --bs-btn-disabled-border-color: rgb(228,233,167);
}
.bg-secondary { background-color: rgba(156,149,139,1) !important; }

/* xxxxxxxxxxxxxxxxxxx Structure xxxxxxxxxxxxxx */
/*html, body { height: 100%; }
body { height: 100%; }*/
html, body {
	margin: 0;
	padding: 0;
}
html, body { scroll-behavior: smooth;/*???*/ }
html {
	-webkit-text-size-adjust: none;/* Mobil: Zuruecksetzen der Auto-Schriftskalierung */
	font-family: sans-serif;
	line-height: 1.5;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	font-size: 100%;
}
body {
	color: rgb(81,75,67);/*grau*/
	font-size: 1.1rem;
	line-height: 1.4;
	font-weight: 400;
	font-family: 'Poppins', sans-serif;
	background-color: #ffffff;/*	padding-top: 90px; banner würde bis hoch reichen*/
}
body#eintragen { background-color: rgb(243,238,219); }
strong, b, bold { font-weight: 700; }
.bold { font-weight: 700; }
em, i { font-style: italic; }

::-moz-selection {
 background-color: rgb(205,216,111); /* gruen*/
 color: #fff;
}
::selection {
	color: #fff;
	background-color: rgb(205,216,111); /* gruen*/
}
::-moz-focus-inner {
 padding: 0;
 border-style: none;
}
* {
	word-break: normal !important;/*break-all*/
	/* Non standard for WebKit */
	word-break: normal !important;
	-moz-hyphens: auto;
	hyphens: auto;
}
#content.container {
	padding-bottom: 3rem;
	padding-top: 20px;
}
@media (min-width: 1460px) {
	#content.container { padding-top: 0px; }
}
.table {
 --bs-table-color: inherit;/* var(--bs-emphasis-color); */
 --bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);
 --bs-table-hover-color: inherit;/* var(--bs-emphasis-color); */
 --bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);
	width: 100%;
	margin-bottom: 3rem;
	margin-top: 2rem;
	vertical-align: top;
}
.box_rahmen {
	background-color: #FFFFFF;
	-webkit-box-shadow: 0px 0px 30px -5px rgba(0,0,0,0.10) !important;
	/*  -moz-box-shadow: 0px 0px 30px -5px rgba(0,0,0,0.10) !important;*/
	box-shadow: 0px 0px 30px -5px rgba(0,0,0,0.10) !important;
	border-radius: 10px;
	/* 	border:1px solid red; */
	padding: 20px;
}
@media (min-width: 992px) {
	.box_rahmen { padding: 35px; }
}
@media (min-width: 1460px) {
	.box_rahmen {
		margin-top: -50px;
		padding-top: 50px;
	}
}
#banner {
	position: relative;
	margin-top: 90px;
}
#eintragen #banner { height: 0px; }
@media (min-width: 1460px) {
	#eintragen #banner { height: 100px; }
}
#overlay {/*gruene Flaeche*/
	position: absolute;
	z-index: 50;/**/
	top: 50%;
	left: 30%;
	background-color: rgba(65,95,0,0.7)
}

/*Schrifttitel Startseite*/
html[lang="en"] #overlay h1.fw-400 {font-size:2.45rem;font-family:'Montserrat','Poppins';letter-spacing:1px}
html[lang="de"] #overlay h1.fw-400 {font-size: 3rem;font-family:'Montserrat','Poppins';letter-spacing: 1px;}
#overlay h1.fw-700 {font-size:3.2rem;line-height:0.9;font-family:'Montserrat','Poppins';letter-spacing:1px;}
#overlay p.lead {font-size:1.1rem;letter-spacing:0.5px}

#startcircle {
	position: absolute;
	border-radius: 75px !important;
	height: 150px;
	width: 150px;
	text-align: center !important;
	-webkit-box-shadow: 0px 0px 30px -5px rgba(0,0,0,0.20) !important;
	/*  -moz-box-shadow: 0px 0px 30px -5px rgba(0,0,0,0.20) !important;*/
	box-shadow: 0px 0px 30px -5px rgba(0,0,0,0.20) !important;
}
@media (max-width: 767px) {
	#overlay, #startcircle { display: none; }
}
@media ((min-width: 767px) and (max-width: 1199px)) {
	#startcircle {
		display:none;
	}
}
#startcircle a {
	display: block;
	transform: rotate(-20deg);
	border-radius: 75px !important;
	height: 150px;
	width: 150px;
	padding: 0px;
	margin: 0;
}
#buchung {/*button*/ text-align: center; }

/* xxxxxxxxxxxxxxxxxxxxxx image xxxxxxxxxxxxxxxxxxxxxx */
.img-fluid { width: 100%;/* max-width: 100%; */ }
.img-thumbnail {
	padding: 0rem;
	background-color: transparent;
	border: 0px solid #fff;
	border-radius: 0px;
	max-width: 100%;
	height: auto;
}
figure { position: relative; }
.figure-caption, .figure-caption:hover {
	font-size: 0.9rem;/*0.875em*/
	line-height: 1.5;
	text-align: center;
	margin-top: 0.5rem;
	text-decoration: none;
	position: relative;
}
.bg-red .figure-caption, .bg-red .figure-caption:hover { color: white; }
/* xxxxxxxxxxxxxxxxxxxxxx lightbox xxxxxxxxxxxxxxxxxxx */
.carousel-item.active { background-color: black; }
.modal.lightbox.fade.show { background-color: rgba(0,0,0,0.5) !important; }
.ratio-16x9 {  --bs-aspect-ratio: 60%;/* 70% */
}
a[data-toggle="lightbox"] img {
	border: 1px solid white;/* 3px */
	opacity: 1.0;
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
a[data-toggle="lightbox"] img:hover {
	opacity: 0.8;
	/* transform: scale(1.05); */
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
	-webkit-transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
a[data-toggle="lightbox"], a[data-toggle="lightbox"]:hover {
	text-decoration: none;
	display: block;
	background-color: white;
}
figcaption a[data-toggle="lightbox"], figcaption a[data-toggle="lightbox"]:hover {
	background-color: transparent;
	text-decoration: underline;
	display: inline-block;
	color: var(--bs-secondary-color);
}
/* xxxxxxxxxxxxxxxx footer xxxxxxxxxxxxxxx */
footer {
	position: relative;
	background-color: rgb(192,53,67);
	padding-bottom: 3rem !important;
	padding-top: 1.5rem !important;
	border-top: 3px solid #fff;
}
footer .right ul {
	text-align: right !important;
	justify-content: end;
}
@media (max-width: 767px) {
	footer .left, footer .right, footer blockquote {
		text-align: center !important;
		padding-top: 1rem;
	}
	footer .right ul {
		justify-content: center;
		text-align: right;
	}
	footer .right {
		order: -1;
		padding-top: 1rem;
	}
}
@media (min-width: 768px) {
	footer blockquote {
		text-align: right !important;
		display: block;
	}
}
footer a, footer a:hover, footer a:focus {
	color: #fff;
	text-decoration: none;
}
#backToTopBtn {
	position: absolute;
	top: -45px;
	right: 0;
	border-radius: 0;
	--bs-btn-color: white;
	padding-bottom: 0;
}
#backToTopBtn.bg-red:hover { background-color: white; }
/* xxxxxxxxxxxxxxxx Paragraph xxxxxxxxxxxxx */
p {
	margin: 0px 0px 15px;
	word-spacing: 2px;
}
code {
	background-color: hsla(0,0%,78%,.3);
	border-radius: 2px;
	padding: .15em;
}
.collapse.show small { /*Fotografen-Zeile */ font-size: 0.7rem; }
small, .small {
	font-size: 0.9rem;
	line-height: 1.3;
}
figcaption small, figcaption small a, figcaption small a:hover, figcaption small a:focus {
	font-size: 0.7rem;
	color: rgba(255,255,255,0.4);/*weiss */
	text-decoration: none;
	line-height: 1.1;
	display: inline-block;
	/* text-align: left; */
}
figcaption .collapse small, figcaption .collapse small a {
	color: rgba(33, 37, 41, 0.75);/*grau bei Copyright*/
}
figcaption .collapse small a:hover, figcaption .collapse small a:focus {
	color: rgb(192,53,67);/*rot bei Copyright*/
}
/* .bg-green figcaption small, .bg-green figcaption small a, .bg-green figcaption small a:hover, .bg-green figcaption small a:focus { color: rgba(0,0,0,0.4); } */

figcaption small.gray, figcaption small.gray a, figcaption small.gray a:hover, figcaption small.gray a:focus { color: rgba(0,0,0,0.4); }
.xsmall {
	font-size: 0.7rem;
	line-height: 1.0;
}

/* xxxxxxxxxxxxxxxxxxxxxxx Links, Buttons xxxxxxxxxxxxxxxxx  */

a, area, button, [role="button"], input, label, select, summary, textarea {
 touch-action: manipulation;
}
a {
	color: inherit;/*rot*/
	text-decoration: underline;
	background-color: transparent;
	-webkit-text-decoration-skip: objects;
}
a:hover, a:focus {
	color: rgb(192,53,67);/*rot*/
	text-decoration: underline;
	background-color: transparent;
	-webkit-text-decoration-skip: objects;
}
main a.btn, main a.btn.btn-info {
	display: inline-block;
	font-style: normal !important;
	white-space: inherit;/*sonst abgeschnitten bei schmalem BS*/
	-moz-hyphens: none;
	hyphens: none;
	vertical-align: middle;
	user-select: none;
	padding: 0.5rem 0.5rem 0.5rem 0.5rem;
	font-size: 1.2rem;
	letter-spacing: 0.5px;
	line-height: 1.3;
	transition: all 0.15s ease-in-out;
	color: #fff;
	cursor: pointer;
	border-radius: 0px;
}
main a.btn-buchung, .btn-buchung {/*#buchung */
	color: rgb(192,53,67);/*rot*/
	font-weight: 600;
	background-color: rgb(205,216,111); /*gruen*/
	border: 3px solid #fff;
	width: 300px;
	-webkit-box-shadow: 0px 0px 30px -5px rgba(0,0,0,0.20) !important;
	box-shadow: 0px 0px 30px -5px rgba(0,0,0,0.20) !important;
}
a.btn-buchung:hover, a.btn-buchung:active:hover, a.btn-buchung.active:hover, .open > .dropdown-toggle.btn-buchung:hover, .btn-buchung:active:focus, .btn-buchung.active:focus, .open > .dropdown-toggle.btn-buchung:focus, .btn-buchung.focus:active, .btn-buchung.active.focus, .open > .dropdown-toggle.btn-buchung.focus {
	text-decoration: none;
	background-color: #fff;
	border: 3px solid #fff !important;
	color: rgb(192,53,67);/*rot*/
	text-decoration: none;
}
/* xxxxxxxxxxxxxxx Headline xxxxxxxxxxxxxxxxxxxxxxx  */

h1, h2, h3, h4, h5, h6 {
	color: rgb(192,53,67);/*rot*/
	text-rendering: optimizeLegibility;
	line-height: 1.2;
	font-weight: 700;
	letter-spacing: 0px;
	word-break: normal;/* keep-all !important */
	-moz-hyphens: none !important; /* auto */
	hyphens: none !important; /* auto */
}
h1, .h1 { font-size: calc(1.375rem + 1.5vw); }
@media (min-width: 1200px) {
	h1, .h1 { font-size: 2.0rem;/*2.5rem*/ }
}
h2, .h2 { font-size: calc(1.325rem + 0.9vw); }
@media (min-width: 1200px) {
	h2, .h2 { font-size: 1.75rem;/*2rem*/ }
}
h3, .h3 { font-size: calc(1.3rem + 0.6vw); }
@media (min-width: 1200px) {
	h3, .h3 { font-size: 1.5rem;/*1.75rem*/ }
}
h4, .h4 { font-size: calc(1.275rem + 0.3vw); }
@media (min-width: 1200px) {
	h4, .h4 { font-size: 1.25rem;/*1.5rem*/ }
}
h5, .h5 { font-size: 1.1rem;/*1.25rem*/ }
h1, .h1 { font-weight: 500; }
h6, .h6 {
	font-size: 1.1rem;/*1rem*/
	text-transform: uppercase;
	color: rgb(81,75,67);
	font-weight: 700;
	margin-bottom: 0rem;
}
h1+hr {
	height: 6px;
	width: 80px;
	margin: 0.5rem 0 2rem 0;
	color: rgb(192,53,67);
	opacity: 1.0;
	border-top: 4px solid rgb(192,53,67);
}
/* xxxxxxxxxxxxxxxxxxx Lists xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */

ol, ul {/*default*/ list-style: none; }
ul li, ol li {/*default*/
	margin: 0;
	padding: 0;
}
main ol, main ul { margin: 0 0 20px; }
main ol { list-style: decimal outside; }
main ul {
	list-style: disc outside;
	margin-left: 0px;
}
main ul ul {
	list-style: circle outside;
	margin: 0px 0px 0px;
}
main li { margin: 0px 0px 10px 20px; }
main li li:first-child { margin: 5px 0px 5px 20px; }


/* xxxxxxxxxxxxxx Menue xxxxxxxxxxxxxxxxxxxxxxxxxx*/
.navbar-nav li {
	margin: 0px 0px;/*zuruecksetzen*/
	/*border:1px solid red;*/
	flex-basis: auto;
}
.navbar { /* Anpassung auch fuer smartphone */
 --bs-navbar-padding-x: 0;
 --bs-navbar-padding-y: 0.3rem;
 --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 1.0);
 --bs-navbar-hover-color: rgb(205,216,111);
 --bs-navbar-disabled-color: rgb(205,216,111);
 --bs-navbar-active-color: rgb(205,216,111);
 --bs-navbar-brand-padding-y: 0.3125rem;
 --bs-navbar-brand-margin-end: 1rem;
 --bs-navbar-brand-font-size: 1.25rem;
 --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
 --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
 --bs-navbar-nav-link-padding-x: 0.5rem;
 --bs-navbar-toggler-padding-y: 0.25rem;
 --bs-navbar-toggler-padding-x: 0.75rem;
 --bs-navbar-toggler-font-size: 1.25rem;
 --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1.0%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
 --bs-navbar-toggler-border-color: rgba(255,255,255,1);
 --bs-navbar-toggler-border-radius: var(--bs-border-radius);
 --bs-navbar-toggler-focus-width: 0.25rem;
 --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
}
.navbar-nav {/*oben
 --bs-nav-link-padding-x: 0;
 --bs-nav-link-padding-y: 0.3rem*/;
 --bs-nav-link-font-weight: 500;
 --bs-nav-link-color: var(--bs-navbar-color);
 --bs-nav-link-hover-color: var(--bs-navbar-hover-color);
 --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color); 
 list-style: none;
 }
 
@media (min-width: 991px) {
	.navbar-collapse { flex-grow: inherit; }
	.navbar-expand-lg .navbar-nav {
		flex-direction: row;
		display: flex;
		align-items: center;
		justify-content: flex-end;
	}
	.navbar { --bs-navbar-padding-y: 1.6rem;/* 0.3rem */}
}
@media (min-width: 1200px) {
	.navbar { --bs-navbar-padding-y: 1.0rem;}
} 
 
footer .nav-link { font-weight: 700; }
@media (max-width: 991px) {
	footer .nav-link {
		font-weight: 500;
		font-size: 1.1rem;
		padding: 0.2rem;
	}
}
@media (max-width: 767px) {
	footer blockquote, footer figure { display: none !important; }
}
.nav-link {
	white-space: nowrap;/*kein Umbruch*/
	display: block;
	padding: 0rem 0;
	font-size: 1.1rem;
	letter-spacing: 0.5px;
	font-weight: 500;
	color: white;
	text-decoration: none;
	background: none;
	border: 0;
	transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
@media (max-width: 991px) {
	.nav-link {
		padding: 0.8rem;
		font-size: 1.5rem;
	}
	.navbar-nav .nav-link.active, .navbar-nav .nav-link.show, .navbar-nav .nav-link:hover {
		color: rgb(192,53,67);
		text-decoration: none;
	}
}
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show, .navbar-nav .nav-link:hover {
	color: rgb(228,233,167);/*lightgreen*/
	text-decoration: none;
}
.nav-link:hover, .nav-link:focus {
	color: rgb(228,233,167);
	text-decoration: none;
}
@media (max-width: 991px) {
	.nav-link {
		padding: 0.7rem;
		font-size: 1.5rem;
	}
	.navbar-nav .nav-link.active, .navbar-nav .nav-link.show, .navbar-nav .nav-link:hover, 	.nav-link:focus { color: rgb(192,53,67);/* rot */ }
}
.navbar-brand figure {
	max-width: 200px;
	min-width: 100px;
}
@media (min-width: 992px) {
	.navbar-expand-lg .navbar-nav .nav-link {
		padding-right: 0.4rem;
		padding-left: 0.4rem;
	}
}
@media (min-width: 1200px) {
	.navbar-expand-lg .navbar-nav .nav-link {
		padding-right: 0.5rem;
		padding-left: 0.5rem;
	}
	.navbar-brand figure { max-width: 265px; }
	.navbar-brand { margin-right: 2rem; }
}
.navbar-dark, .navbar[data-bs-theme="dark"] {  --bs-navbar-color: rgba(255, 255, 255, 0.55);
 --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
 --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
 --bs-navbar-active-color: #fff;
 --bs-navbar-brand-color: #fff;
 --bs-navbar-brand-hover-color: #fff;
 --bs-navbar-toggler-border-color: /*rgba(255, 255, 255, 0.1)*/rgba(255, 255, 255, 1.0);
 --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-toggler { color: rgba(228,233,167,1.0);/*lightgreen*/ }
@media (max-width: 991.98px) {
	.offcanvas-collapse {
		top: 90px;
		padding-left: 2rem;
		background-color: rgb(205,216,111);/*gruen*/
	}
}
.offcanvas-collapse { }/*nur in offcanvas.css aenderbar*/

.card { /*Copyright-Felder*/
 --bs-card-spacer-y: 0rem;
 --bs-card-spacer-x: 0rem;
 --bs-card-title-spacer-y: 0rem;
 --bs-card-cap-padding-y: 0rem;
 --bs-card-cap-padding-x: 0rem;
 --bs-card-img-overlay-padding:0;
 --bs-card-group-margin: 0;
	background-color: transparent;
	background-clip: border-box;
	border: 0px solid red;
	border-radius: 0;
	/*color: rgba(33, 37, 41, 0.75);grau*/
}
div.hidden1 { display: block; }
div.hidden2, div.hidden3 { display: none; }
@media (min-width: 768px) {
	div.hidden1, div.hidden2 { display: block; }
	div.hidden3 { display: none; }
}
@media (min-width: 992px) {
	div.hidden1, div.hidden2, div.hidden3 { display: block; }
}

/*xxxxxxxxxxxxxxxxxxxxxxxxxx grundriss xxxxxxxxxxxxxxxxxxxxxx*/
#hotspots {
	position: absolute;
	z-index: 1000;
	top: -20px;
	left: 0px;
	display: block;
	width: 100%;
	height: 100%;
}
a#spot_kueche, a#spot_wohn, a#spot_schlaf2, a#spot_schlaf1, a#spot_bad, a#spot_balkon {
	display: block;
	position: absolute;
	border-radius: 80px;
	border: 40px solid rgb(255,189,49);
	width: 1px;
	height: 1px;
	transform: translate(-50%, -50%);
	opacity: 0.2;
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
	-webkit-transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media (min-width: 768px) {
	a#spot_kueche, a#spot_wohn, a#spot_schlaf2, a#spot_schlaf1, a#spot_bad, a#spot_balkon {
		border-radius: 100px;
		border: 50px solid rgb(255,189,49);
	}
}
a#spot_kueche:hover, a#spot_wohn:hover, a#spot_schlaf2:hover, a#spot_schlaf1:hover, a#spot_bad:hover, a#spot_balkon:hover {
	opacity: 0.5;
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
	-webkit-transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
a#spot_kueche {
	left: 20%;
	top: 45%;
}
a#spot_wohn {
	left: 45%;
	top: 45%;
}
a#spot_schlaf2 {
	left: 70%;
	top: 70%;
}
a#spot_schlaf1 {
	left: 70%;
	top: 45%;
}
a#spot_bad {
	left: 20%;
	top: 70%;
}
a#spot_balkon {
	left: 45%;
	top: 15%;
}

/* xxxxxxxxxxxxxxxxxxxxxxxxxxxxx empfehlungen xxxxxxxxxxxxxxxxxxxxxxxxx */
#empfehlung ul {
	margin: 15px 0px 15px;
	padding-left: 1rem;
}
#empfehlung h6 { margin: 45px 20px 0px; }
#empfehlung p { margin: 0px 20px 15px; }
#empfehlung .box_rahmen .col-lg-5 { border: 10px solid white; }

/* xxxxxxxxxxxxxxxxxxxxxxx accordion datenschutz xxxxxxxxxxxxxxxxxxxxxx */
#accordionDS .accordion-button:not(.collapsed) {
	background-color: transparent;
	box-shadow: none;
}
#accordionDS .accordion-button:focus { box-shadow: rgba(228, 225, 210, 0.5) 0px 0px 0px 4px; }
.accordion { --bs-accordion-border-color:rgb(228, 225, 210);
}
/* xxxxxxxxxxxxxxxxxxxx form xxxxxxxxxxxxxxxxxxxxx */
.invalid-feedback {
	font-size: 0.8rem;
	color: rgb(192,53,67);/* rot */
}
.was-validated .form-control:valid, .form-control.is-valid {
 border-color: #dee2e6;/* grau wie standard */
 background-image: none;
}
.form-label {
	margin-bottom: 0.1rem;
	margin-top: 0.8rem;
}
.form-check-input:checked {
	background-color: rgb(205,216,111);/* gruen */
	border-color: rgb(205,216,111);/* gruen */
}
.form-check { padding-left: 3rem; }
.form-check .form-check-input {
	margin-left: -3rem;
	width: 2rem;
	height: 2rem;
	margin-top: 0.8rem;
}
.form-select:focus-visible {
 color: inherit;/* transparenet */
}
.modal {/* buchungsanfrage */
	--bs-modal-width: 700px;
}
#staticBackdrop.modal.show {
	padding-right: 17px; 
	display: block;
}

button.btn.btn-outline-secondary.btn-sm {/* Copyright-Button */
 --bs-btn-padding-y: 0.2rem;
 --bs-btn-padding-x: 0.2rem;
	color: rgba(0,0,0,0.6);
 --bs-btn-border-width: 0px;
	margin: 0.2rem;
	border-radius: 0;
	content: '\00a9';
	position: absolute;
	width: 30px;
	height: 30px;
	right: 0;
	top: -45px;
	background: rgba(255,255,255,0.7);
	font-size: 1.3rem;
	line-height: 1.0;
}
button.btn.btn-outline-secondary.btn-sm:hover, 
button.btn.btn-outline-secondary.btn-sm:active {
	border-color: inherit;
	color: rgba(0,0,0,0.4);
	background: rgba(255,255,255,0.8);
}
.btn-outline-primary {
	color: #000; 
	border-color: rgb(205,216,111);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: rgb(205,216,111);
	--bs-btn-hover-border-color: rgb(205,216,111);
	--bs-btn-focus-shadow-rgb: 13, 110, 253;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: rgb(205,216,111);
	--bs-btn-active-border-color: rgb(205,216,111);
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.btn-outline-primary.formularbutton.active {
	background-color: rgb(228,233,167);
	color: #000;
}
input[name="submit_last"].btn.btn-outline-primary.formularbutton, 
input[name="submit_act"].btn.btn-outline-primary.formularbutton, 
input[name="submit_next"].btn.btn-outline-primary.formularbutton { 
	margin: 10px 20px; 
}
.btn-outline-secondary { 
	--bs-btn-color: #9f968c;
	--bs-btn-border-color: #9f968c;
	--bs-btn-hover-bg: #9f968c;
	--bs-btn-hover-border-color:#9f968c;
	--bs-btn-active-bg: #9f968c;
	--bs-btn-active-border-color: #9f968c;
	--bs-btn-disabled-color: #9f968c;
	--bs-btn-disabled-border-color: #9f968c;
}
.collapse.show .card-body a { text-decoration: none; }
.alert-success {  --bs-alert-bg: rgb(228,233,167);/* hellgruen */
	--bs-alert-border-color: rgb(205,216,111);/* gruen */
}
p.belegung span.badge {
	padding: 10px;
	font-weight: 400;
	border-radius: 0;
}

/* xxxxxxxxxxxxxx calendar anpassungen xxxxxxxxxxxxxxxxxxxxxx */
.calendar .days .day_name {
	padding: 5px 0px;
	font-weight: 400;
	background-color: #9f968c;/* grau */
	color: #fff;
	font-size: 0.8rem;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
.calendar .days .day_num {
	padding: 5px;
	min-height: 37px;
	font-weight: bold;
	color: inherit;
	cursor: text;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
.calendar .header .month-year {
	font-size: 1.1rem;
	font-weight: 700;
	color: #9f968c;/* grau */
	padding: 20px 0 10px;
}
.calendar .days .day_num.ignore {
	background-color: #fbf7e6;/* hellbeige rgb(243,238,219)*/
	color: #ced2d4;
	cursor: inherit;
}
.calendar .days .day_num:nth-child(7n+1) { border-left: 1px solid #fff; }
.calendar .days .day_name:nth-child(7) {
	border-left: 0px solid #fff;
	border-bottom: 1px solid #fff;
	border-right: 1px solid #fff;
}
.calendar .days .day_name:nth-child(1) { border-left: 1px solid #fff; }
.calendar .days .day_num.frei { background: #c8dc5d; /*gruen*/ }
.calendar .days .day_num.res { background: #f8c749; /*gelb*/ }
.calendar .days .day_num.bel {
	color: #FFF;
	background: #c4122f; /*rot*/
}
.calendar .days .day_num.kein {
	color: #FFF;
	background: #9f968c; /*grau*/
}
.calendar .days .day_num.frei_res { background: linear-gradient(to bottom right, #c8dc5d 50%, #f8c749 50%); }
.calendar .days .day_num.frei_bel {
	color: #000;
	background: linear-gradient(to bottom right, #c8dc5d 50%, #c4122f 50%);
}
.calendar .days .day_num.frei_kein {
	color: #000;
	background: linear-gradient(to bottom right, #c8dc5d 50%, #9f968c 50%);
}
.calendar .days .day_num.res_bel {
	color: #FFF;
	background: linear-gradient(to bottom right, #f8c749 50%, #c4122f 50%);
}
.calendar .days .day_num.res_frei { background: linear-gradient(to bottom right, #f8c749 50%, #c8dc5d 50%); }
.calendar .days .day_num.res_kein {
	color: #FFF;
	background: linear-gradient(to bottom right, #f8c749 50%, #9f968c 50%);
}
.calendar .days .day_num.bel_frei {
	color: #FFF;
	background: linear-gradient(to bottom right, #c4122f 50%, #c8dc5d 50%);
}
.calendar .days .day_num.bel_res {
	color: #FFF;
	background: linear-gradient(to bottom right, #c4122f 50%, #f8c749 50%);
}
.calendar .days .day_num.bel_kein {
	color: #FFF;
	background: linear-gradient(to bottom right, #c4122f 50%, #9f968c 50%);
}
.calendar .days .day_num.kein_frei { background: linear-gradient(to bottom right, #9f968c 50%, #c8dc5d 50%); }
.calendar .days .day_num.kein_res {
	color: #FFF;
	background: linear-gradient(to bottom right, #9f968c 50%, #f8c749 50%);
}
.calendar .days .day_num.kein_bel {
	color: #FFF;
	background: linear-gradient(to bottom right, #9f968c 50%, #c4122f 50%);
}