body { font-size: 14px; padding-top: 75px; }
h1, h2, h3, h4, h5 { margin-bottom: 0.75em; hyphens: auto; }
h1 { font-size: 2.5em; line-height: 1em; }
h2 { font-size: 2em; line-height: 1em; }
h3 { font-size: 1.5em; line-height: 1.166666666666667em; }
h4 { font-size: 1.277777777777778em; line-height: 1.25em; }
h5 { font-size: 1em; line-height: 1.25em; }


/* Weiterlesen-Links */
.mod_article a.arrow, .mod_article .ce_hyperlink.arrow a { padding-left: calc(1em + 45px); }
.mod_article a.arrow:before, .mod_article .ce_hyperlink.arrow a:before { left: 0; width: 45px; height: 45px; border-radius: 23px; top: -13px; }


/***** CONTAINER *****/

.inside { padding-left: 20px; padding-right: 20px; }
#header { height: 75px; background-color: #fff; }
#header .logo { padding: 12px 0; width: 50%; }
#logo { height: 51px; width: auto; }


/***** HEADER *****/

#header { position: fixed; }
#header .inside { display: flex; justify-content: space-between; align-content: stretch; }
#header .xtd { display: flex; }
#header .xtd > div > a { display: block; }
#header .xtd svg { width: auto; display: block; }
#header .search, #header .mail { margin-right: 20px; }
@media screen and (max-width: 340px) {
	#header .search, #header .mail { margin-right: 10px; }
}
#menutoggler { display: block; width: 37px; height: 75px; background: url("assets/menutoggler.svg") no-repeat center center; cursor: pointer; }

@media screen and (min-width: 400px) {
	#header .xtd > div > a { padding: 22.5px 0; }
	#header .xtd svg { height: 30px; }
	#menutoggler { width: 37px; }
}
@media screen and (max-width: 399px) {
	#header .xtd > div > a { padding: 27.5px 0; }
	#header .xtd svg { height: 20px; }
	#menutoggler { width: 27px; background-size: contain; }
}

#header .menu { background: #00a8ba; height: calc(100vh - 75px); overflow: auto; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 20px 0; position: fixed; width: 100%; }
#mainnav { margin-bottom: 1em; }
#mainnav a, #mainnav strong { display: block; }
#mainnav ul.level_1 > li > a, #mainnav ul.level_1 > li > strong { font-size: 1.5em; line-height: 1.25em; font-weight: 600; padding: 4px 20px; text-transform: lowercase; }
#mainnav ul.level_2 a, #mainnav ul.level_2 strong { padding: 1px 20px; font-size: 1.25em; line-height: 1.25em; }
#mainnav ul.level_2 li.last > a, #mainnav ul.level_2 li.last > strong { padding-bottom: 5px; }
#mainnav ul.level_2, #mainnav ul.level_3 { display: none; margin-bottom: 2px; }
#mainnav ul.level_1 > li:hover ul.level_2, #mainnav ul.level_2 > li:hover ul.level_3 { display: block; background: #0299ac; }
#mainnav ul.level_1 > li:hover, #mainnav ul.level_1 > li.active, #mainnav ul.level_1 > li.trail { background: #0299ac; }
#mainnav li:hover > a, #mainnav li.active > a, #mainnav li.trail > a, #mainnav li.active > strong, #mainnav li.trail > strong { color: #fff; }

#header .mod_changelanguage, #header .mod_customnav { font-size: 1.5em; line-height: 1.25em; }
#header .mod_changelanguage a, #header .menu .mod_customnav a, #header .mod_changelanguage strong, #header .menu .mod_customnav strong { color: #fff; text-transform: lowercase; padding: 4px 20px; display: block; }
#header .mod_changelanguage a:hover, #header .menu .mod_customnav a:hover { color: #003348; }


/***** SLIDER / BANNER *****/

#slideshow .ce_image .hl { bottom: 0; left: 0; width: 100%; background: rgba(0,168,186,0.91); color: #fff; padding: 20px; }
#slideshow .ce_image .hl span { font-size: 2.5em; line-height: 1.1em; }
#slideshow .slider-control { display: none; }
#banner .image_container { position: relative; }
#banner .band { width: 100%; padding: 20px; }


/*** MAIN ***/

.mod_article .inside .block.bg-white, .mod_article .inside .block.bg-light, .mod_article .inside .block.bg-medium { padding: 1.5em; margin-bottom: 1.5em; }
.mod_article .inside .block.ce_text.bg-light, .mod_article .inside .block.ce_text.bg-medium { padding-bottom: 1em; }
.mod_newslist .layout_latest .image_container.float_left { float: none; }
.mod_newslist .layout_latest .ce_text h3 { line-height: 1.2em; } 
.mod_newslist .layout_latest .ce_text h3 a { color: #003348; }


/* Teaser */
.mod_article.teaser > .inside > .ce_text, .mod_article.teaser .rs-column > div:not(.event) { padding: 1.5em 1.5em 0.5em; }
.mod_article.teaser > .inside > .ce_text > .image_container, .mod_article.teaser .rs-column .image_container { margin-left: -1.5em; margin-right: -1.5em; margin-bottom: 1.5em; margin-top: -1.5em; } 
.mod_article.teaser > .inside > .mod_newslist > .layout_latest > .ce_text { background: #ebf8fa; padding: 1.5em 1.5em 0.5em; }
.mod_article.teaser > .inside > .mod_newslist > .layout_latest { margin-bottom: 1.5em; }
.mod_article.teaser.bg-light > .inside > .mod_newslist > .layout_latest > .ce_text { background: #fff; }
.mod_article.teaser > .inside > .mod_newslist > .layout_latest > .image_container { margin-bottom: 0; }

/* Columns */
.rs-column + .rs-column { margin-top: 1.5em; }
.mod_article.fachstellen .rs-column + .rs-column { margin-top: 2.5em; }

/* Pagination */
.pagination ul { text-align: center; }
.pagination li { display: none; }
.pagination li.previous, .pagination li.next { display: inline-block; }
.pagination a.previous, .pagination a.next { padding-left: 57px; }
.pagination a.previous:before, .pagination a.next:before { width: 45px; height: 45px; border-radius: 23px; top: -13px; left: 0; } 

/* Accordions */
.ce_accordion + .ce_accordion { border-top: 1px solid #00a8ba; }
.ce_accordion .toggler { font-size: 1.388888888888889em; padding-left: 33px; line-height: 1.4em; hyphens: auto; }
.accordion { padding-left: 33px; }
.ce_accordion .toggler:before { top: 0.6em; left: 0em; }

/* Events */
.mod_eventlist .rs-column + .rs-column { margin-top: 0; }
.mod_eventlist .event.layout_list { padding: 1.166666666666667em; }
.mod_eventlist .header { font-size: 1.277777777777778em; margin: 0 0 0.1em; }
.mod_eventlist h3 { font-family: "Open Sans", sans-serif; font-size: 1.1em; font-weight: 600; line-height: 1.25em; margin: 0 0 1em; }	
.mod_eventlist .event.layout_simple .ort { margin: 0.5em 0; }



/* Publikationen */
.ce_publikation + .ce_publikation .rs-columns { padding-top: 1.5em; }
.ce_publikation.bg-light .rs-columns, .ce_publikation.bg-medium .rs-columns { padding: 0; }
.ce_publikation .rs-column.-large-col-1-1 h2, .ce_publikation .rs-column.-large-col-1-1 h3 { font-size: 1.5em; }
.ce_publikation .rs-column.-large-col-3-2 h2, .ce_publikation .rs-column.-large-col-3-2 h3 { font-size: 1.1em; }
.ce_publikation .pdf_container svg { width: 35px; height: auto; }
.ce_publikation .pdf_container + .text, .ce_publikation.bg-light .rs-column.-large-col-3-1, .ce_publikation.bg-medium .rs-column.-large-col-3-1 { margin-left: calc(35px + 1em); }
.mod_article.podcast .rs-columns { padding: 1.5em 1.5em 0.5em; }

/* Map */
.mod_cm_membergooglemaps .inside { padding: 0; }
.mod_cm_membergooglemaps a.reset { background: rgba(255, 0, 0, 0.4); text-indent: -9999em; position: absolute; right: 20px; }
.mod_cm_membergooglemaps a.reset:before { content: "x"; position: absolute; left: 0.5em; z-index: 9999; color: white; font-size: 1.5em; text-indent: 0; }
.mod_cm_membergooglemaps input.text { max-width: 40%; }
.mod_cm_membergooglemaps .memberCard { box-sizing: border-box; }


/***** FOOTER *****/

#footer .inside { padding-top: 2em; padding-bottom: 2em; }
#footer a { color: #003348; }
#footer a:hover { color: #fff; }


@media (prefers-color-scheme: dark) {
	#header { background-color: #212121; }
	#header .logo { padding: 0; }
	#logo { border: 12px solid white; background: #fff; }
	#header svg path { fill: #fff; }
	#menutoggler { background-image: url("assets/menutoggler-white.svg"); }
	#header .menu, .mod_article.teaser > .inside > .mod_newslist > .layout_latest > .ce_text { background-color: #3e3e3e; }
	#mainnav ul.level_1 > li:hover ul.level_2, #mainnav ul.level_2 > li:hover ul.level_3, #mainnav ul.level_1 > li:hover, #mainnav ul.level_1 > li.active, #mainnav ul.level_1 > li.trail { background: #212121; }
	#header .mod_changelanguage a:hover, #header .menu .mod_customnav a:hover, #footer a:hover { color: #fff; font-weight: 600; }
	.ce_accordion + .ce_accordion { border-color: #fff; }
	.mod_newslist .layout_latest .ce_text h3 a, #footer a { color: #fff; }
}

