*, :before, :after { -webkit-font-smoothing: antialiased; font-smoothing: antialiased; font-smooth: always; text-rendering: optimizeLegibility; outline: 0; box-sizing: border-box; }
#TraminoHeaderTiny, #TraminoHeaderTiny img.logo, #TraminoHeaderTiny a, .inlineeditors a { box-sizing: content-box; }


#body .maxwidth { width: auto; margin-left: .8rem; margin-right: .8rem; }
#body .maxwidthsmall { width: auto; margin-left: .8rem; margin-right: .8rem; }

#body .maxwidth-break-mobile { margin-left: 0px; margin-right: 0px; }
#body .maxwidthsmall-break-mobile { margin-left: 0px; margin-right: 0px; }


.TraminoVorlage { margin-top: 0 !important; margin-bottom: 2rem !important; }


ul.nostyling { list-style-type: none; margin: 0; padding: 0; }
ul.nostyling li { margin: 0; padding: 0; }

ul.nomargin { margin: 0; padding: 0; }
ul.nomargin li { margin: 0; padding: 0; }

.disable-scroll { overflow: hidden !important; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; position: fixed !important; left: 0; right: 0; }

.rte p { margin: 0 0 0.7rem 0; }


.placeholder-flex { position: relative; }
.placeholder-flex:before {
	display: block;
	content: "";
	width: 100%;
	padding-top: 50%;
}

.placeholder-flex > .inner {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}


.hyphens {
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}


table:not(.reserva-table-year,.reserva-table) {
	overflow-x: scroll;
	overflow-y: hidden;
	width: 100% !important;
	display: table;
}

iframe { border-width: 0; }

.print { display: none !important; }




body.hideTraminoElements :is(.inlineeditors,#TraminoHeaderTiny ) { display: none; }

@media (min-width: 356px) {
	#body .maxwidth { width: auto; margin-left: 1.1rem; margin-right: 1.1rem; }
	#body .maxwidthsmall { width: auto; margin-left: 1.1rem; margin-right: 1.1rem; }
	
}

@media (min-width: 567px) {
	#body .maxwidth { width: auto; margin-left: 1.3rem; margin-right: 1.3rem; }
	#body .maxwidthsmall { width: auto; margin-left: 1.3rem; margin-right: 1.3rem; }

	.maxwidth-break-mobile { margin-left:  1.3rem; margin-right:  1.3rem; }
	.maxwidthsmall-break-mobile { margin-left:  1.3rem; margin-right:  1.3rem; }
}

@media (min-width: 768px) {
	#body .maxwidth { width: auto; margin-left: 1.9rem; margin-right: 1.9rem; }
	#body .maxwidthsmall { width: auto; margin-left: 1.9rem; margin-right: 1.9rem; }

	.maxwidth-break-mobile { margin-left: 1.9rem; margin-right: 1.9rem; }
	.maxwidthsmall-break-mobile { margin-left: 1.9rem; margin-right: 1.9rem; }
}

@media (min-width: 1024px) {
	.maxwidth { width: 960px; margin-left: auto; margin-right: auto; }
	.maxwidthsmall { width: 900px; margin-left: auto; margin-right: auto; }

	.maxwidth-break-mobile { margin-left: auto; margin-right: auto; }
	.maxwidthsmall-break-mobile { margin-left: auto; margin-right: auto; }
}

@media (min-width: 1280px) {
	.maxwidth { width: 1240px; }

}

#body {
	background-color: #F6F6F6;
	/*
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 400;
	*/
	-moz-osx-font-smoothing: grayscale;
	color: #000;
}

#TraminoRubrik { min-height: 800px; }

.semibold { font-weight: 600; }
.black { font-weight: 900; }
.light { font-weight: 300; }


a { text-decoration: none; }

.text a { text-decoration: underline; }
.text a.btn { text-decoration: none; }
.text a.button { text-decoration: none; }

p em {
    font-style: italic;
}

picture { width: 100%; height: auto; }
picture img { width: 100%; height: auto; }


.radius { border-radius: 1.3rem; }
.radius_light { border-radius: 0.35rem; }

.boxshadow-down { box-shadow: 0 20px 30px -7px rgba(0,0,0,0.3); }


.collapsed { position: relative; padding-bottom: 2rem !important; overflow: hidden; }

.mobile_closing { max-height: 9999px; }
.collapsed .mobile_closing {
	max-height: 300px;
	overflow: hidden;
	transition: max-height 500ms;
}
ul.ownstyling li { position: relative; margin-bottom: 2px; }
ul.ownstyling li:before {
	position: absolute;
	top: 0.5em;
	left: -20px;
	display: inline-block;
	content: "";
	background-color: #AAA;
	width: 4px;
	height: 4px;
	border-radius: 50%;
}

ul.ownstyling li:hover:before {
	background-color: #bf163f;
	width: 5px;
	height: 5px;
	left: -21px;
} 



.collapsed .extra_shadow {
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 2rem;
	height: 50px;
	background: -moz-linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%);
	background: -webkit-linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%);
	background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%);
}

.expand { display: none; }
.collapsed .expand {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	cursor: pointer;
	padding: 1rem;
}

.collapsed .expand:after {
	display: block;
	content: "";
	width: 50%;
	height: 6px;
	border-radius: 20px;
	margin: 0 auto;
	background-color: rgba(128,128,128,0.5);
}

.collapsed .expand:before {
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: 'traminoicon' !important;
	content: "\e958";
	position: absolute;
	top: 9%;
	left: 50%;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	margin: 0 auto;
	background-color: rgba(255,255,255,1);
	border: 1px solid rgba(128,128,128,0.5);;
	transform: translate(-50%, 0%);
}


#bg_image {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: -2;
}

#bg_image:before {
	display: block;
	content: " ";
	width: 100%;
	padding-top: 56.265%;
}
#bg_image > .inner {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

#bg_image > .inner img {
	width: 100%;
	height: auto;
}

#bg_image > .inner > .gradient {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: -moz-linear-gradient(180deg, rgba(246,246,246,0) 0%, rgba(246,246,246,1) 90%);
	background: -webkit-linear-gradient(180deg, rgba(246,246,246,0) 0%, rgba(246,246,246,1) 90%);
	background: linear-gradient(180deg, rgba(246,246,246,0) 0%, rgba(246,246,246,1) 90%);
}

#bg_image > .inner > .gradient1 { height: 50%; opacity: 0.5; }
#bg_image > .inner > .gradient2 { height: 100%; }



#TraminoInhalt > div { position: relative; }
.TraminoBookmark {
	position: absolute;
	top: 0;
	right: 0rem;
	display: flex;
	font-size: 15px;
	justify-content: center;
	align-items: center;
	color: #FFF;
	padding: 0.25rem 0.6rem;
    cursor: pointer;
    transform: rotate(270deg);
    transform-origin: bottom right;
    background-color: rgba(0,0,0,0.6);
}

.TraminoBookmark i {
	margin-right: 0.5rem;
	font-size: 1rem;
}

.TraminoBookmark:hover { color: #000; border-color: #000; }

.TraminoBookmark { border-top: 1px dashed #CCC; background-color: #bf163f; color: #FFF; z-index: 4; }
.TraminoBookmark:hover { border-top: 1px dashed #CCC; background-color: #bf163f; color: #FFF; }

html .rte h1 { font-size: 1.3rem; font-weight: bold; }
html .rte h2 { font-size: 1.2rem; font-weight: bold; }
html .rte h3 { font-size: 1.1rem; font-weight: bold; }
html .rte h4 { font-size: 1.05rem; font-weight: bold; }

/* Elemente: Feuer, Erde, Wasser Luft */
:root {
	--color_feuer: #d5b400;
	--color_erde: #9bba7b;
	--color_wasser: #7dc5df;
	--color_luft: #606e7e;
}

.naturelemente.naturelemente_feuer .color { color: var(--color_feuer) !important; }
.naturelemente.naturelemente_erde .color { color: var(--color_erde) !important; }
.naturelemente.naturelemente_wasser .color { color: var(--color_wasser) !important; }
.naturelemente.naturelemente_luft .color { color: var(--color_luft) !important; }

.naturelemente.naturelemente_feuer .button { background-color: var(--color_feuer) !important; border-color: var(--color_feuer) !important; }
.naturelemente.naturelemente_erde .button { background-color: var(--color_erde) !important; border-color: var(--color_erde) !important; }
.naturelemente.naturelemente_wasser .button { background-color: var(--color_wasser) !important; border-color: var(--color_wasser) !important; }
.naturelemente.naturelemente_luft .button { background-color: var(--color_luft) !important; border-color: var(--color_luft) !important; }

.naturelemente .ne {
	width: 4rem;
}

.naturelemente .ne.shadow img {
	-webkit-filter: drop-shadow(0px 0px 1.5rem rgba(0,0,0,0.5));
	filter: drop-shadow(0px 0px 1.5rem rgba(0,0,0,0.5));
}

.naturelemente .ne.shadow.no_mobile_shadow img {
	-webkit-filter: none;
	filter: none;
}

/* Baustein Dokumente */

body .T2887 .wrapper { max-width: none; }

/* Newsletter Archiv */

.T513 .newsletter {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.T513 .newsletter h2 {
	width: 100%;
}

.T513 .newsletter .nl {
	width: 100%;
	border-bottom-width: 0;
	background-color: rgba(255,255,255,0.9);
	padding: 1rem 1.1rem;
	margin-bottom: 1.2rem;
}

.T513 .newsletter .nl * {
	width: auto !important;
	float: none !important;
}

.T513 .newsletter .nl .datum { color: #888; font-size: 0.8rem; }
.T513 .newsletter .nl .name {
	font-size: 1.3rem;
}

/* Zweispalter */
.T2835 .col > .specialfont {
	margin-bottom: 0.35rem;
}

.T2812.nomargin a.c3 {
	margin-bottom: 1rem;
}

@media (min-width: 768px) {
	.T2835 .col > .specialfont {
		margin-bottom: 0.65rem;
	}
}

/* IBE */

.T2812 aside .tags .group h4 { font-weight: bold !important; }

#ibe-container .result-box .text h2 { font-weight: bold !important; }

#ibe-container .results-list .result-box .item .info .price { font-size: 6.5vw !important; }
#ibe-container .results-list .result-box .item .info .price .currency { font-size: 0.8em !important; }
.T2812 .result-box .item .info .price {
	font-style: normal;
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: bold;
	letter-spacing: -0.095rem
}

.T2812 .button {
	border-radius: 0;
	border-color: transparent;
}

@media (min-width: 599px) {
	#ibe-container .results-list .result-box .item .info .price { font-size: 3.8vw !important; }
}

@media (min-width: 999px) {
	#ibe-container .results-list .result-box .item .info .price { font-size: 2.8vw !important; }
}

@media (min-width: 1589px) {
	#ibe-container .results-list .result-box .item .info .price { font-size: 1.9vw !important; }
}



.T2646 aside {
	top: 330px !important;
}

.T2646 .header .text h1 { font-weight: bold !important; }
.T2646 aside .group h4 { font-weight: bold !important; }
.T2646 .booking .class .info h4 { font-weight: bold !important; }
.T2646 .booking .class .info h2 { font-weight: bold !important; }

.T2646 .button {
	border-radius: 0;
	border-color: transparent;
}

.T2886 .button {
	border-radius: 0;
	border-color: transparent;
}

@media (max-width: 567px) {
	.T2646 { padding-right: 0px !important; }
	.T2862 .specialfont.fontsize_xlarge { font-size: 1.5rem !important; }
}



#sorgsam {
	position: fixed;
	left: 0.5rem;
	bottom: 1.8rem;
	z-index: 99;
	
}

#sorgsam {
	position: fixed;
	left: 0.5rem;
	bottom: 1.8rem;
	z-index: 99;
	
}

.Rubrik_124482 #sorgsam { display: none; }

#sorgsam .image_wrapper {
	width: 4rem;
	height: 4rem;
	background-color: #FFF;
	border-radius: 50%;
	overflow: hidden;
	padding: 0.1rem;
	box-shadow: 0 .6rem 2rem -.03rem rgba(0,0,0,0.3);
}

#sorgsam a { 
	width: 100%; height: auto; display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column; 
}
#sorgsam img { width: 100%; height: auto; padding: 4px 0 0 3px;  }
#sorgsam span {
	display: inline-block;
	font-weight: bold;
	background-color: #a91c1d;
	color: #FFF;
	border-radius: 1rem;
	font-size: 0.7rem;
	padding: 0.1rem 0.3rem;
	text-align: center;
	white-space: nowrap;
}

#sorgsam.mission_ok span { background-color: #85b9d1; }
#sorgsam.mission_ok img { padding: 0; }

body .ql-indent-1 { padding-left: 0px !important; margin-bottom: 0.5em !important; }




.inputdiv { position: relative; width: 150px; float: left; }
.inputdiv input { border: 1px solid #000; width: 150px; font-size: 16px; padding: 5px 3px; }
.inputdiv i { position: absolute; top: 50%; right: 10px; transform: translate(0,-50%); color: #000; font-size: 15px; line-height: 1; }


 .inputdiv-light input { border-color: #bf163f; color: #bf163f; }

.ui-datepicker-div { max-width: 232px; }

.ui-widget-header { color: #333; }

.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover {
	background-color: #bf163f;
	border-color: #bf163f;
	color: #FFF;
}

.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
	background-color: #F0DFDF;
	border-color: #F0DFDF;
	color: #bf163f;
}
@media (min-width: 356px) {
/*	html { font-size: 16px; }*/
	
}

@media (min-width: 567px) {
/*	html { font-size: 17px; }*/

	#sorgsam {
		left: 1rem;
		bottom: 1rem;
	}

	#sorgsam .image_wrapper {
		width: 4.75rem;
		height: 4.75rem;
	}

	.naturelemente .ne {
		width: 5rem;
	}

	.naturelemente .ne.shadow.no_mobile_shadow img {
		-webkit-filter: drop-shadow(0px 0px 1.5rem rgba(0,0,0,0.5));
		filter: drop-shadow(0px 0px 1.5rem rgba(0,0,0,0.5));
	}
}

@media (min-width: 768px) {
/*	html { font-size: 18px; }*/

	.collapsed .expand { display: none; }

	.TraminoVorlage { position: relative; }
	.TraminoBookmark { transform-origin: top right; top: 40px; transition: height 250ms; }
	.TraminoBookmark:hover { background-color: #b5163f; color: #FFF; height: 35px; }
}

@media (min-width: 1024px) {
/*	html { font-size: 19px; }*/

	.T513 .newsletter .nl {
		width: 48%;
	}

	#body .maxwidth { max-width: 1240px; }
	#body .maxwidthsmall { max-width: 1240px; }
	
}

@media (min-width: 1214px) {
	#body .maxwidth { margin-left: auto; margin-right: auto; }
	#body .maxwidthsmall { margin-left: auto; margin-right: auto; }
}

@media (min-width: 1280px) {
	

}

	
@media (min-width: 1700px) {

	#page { max-width: 1700px; margin: 0 auto; }
	#body .maxwidth { width: 1240px; margin-left: auto; margin-right: auto; }
	#body .maxwidthsmall { width: 1240px; margin-left: auto; margin-right: auto; }

	#sorgsam {
		left: 3rem;
		bottom: 3rem;
	}


}

body {
	--bgcolor-button: #3A606E;
}

.color { color: #3A606E; }
.rte a { color: #3A606E; text-decoration: underline; }

.text a:not(.button) { color: #3A606E; }
.bgcolor { background-color: #3A606E; color: #FFFFFF; }
.bordercolor { border-color: #3A606E; }


body .button, body .textile .button {
	cursor: pointer;
	background-color: #3A606E;
	border: 1px solid #3A606E;
	color: #FFFFFF;
	padding: 0.4rem 1rem;
	border-radius: 2rem;
	text-decoration: none;
}

body .button.small, body .textile .button.small { font-size: 0.9rem }

body .button:hover, body .textile .button:hover {
	background-color: #129BC8;
}

body .button.light {
	background-color: transparent;
	color: #30637e;
}

body .button.light:hover {
	background-color: transparent;
	color: #129BC8;
	border-color: #129BC8;
}

body .button.light.active {
	background-color: #3A606E;
	border: 1px solid #3A606E;
	color: #FFFFFF;
}

/* Trennbaustein Linie */
.T4681 .bordercolor:before { background: #3A606E !important; }body.S8048 {
	--bgcolor-button: #586056;
}
body.S8048 .color { color: #586056; }
body.S8048 .rte a { color: #586056; text-decoration: underline; }

body.S8048 .text a:not(.button) { color: #586056; }
body.S8048 .bgcolor { background-color: #586056; color: #FFFFFF; }
body.S8048 .bordercolor { border-color: #586056; }


body.S8048 .button, body.S8048 .textile .button {
	cursor: pointer;
	background-color: #586056;
	border: 1px solid #586056;
	color: #FFFFFF;
	padding: 0.4rem 1rem;
	border-radius: 2rem;
	text-decoration: none;
}

body.S8048 .button:hover, body.S8048 .textile .button:hover {
	background-color: #44733E;
}

body.S8048 .button.light {
	background-color: transparent;
	color: #586056;
}

body.S8048 .button.light:hover {
	background-color: transparent;
	color: #44733E;
	border-color: #44733E;
}

body.S8048 .button.light.active {
	background-color: #586056;
	border: 1px solid #586056;
	color: #FFFFFF;
}

/* Trennbaustein Linie */
body.S8048 .T4681 .bordercolor:before { background: #586056 !important; }@media (min-width: 1700px) {

	#body.S8049 #page { max-width: none; margin: 0 auto; }
	#body.S8049 .maxwidth { width: auto; margin-left: auto; margin-right: auto; }
	#body.S8049 .maxwidthsmall { width: auto; margin-left: auto; margin-right: auto; }
}

@media print {

	#body { background-color: #FFF; }

	.print { display: block !important; }
	.noprint { display: none !important; }

	#leftmenu, #rightmenu { display: none; }

	header .bar .logo_wrapper { margin: 0 auto; }

	header .bar .infos, header .bar .infos .item:after, header .bar .infos i { display: none; }

	#breadcrumb { display: none; }
	#sorgsam { display: none; }
	#bg_image, #bg_image .inner { display: none; }
	footer { display: none; }

	/*a:after { content: "( " attr(href) ") ";}*/
}