body.navOpen {
	position: relative;
	overflow: hidden;
}
img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
}
summary {
	cursor: pointer;
}
.faqcat {
	margin-bottom: 2rem;
	display: none;
}
.faqcat.isActive {
	display: block;
}
.faqcat:last-child {
	margin-bottom: 0;
}
details {
	margin-top: 1em;
}
details p {
	margin-top: .5em;
}
details[open] summary {
	font-weight: 400;
}
details[open] p {
	padding-left: 1em;
}
.buchen-quickbooker .button {
	animation: pulse 6s infinite;
}
@keyframes pulse {
	0% { transform: scale(1); }
	50% { transform: scale(1.1); }
	100% { transform: scale(1); }
}
/* ---------- Farben ---------- */
.hasBlueBackground {
	background-color: #AFD7DB;
	background-color: rgba(175,215,219,.7);
}
.hasYellowBackground {
	background-color: #D2CB45;
	background-color: rgba(210,203,69,.7);
}
.hasGreenBackground {
	background-color: #DAD468;
	background-color: rgba(218,212,104,.7);
}
.hasRoseBackground {
	background-color: #FF998A;
	background-color: rgba(255,153,138,.7);
}
.hasWhiteBackground {
	background-color: #fff;
}

/* ---------- Header ---------- */
.site-header {
	width: 100%;
	background-color: #fff;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	z-index: 999;
}
.site-header-inner {
	padding: 20px 2rem 20px 2rem;
}
.site-header-content {
	margin: 0 auto;
	width: 100%;
	max-width: 1600px;
	position: relative;
}
.site-navigation {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
}
.site-navigation .menu-icon {
	background-image: url(../../../../wp-content/themes/hotel-minerva/assets/menu-burger.png);
	background-size: contain;
	background-position: center center;
	width: 3em;
	height: 3em;
	background-repeat: no-repeat;
}
.site-navigation a.menu {
	display: flex;
	align-items: center;
	justify-content: center;
}
body.navOpen .site-navigation .menu-icon {
	background-image: url(../../../../wp-content/themes/hotel-minerva/assets/menu-x.png);
}
.site-logo {
	position: relative;
	z-index: 0;
}
.site-logo-content {
	padding-top: 2em;
}
.site-header .site-logo-content a {
	display: block;
}
.site-header .site-logo-content a img {
	margin: 0 auto;
	transition: all 0.2s ease-in-out;
	width: auto;
}
.site-header .site-logo-content a:first-child img {
	max-height: 8em;
	width: auto;
}
.site-header .site-logo-content a:last-child img {
	max-height: 0;
	width: auto;
}
body.isScrolled .site-header .site-logo-content a:first-child img {
	max-height: 0;
}
body.isScrolled .site-header .site-logo-content a:last-child img {
	max-height: 2em;
}
.insta-icon {
	background-image: url(../../../../wp-content/themes/hotel-minerva/assets/insta-button.png);
	background-size: contain;
	background-position: center center;
	width: 1.25em;
	height: 1.25em;
}
.site-service-content a.insta {
	display: flex;
	margin-left: 2rem;
	margin-right: 2rem;
	align-items: center;
	justify-content: center;
}
.site-service {
	position: absolute;
	right: -2rem;
	top: -20px;
	z-index: 1;
}
.site-service-content {
	display: flex;
	align-items: center;
	position: relative;
	justify-content: flex-end;
}
.site-service-content a.service {
	display: flex;
	margin-left: 1rem;
	font-size: 1.25em;
	align-items: center;
	justify-content: center;
}
.site-service-content a.service:first-child {
	margin-left: 0;
}
.site-service-content a.service.service-tel .service-tel-hover {
	display: none;
	font-size: .8em;
}
.site-service-content div.buchen-quickbooker{
	display: flex;
	position: relative;
}
.site-service-content .lang {
	margin-left: 2rem;
	display: none;
}
.site-service-content .lang .wpml-ls-legacy-list-horizontal {
	border: none;
	padding: 0;
	clear: both;
}
.site-service-content .lang .wpml-ls-legacy-list-horizontal ul {
	list-style: none;
	list-style-type: none;
	display: flex;
}
.site-service-content .lang .wpml-ls-legacy-list-horizontal .wpml-ls-item {
	padding: 0;
	margin: 0;
	list-style-type: none;
	display: block;
	padding-right: .5rem;
	border-right: 1px solid #717A48;
	margin-right: .5rem;
}
.site-service-content .lang .wpml-ls-legacy-list-horizontal .wpml-ls-item:last-child {
	padding-right: 0;
	border-right: none;
	margin-right: 0;
}
.site-service-content .lang .wpml-ls-legacy-list-horizontal a {
	display: block;
	text-decoration: none;
	padding: 0;
	line-height: inherit;
	font-weight: 300;
	font-size: 1.25em;
}
.site-service-content .lang .wpml-ls-legacy-list-horizontal .wpml-ls-current-language a {
	font-weight: 400;
}
.site-service-content .lang .wpml-ls-legacy-list-horizontal a span {
  vertical-align: inherit;
}
.quickbooker {
	position: absolute;
	display: none;
	right: 0;
	top: 30px;
	background-color: #717A48;
	padding: 1rem 1rem;
	box-shadow: 0px 3px 6px #00000029;
}
.quickbooker.isOpen {
	display: block;
}
.quickbooker .d21-headline {
	display: none;
}
.quickbooker #d21-quickbook {
	background-color: #fff;
	padding: 1rem;
	width: auto;
	min-height: auto;
	max-width: 320px;
	font-size: 1em !important;
	text-transform: none !important;
}
.quickbooker .d21-row {
	margin: -0.75rem;
	display: flex;
	flex-wrap: wrap;
}
.quickbooker .d21-btn {
	transition: all 0.2s ease-in-out;
	line-height: 1.5;
	border-radius: 0;
	font-weight: 400;
	display: flex;
	align-items: center;
	justify-content: center;
	height: calc(1.25em * 1.5);
	background-color: #717A48;
	color: #fff;
	text-decoration: none;
	text-transform: uppercase;
	padding: 0 1rem !important;
}
.quickbooker .d21-btn.d21-primary {
	background-color: #717A48 !important;
	border: none !important;
	color: #fff !important;
	font-weight: 400;
}
.quickbooker #d21-quickbook .d21-row .d21-col {
	padding: 0;
}
.quickbooker .d21-input {
	width: 100%;
	padding: .25em .5em .25em 2em !important;
	border: solid 1px #717A48;
	color: #717A48;
	height: 2em;
	line-height: 1.5;
	border-radius: 0;
	font-weight: 400;
	display: flex;
	align-items: center;
}
.quickbooker .d21-row .d21-col.d21-s12 {
	width: calc(50% - .5rem);
	margin: .25rem;
}
.quickbooker .d21-row .d21-col.d21-s24 {
	width: calc(100% - .5rem);
	margin: .25rem;
}
.quickbooker #d21-quickbook #d21-selected-day-price .d21-avail {
	background-color: #717A48;
	font-weight: 400;
}
.quickbooker #d21-quickbook #d21-selected-day-price > div {
	line-height: 1.5;
	text-align: center;
	border-radius: 0;
	color: #fff;
	height: 2em;
	font-size: 1em;
	padding: .25em .5em;
}
.quickbooker #d21-quickbook #d21-selected-day-price > div .d21-bigger {
	font-size: 1em;
}
.quickbooker .d21-input-icon {
	border: none;
	border-radius: 0;
	line-height: 1;
	padding: 0;
	height: calc(1.5em + 3px);
	background-color: #717A48;
}
.quickbooker #d21-quickbook .material-icons {
	font-size: 1em;
	display: flex;
	align-items: center;
	justify-content: center;
}
@media only screen and (min-width: 640px) {
	.site-service {
		right: 0;
	}
	.site-service-content a.service.service-tel:hover .service-tel-hover {
		display: block;
	}
	.site-service-content .lang {
		display: block;
	}
}
@media only screen and (min-width: 960px) {
	.quickbooker {
		top: 37.5px;
	}
}
@media only screen and (min-width: 1280px) {
	.quickbooker {
		top: 41.25px;
	}
}
/* ---------- Menü ---------- */
.main-navigation {
	position: fixed;
	max-height: 0;
	overflow: hidden;
	left: 0;
	right: 0;
	transition: all 0.2s ease-in-out;
	background-color: #CFE7E9;
	z-index: 1000;
	bottom: 0;
	top: calc(40px + 10em);
	overflow-x: hidden;
	overflow-y: auto;
}
body.isScrolled .main-navigation {
	top: calc(40px + 4em);
}
.main-navigation-inner {
	width: 100%;
	min-height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.main-navigation-content {
	padding: 2rem;
}
.main-navigation ul {
	display: flex;
	flex-direction: column;
	font-size: 1.5em;
	list-style: none;
	list-style-type: none;
}
.main-navigation li {
	border-bottom: 2px solid #72794B;
}
.main-navigation li:last-child {
	border-bottom: none;
}
.main-navigation a {
	padding: 20px;
	display: block;
	text-align: center;
	font-weight: 400;
	letter-spacing: .05em;
	text-transform: uppercase;
}
ul#menu-wpml {
	flex-direction: row;
	justify-content: center;
}
#menu-wpml li {
	border-bottom: none;
	border-left: 1px solid #72794B;
	border-right: 1px solid #72794B;
}
#menu-wpml li:first-child {
	border-left: none;
}
#menu-wpml li:last-child {
	border-right: none;
}
#menu-wpml a {
	padding: 0 20px;
	display: inline-block;
	font-weight: 400;
	letter-spacing: .05em;
	text-transform: uppercase;
}
.menu-2 {
	margin-top: 1rem;
}
body.navOpen .main-navigation {
	max-height: 9999px;
}
@media only screen and (min-width: 640px) {
	.main-navigation ul {
		font-size: 2em;
	}
	.menu-2 {
		display: none;
	}
}

/* ---------- Footer ---------- */
.site-footer {
	margin-top: auto;
	width: 100%;
	color: #fff;
	background-color: #9A877D;
}
.site-footer-inner {
	padding: 3rem 2rem;
}
.site-footer-content {
	margin: 0 auto;
	width: 100%;
	max-width: 1600px;
}
.site-footer a {
	text-decoration: none;
}
.site-footer ul,
.site-footer p {
	font-size: 1em;
}
.site-footer ul {
	list-style: none;
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
}
.site-footer .menu-footer-container {
}
.site-footer img {
	max-width: 10em;
	margin: 0 auto 0 0;
}

/* ---------- Back to Top ---------- */
#backToTop {
	position: fixed;
	bottom: -3em;
	right: 2rem;
	font-size: 1em;
	border: 3px solid #717A48;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.5em;
	text-align: center;
	display: block;
	border-radius: 50%;
	mix-blend-mode: multiply;
}
body.isScrolledFar #backToTop {
	bottom: 2rem;
}
#backToTop:hover {
}
@media only screen and (min-width: 640px) {
	body.isScrolledFar #backToTop {
	}
}
@media only screen and (min-width: 960px) {
	body.isScrolledFar #backToTop {
	}
}
@media only screen and (min-width: 1280px) {
	.body.isScrolledFar #backToTop {
	}
}

/* ---------- Struktur ---------- */
.site {
	display: flex;
	flex-direction: column;
}
.site-main {
	padding-top: calc(40px + 10em);
	transition: all 0.2s ease-in-out;
}
body.isScrolled .site-main {
	padding-top: calc(40px + 4em);
}
.site-main-inner {
	padding: 0 2rem 3rem 2rem;
}
.site-main-content {
	margin: 0 auto;
	width: 100%;
	max-width: 1600px;
}
section {
	margin-bottom: 3rem;
	width: 100%;
	opacity: 0;
	transition: all 1s ease-in-out;
}
.section-content {
	transition: all .6s ease-in-out;
}
section:first-child {
	margin-top: calc(3rem - 20px);
}
section:last-child {
	margin-bottom: 0;
}
section.isAboveViewport .section-content {
	transform: translateY(-10vh);
}
section.isUnderViewport .section-content {
	transform: translateY(10vh);
}
section.isVisible {
	opacity: 1;
}
section.isVisible .section-content {
	transform: translateY(0);
}
.row {
	display: flex;
	width: 100%;
	overflow: hidden;
}
.row-inner {
	display: flex;
	margin: -1rem;
	width: calc(100% + 2rem);
}
.modul-fixed .row-inner {
	display: flex;
	margin: -10px;
	width: calc(100% + 20px);
}
.row-content {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
}
.col {
	width: calc(100% - 2rem);
	padding: 1rem;
}
.modul-fixed .col {
	width: calc(100% - 20px);
	padding: 10px;
}
.col-s-0,
.modul-fixed .col-s-0 {
	display: none;
}
.col-s-1 {
	width: calc(25% - 2rem);
}
.modul-fixed .col-s-1 {
	width: calc(25% - 20px);
}
.col-s-2 {
	width: calc(50% - 2rem);
}
.modul-fixed .col-s-2 {
	width: calc(50% - 20px);
}
.col-s-3 {
	width: calc(75% - 2rem);
}
.modul-fixed .col-s-3 {
	width: calc(75% - 20px);
}
.col-s-4 {
	width: calc(100% - 2rem);
}
.modul-fixed .col-s-4 {
	width: calc(100% - 20px);
}
.col-inner {
	width: 100%;
	height: 100%;
}
.col-content {
	width: 100%;
	height: 100%;
	position: relative;
}
.col-spacer {
	display: none;
}	
.textbox ul, 
.textbox ol {
    padding-left: 1em;
}
.textbox ul {
	list-style-type: none;
	list-style: none;
}
.textbox ul li::before {
	content: '–';
	margin-left: -1em;
	width: 1em;
	display: inline-block;
	transform: translateY(-3px);
}
@media only screen and (min-width: 640px) {
	.row-inner {
		width: calc(100% + 3rem);
	}
	.col-s-0,
	.modul-fixed .col-s-0 {
		display: block;
	}
	.col-m-0,
	.modul-fixed .col-m-0 {
		display: none;
	}
	.col-m-1 {
		width: calc(25% - 2rem);
	}
	.col-m-2 {
		width: calc(50% - 2rem);
	}
	.col-m-3 {
		width: calc(75% - 2rem);
	}
	.col-m-4 {
		width: calc(100% - 2rem);
	}
	.modul-fixed .col-m-1 {
		width: calc(25% - 20px);
	}
	.modul-fixed .col-m-2 {
		width: calc(50% - 20px);
	}
	.modul-fixed .col-m-3 {
		width: calc(75% - 20px);
	}
	.modul-fixed .col-m-4 {
		width: calc(100% - 20px);
	}
}
@media only screen and (min-width: 960px) {
	.col-spacer {
		display: block;
	}
	.col-m-0,
	.modul-fixed .col-m-0 {
		display: block;
	}
	.col-l-0,
	.modul-fixed .col-l-0 {
		display: none;
	}
	.col-1,
	.col-l-1 {
		width: calc(12.5% - 2rem);
	}
	.col-2,
	.col-l-2 {
		width: calc(25% - 2rem);
	}
	.col-3,
	.col-l-3 {
		width: calc(37.5% - 2rem);
	}
	.col-4,
	.col-l-4 {
		width: calc(50% - 2rem);
	}
	.col-5,
	.col-l-5 {
		width: calc(62.5% - 2rem);
	}
	.col-6,
	.col-l-6 {
		width: calc(75% - 2rem);
	}
	.col-7,
	.col-l-7 {
		width: calc(87.5% - 2rem);
	}
	.col-8,
	.col-l-8 {
		width: calc(100% - 2rem);
	}
	.modul-fixed .col-1,
	.modul-fixed .col-l-1 {
		width: calc(12.5% - 20px);
	}
	.modul-fixed .col-2,
	.modul-fixed .col-l-2 {
		width: calc(25% - 20px);
	}
	.modul-fixed .col-3,
	.modul-fixed .col-l-3 {
		width: calc(37.5% - 20px);
	}
	.modul-fixed .col-4,
	.modul-fixed .col-l-4 {
		width: calc(50% - 20px);
	}
	.modul-fixed .col-5,
	.modul-fixed .col-l-5 {
		width: calc(62.5% - 20px);
	}
	.modul-fixed .col-6,
	.modul-fixed .col-l-6 {
		width: calc(75% - 2rem);
	}
	.modul-fixed .col-7,
	.modul-fixed .col-l-7 {
		width: calc(87.5% - 20px);
	}
	.modul-fixed .col-8,
	.modul-fixed .col-l-8 {
		width: calc(100% - 20px);
	}
}

/* ---------- Entry Header ---------- */
.entry-header-inner {
	margin-bottom: 3rem;
}
.entry-header-content img {
		object-fit: cover;
		height: 200px;
		min-height: 200px;
		max-height: 200px;
}
@media only screen and (min-width: 640px) {
	.entry-header-content img {
		height: 300px;
		min-height: 300px;
		max-height: 300px;
	}
}
@media only screen and (min-width: 960px) {
	.entry-header-content img {
		height: 400px;
		min-height: 400px;
		max-height: 400px;
	}
}

/* ---------- Modul Sektion ---------- */
.modul-sektion {
}
.modul-sektion .bildbox {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}
.modul-sektion .bildbox-inner {
	width: 100%;
	height: 100%;
}
.modul-sektion .bildbox-content {
	width: 100%;
	height: 100%;
}
.modul-sektion .bildbox img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.modul-sektion .textbox {
	width: 100%;
	height: 100%;
	position: relative;
}
.modul-sektion .textbox-inner {
	padding: 2rem;
	width: calc(100% - 4rem);
	height: calc(100% - 4rem);
}
.modul-sektion .textbox-content {
	width: 100%;
	height: 100%;
	overflow: hidden;
	min-height: calc(200px - 4rem);
}
.modul-sektion .textbox-center {
	display: flex;
	align-items: center;
	justify-content: center;
}
.modul-sektion .textbox-center p {
	margin: 0;
	text-align: center;
}
@media only screen and (min-width: 640px) {
	.modul-sektion .textbox-content {
		min-height: calc(300px - 4rem);
	}
}
@media only screen and (min-width: 960px) {
	.modul-sektion .textbox-content {
		min-height: calc(400px - 4rem);
	}
}

/* ---------- Modul Textbox + Sidebar ---------- */
.modul-texteditor-sidebar .textbox-padding .textbox-inner {
	padding: 2rem;
	width: calc(100% - 4rem);
}
.modul-texteditor-sidebar .textbox-background {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
}
.modul-texteditor-sidebar .textbox-background img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* ---------- Modul Googlemap ---------- */
.modul-googlemap .mapbox {
	height: 200px;
	min-height: 200px;
	max-height: 200px;
}
.modul-googlemap .mapbox iframe {
	width: 100%;
	height: 200px;
	min-height: 200px;
	max-height: 200px;
	border: none;
}
@media only screen and (min-width: 640px) {
	.modul-googlemap .mapbox {
		height: 300px;
		min-height: 300px;
		max-height: 300px;
	}
	.modul-googlemap .mapbox iframe {
		height: 300px;
		min-height: 300px;
		max-height: 300px;
	}
}
@media only screen and (min-width: 960px) {
	.modul-googlemap .mapbox {
		height: 400px;
		min-height: 400px;
		max-height: 400px;
	}
	.modul-googlemap .mapbox iframe {
		height: 400px;
		min-height: 400px;
		max-height: 400px;
	}
}

/* ---------- Modul Headline ---------- */
.modul-headline h2 {
	margin: 0;
	font-size: 1.5em;
	color: #E25B75;
	text-align: center;
}

/* ---------- Modul Zimmer ---------- */
.modul-zimmer {
	display: none;
}
.modul-zimmer.isActive {
	display: block;
}
.modul-zimmer h2 {
	margin: 0;
	color: #FF998A;
}
.modul-zimmer .col-zimmerheadline .textbox-content {
	display: flex;
	align-items: center;
}
.modul-zimmer h2 ~ a.button {
	margin-left: 1rem;
}
.modul-zimmer p {
	font-size: .8em;
	font-weight: 400;
	margin: 0;
}
.modul-zimmer p.preis {
	color: #E25B75;
	text-transform: uppercase;
}
.modul-zimmer .bildbox {
	width: 100%;
	height: 100%;
}
.modul-zimmer .bildbox-inner {
	width: 100%;
	height: 100%;
}
.modul-zimmer .bildbox-content {
	width: 100%;
	height: 100%;
}
.modul-zimmer .bildbox img {
	width: 100%;
	height: 200px;
	min-height: 200px;
	max-height: 200px;
	object-fit: cover;
}
.modul-zimmer .col-features {
	order: 3;
}
.modul-zimmer .col-features .textbox {
	width: 100%;
}
.modul-zimmer .col-features .textbox-inner {
	padding: 10px;
	width: calc(100% - 20px);
	height: calc(100% - 20px);
}
.modul-zimmer .col-features .textbox-content {
	width: 100%;
	height: 100%;
	overflow: hidden;
	display: flex;
	flex-direction: row;
	justify-content: center;
	text-align: center;
	align-items: center;
}
.modul-zimmer .col-features .textbox-content > div {
	margin: 10px;
	width: calc(25% - 20px);
}
.modul-zimmer .col-features img {
	display: block;
	margin: 0 auto;
	height: 50px;
	width: auto;
}
@media only screen and (min-width: 649px) {	
	.modul-zimmer .bildbox img {
		height: 300px;
		min-height: 300px;
		max-height: 300px;
	}
}
@media only screen and (min-width: 960px) {	
	.modul-zimmer .bildbox img {
		height: 400px;
		min-height: 400px;
		max-height: 400px;
	}
	.modul-zimmer .col-features .textbox {
		height: 400px;
		min-height: 400px;
		max-height: 400px;
	}
	.modul-zimmer .col-features {
		order: initial;
	}
	.modul-zimmer .col-features .textbox-content {
		flex-direction: column;
	}
	.modul-zimmer .col-features .textbox-content > div {
		width: calc(100% - 20px);
	}
	.modul-zimmer:nth-child(even) .col-bild-l {
		width: calc(25% - 20px);
	}
	.modul-zimmer:nth-child(even) .col-bild-r {
		width: calc(62.5% - 20px);
	}
}
/* ---------- Modul News Box ---------- */
.modul_news_box {
	background-color: #AFD7DB;
}
.modul_news_box .section-inner {
	padding: 2rem;
	width: calc(100% - 4rem);
}