:root{
	--blau:#015ea4;
	--red:#d20f13;
}
header #header{
	height:200px;
}
#header #div_logo-headername #header_name{
	display:none;
}
#header #logo figure a {
	align-items: baseline;
}
#infobuttons{
	display:none !important;
}
div.div_bannerClose {
	background-color: #fff;
}
#bannerContent{
	padding:0;
}
#div_banner{
	top:10em;
	bottom:unset;
	right:0;
	z-index:9998;
	border:none;
	border-radius:15px;
	padding:25px;
	max-width: 24vw;
	min-width: 336px;
}
#div_banner.banner--collapsed{
	min-width:unset;
	padding:0;
}
div.div_bannerClose {
	position: absolute;
	left: unset;
	right: 0.5em;
	top: 0.5em;
}
#div_banner div.gallery-row{
	margin-bottom:0;
}
#bannerContent{
	background-color: #fff;
}
#div_banner h1{
	color:var(--red);
	text-align:left;
	margin-bottom: 25px;
}
#div_banner h3{
	text-align:left;
	font-size:1.5em;
}
#bannerContent #c11423 a[href^="tel:"]{
	background-color: var(--red);
	width: 100%;
	display: block;
	padding: 15px;
	color: #fff;
	border-radius: 15px;
	margin: 25px 0;
	font-size: 20px;
	font-weight: bold;
	text-decoration: none;
}
#bannerContent #c11423 a{
	text-decoration: underline;
	color: var(--blau);
	font-weight: bold;
}
#c11423 p:last-child{
	padding-bottom:0;
}
#logo{
	display: flex;
	width: auto;
}
header.navbar.navbar-default.navbar-has-image.navbar-top.navbar-fixed-top.navbar-transition{
	background-color: var(--blau);
}

#content > div.frame-type-carousel:first-child {
	position: relative;
	top:0 !important;
}
#content > div.frame-type-carousel:first-child > header {
	top: unset;
	width: fit-content;
	background-color: #fff;
	bottom: calc(10vw + 103px);
	left: 10vw;
}
#content > div.frame-type-carousel:first-child > header h2{
	color:var(--red);
}
#content > div.frame-type-carousel:first-child > div.carousel div.carousel-item-type div.valign{
	bottom: 10vw;
	width: fit-content;
	left: 10vw;
	right: unset;
	text-align: right;
	background-color: #fff;
	top: unset;
}
#content > div.frame-type-carousel:first-child > div.carousel div.carousel-item-type div.valign div.vcontainer div.carousel-text-inner h2{
	text-align:right;
	color:var(--blau);
}
#content > div.frame-type-image > div.gallery-row div.gallery-item.col-xs-12 figure.image {
  display: flex;
  align-items: baseline !important;
  justify-content: center;
}
/* Headerbild: volle Breite, 200px Höhe, Seitenverhältnis per object-fit erhalten */
#content > div.frame-type-image {
    height: 200px;
    overflow: hidden;
}

#content > div.frame-type-image > div.gallery-row,
#content > div.frame-type-image > div.gallery-row div.gallery-item,
#content > div.frame-type-image > div.gallery-row div.gallery-item figure.image {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}

#content > div.frame-type-image > div.gallery-row div.gallery-item figure.image img {
    width: 100%;
    height: 100%;
    object-fit: cover;       /* Seitenverhältnis bleibt, Bild wird mittig zugeschnitten */
    object-position: center; /* Bildausschnitt zentrieren – bei Bedarf anpassen */
    display: block;
}
#content > div.frame-type-image img.lazyload,
#content > div.frame-type-image img.lazyloaded {
    opacity: 1 !important;
    transition: none;
}
#content.main-section{
	/* margin-top:800px; */
}
header.navbar.navbar-default.navbar-top.navbar-fixed-top,
header.navbar.navbar-default.navbar-top.navbar-fixed-top div.container{
	background-color:transparent;
}
header.navbar.navbar-default.navbar-top.navbar-fixed-top + div.body-bg.body-bg-top{
	padding-top:0;
}
header.navbar.navbar-default.navbar-top.navbar-fixed-top div.container nav.navbar-collapse.collapse ul.nav.navbar-nav.navbar-main li a {
  color: #fff;
}
#c11415 table td h3.text-center{
	margin:1em 0;
}
div.body-bg > div#content.main-section > div.frame-type-carousel div.carousel.slide div.carousel-inner div.item {
  height: 55vw;
}
#c11415 div.table-responsive table td{
	width:33.3%;
}
#content #c11416.frame-type-image{
	height:auto;
}
#c11421 div.gallery-row{
	align-items: flex-start;
	justify-content: space-between;
}
#c11421 div.gallery-row div.gallery-item figure.image figcaption.caption{
	color: #fff;
	font-size: inherit;
}
header.navbar.navbar-default.navbar-top.navbar-fixed-top div.container nav.navbar-collapse.collapse ul.nav.navbar-nav.navbar-main li a span.bar {
	background: #fff;
}
@media (max-width: 2204px){
	#c11421 div.gallery-row div.gallery-item.col-md-4.col-sm-4.col-xs-4{
		width:calc( ( 100% - 30px ) / 3);
		margin:0;
	}
	#c11421 div.gallery-row div.gallery-item.col-md-4.col-sm-4.col-xs-4:nth-child(2){
		margin:0 15px;
	}
}
@media (min-width: 992px) and (max-width: 1440px){
	.page-kontakt header:not(.navbar-transition).navbar > div.container > #header + div.navbar-header + nav.navbar-collapse.collapse,
	.page-impressum header:not(.navbar-transition).navbar > div.container > #header + div.navbar-header + nav.navbar-collapse.collapse,
	.page-datenschutz header:not(.navbar-transition).navbar > div.container > #header + div.navbar-header + nav.navbar-collapse.collapse{
		background-color: var(--blau);
	}
	.page-kontakt header:not(.navbar-transition).navbar > div.container > #header + div.navbar-header + nav.navbar-collapse.collapse > ul.nav li a,
	.page-impressum header:not(.navbar-transition).navbar > div.container > #header + div.navbar-header + nav.navbar-collapse.collapse > ul.nav li a,
	.page-datenschutz header:not(.navbar-transition).navbar > div.container > #header + div.navbar-header + nav.navbar-collapse.collapse > ul.nav li a{
		color:#fff;
	}
	
}
@media (max-width: 1280px){
	#content > div.frame-type-carousel:first-child > header {
		bottom: calc(7vw + 60px + 1.925em);
		left: 7vw;
	}
	#content > div.frame-type-carousel:first-child > div.carousel div.carousel-item-type div.valign {
		bottom: 7vw;
		left: 7vw;
	}
}
@media (max-width: 1199px){
	#content > div.frame-type-carousel:first-child > header {
		bottom: calc(7vw + 60px + 1.925em);
	}
}
@media (max-width: 991px){
	#div_banner{
		top:5em;
	}
	#content > div.frame-type-carousel:first-child > header,
	#content > div.frame-type-carousel:first-child > div.carousel div.carousel-item-type div.valign{
		padding:15px;
	}
	#content > div.frame-type-carousel:first-child > header{
		bottom: calc(7vw + 30px + 1.925em);
	}
	header.navbar div.container div.navbar-header.navbar-header-main {
		height: 74px;
	}
	header.navbar button.navbar-toggle.collapsed span.icon-bar, header.navbar button.navbar-toggle span.icon-bar, header.navbar.navbar-transition button.navbar-toggle span.icon-bar {
		background-color: #fff;
	}
	header.navbar.navbar-default.navbar-has-image.navbar-top.navbar-fixed-top div.container nav.navbar-collapse.collapse.in{
		background-color:var(--blau);
	}
}
@media (min-width: 1025px){
	#div_banner{
		max-width:500px;
	}
}
@media (max-width: 815px){
	#c11421 div.gallery-row{
		flex-direction: column;
		align-items: center;
	}
	#c11421 div.gallery-row div.gallery-item.col-md-4.col-sm-4.col-xs-4{
		width:100%;
	}
	#c11421 div.gallery-row div.gallery-item.col-md-4.col-sm-4.col-xs-4:nth-child(2){
		margin:15px 0;
	}
}
@media (max-width: 744px){
	div.body-bg > div#content.main-section > div.frame-type-carousel div.carousel.slide div.carousel-inner div.item {
		height: 100vw;
	}
	#c11415 div.table-responsive table{
		display:block;
	}
	#c11415 div.table-responsive table td {
		width: 100%;
		float: left;
	}
}
@media (max-width: 555px){
	#content > div.frame-type-carousel:first-child > header {
		bottom: calc(16vw + 30px + 1.6em);
	}
	#content > div.frame-type-carousel:first-child > div.carousel div.carousel-item-type div.valign {
		bottom: 16vw;
	}
}
@media (max-width: 430px){
	#content > div.frame-type-carousel:first-child > header,
	#content > div.frame-type-carousel:first-child > div.carousel div.carousel-item-type div.valign{
		left:0;
	}
	div.w60 {
		max-width: 90%;
		width: 90%;
		margin: 0 auto;
	}
	div.body-bg > div#content.main-section > div.frame-type-carousel div.carousel.slide div.carousel-inner div.item {
		height: 160vw;
	}
	body, body > header.navbar, #content.main-section div.csc-default.frame-type-carousel{
		min-width:360px !important;
	}
	#content > div.frame-type-carousel:first-child > header{
		text-align:left;
		width: max-content;
	}
}
#c11315.csc-default.frame.frame-default.frame-type-carousel.frame-layout-0.frame-space-before-none.frame-space-after-none header,
#carousel-11315.carousel.carousel-transition-slide.slide div.carousel-inner div.item.active.carousel-item-type.carousel-item-type-header div.valign{
	display:none !important;
}