body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}
.content-slider{overflow:hidden;visibility:hidden;position:relative}.slider-wrapper{overflow:hidden;position:relative}.slider-wrapper>*{float:left;width:100%;position:relative}.slider-control{height:30px;position:relative}.slider-control a,.slider-control .slider-menu{position:absolute;top:9px;display:inline-block}.slider-control .slider-prev{left:0}.slider-control .slider-next{right:0}.slider-control .slider-menu{top:0;width:50%;left:50%;margin-left:-25%;font-size:27px;text-align:center}.slider-control .slider-menu b{color:#bbb;cursor:pointer}.slider-control .slider-menu b.active{color:#666}
html {
	height: 100%;
	overflow-y: scroll;
}

body {
	background: url("/files/img/layout/background.png") repeat;
	font: 1rem Tahoma, Arial, Helvetica, sans-serif;
	height: 100%;
}

#wrapper {
	background: #fff;
	box-shadow: 6px 0 4px -4px #ccc, -6px 0 4px -4px #ccc;
	max-width: 1060px;
	min-height: 100%;
	margin: 0 auto;
}

h1 {
	margin: 0;
}

h1 a {
	display: block;
}

h2,
h3 {
	color: #000;
	font-size: .88rem;
	font-weight: normal;
	text-transform: uppercase;
	padding-bottom: 2px;
	border-bottom: 1px solid #eee;
}

h4 {
	color: #666;
	font-size: .75rem;
}

p {
	color: #666;
	font-size: .8rem;
	line-height: 1.5
}

table {
	border-collapse: collapse;
	min-width: 550px;
}

th,
td {
	border: 1px solid #888;
	border-collapse: collapse;
	color: #666;
	font-size: .8rem;
	padding: 5px;
}

td ~ td {
	text-align: center;
}

.flexbox {
	display: flex;
}

.block {
	overflow: visible; /* Contao sets the value to "hidden" but this clips the dropdown menu */
}

.logo {
	padding: 3px 40px 5px;
	border-bottom: 2px solid #f2980a;
}

.header_navigation,
.mod_article {
	padding: 0 40px;
}

.header_navigation .level_1 {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	padding: 0;
}

.header_navigation .level_1 > li {
	display: flex;
	color: #999;
	background: url(/files/img/layout/menu_divider.gif) no-repeat right;
	border-bottom: 1px solid #fff;
}

.header_navigation .level_1 > li.submenu {
	position: relative;
}

.header_navigation .level_1 > li:last-child {
	background: none;
}

.header_navigation .level_1 > li.active,
.header_navigation .level_1 > li:hover {
	border-bottom: 1px solid #f2980a;
}

.header_navigation .level_1 > li > a,
.header_navigation .level_1 > li > strong {
	font-size: .95rem;
	font-weight: normal;
	padding: 2px 20px 10px;
}

.header_navigation a {
	color: #333;
	text-decoration: none;
}

.header_navigation .level_2 {
	list-style: none;
	position: absolute;
	left: -9999rem;
	top: 0;
	z-index: 1;
	opacity: 0;
	transition: opacity 1s 1s;
	margin-left: -25px;
}

.header_navigation .submenu:hover .level_2,
.header_navigation a.submenu:focus + ul.level_2,
.header_navigation a.submenu:active + ul.level_2,
.header_navigation a.submenu + ul.level_2:focus-within {
   opacity: 1;
   left: 0;
   top: 1.8rem;
   transition-delay: 0s;
}

.header_navigation .level_2 li {
	background: #fff;
	border: 1px solid #ededed;
	border-bottom: none;
}

.header_navigation .level_2 li:last-child {
	border-bottom: 1px solid #ededed;
}

.header_navigation .level_2 a,
.header_navigation .level_2 strong {
	display: block;
	font-size: .75rem;
	white-space: nowrap;
	min-width: 10rem;
	padding: 10px;
}

/* Slider */

.content-slider {
	text-align: center;
}

.slider-next,
.slider-prev {
	color: #888;
	font-size: .8rem;
	letter-spacing: 2px;
	text-decoration: none;
	text-transform: uppercase;
	text-shadow: 2px 2px 2px #ccc;
}
	
/* Gallerie */
.content-gallery > ul {
	text-align: center;
}

.content-gallery > ul > li {
	display: inline-block;
	float: none;
}

/* Footer Navigation + Sprachwechsler */
.footer_content {
	background-color: #f2f2f2;
	justify-content: space-between;
}

@media (max-width:606px) {
	.footer_content {
		align-items: center;
		flex-direction: column;
	}
	
	.footer_content .level_1 {
		padding: 0;
		margin-right: 0;
	}
}

.footer_navigation ul {
	display: flex;
}

.footer_navigation li {
	display: flex;
	border-right: 1px solid #555;
}

.footer_navigation a,
.footer_navigation strong {
	color: #888;
	font-size: .75rem;
	font-weight: normal;
	text-decoration: none;
	padding: 2px 12px;
}

.footer_navigation li:last-child {
	border: none;
}

.footer_navigation strong {
	color: #000;
}

.footer_navigation ul {
	margin: 4px 0;
}

.mod_changelanguage ul,
.mod_changelanguage li {
	display: flex;
}

.mod_changelanguage ul {
	margin: 5px 40px 5px 0;
}

.mod_changelanguage a,
.mod_changelanguage strong {
	color: #888;
	font-size: .7rem;
	padding: 0 5px;
}

.mod_changelanguage .lang-de a::before,
.mod_changelanguage .lang-en a::before,
.mod_changelanguage .lang-de strong::before,
.mod_changelanguage .lang-en strong::before {
	content: url("/files/img/layout/de.gif");
	vertical-align: sub;
	padding-right: 2px;
}

.mod_changelanguage .lang-en a::before,
.mod_changelanguage .lang-en strong::before {
	content: url("/files/img/layout/en.gif");
}

/* Copyright */
.copyright p {
	font-size: .7rem;
	text-align: center;
}

/* ######################################
   #### Anpassungen einzelner Seiten ####
   ###################################### */

/* Hotel */
.page_hotel .hotel_pictures {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	padding-bottom: 50px;
	margin: 60px 0 50px 0;
}

.page_hotel .hotel_pictures #img_three_pictures {
	width: 624px;
}

.page_hotel .hotel_pictures #img_stars {
	padding: 65px 75px 0 0;
}

.page_hotel h2,
.page_hotel p {
	font-weight: normal;
	text-align: center;
}

.page_hotel h2 {
	font-size: 1.3rem;
	color: #666;
}

.page_hotel .more_space {
	margin: 2rem 0;
}

.page_hotel .hotel_bottom-logos {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 45px 0 25px;
}

@media (max-width:974px) {
	.page_hotel .hotel_pictures #img_stars {
		padding-right: 0;
	}
}

@media (max-width:899px) {
	.page_hotel .hotel_pictures {
		justify-content: center;
	}
}

@media (max-width:530px) {
	.page_hotel .hotel_bottom-logos {
		justify-content: center;
	}
}

/* Das Brueckenhaus */
.rooms_navigation ul {
	padding: 12px 40px 0 40px;
}

.rooms_navigation li {
	list-style: none;
	padding: 4px 0;
	border-bottom: 1px solid #dadada;
	margin-bottom: 5px;
}

.rooms_navigation li::before {
	content: '';
	display: inline-block;
	background-image: url("/files/img/page_zimmer/Carl_50.jpg");
	height: 36px;
	width: 50px;
}

.rooms_navigation li:nth-child(2)::before {
	background-image: url("/files/img/page_zimmer/Christian_50.jpg");
}

.rooms_navigation li:nth-child(3)::before {
	background-image: url("/files/img/page_zimmer/Anna_50.jpg");
}

.rooms_navigation li:nth-child(4)::before {
	background-image: url("/files/img/page_zimmer/Friederica_50.jpg");
}

.rooms_navigation li:nth-child(5)::before {
	background-image: url("/files/img/page_zimmer/Lucia_50.jpg");
}

.rooms_navigation li:nth-child(6)::before {
	background-image: url("/files/img/page_zimmer/Rigmor_50.jpg");
}

.rooms_navigation a,
.rooms_navigation strong {
	color: #666;
	font-size: .7rem;
	text-decoration: none;
	padding-left: 4px;
}

/* Preise */
.offer {
	border: 1px solid #888;
	display: flex;
	align-items: center;
	text-align: center;
	padding: 0 50px;
}

@media (max-width:985px) {
	.table_with_offer {
		display: block;
	}
	
	.offer {
		display: inline-block;
		border: 1px solid #666;
		margin: 20px 0;
	}
	
	.offer p {
		display: inline-block;
	}
	
	.content-table {
		overflow: auto; /* make tables scrollable (for small devices) */
	}

	.page_prices .content-table::before {
		content: "Hinweis: Falls die Tabelle nicht komplett sichtbar ist, lässt sie sich nach links und rechts verschieben.";
		color: #f2980a;
		font-size: .75rem;
		font-style: italic;
	}
	
	html[lang=en] .page_prices .content-table::before {
		content: "Hint: If the table is not completely visible, it can be scrolled to the left and right.";
	}
}

