/* ================ */

/* Verwendete Farben
   Dunkelgrau (Fließtext) = #444444
   Hellgrau = #666666
   Braunrot = #e57222a
   Pink = #d5127f
   Orange = #f1920
 */

/* ================ */
/* Allgemeines */
/* ================ */

/* fira-sans-regular - latin */
@font-face {
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/fira-sans-v15-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/fira-sans-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/fira-sans-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/fira-sans-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/fira-sans-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/fira-sans-v15-latin-regular.svg#FiraSans') format('svg'); /* Legacy iOS */
}

/* fira-sans-700 - latin */
@font-face {
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/fira-sans-v15-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/fira-sans-v15-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/fira-sans-v15-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/fira-sans-v15-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/fira-sans-v15-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/fira-sans-v15-latin-700.svg#FiraSans') format('svg'); /* Legacy iOS */
}

/* pt-serif-regular - latin */
@font-face {
  font-family: 'PT Serif';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/pt-serif-v16-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/pt-serif-v16-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/pt-serif-v16-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/pt-serif-v16-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/pt-serif-v16-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/pt-serif-v16-latin-regular.svg#PTSerif') format('svg'); /* Legacy iOS */
}

/* pt-serif-700 - latin */
@font-face {
  font-family: 'PT Serif';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/pt-serif-v16-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/pt-serif-v16-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/pt-serif-v16-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/pt-serif-v16-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/pt-serif-v16-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/pt-serif-v16-latin-700.svg#PTSerif') format('svg'); /* Legacy iOS */
}

body, html {
	height: 100%;
	margin: 0 auto;
	padding: 0 auto;
}

body {
	background-color: #ffffff;
	color: #444444;
	font-family: "Fira Sans", Arial, Helvetica, Verdana, sans-serif;
	font-size: 1em;
	font-weight: 400;
	font-rendering: optimizeLegibility;
	height: 100%;
	line-height: 1.5;
}

.wrapper {
	background-color: transparent;
	display: block;
	height: auto;
	min-height: 100%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 auto;
}

/* ================ */
/* Links */
/* ================ */

a { color: #d5127f; }

a:visited { color: #000000; }

a:hover { color: ##fc5ab1; }

a:active { color: #d5127f; }

/* ================ */
/* Typografie */
/* ================ */

h1, h2, h3 { font-weight: 400; }

h4, h5, h6 { font-weight: 700; }

h1 {
	font-size: 40px;
	font-size: 2.5rem;
	line-height: 1.25;
	margin-top: 0;
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
	text-transform: uppercase;
}

@media (max-width:899px) {
h1 {
	font-size: 32px;
	font-size: 2rem;
	line-height: 1.25;
	margin-top: 0;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	text-transform: uppercase;
}
}

@media (max-width:499px) {
h1 {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 1.25;
	margin-top: 0;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	text-transform: uppercase;
}
}

h2 {
	font-size: 32px;
	font-size: 2rem;
	line-height: 1.375;
	margin-top: 18px;
	margin-top: 1.125rem;
	margin-bottom: 11px;
	margin-bottom: 0.6875rem;
}

@media (max-width:899px) {
h2 {
	font-size: 26px;
	font-size: 1.625rem;
	line-height: 1.375;
	margin-top: 18px;
	margin-top: 1.125rem;
	margin-bottom: 11px;
	margin-bottom: 0.6875rem;
}
}

@media (max-width:499px) {
h2 {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.375;
	margin-top: 18px;
	margin-top: 1.125rem;
	margin-bottom: 11px;
	margin-bottom: 0.6875rem;
}
}

h3 {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 1.5625;
	margin-top: 18px;
	margin-top: 1.125rem;
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
}

@media (max-width:899px) {
h3 {
	font-size: 22px;
	font-size: 1.375rem;
	line-height: 1.5625;
	margin-top: 18px;
	margin-top: 1.125rem;
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
}
}

@media (max-width:499px) {
h3 {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 1.5625;
	margin-top: 18px;
	margin-top: 1.125rem;
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
}
}

h4, h5, h6 {
	font-size: 18px;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.8;
	margin-top: 0;
	margin-bottom: 0;
	text-transform: none;
}

.aside h1, .aside h2, .aside h3, .aside h4, .aside h5, .aside h6 {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.8;
	margin-top: 0;
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
	text-transform: none;
}

/* ================ */
/* Headlines für Akkordeon-Kalender ==== */
/* ================ */

h1.monat, h2.monat, h3.monat, h4.monat, h5.monat, h6.monat {
	background-color: #dbad6e;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	font-size: 32px;
	font-size: 2rem;
	line-height: 1.375;
	margin-top: 18px;
	margin-top: 1.125rem;
	margin-bottom: 11px;
	margin-bottom: 0.6875rem;
	padding: 0.5rem;
}

@media (max-width:899px) {
h1.monat, h2.monat, h3.monat, h4.monat, h5.monat, h6.monat {
	font-size: 26px;
	font-size: 1.625rem;
	line-height: 1.375;
	margin-top: 18px;
	margin-top: 1.125rem;
	margin-bottom: 11px;
	margin-bottom: 0.6875rem;
}
}

@media (max-width:499px) {
h1.monat, h2.monat, h3.monat, h4.monat, h5.monat, h6.monat {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.375;
	margin-top: 18px;
	margin-top: 1.125rem;
	margin-bottom: 11px;
	margin-bottom: 0.6875rem;
}
}

p {
	margin: 0 0 24px 0;
	margin: 0 0 1.5rem 0;
}

strong { font-weight: 700; }

em { font-style: italic; }

/* ================ */
/* Boxen */
/* ================ */

.box-gruen { background-color: #f19200; }

.box-grau { background-color: #f1efec; }

.box-weiss { background-color: #ffffff; }

.box-border { border: 1px solid #f1efec; }

.box {
	-webkit-border-radius: 10px;
	-webkit-border-radius: 0.625rem;
	-moz-border-radius: 10px;
	-moz-border-radius: 0.625rem;
	border-radius: 10px;
	border-radius: 0.625rem;
	margin-bottom: 30px;
	margin-bottom: 1.875rem;
	padding: 10px 10px 0 10px;
	padding: 0.625rem 0.625rem 0 0.625rem;
}

.rounded-box {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	padding: 8px;
	padding: 0.5rem;
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

@media (max-width:899px) {
.box-set img {
	margin-right: auto;
	margin-left: auto;
}
}

/* ================ */
/* Listen */
/* ================ */

.ce_text ul {
	list-style-type: square;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	list-style-position: outside;
	padding-left: 17px;
	padding-left: 1.06rem;
}

hr {
	display: block;
	border: 0;
	border-top: 1px dotted #666666;
	height: 1px;
	margin: 0 0 1em 0;
	padding: 0;
}

.ce_divider hr {
	margin: 32px 0 32px 0;
	margin: 2rem 0 2rem 0;
}

/* ================ */
/* 5 Bilder */
/* ================ */

.flexible, .flexible img, .ce_image img, .image_container img, figure img {
	height: auto;
	max-width: 100%;
}

.image_container { margin-bottom: 1.5rem; }


/* Ausnahme Startseite */

/* Bild Wohnwagen */

.Startseite-Box-2 img {
	-webkit-border-radius: 63px;
	-moz-border-radius: 63px;
	border-radius: 32px;
	margin-top: 17%;
}

@media (max-width:599px) {
.Startseite-Box-2 img { margin-top: 0; }
}

/* Blog-Box */

/*.start .first-box {
	-webkit-border-radius: 63px;
	-moz-border-radius: 63px;
	border-radius: 32px;
	margin-top: 17%;
}*/

.start .mod_newslist h2 {
	color: #ffffff;
	text-transform: uppercase;
	margin-bottom: -5px;
}

.layout_simple {
	background-color: #ffdeb0;
	border-left: 4px solid #ffffff;
	border-right: 4px solid #ffffff;
	padding-left: 12px;
	padding-right: 12px;
	padding-top: 6px;
	padding-bottom: 6px;
	min-height: 75px;
    max-height: 75px;
}

.layout_simple.first {
	background-color: #ffdeb0;
	border-top: 4px solid #ffffff;
	-webkit-border-top-left-radius: 15px;
	-webkit-border-top-right-radius: 15px;
	-moz-border-radius-topleft: 15px;
	-moz-border-radius-topright: 15px;
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
	padding-top: 12px;
}

.layout_simple.last {
	background-color: #ffdeb0;
	border-bottom: 4px solid #ffffff;
	-webkit-border-bottom-right-radius: 15px;
	-webkit-border-bottom-left-radius: 15px;
	-moz-border-radius-bottomright: 15px;
	-moz-border-radius-bottomleft: 15px;
	border-bottom-right-radius: 15px;
	border-bottom-left-radius: 15px;
	padding-bottom: 12px;
}

.content-gallery {
	border-top: 1px dotted #666666;
	margin-top: 2rem;
	margin-bottom: 2rem;
	padding-top: 1.5rem;
}

.content-gallery ul {
	list-style-type: none;
}

.content-gallery li {
	float: left;
	margin-right: 1rem;
	margin-bottom: 1rem;
}


/* ================ */
/* 6 Buttons */
/* ================ */

.button, .submit, .button a {
	background-image: none;
	border: 1px solid transparent;
	border-radius: 4px;
	cursor: pointer;
	display: inline-block;
	font-family: "Fira Sans", Arial, Helvetica, Verdana, sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	margin-bottom: 0;
	letter-spacing: 0.5px;
	letter-spacing: 0.03125rem;
	line-height: 1.42857143;
	padding: 6px 12px;
	padding: 0.375rem 0.75rem;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap;
	vertical-align: middle;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.button.active.focus,
.submit.active.focus {
	outline: 5px auto -webkit-focus-ring-color;
	outline-offset: -2px;
}

.button, .submit, .button a {
	color: #ffffff;
	background-color: #d5127f;
}

.button:focus,
.button.focus,
.submit:focus,
.submit.focus,
.button a:focus {
	color: #ffffff;
	background-color: #990052;
}

.button:hover,
.submit:hover,
.button a:hover {
	color: #ffffff;
	background-color: #990052;
}

.button:active,
.submit:active,
.button.active,
.button a:active {
	color: #ffffff;
	background-color: #fc5ab1;
}

.button:active:hover,
.button.active:hover,
.button:active.focus,
.button.active.focus {
	color: #ffffff;
	background-color: #990052;
}

.button:active,
.button.active {
	background-image: none;
}

/* ================ */
/* Header */
/* ================ */

.header {
	background: #ffffff;
	border-right: 1px solid #ffffff;
	border-left: 1px solid #ffffff;
	padding-top: 1rem;
	padding-top: 16px;
}

/* ================ */
/* Slogan */
/* ================ */

.slogan {
	min-height: 1px;
	padding-left: 15px;
	padding-right: 0;
	padding-top: 0;
	position: relative;
	width: 100%;
}

@media (min-width:900px) {
.slogan {
	padding-top: 83px;
}
}

.slogan img {
	height: auto;
	margin-right: auto;
	margin-left: auto;
	max-width: 100%;
}

/* ================ */
/* Logo */
/* ================ */

.logo {
	min-height: 1px;
	padding-left: 15px;
	padding-right: 15px;
	position: relative;
	width: 100%;
}

.logo img {
	height: auto;
	margin-right: auto;
	margin-left: auto;
	max-width: 100%;
}

/* Bis 899px wird das Logo libü angezeigt. Spalte mit Nav wird dafür komplett ausgeblendet: */

@media (max-width:899px) {
.header col-xs-8 {
	display: none;
	height: 0;
}
}

/* ================ */
/* Main & Slider */
/* ================ */

.slider {
	background: #ffffff;
	border-right: 1px solid #ffffff;
	border-left: 1px solid #ffffff;
}

.main {
	background: #ffffff;
	border-right: 1px solid #ffffff;
	border-left: 1px solid #ffffff;
	padding-top: 48px;
	padding-top: 3rem;
	padding-bottom: 48px;
	padding-bottom: 3rem;
}

@media (max-width:899px) {
.main {
	padding-top: 12px;
	padding-top: 0.75rem;
	padding-bottom: 24px;
	padding-bottom: 2rem;
}
}

.start .main {
	background: #ffffff;
	margin-top: 0;
}

/* ================ */
/* Main Content */
/* ================ */

/* ================ */
/* Blog */
/* ================ */

.mod_newsarchive .layout_latest {
	border-bottom: 1px dotted #444444;
	margin: 2em 0 3em 0;
}

#main .mod_newsarchive .info, #main .mod_newsreader .info {
	font-size: 0.875em;
	font-style: italic;
	margin-bottom: 1em;
}

.start time {
	display: block;
	font-size: 0.875em;
	font-style: italic;
}

.mod_newsarchive img {
    max-width: 150px;
    height: auto;
    margin-right: 1rem;
}

@media (max-width:650px) {
.mod_newsarchive img {
    max-width: 100%;
    height: auto;
    margin-right: 0;
}
}

/* ================ */
/* Akkordeon */
/* ================ */

.ce_accordion :focus { outline: 0; }

section.ce_accordion { margin-bottom: 0; }

section.ce_accordion:last-of-type {
	margin-bottom: 48px !important;
	margin-bottom: 3rem !important;
}

.toggler { cursor: pointer; }

.main .toggler {
	background: #feb146;
	border-bottom: 2px solid #ffffff;
	border-top: 2px solid #ffffff;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	padding: 0.5rem;
}

.main .ui-state-default:after {
	content: "+";
	float: right;
	font-size: 32px;
	font-size: 2rem;
	line-height: 1;
}

.main .ui-state-active:after {
	content: "-";
	float: right;
	font-size: 32px;
	font-size: 2rem;
	line-height: 1;
}

.main .accordion {
	padding: 8px 8px 8px 16px;
	padding: 0.5rem 0.5rem 0.5rem 1rem;
}

.main .toggler { font-size: 1.0625rem; }

@media (max-width:899px) {
.main .toggler { font-size: 1rem; }
}

/* ================ */
/* google-Karte */
/* ================ */

/* Überscrollen ermöglichen: */

.overlay {
	background: rgba(0, 0, 0, 0);
	position: relative;
	z-index: 100;
	width: 100%;
	height: 600px;
	top: 600px;
	margin-top: -600px;
	display: block !important;
}

/* ================ */
/* Aside */
/* ================ */

.right {
	font-size: 0.875em;
	line-height: 1.6875;
}

@media (max-width:899px) {
.right {
	font-size: 1em;
	margin-top: 24px;
	margin-top: 3rem;
}
}

/* ================ */
/* Footer */
/* ================ */

.footer {
	line-height: 1.5;
	border-right: 1px solid #ffffff;
	border-left: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
	background-color: #57222a;
	padding-bottom: 24px;
}

/* ================ */
/* Top-Link */
/* ================ */

.footer-top-link {
	position: relative;
	display: block;
	width: 4em;
	height: 4em;
	margin: 0 auto;
	color: #444444;
	white-space: nowrap
}

.footer-top-link:after {
	font-size: 3em;
	line-height: 1;
	content: "»";
	transform: rotate(270deg);
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
	text-rendering: geometricPrecision;
	text-indent: 0;
	display: inline-block;
	position: relative;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding-top: 1px;
	border: 1px solid #666666;
	border-left: 0;
	border-radius: 0px 3px 3px 0;
	text-align: center;
	background: #f1efec;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.footer-top-link>span {
	position: absolute;
	top: 0;
	right: 0;
	margin: 1em 0.71429em 0;
	font-size: 1em;
	color: #444444;
	opacity: 0;
	pointer-events: none;
	-webkit-transition: all 0.4s ease-out;
	-moz-transition: all 0.4s ease-out;
	-o-transition: all 0.4s ease-out;
	transition: all 0.4s ease-out;
}

.footer-top-link>span+span {
	right: auto;
	left: 0;
}

.footer-top-link:hover,.footer-top-link:focus {
	color: #f59502;
	text-decoration: none;
}

.footer-top-link:hover>span, .footer-top-link:focus>span {
	right: 100%;
	opacity: 1;
	-webkit-transition-duration: 0.2s;
	-moz-transition-duration: 0.2s;
	-o-transition-duration: 0.2s;
	transition-duration: 0.2s
}

.footer-top-link:hover>span+span,.footer-top-link:focus>span+span {
	right: auto;
	left: 100%
}

/* Ende Top-Link */

/* ================ */
/* Styles für Adressblock */
/* ================ */

.adresse p {
	margin: 0 0 8px 0;
	margin: 0 0 0.5rem 0;
}

.adresse p.anschrift {
	background: url(../images/home.svg) no-repeat left top;
	background-position-y: 3px;
	background-size: 16px 16px;
	padding-left: 20px;
}

.adresse p.telefon {
	background: url(../images/phone.svg) no-repeat left top;
	background-position-y: 4px;
	background-size: 16px 16px;
	padding-left: 20px;
}

.adresse p.contact {
	background: url(../images/contact.svg) no-repeat left top;
	background-position-y: 5px;
	background-size: 16px 16px;
	padding-left: 20px;
}

/* ================ */
/* Formulare */
/* ================ */

fieldset, .mod_login {
	background-color: #cccccc;
	padding: 16px;
	padding: 1rem;
}

.widget { margin-bottom: 1.5rem; }

form label, form input { display: block; }

form label { font-style: italic; }

form input[type="text"],
form input[type="email"],
form input.text,
form textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #ffffff;
	background-clip: padding-box;
	border: 1px solid #ffffff;
	border-radius: 4px;
	box-sizing: border-box;
	font-size: 1em;
	line-height: 1.5;
	padding: 10px 10px 9px 10px;
	padding: 0.625rem 0.625rem 0.5625rem 0.625rem;
	text-align: left;
	width: 100%;
}

/* ================ */
/* Navigation */
/* ==== */

.breadcrumb {
	background: #ffffff;
	border-right: 1px solid #ffffff;
	border-left: 1px solid #ffffff;
	padding-bottom: 16px;
	padding-bottom: 1rem;
}

.mod_breadcrumb {
	font-size: 0.875em;
	font-size: 14px;
	font-style: italic;
}

.mod_breadcrumb a,
.mod_breadcrumb a:visited,
.mod_breadcrumb a:hover,
.mod_breadcrumb a:active { text-decoration: none; }

.mod_breadcrumb a,
.mod_breadcrumb a:visited { color: #d5127f; }

.mod_breadcrumb a:after {
	content: "»";
	padding-left: 16px;
	padding-left: 1rem;
}

.mod_breadcrumb ul { list-style-type: none; }

.mod_breadcrumb li {
	display: inline;
	padding-right: 9px;
	padding-right: 0.5625rem;
}

.mod_breadcrumb li.last { padding-right: 0; }

.mod_breadcrumb li:first-child:before {
	content: "Sie befinden sich hier:";
	padding-right: 16px;
	padding-right: 1rem;
}

.mod_breadcrumb li.active { font-weight: 700; }

@media (max-width:899px) {
.mod_breadcrumb { display: none; }
}

nav li { float: left; }

nav a, nav a:visited,
.mod_newsmenu a, .mod_newsmenu a:visited {
	color: #57222a;
	text-decoration: none;
}

nav a:hover, nav:active,
.mod_newsmenu a:hover, .mod_newsmenu a:active {
	color: #fc5ab1;
	text-decoration: none;
}

.main-nav {
	float: right;
	font-family: "PT Serif", Georgia, "Times New Roman", Times, serif;
}

.main-nav a:hover { color: #fc5ab1; }

.main-nav ul {
	margin: 0;
	padding: 0;
}

.main-nav li {
	display: inline;
	margin: 0;
	padding: 0;
}

.main-nav li.active, .main-nav .trail { font-weight: 700; }

.main-nav .level_1 li:after {
	content: "|";
	padding-left: 16px;
	padding-left: 1rem;
	padding-right: 16px;
	padding-right: 1rem;
}

.main-nav .level_1 li.last:after,
.main-nav .level_2 li:after,
.main-nav .level_3 li:after,
.main-nav .level_4 li:after {
	content: "";
	padding-left: 0;
	padding-right: 0;
}

/* ================ */
/* Sub-Navigation rechts */
/* ================ */

@media (max-width:599px) {
.sub-nav { display: none; }
}

.sub-nav, .mod_newsmenu {
	border-bottom: 1px dotted #666666;
	margin-bottom: 32px;
	margin-bottom: 2rem;
	padding-bottom: 32px;
	padding-bottom: 2rem;
}

.sub-nav ul, .mod_newsmenu ul { margin-bottom: 0; }

.sub-nav ul.level_1, .mod_newsmenu ul {
	background-color: #e2d3be;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	padding: 5px;
}

.mod_newsmenu ul {
	list-style-type: none;
}

.sub-nav li, .mod_newsmenu li {
	border-bottom: 2px dotted #ffffff;
	float: none;
	text-transform: none;
}

.sub-nav .level_2 li, .sub-nav .level_3 li, .sub-nav .level_4 li { border-bottom: none; }

.sub-nav li.first {}

.sub-nav li.last, .mod_newsmenu li.last { border-bottom: none; }

.sub-nav span.active, .mod_newsmenu span.active { font-weight: 700; }

.sub-nav .level_2 li.active .level_3 li { font-weight: 400; }

.sub-nav span, .sub-nav strong,
.mod_newsmenu a, .mod_newsmenu span {
	display: block;
	padding-top: 8px;
	padding-top: 0.5rem;
	padding-bottom: 8px;
	padding-bottom: 0.5rem;
}

.sub-nav .level_2 a, .sub-nav .level_3 a, .sub-nav .level_4 a,
.sub-nav .level_2 span, .sub-nav .level_3 span, .sub-nav .level_4 span {
	padding-top: 6px;
	padding-top: 0.375rem;
	padding-bottom: 6px;
	padding-bottom: 0.375rem;
}

/*.sub-nav .level_2 a,*/ .sub-nav .level_2 span {
	padding-left: 24px;
	padding-left: 1.5rem;
}

/*.sub-nav .level_3 a,*/ .sub-nav .level_3 span {
	padding-left: 40px;
	padding-left: 2.5rem;
}

/*.sub-nav .level_4 a,*/ .sub-nav .level_4 span {
	padding-left: 56px;
	padding-left: 3.5rem;
}


/* ================ */
/* Footer Navigation */
/* ================ */

.footer-nav, .anmeldung {
	color: #ffffff;
	float: right;
	font-family: "PT Serif", Georgia, "Times New Roman", Times, serif;
	font-style: italic;
	padding-top: 16px;
	padding-top: 1rem;
}

.footer-nav a, .footer-nav a:visited,
.anmeldung a, .anmeldung a:visited { color: #ffffff; }

.footer-nav a:hover, .footer-nav a:active, .footer-nav a:focus,
.anmeldung a:hover, .anmeldung a:active, .anmeldung a:focus { color: #f19200; }

.anmeldung a, .anmeldung a:visited, .anmeldung a:hover, .anmeldung a:active, .anmeldung a:focus {
	text-decoration: none;
}

.footer-nav li:after {
	content: "|";
	padding-left: 16px;
	padding-left: 1rem;
	padding-right: 16px;
	padding-right: 1rem;
}

.footer-nav li.last:after {
	content: "";
	padding-left: 16px;
	padding-left: 1rem;
	padding-right: 0;
}

.footer-nav li.active, .footer-nav span.active,
.anmeldung li.active, .anmeldung span.active { font-weight: 700; }

/* ================ */
/* mobile Navigation */
/* ================ */

.mod_mobile_menu {
	position: absolute;
	top: 40px;
	top: 2.5rem;
	right: 30px;
	right: 1.875rem;
	z-index: 5000;
}

@media (min-width:520px) {
.mod_mobile_menu {
	position: absolute;
	top: 55px;
	top: 3.4375rem;
	right: 30px;
	right: 1.875rem;
	z-index: 5000;
}
}

@media (min-width:600px) {
.mod_mobile_menu {
	position: absolute;
	top: 68px;
	top: 4.25rem;
	right: 45px;
	right: 2.8125rem;
	z-index: 5000;
}
}

@media (min-width:651px) {
.mod_mobile_menu {
	position: absolute;
	top: 80px;
	top: 5rem;
	right: 60px;
	right: 3.75rem;
	z-index: 5000;
}
}

.mobile_menu {
	cursor: pointer;
	display: block;
	z-index: 5000;
}

.mobile_menu .inner {
	height: 100%;
	overflow-y: auto;
}

.mobile_menu_trigger { cursor: pointer; }

.mobile_menu_trigger .nav-icon {
	cursor: pointer;
	height: 45px;
	position: relative;
	width: 50px;
}

.mobile_menu_trigger .nav-icon span {
	background: #d5127f;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	height: 6px;
	left: 0;
	opacity: 1;
	position: absolute;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: 0.25s ease-in-out;
	transition: 0.25s ease-in-out;
	width: 50px;
}

.mobile_menu_trigger .nav-icon span:nth-child(1) {
	background: #d5127f;
	top: 0px;
}

.mobile_menu_trigger .nav-icon span:nth-child(2) {
	background: #d5127f;
	top: 15px;
}

.mobile_menu_trigger .nav-icon span:nth-child(3) {
	background: #d5127f;
	top: 30px;
}

.mobile_menu_trigger.active .nav-icon span:nth-child(1) {
	background: #d5127f;
	top: 10px;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

.mobile_menu_trigger.active .nav-icon span:nth-child(2) { display: none; }

.mobile_menu_trigger.active .nav-icon span:nth-child(3) {
	background: #d5127f;
	top: 10px;
	-webkit-transform: rotate(-225deg);
	transform: rotate(-225deg);
}

.mobile_menu_overlay { background: rgba(255,255,255,0.8) !important; }

.mobile_menu .inner {
	background: #e2d3be;
	height: 100%;
	padding-top: 32px;
	padding-top: 2rem;
	overflow-y: auto;
}

.mobile_menu nav {
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

.mobile_menu ul {
	text-align: left;
	text-transform: uppercase;
}

.mobile_menu .level_2 li {
	border-bottom: 0;
	text-transform: none;
}

.mobile_menu li {
	border-bottom: 1px dotted #444444;
	float: none;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.mobile_menu .mobile-nav-start li.first { border-top: 1px dotted #444444; }

.mobile_menu a, .mobile_menu a:visited, .mobile_menu a:hover, .mobile_menu a:active {
	display: block;
	text-decoration: none;
}

.mobile_menu li.active a, .mobile_menu li.active strong { display: block; }

.mobile_menu li.active strong { font-weight: 700; }

.mobile_menu a:hover { color: #fc5ab1; }

/* ================ */
/* Einrückungen mobile menu */
/* ================ */

.mobile_menu .level_1 a, .mobile_menu .level_1 strong { padding-left: 30px; }

.mobile_menu .level_2 a, .mobile_menu .level_2 strong { padding-left: 30px; }

.mobile_menu .level_3 a, .mobile_menu .level_3 strong { padding-left: 50px; }

.mobile_menu .level_4 a, .mobile_menu .level_4 strong { padding-left: 70px; }

.main-nav { display: block; }

@media (max-width:899px) {
.main-nav { display: none; }
}

.mobile-nav { display: block; }

@media (min-width:900px) {
.mobile_menu { display: none; }
}

.cal-max-width {
	max-width: 100%;
}

/* ================ */
/* Hilfsklassen */
/* ================ */

.block:before,
.block:after {
	content: "";
	display: table;
}

.block:after { clear: both; }

.invisible { display: none; }

.invisible {
	border: 0 none;
	clip: rect(0px, 0, 0, 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.float_left { float: left; }

.float_right { float: right; }

.text-right { text-align: right; }

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