.frame-type-teasermenu_pi1 header { padding-bottom: 16px; }

.frame-type-teasermenu_pi1.frame-layout-1 {
	max-width: 1440px;
}

.tm-category-menu {
	display: block;
	text-align: center;
	padding: 40px 20px;
}
a.tm-category,
a.tm-reset-filter {
	display: inline-block;
	line-height: 20px;
	text-decoration: none;
	border: solid 1px var(--text-color);
	color: var(--vtext-color);
	background: #fff;
	padding: 10px 14px;
	margin-right: 4px;
	margin-bottom: 4px;
	font-size: 16px;
	font-weight: 500;
	cursor: pointer;
}
a.tm-category.active {
	background: var(--text-color);
	color: #fff;
}
a.tm-reset-filter {
	display: none;
	border: solid 1px var(--text-color);
	background: var(--text-color);
	color: #fff;
	opacity: 0.5;
	margin: 0;
}
a.tm-reset-filter.active {
	display: inline-block;
}
.tm-category-menu a:hover {
	color: var(--text-color);
	background: #eee;
	border-color: var(--text-color);
}

/* one-col (Standard) */

div.onecol-teasermenu {
	width: 100%;
	padding: 20px 0;
	border-top: 2px solid #e4e4e4;
	background-position: left bottom;
	background-repeat: no-repeat;
}
div.onecol-teasermenu:first-child { border-top: none; }

div.onecol-teasermenu h3 {
	padding-top: 0;
}

div.onecol-teasermenu h3 span.room-size, div.onecol-teasermenu h3 span.package-price {
	font-weight: normal !important;
	display: inline-block;
	float: right;
	text-transform: none;
}

div.onecol-teasermenu p.package-price {
	font-weight: 650;
	color: var(--vier-gruen);
}
div.onecol-teasermenu p.package-price:empty { display: none; }

div.onecol-teasermenu-image {
	width: 32%;
	float: left;
}

div.onecol-teasermenu-image img {
	display: block;
	max-width: 100%;
	height: auto;
}

div.onecol-teasermenu-text {
	width: 66%;
	float: right;
	font-size: 1.1em;
}
div.onecol-teasermenu-text p { line-height: 1.6em; }

div.onecol-teasermenu-details { min-height: 85px; }

div.onecol-teasermenu span.button-left { display: block; float: left; }
div.onecol-teasermenu span.button-right { display: block; float: right; margin-left: 20px; }
p.onecol-teasermenu-buttons a.button-style { margin: 0; }

div.onecol-teasermenu-eventdetails { width: 32%; float: left; }


/* one-col (Alternative) */

.octm2-wrap {
	padding: 40px 0;
}
.octm2 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: center;
	align-items: stretch;
	justify-content: space-between;
	margin: 40px 0 0 0;
	background: var(--hsl-creme);
}
.octm2-wrap .octm2:first-child {
	margin-top: 0;
}
.octm2-image {
	flex-basis: 40%;
}
.octm2-text {
	flex-basis: 60%;
}
.octm2 h3 {
	padding-top: 0;
}
.octm2-image {
	background-size: cover;
	background-position: center center;
}
.octm2-image img {
	display: block;
	max-width: 100%;
	height: auto;
}

.octm2-text {
	padding: 40px;
}
.octm2 p { line-height: 1.6em; }

.octm2 p.package-price {
	font-size: 1.4em;
}


/* multi-col */

.mctm1-wrap {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr; 
	gap: 20px;
}
.mctm1 {
	position: relative;
	text-align: center;
	color: var(--text-color);
	/* fuer den Filter */
    opacity: 1;
    height: auto;
    transition: opacity 0.5s ease, height 0.5s ease;
}
.mctm1.hidden {
    opacity: 0;
    height: 0;
    overflow: hidden;
    transition: opacity 0.5s ease, height 0.5s ease;
    margin: 0;
    padding: 0;
    pointer-events: none;
	order: 999;
}
.mctm1 a {
	text-decoration: none;
	position: static;
	color: var(--text-color);
}
.mctm1 h3 {
	color: var(--text-color);
	padding: 10px 0;
	hyphens: auto;
}
.mctm1-image {
	width: 100%;
	float: none;
	position: relative;
}
.mctm1-image img {
	display: block;
	width: 100%;
	height: auto;
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	-ms-transition: 0.2s ease;
	transition: 0.2s ease;
}
/*
div.multicol-teasermenu-image { overflow: hidden; }
div.multicol-teasermenu:hover div.multicol-teasermenu-image img {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);
}
*/
.mctm1 ul.tm-t-cat {
	display: block;
	list-style: none;
	position: absolute;
	top: 40px;
	left: 0;
}
.mctm1 ul.tm-t-cat li {
	display: block;
	padding-bottom: 10px;
	text-align: left;
}
.mctm1 ul.tm-t-cat li span {
	display: inline-block;
	background: var(--gbh-gruen);
	padding: 5px 10px;
	color: #fff;
	font-weight: 500;
}
.tm-blue ul.tm-t-cat li span {
	color: var(--text-color);
	background-color: var(--hsl-blau);
}
.tm-yellow ul.tm-t-cat li span {
	color: var(--text-color);
	background-color: var(--hsl-gelb);
}


.mctm1-text {
	display: block;
	position: relative;
	text-align: left;
	padding: 10px 20px;
}

.mctm1-button {
	display: inline-block;
	max-width: 100%;
	background: var(--gbh-gruen);
	border: 2px solid var(--gbh-gruen);
	padding: 12px 30px;
	margin: 20px 0 0 0;
	font-family: 'xeye_sans', Arial, Helvetica, sans-serif;
	color: #fff;
	font-size: 18px;
	line-height: 22px;
	font-weight: 500;
	text-decoration: none;
	cursor: pointer;
	position: relative;
	border-radius: 10px;
	
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	-ms-transition: 0.2s ease;
	transition: 0.2s ease;
}
/*
.mctm1:hover .mctm1-button {
	background: transparent;
	border-color: var(--gbh-gruen);
	color: var(--gbh-gruen);
}
*/
.tm-blue .mctm1-button {
	color: var(--text-color);
	background-color: var(--hsl-blau);
	border-color: var(--hsl-blau);
}
/*
.tm-blue .mctm1:hover .mctm1-button {
	background: transparent;
	border-color: var(--text-color);
	color: var(--text-color);
}
*/
.tm-yellow .mctm1-button {
	color: var(--text-color);
	background-color: var(--hsl-gelb);
	border-color: var(--hsl-gelb);
}
/*
.tm-yellow .mctm1:hover .mctm1-button {
	background: transparent;
	border-color: var(--text-color);
	color: var(--text-color);
}
*/
.mctm1:hover .mctm1-button {
	background: var(--gbh-dunkelgruen);
	border-color: var(--gbh-dunkelgruen);
	color: #fff;
}

.mctm1-pricelabel {
	display: inline-block;
	font-size: 1.4em;
	padding: 20px;
	font-weight: normal;
	font-family: 'xeye_sans', Arial, Helvetica, sans-serif;
}



/* multi-col */

.mctm2-wrap {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr; 
	gap: 20px;
}
.mctm2 {
	position: relative;
	text-align: center;
	background: var(--eisen-gruen);
	color: #fff;
	/* fuer den Filter */
    opacity: 1;
    height: auto;
    transition: opacity 0.5s ease, height 0.5s ease;
}
.mctm2:after {
	display: block;
	width: 100%;
	padding-top: 100px;
	content: '';
}
.mctm2.hidden {
    opacity: 0;
    height: 0;
    overflow: hidden;
    transition: opacity 0.5s ease, height 0.5s ease;
    margin: 0;
    padding: 0;
    pointer-events: none;
	order: 999;
}
.mctm2 a {
	text-decoration: none;
	position: static;
	color: #fff;
}
.mctm2 h3 {
	color: #fff;
	padding: 20px 20px 0 20px;
}
.mctm2-image {
	width: 100%;
	float: none;
	position: relative;
}
.mctm2-image img {
	display: block;
	width: 100%;
	height: auto;
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	-ms-transition: 0.2s ease;
	transition: 0.2s ease;
}
/*
div.multicol-teasermenu-image { overflow: hidden; }
div.multicol-teasermenu:hover div.multicol-teasermenu-image img {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);
}
*/
.mctm2-text {
	font-size: 0.9em;
	display: block;
	position: relative;
	text-align: center;
	padding: 10px 20px;
}

.mctm2-button {
	display: block;
	width: 100%;
	text-align: center;
	position: absolute;
	left: 0;
	bottom: 40px;
}

.mctm2-pricelabel {
	display: inline-block;
	font-size: 1.6em;
	padding: 20px;
	color: #fff;
	font-weight: normal;
	font-family: 'xeye_sans', Arial, Helvetica, sans-serif;
	background: var(--eisen-rot);
	position: absolute;
	left: 0;
	top: 40px;
}

.mctm2 span.package-icon-valid,
.mctm2 span.package-icon-nights,
.mctm2 span.package-icon-price {
	color: var(--bhs-gold);
}


/* multi-col */

.mctm3-wrap {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr; 
	gap: 20px;
}
.mctm3 {
	position: relative;
	text-align: left;
	background: var(--eisen-rot);
	color: #fff;
	/* fuer den Filter */
    opacity: 1;
    height: auto;
    transition: opacity 0.5s ease, height 0.5s ease;
}
.mctm3.mctm3-smaragd {
	background: var(--eisen-smaragd);
}
.mctm3:after {
	display: block;
	width: 100%;
	padding-top: 80px;
	content: '';
}
.mctm3.hidden {
    opacity: 0;
    height: 0;
    overflow: hidden;
    transition: opacity 0.5s ease, height 0.5s ease;
    margin: 0;
    padding: 0;
    pointer-events: none;
	order: 999;
}
.mctm3 a {
	text-decoration: none;
	position: static;
	color: #fff;
}
.mctm3 h3 {
	color: #fff;
	padding: 0 20px;
}
.mctm3-image {
	width: 100%;
	float: none;
	position: relative;
	overflow: hidden;
}
.mctm3-image:after {
	display: block;
	content: '';
	width: 100%;
	padding-top: 90%;
}
.mctm3-image img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 50%;
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	-ms-transition: 0.2s ease;
	transition: 0.2s ease;
	position: absolute;
	right: -10%;
	top: -20%;
}
/*
.mctm3-wrap .mctm3:nth-child(2) .mctm3-image img {
	right: 0;
	top: -10%;
}
.mctm3-wrap .mctm3:nth-child(3) .mctm3-image img {
	right: auto;
	left: -10%;
	top: -20%;
}
*/
/*
div.multicol-teasermenu-image { overflow: hidden; }
div.multicol-teasermenu:hover div.multicol-teasermenu-image img {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);
}
*/
.mctm3-text {
	font-size: 0.9em;
	display: block;
	position: relative;
	padding: 10px 20px;
}

.mctm3-button {
	display: block;
	position: absolute;
	right: 20px;
	bottom: 20px;
	text-align: right;
}

.mctm3-pricelabel {
	display: inline-block;
	font-size: 1.4em;
	padding: 20px;
	color: #fff;
	font-weight: normal;
	font-family: 'xeye_sans', Arial, Helvetica, sans-serif;
	position: absolute;
	left: 0;
	bottom: 0;
}



div.multicol-teasermenu.no-text { background: transparent; } 
div.multicol-teasermenu.no-text div.multicol-teasermenu-text { border-bottom: 2px solid #eee; padding: 10px 20px; text-align: center; } 



div.multicol-teasermenu-wrap.two-cols {
	row-gap: 57px;
}
div.multicol-teasermenu.two-cols {
	flex-basis: 47.5%;
	background: var(--vier-gruen);
	padding-bottom: 86px;
}
div.multicol-teasermenu.two-cols a {
	display: block;
}
div.multicol-teasermenu.two-cols .multicol-teasermenu-text,
div.multicol-teasermenu.two-cols h3 {
	color: #fff;
}
div.multicol-teasermenu.two-cols h3 {
	padding-top: 40px;
}
div.multicol-teasermenu.two-cols .multicol-teasermenu-text {
	max-width: 420px;
	margin-left: auto;
	margin-right: auto;
}
div.multicol-teasermenu.two-cols:after {
	display: none;
}
div.multicol-teasermenu.two-cols .multicol-teasermenu-button {
	position: absolute;
	left: 0;
	bottom: 40px;
	width: 100%;
}
div.multicol-teasermenu.two-cols.hidden {
    margin: 0;
    padding: 0;
}


div.multicol-teasermenu.two-cols .multi-col-pricelabel {
	display: inline-block;
	background: var(--vier-hellgruen);
	color: var(--vier-gruen);
}








/* multi-col */

.multicol-teaser-wrap {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	max-width: 1520px;
	margin-left: auto;
	margin-right: auto;
}
.multicol-teaser-wrap:after {
	content: '';
	flex-basis: 33.333%;
	height: 0;
}
.multicol-teaser {
	flex-basis: 33.333%;
	margin: 0;
	position: relative;
	text-align: center;
	perspective: 1000px;
}
.multicol-teaser-inner {
	width: 100%;
	height: 100%;
	text-align: center;
	transition: transform 0.8s;
	transform-style: preserve-3d;
	padding: 80px;
	position: relative;
}
.multicol-teaser-front:before,
.multicol-teaser-back:before {
	display: block;
	content: '';
	position: absolute;
	top: 40px;
	right: 40px;
	bottom: 40px;
	left: 40px;
	background: transparent;
	border: 1px solid var(--vier-gruen);
}
.multicol-teaser-back:before {
	border-color: var(--vier-blau);
}
.multicol-teaser-front, .multicol-teaser-back {
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.multicol-teaser-back {
	position: absolute;
	left: 0;
	top: 0;
	background: var(--vier-gelb);
	color: var(--vier-blau);
	display: flex;
	align-items: stretch;
	justify-content: center;
}
.multicol-teaser-back {
	transform: rotateY(180deg);
	font-size: 1.4em;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}
.multicol-teaser-back > div {
	display: block;
	width: 100%;
	position: absolute;
	left: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);	
}
div.multicol-teaser a {
	text-decoration: none;
	position: static;
}
div.multicol-teaser h3 {
	display: inline-block;
	color: var(--vier-gruen);
	font-family: 'xeye_script', 'Times New Roman', Georgia, Serif;
	font-weight: normal;
	font-size: 30px;
	line-height: 40px;
	padding: 0 0 10px 0;
	position: relative;
}
div.multicol-teaser-image {
	width: 100%;
	float: none;
	position: relative;
}
div.multicol-teaser-image img {
	display: block;
	width: 100%;
	height: auto;
}
div.multicol-teaser-text {
	font-size: 0.9em;
	display: block;
	position: relative;
	text-align: center;
	padding: 10px;
}



/* one Level up / back to List */

a.back-to-list {
	display: block;
	width: 80%;
	color: #555555;
	text-decoration: underline;
	font-size: 1em;
	line-height: 3em;
	padding: 50px 10px 10px 10px;
}


@media only screen and (min-width: 1200px) {

	.multicol-teaser:hover .multicol-teaser-inner {
		transform: rotateY(180deg);
	}

}

@media only screen and (max-width: 1199px) {

	/* multi-col */


	.multicol-teaser-inner {
		padding: 40px;
	}
	.multicol-teaser-front:before {
		top: 20px;
		right: 20px;
		bottom: 20px;
		left: 20px;
	}
	.multicol-teaser-back {
		display: none
	}
	
}

@media only screen and (max-width: 959px) {

	div.onecol-teasermenu-details { min-height: 0px; }
	div.mctm1-wrap, div.mctm2-wrap, div.mctm3-wrap { grid-template-columns: 1fr 1fr; }

}


@media only screen and (max-width: 639px) {
	
	/* multi-col */
	
	div.mctm1-wrap, div.mctm2-wrap, div.mctm3-wrap { grid-template-columns: 1fr; }
	
	div.onecol-teasermenu, div.onecol-teasermenu-image, div.onecol-teasermenu-text { width: 100%; float: none; }
	div.onecol-teasermenu-image { margin-bottom: 10px; }
	div.onecol-teasermenu-image img { width: 100% !important; }
	div.onecol-teasermenu-menu span.button-left, div.onecol-teasermenu-menu span.button-right { float: left; margin: 0 10px 0 0; }
	
	.onecol-tm-image, .onecol-tm-text { flex-basis: 100%; }
	div.onecol-tm-text { padding: 20px 0; }
	
	.octm2-image, .octm2-text { flex-basis: 100%; }
	.octm2-image:after {
		display: block;
		content: '';
		width: 100%;
		padding-top: 75%;
	}
	
}


@media only screen and (max-width: 479px) {

	a.tm-category,
	a.tm-reset-filter.active {
		display: block;
		text-align: center;
		margin-right: 0;
	}

}
