/*
**********************************************
***      created by Boris Schmakowski      ***
***          www.schmakowski.de            ***
**********************************************
*/

/*----------- normalize -------*/
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
*:before, *:after { -webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit; }

article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}progress{vertical-align:baseline}template,[hidden]{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;margin:0}optgroup{font-weight:700}button,input{overflow:visible}button,select{text-transform:none}button,html [type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-cancel-button,[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, form, fieldset, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, main, menu, nav, section, summary, time, mark, audio, video { background: transparent; vertical-align: baseline; border: 0; outline: 0; margin: 0; padding: 0; }

html { 
	background: #fff;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-overflow-scrolling: touch;
}
aside { display: inline-block; }
:focus:not(:focus-visible) { outline: none }


/*----------- some basics -----------*/

object, img, a { outline:none; border:0; }
small { font-size: .875em; }
strike, del { text-decoration: line-through; }
sub, sup { font-size: .75em; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
mark { background: #ff6; padding: 1px 3px; }
dl {  }
dt { font-weight: bold; }
dd { display: block; margin-left: 2em; }
hr { display: block; height: 0; border: 0 none; border-top: 1px solid #880000; margin: 2.5em 0; }
ul { 
	list-style: disc outside;
	margin: 0 0 0 1em;
	padding: 0 0 1em 0;
}
ol { 
	list-style: decimal outside; 
	margin: 0 0 0 1em;
	padding: 0 0 1em 0; 
}
ol li > ol,
ol li > ul,
ul li > ol,
ul li > ul
{ padding: 0; margin: 0 0 0 1.5em;}
li { margin-bottom: 0.5em}


.clr 	{ clear:both; }
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
div[itemprop="articleBody"]:after {		/* clr nach DIV eines Artikels */
  	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

.pull-right {
    float: right;
}
.pull-left {
    float: left;
}


/*---- lets go ----*/

#wrapper-a,
#wrapper-b,
#wrapper-c,
#wrapper-d,
#foot_container {
    max-width: 1024px;
    margin: 0 auto;
    padding: 0 40px;
/*
    border-left: 0.25px solid red;
    border-right: 0.25px solid red;
*/
}
@media all and (max-width: 800px)
{
	#wrapper-a,
	#wrapper-b,
	#wrapper-c,
	#wrapper-d,
	#foot_container {
	    padding: 0 20px;
	}
}
@media all and (max-width: 600px)
{
	#wrapper-a,
	#wrapper-b,
	#wrapper-c,
	#wrapper-d,
	#foot_container {
	    padding: 0 10px;
	}
}

section#content {
	padding: 5% 0 4% 0;
	text-align: left;
}


/*---- Banner ----*/

header {
	background: #a29a53;
	color: #ffffff;
	padding-bottom: 20px;
}
.mp-start header {
	padding-bottom: 0;
}

div#banner div.custom {
/* 	height: 300px; */
	background-position: center top;
	background-repeat: repeat;
	background-size: auto 100%;
	position: relative;
	overflow: hidden;
}
div#banner div.BannerSpacerOuter {
	max-width: 1024px;
	margin: 0 auto; 
}
div#banner div.BannerSpacerInner {
	padding-bottom: 29.296875%;			/* 300/1024*100 */
}

/*
div.welle {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	font-size: 0;
	line-height: 0;
	text-align: right;
	display: block;
	width: 100%;
	max-width: 1024px;
    margin: 0 auto;
}
div.welle img {
	width: 60%;
	max-width: 546px;
	height: auto;
	margin-bottom: -1.5px;
}
*/

div.welle {
	position: absolute;
	bottom: 0;
	right: -30px;
	font-size: 0;
	line-height: 0;
}
div.welle img {
	width: 750px;
	height: auto;
	margin-bottom: -1.5px;
}


div#headtop123 {
	padding: 30px 0 40px 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content:  flex-end;
}
div#headtop123 > div {
	order: 1;
	flex-grow: 0;
	flex-basis: auto;
	align-self: flex-end;
}

header p {
	margin: 0;
	padding: 0 0 0.5em 0;
	color: #ffffff;
	font-weight: 400;
}

header h1 {
	font-family: 'Crimson Text', serif;
	font-size: 2.5em;
	margin: 0;
	padding: 0;
	color: #ffffff;
	font-weight: 600;
	line-height: 1.125;
}


/*
div#headtop2 {
	line-height: 0;
}
div#headtop2 img {
	height: 85px;
	width: auto;
	margin-bottom: -18px;
}
*/

header {
	position: relative;
}
div#headtop2 {
	line-height: 0;
}
div#headtop2 img {
	position: absolute;
	right: 45px;
	bottom: 17px;
	height: 100px;
	width: auto;
}

@media all and (max-width: 1000px)
{
	div.welle {
		right: -30px;
	}
	div.welle img {
		width: 650px;
	}
	header h1 {
		font-size: 2.4em;
	}
	div#headtop2 img {
		right: 45px;
		bottom: 20px;
		height: 90px;
	}
	.mp-start div#banner div.custom,
	.mp-shift div#banner div.custom {
	    background-position: 60% top;
	}
}
@media all and (max-width: 800px)
{
	div.welle {
		right: -30px;
	}
	div.welle img {
		width: 550px;
	}
	header h1 {
		font-size: 2.1em;
		padding-left: 10px;
	}
	div#headtop2 img {
		right: 35px;
		bottom: 23px;
		height: 80px;
	}
	div#banner div.BannerSpacerInner {
	    padding-bottom: 250px;
	}
	.mp-start div#banner div.custom,
	.mp-shift div#banner div.custom {
	    background-position: 65% top;
	}
}
@media all and (max-width: 600px)
{
	div.welle {
		right: -30px;
	}
	div.welle img {
		width: 500px;
	}
	header h1 {
		font-size: 1.8em;
	}
	div#headtop2 img {
		right: 25px;
		bottom: 24px;
		height: 70px;
	}
		div#banner div.BannerSpacerInner {
	    padding-bottom: 200px;
	}
	.mp-start div#banner div.custom,
	.mp-shift div#banner div.custom {
	    background-position: 65% top;
	}
}
@media all and (max-width: 550px)
{
	div.welle {
		right: -30px;
	}
	div.welle img {
		width: 475px;
	}
	header h1 {
		font-size: 1.65em;
	}
	div#headtop2 img {
		right: 20px;
		bottom: 24px;
		height: 65px;
	}
		div#banner div.BannerSpacerInner {
	    padding-bottom: 200px;
	}
	.mp-start div#banner div.custom,
	.mp-shift div#banner div.custom {
	    background-position: 65% top;
	}
}
@media all and (max-width: 500px)
{
	div.welle {
		right: -30px;
	}
	div.welle img {
		width: 450px;
	}
	header h1 {
		font-size: 1.5em;
	}
	div#headtop2 img {
		right: 20px;
		bottom: 26px;
		height: 60px;
		width: auto;
	}
	div#banner div.BannerSpacerInner {
	    padding-bottom: 200px;
	}
	.mp-start div#banner div.custom,
	.mp-shift div#banner div.custom {
	    background-position: 65% top;
	}
}
@media all and (max-width: 450px)
{
	div.welle {
		right: -30px;
	}
	div.welle img {
		width: 400px;
	}
	div#headtop1 {
		width: 100%;
	}
	div#headtop2 {
		width: 100%;
		text-align: right;
	}
	div#headtop123 {
	    padding: 20px 0 10px 0;
	}
	header h1 {
		font-size: 1.7em;
		margin-bottom: 0.25em;
	}
	div#headtop2 img {
		position: static;
		height: 60px;
		width: auto;
	}
	div#banner div.BannerSpacerInner {
	    padding-bottom: 200px;
	}
	.mp-start div#banner div.custom,
	.mp-shift div#banner div.custom {
	    background-position: 70% top;
	}
}


/*--- Mobile Specials ----*/
	
@media all and (max-width: 800px)
{
	.NoMobile800 {display: none;}
}
@media all and (max-width: 600px)
{
	.NoMobile600 {display: none;}
}


/*---- Karte ----*/


div.moduletable.KarteRundgang {
	overflow: auto;
}
div.custom.KarteRundgang {
	min-width: 800px;
}
/*
<div class="scaling-svg-container" 
   style="padding-bottom: 92%  = 100% * 55/60 ">
   		<svg class="scaling-svg" viewBox="0 0 60 55" >
   		<!-- SVG content -->
  </svg>
</div>
*/
.scaling-svg-container {
	 position: relative; 
	 height: 0; 
	 width: 100%; 
	 padding: 0;
	 padding-bottom: 100%; 
	 /* override this inline for aspect ratio other than square */
}
.scaling-svg {
	 position: absolute; 
	 height: 100%; 
	 width: 100%; 
	 left: 0; 
	 top: 0;
}


/*--- Content Aufteilung ---*/


div#container {
	padding: 0;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: space-between;
}
div#container > div {
	flex-grow: 0;
	flex-basis: auto;
	align-self: stretch;
}
div#leftcolumn {
	width: 25%;
	font-size: 0.85em;
	order: 1;
}
div#rightcolumn {
    width: 25%;
    font-size: 0.85em;
    order: 3;
}
div#content_out {
	width: 100%;
	order: 1;
}
div#content_outleft {
	width: 72.5%;
	order: 2;
}
div#content_outmiddle {
	width: 45%;
	order: 2;
}
div#content_outright {
	width: 72.5%;
	order: 1;
}
@media all and (max-width: 800px)
{
	div#content_outleft, div#content_outmiddle, div#content_outright {
		width: 100%;
		order: 1 !important;
	}
	div#leftcolumn {
		width: 100%;
		order: 2 !important;
	}
	
	div#rightcolumn {
		width: 100%;
		order: 3 !important;
	}
}


/*---- Spalten für Articles ----*/

.cols-1	{
	display: block;
	float: none;
	margin: 0;
}

.cols-2, .cols-3, .cols-4 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-content: flex-start;
	margin: 0;
}

.cols-2 > div {
    width:50%;
    flex-grow: 0;
	flex-basis: auto;
	align-self: stretch;
}
.cols-2 .column-1 {
	margin-right: 30px;
}
.cols-2 .column-2 {
	margin-left: 30px;
}

.cols-3 > div {
	width:33.33%;
	flex-grow: 0;
	flex-basis: auto;
	align-self: stretch;
}
.cols-3 .column-1 {
	margin-right: 30px;
}
.cols-3 .column-2 {
	margin-left: 15px;
	margin-right: 15px;
}
.cols-3 .column-3 {
	margin-left: 30px;
}

.cols-4 > div {
	width: 25%;
	flex-grow: 0;
	flex-basis: auto;
	align-self: stretch;
}
.cols-4 .column-1 {
	margin-right: 20px;
}
.cols-4 .column-2,
.cols-4 .column-3 {
	margin-left: 10px;
	margin-right: 10px;
}
.cols-4 .column-4 {
	margin-left: 20px;
}


.items-leading, .items-row {
        overflow:hidden;
}
.items-row, .leading-0, .leading-1, .leading-2, .leading-3, .leading-4, .leading-5 {
        margin-bottom: 5%;
}

.items-more {
        padding: 5px;
}
.category-desc {
    margin: 0 0 2em 0;
}

/*---- Footer ----*/

footer {
	background: #a29a53;
	color: #ffffff;
	padding: 1.5em 0 3em 0;
}

footer a 			{ color: #ffffff; font-weight: 600; text-decoration: none; }
footer a:visited 	{ color: #ffffff; font-weight: 600; text-decoration: none; }
footer a:hover 		{ color: #ffffff; font-weight: 600; text-decoration: underline; }
footer a:active 	{ color: #ffffff; font-weight: 600; text-decoration: underline; }

#foot1 a 				{ padding-right: 1.5em;}
#foot1 a:last-child 	{ padding-right: 0em;}

#foot1 span.Copyright {font-size: 0.9em;}
#foot1 span.LegalLinks {float: right;}

@media all and (max-width: 550px)
{
	#foot1 span.Copyright {
		display: block;
		margin-bottom: 1em;
		text-align: left;
	}
	#foot1 span.LegalLinks {
		float: none;
		display: block;
		text-align: left;
		margin-bottom: 1em;
	}
}


/*---- Footer Logos ----*/

div#foot45 {
	padding: 3% 0 0 0;
}
div.FooterFlex {
	padding: 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: space-between;
}
div.FooterFlex > div {
	order: 1;
	flex-grow: 0;
	flex-basis: auto;
	align-self: flex-start;
}
@media all and (max-width: 550px)
{
	div.FooterFlex > div {
		width: 100%;
		text-align: right;
	}
	div.FooterFlex > div:first-child {
		margin-bottom: 3em;
		text-align: left;
	}
}

div.FooterLogosLinks,
div.FooterLogosRechts {
	line-height: 0;
	font-size: 16px;
}

div.FooterLogosLinks img {
	height: 60px;
	width: auto;
	margin: 0;
}
div.FooterLogosLinks a {
	margin: 0 40px 0 0;
}
div.FooterLogosLinks a:first-child  {
}
div.FooterLogosLinks a:last-child {
	margin: 0;
}
div.FooterLogosRechts img {
	height: 82px;
	width: auto;
	margin: 0;
}


/*--- SVG Karte Farben ----*/

svg a path {
	-webkit-transition: fill .35s ease;
       -moz-transition: fill .35s ease;
        -ms-transition: fill .35s ease;
         -o-transition: fill .35s ease;
            transition: fill .35s ease;
}
svg a:hover path.cls-11 { fill: #da4a45; }
svg a:hover path.cls-12 { fill: #a42f20; }
.mp-station01 svg g#station01 path.cls-11 { fill: #da4a45; }
.mp-station01 svg g#station01 path.cls-12 { fill: #a42f20; }
.mp-station02 svg g#station02 path.cls-11 { fill: #da4a45; }
.mp-station02 svg g#station02 path.cls-12 { fill: #a42f20; }
.mp-station03 svg g#station03 path.cls-11 { fill: #da4a45; }
.mp-station03 svg g#station03 path.cls-12 { fill: #a42f20; }
.mp-station04 svg g#station04 path.cls-11 { fill: #da4a45; }
.mp-station04 svg g#station04 path.cls-12 { fill: #a42f20; }
.mp-station05 svg g#station05 path.cls-11 { fill: #da4a45; }
.mp-station05 svg g#station05 path.cls-12 { fill: #a42f20; }
.mp-station06 svg g#station06 path.cls-11 { fill: #da4a45; }
.mp-station06 svg g#station06 path.cls-12 { fill: #a42f20; }
.mp-station07 svg g#station07 path.cls-11 { fill: #da4a45; }
.mp-station07 svg g#station07 path.cls-12 { fill: #a42f20; }
.mp-station08 svg g#station08 path.cls-11 { fill: #da4a45; }
.mp-station08 svg g#station08 path.cls-12 { fill: #a42f20; }
.mp-station09 svg g#station09 path.cls-11 { fill: #da4a45; }
.mp-station09 svg g#station09 path.cls-12 { fill: #a42f20; }
.mp-station10 svg g#station10 path.cls-11 { fill: #da4a45; }
.mp-station10 svg g#station10 path.cls-12 { fill: #a42f20; }
.mp-station11 svg g#station11 path.cls-11 { fill: #da4a45; }
.mp-station11 svg g#station11 path.cls-12 { fill: #a42f20; }
.mp-station12 svg g#station12 path.cls-11 { fill: #da4a45; }
.mp-station12 svg g#station12 path.cls-12 { fill: #a42f20; }
.mp-station13 svg g#station13 path.cls-11 { fill: #da4a45; }
.mp-station13 svg g#station13 path.cls-12 { fill: #a42f20; }

/*----pagenav ----*/

ul.pagenav {
	list-style-type: none;
	margin: 5% 0 1em 0;
	padding: 0;
	width: 100%;
}
ul.pagenav li {
	padding: 0;
	margin:	0;
	display: inline-block;
}
ul.pagenav li.previous {
}
ul.pagenav li.next {
	float: right;
}
ul.pagenav li a {
	text-decoration: none;
}
ul.pagenav li span {
	display: inline-block;
	font-size: 1.5em;
    height: auto;
    line-height: 1em;
    width: auto;
}
ul.pagenav::after {
	visibility: hidden;
	display: block;
	font-size: 0;
	height: 0;
	content: '';
	clear: both;	
}

ul.pagenav { 
	position: relative;
}
ul.pagenav li.PagerBackCenter {
    position: absolute;
    left: 50%;
    float: none;
    text-align: center;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

/*---- bospagenav Icons ----*/

img.NaviPfeil {
	height: 1.5em;
	width: auto;
}

div.JumpBack i {
	font-size: 1.5em !important;
}

/*---- pagination ----*/

div.pagination {
}
div.pagination ul {
    list-style-type: none;
    margin: 1em 0 1em 0;
    padding: 0;
    text-align:left;
}
div.pagination li {
    display: inline-block;
    padding: 0 0.5em 0 0.5em;
    margin:	0;
    font-size: 1.3em;
}
div.pagination li.disabled a {
	color: #bbbbbb;
}
div.pagination li.active a {
	text-decoration: none;
	font-weight: bold;
}
div.pagination li.active a:hover {
	text-decoration: none;
	font-weight: bold;
	color: #00574b;
}
div.pagination a {
	font-size: 0.9em;
}
div.pagination [class^="icon-"] {

}
div.pagination [class^="icon-"]::before {
	vertical-align: bottom;
	width: 20px;
}

p.counter {
	font-weight:bold;
	text-align:right;
	clear:both;
}

p.readmore:before {
    content: '';
    clear: both;
    display: block;
    visibility: hidden;
    height: 0px;
    font-size: 0;
}

/*---- breadcrumb ----*/

ul.breadcrumb {
	font-size: 0.8em;
    margin: 0;
    overflow: hidden;
    padding: 0.5em 0;
}
ul.breadcrumb li {
	display:inline;
	list-style:none;
}
ul.breadcrumb li span.divider {
	margin: 0 4px;
}

/*---- Language ----*/

div.mod-languages {
	
}
div.mod-languages ul {
	list-style: none outside none;
	margin: 0;
	padding: 0;
}
div.mod-languages ul li {
	display: inline-block;
	margin: 0;
	padding: 0;
}
div.mod-languages ul li img {
	width: 30px;
	height: auto;
	border-radius: 200px;
}

/*---- system ----*/

div#system-message {
	font-weight:bold;
}
div#system-message .alert {
	color: red;
	background-color: #fff;
	border: 1px solid;
	padding: 5px 30px;
	margin: 0 0 10px 0;
}

#mailto-window{
	width:950px;
	margin:0 auto;
	padding:20px;
}

/*---- Cookie Specials ----*/

/*
body.noAlertCookie footer {
	padding-bottom: 15%;
}
*/

div.cadre_bouton a { 
	text-decoration: none;
}
div.cadre_bouton a:hover,
div.cadre_bouton button:hover { 
	background: #da4a45;
}

#cadre_alert_cookies .btn:hover,
#cadre_alert_cookies .btn:focus, 
#cadre_alert_cookies .btn.focus {
	background: #bb3f33 !important;
}



/*---- j-tooltipp wech ----*/

body div.easy-tooltip-wrapper { display: none !important; }
body div.tooltip.fade.top { display: none !important; }
