
.modul-1 { float: left; width:100%; position: relative; }
.modul-1 img { width:100%; }
.modul-1 .title { font-family: 'Droid Serif', serif;
    text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.85);
    position: absolute;
    z-index: 21000;
    bottom: 0px;
    font-size: 36px;
    left: 0px;
    color: #EFEFEF;
    background: rgba(0, 136, 204, 0.5);
    padding: 2%;
    width: 100%;
    line-height: 1.1em; }
.modul-1 .title .slider_text_top  a { color: #FFFFFF; }

.modul-2 { float: left; width:100%; position: relative; }
.modul-2 img { width:100%; }
.modul-2 .title { font-family: 'Droid Serif', serif;
    text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.85);
    position: absolute;
    z-index: 21000;
    top: 0px;
    font-size: 36px;
    left: 0px;
    color: #EFEFEF;
    background: rgba(0, 136, 204, 0.5);
    padding: 2%;
    width: 100%;
    line-height: 1.1em; }
.modul-2 .title .slider_text_top  a { color: #FFFFFF; }

.modul-3-headline { background: #0088CC; 
    padding: 16px 18px;
    font-size: 24px;
    color: #FFFFFF;
    font-family: "Open Sans", Arial, sans-serif;
    margin: 0 5% 30px 0;
    line-height: 1.2em; float: left;
		width: 35%; }
		
.modul-3-spalte { float:left; width: 60%; }
.modul-3-subtext { font-size: 24px; color: #000000;}
.knopf { float:left; padding: 13px 20px; margin-top: 20px; margin-right: 20px; }
.knopf-outline { border: 1px solid #0088CC; }

@media (max-width: 768px) {
    .modul-3-headline { width: 100%; }
		.modul-3-spalte { width: 100%; }
}

.modul-4 { float: left; width: 100%; }
.modul-4-bild { float: right; width: 45%; }
.modul-4-bild img { width: 100%; }
.modul-4-text { float: left; width: 50%; margin-right: 5%; }

.modul-4-headline { background: #0088CC; width: 100%; padding: 16px 18px; font-size: 24px; color: #FFFFFF; font-family: "Open Sans", Arial, sans-serif; margin: 0 5% 30px 0; line-height: 1.2em; float: left; }
.modul-4-subheadline { font-size: 18px; color: #000000; font-weight: bold; }
.modul-4-inhalt { padding-top: 20px; }
@media (max-width: 768px) {
    .modul-4-bild { width: 100%; }
		.modul-4-text { width: 100%; margin-left: 0; }
}

.modul-5 { float: left; width: 100%; }
.modul-5-bild { float: left; width: 45%; }
.modul-5-bild img { width: 100%; }
.modul-5-text { float: left; width: 50%; margin-left: 5%; }

.modul-5-headline { background: #0088CC; width: 100%; padding: 16px 18px; font-size: 24px; color: #FFFFFF; font-family: "Open Sans", Arial, sans-serif; margin: 0 5% 30px 0; line-height: 1.2em; float: left; }
.modul-5-subheadline { font-size: 18px; color: #000000; font-weight: bold; }
.modul-5-inhalt { padding-top: 20px; }
@media (max-width: 768px) {
    .modul-5-bild { width: 100%; }
		.modul-5-text { width: 100%; margin-left: 0; }
}

.modul-6-video { float: left; width: 48%; margin-right: 4%; }
.modul-6-inhalt { float: left; width: 48%; }
.modul-6-headline { background: #0088CC; width: 100%; padding: 16px 18px; font-size: 24px; color: #FFFFFF; font-family: "Open Sans", Arial, sans-serif; margin: 0 5% 30px 0; line-height: 1.2em; float: left; }
.modul-6-subhead { font-size: 18px; color: #0088CC; font-weight: bold; }
.modul-6-title { font-size: 18px; color: #000000; font-weight: bold; }

.modul-7-swiper { position: relative; }
.modul-7-inhalt { position: absolute; right: 100px; top: 25%; width: 30%; background: #FFFFFF; z-index: 10000; padding:20px; border-radius: 3px; }
.modul-7-headline { color: #0088CC; font-size: 24px; }
.modul-7-subhead { color: #000000; font-size: 18px; font-weight: bold; padding: 20px 0; margin:0; }

.modul-8-swiper { position: relative; }
.modul-8-inhalt { position: absolute; right: 100px; top: 25%; width: 30%; background: #FFFFFF; z-index: 10000; padding:20px; border-radius: 3px; }
.modul-8-headline { color: #0088CC; font-size: 24px; }
.modul-8-subhead { color: #000000; font-size: 18px; font-weight: bold; padding: 20px 0; margin:0; }

.swiper {
	width: 100%;
	height: 100%;
}

@media (max-width: 1280px) {
	.modul-7-inhalt { position: relative; right: auto; bottom: 0; top: auto; width: 100%; background: #FFFFFF; z-index: 10000; padding:20px; border-radius: 3px; }
	.modul-7-headline { color: #0088CC; font-size: 18px; }
	.modul-7-subhead { color: #000000; font-size: 16px; font-weight: bold; padding: 20px 0; margin:0; }
	.modul-7-text { padding-bottom: 20px; }
	
	.modul-8-inhalt { position: relative; right: auto; bottom: 0; top: auto; width: 100%; background: #FFFFFF; z-index: 10000; padding:20px; border-radius: 3px; }
	.modul-8-headline { color: #0088CC; font-size: 18px; }
	.modul-8-subhead { color: #000000; font-size: 16px; font-weight: bold; padding: 20px 0; margin:0; }
	.modul-8-text { padding-bottom: 20px; }
}

@media (max-width: 768px) {
	.modul-7-inhalt { position: relative; right: auto; bottom: 0; top: auto; width: 100%; background: #FFFFFF; z-index: 10000; padding:20px; border-radius: 3px; }
	.modul-7-headline { color: #0088CC; font-size: 14px; }
	.modul-7-subhead { color: #000000; font-size: 12px; font-weight: bold; padding: 20px 0; margin:0; }
	.modul-7-text { padding-bottom: 20px; }
	
	.modul-8-inhalt { position: relative; right: auto; bottom: 0; top: auto; width: 100%; background: #FFFFFF; z-index: 10000; padding:20px; border-radius: 3px; }
	.modul-8-headline { color: #0088CC; font-size: 14px; }
	.modul-8-subhead { color: #000000; font-size: 12px; font-weight: bold; padding: 20px 0; margin:0; }
	.modul-8-text { padding-bottom: 20px; }
}

.modul-9-headline { width: 100%; border-bottom: 4px solid #0088CC; padding: 20px 0; margin: 0; font-family: "NotoSerif", serif, "Open Sans", Arial, sans-serif; }
.modul-9-icon { position: relative; float: left; width: 30%; margin: 20px 1.66%; }
.modul-9-icon .image { width: 100%; margin-bottom: 10px; }
.modul-9-icon .image img { width: 100%; }
.modul-9-icon .image .micon { width: 100%; margin-bottom: 10px; text-align: center; padding: 24%; }
.modul-9-icon p.title { font-weight: bold; }

@media (max-width: 1080px) {
	.modul-9-icon { position: relative; float: left; width: 48%; margin: 20px 1%; }
}

@media (max-width: 768px) {
	.modul-9-icon { position: relative; float: left; width: 100%; margin: 20px 0%; }
}

.modul-10-headline { width: 100%; border-bottom: 4px solid #0088CC; padding: 20px 0; margin-bottom: 20px; font-family: "NotoSerif", serif, "Open Sans", Arial, sans-serif; }
.modul-10-boxen { position: relative; float: left; width: 100%; clear: both; }
.projekt_boxen_ende { clear:both;width:100%;height:30px; position: absolute;}
.pro10boxen { float: left; width: 100%; }
.pro10boxen_50 { float: left; width: calc( 50% - 10px); }
.pro10boxen_50:first-child { margin-right: 20px; }
.pro10boxen_33 { float: left; width: calc( 33.3% - 13.3px); }
.pro10boxen_33:first-child { margin-left: 0px; }
.gridcols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.gridcols img {
    max-width: 100%;
    height: auto;
    display: block;
}
.gridcols > * {
    min-width: 0;
}
.boxcols { background-color: #ccc; aspect-ratio: 1; width:100%; }

.pro10box1 { position: relative; width: 100%; aspect-ratio: 1; }
.pro10box1 .title { position: absolute; bottom: 15px; left: 15px; background: #0088CC; color: #FFFFFF; font-size: 18px; font-weight: 900; padding: 10px 10px; text-transform: uppercase; word-break: break-all; }
.pro10box1 i { position: absolute; color: #FFFFFF; top: calc(50% - 100px); left: calc(50% - 100px); font-size: 200px; }
.pro10box2 { float:left; position: relative; width: 100%; margin-bottom: 20px; aspect-ratio: 2 / 1; }
.pro10box2 .title { position: absolute; bottom: 15px; left: 15px; background: #0088CC; color: #FFFFFF; font-size: 18px; font-weight: 900; padding: 10px 15px; text-transform: uppercase; word-break: break-all; }
.pro10box2 i { position: absolute; color: #FFFFFF; top: calc(50% - 75px); left: calc(50% - 65px); font-size: 150px; }
.pro10box3 { float:left; position: relative; float:left; width :calc( 50% - 10px); margin-bottom: 13px; margin-right: 20px; aspect-ratio: 1 / 1; }
.pro10box3 .title { position: absolute; bottom: 15px; left: 15px; background: #0088CC; color: #FFFFFF; font-size: 18px; font-weight: 900; padding: 10px 15px; text-transform: uppercase; word-break: break-all; }
.pro10box3 i { position: absolute; color: #FFFFFF; top: calc(50% - 55px); left: calc(50% - 40px); font-size: 100px; }
.pro10box4 { float:left; position: relative; float:left; width :calc( 50% - 10px); margin-bottom: 13px; aspect-ratio: 1 / 1; }
.pro10box4 .title { position: absolute; bottom: 15px; left: 15px; background: #0088CC; color: #FFFFFF; font-size: 18px; font-weight: 900; padding: 10px 15px; text-transform: uppercase; word-break: break-all; }
.pro10box4 i { position: absolute; color: #FFFFFF; top: calc(50% - 55px); left: calc(50% - 40px); font-size: 100px; }

@media only screen and (max-width: 1300px) {
  .pro10box2 { margin-bottom: 21px; }
  .pro10box1 .title { font-size: 16px; font-weight: 600; }
  .pro10box2 .title { font-size: 16px; font-weight: 600; }
  .pro10box3 .title { font-size: 16px; font-weight: 600; }
  .pro10box4 .title { font-size: 16px; font-weight: 600; }
  
  .pro10box1 i { position: absolute; top: calc(50% - 90px); left: calc(50% - 65px); font-size: 160px; }
  .pro10box2 i { position: absolute; top: calc(50% - 54px); left: calc(50% - 49px); font-size: 115px; }
  .pro10box3 i { position: absolute; top: calc(50% - 55px); left: calc(50% - 38px); font-size: 80px; }
  .pro10box4 i { position: absolute; top: calc(50% - 55px); left: calc(50% - 38px); font-size: 80px; }
}

@media only screen and (max-width: 900px) {
  .pro10box2 { margin-bottom: 14px; }
  .pro10box1 .title { font-size: 16px; font-weight: 600; }
  .pro10box2 .title { font-size: 16px; font-weight: 600; }
  .pro10box3 .title { font-size: 16px; font-weight: 600; }
  .pro10box4 .title { font-size: 16px; font-weight: 600; }
	.gridcols { grid-template-columns: repeat(2, 1fr); gap: 20px; }
}

@media only screen and (max-width: 500px) {
  .pro10boxen_50 { float: left; width: 100%; }
  .pro10boxen_33 { float: left; width: 100%; margin-left: 0px; }
  .pro10box1 .title { font-size: 14px; font-weight: 400; }
  .pro10box2 .title { font-size: 14px; font-weight: 400; }
  .pro10box3 .title { font-size: 14px; font-weight: 400; }
  .pro10box4 .title { font-size: 14px; font-weight: 400; }
	.gridcols { grid-template-columns: repeat(1, 1fr); gap: 20px; }
}

.socialwall2 { margin-top: 20px; float:left; width: 100%; background: #EDEDED; margin-bottom: 30px; }
.sm-post { background-color: #FFFFFF; font-size: 14px; padding: 10px; width: 31%; max-width: 100% !important;
           position: relative; margin:1%; font-family: Chivo, sans-serif; line-height: 1.2em; border-radius: 4px; }

.sm-post_logo_zeit { text-align: left; color: #000; font-size: 1em; margin-bottom: 10px; border-radius: 4px; }
.sm-post_message { padding: 10px 0; position: relative; margin: auto; }
.sm-post_comment { float:left; width: 100%; margin: 15px 0px 10px 0px; padding: 10px; background: #52b7c1; color: #FFF; position: relative; border-radius: 4px; }
.sm-post_comment .smtext { margin: 0; }

.smtext { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 5; line-clamp: 5;  height: auto; max-height: calc(1.6em * 5);  }
.smweiter { text-align:right; display: none; padding: 10px 0 ; text-decoration: none; color: blue; cursor: pointer; }

.sm-post_message a { color: #43959d; }
.sm-post_title { color: #000000; font-weight: 700; margin: 10px 0; }
.sm-post_footer { border-top: 1px solid white; margin-top: 10px; padding-top: 10px; }
.sm-post_footer i { float:left; margin-right: 10px; }
.sm-post_footer_social { float:right; }
.sm-post_footer_social a { margin-left: 0px; text-align: right; float: left;}
.sm-post_footer_social i { margin-right: 0; margin-left: 10px; }
.sm_color_facebook { color: #3b5999; }
.sm_color_instagram { color: #e41b64; }
.sm_color_twitter { color: #000000; }
.sm_color_youtube { color: #fe0000; }

.sm_kuerzer { float:left; width: 160px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.sm_kuerzer_100 { float:left; width: 100px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }

.sm-filters { margin: 30px 0 0 0; padding: 20px; background: #FFFFFF; border-radius: 4px; }
.button-group-title { float:left; font-size: 20px; font-weight: 700; padding-top: 5px; font-family: Inter; width: 150px; }
.button-group-all { margin-bottom : 20px; }
.button-all { display: inline-block; padding: 0.5em 1.0em; background: #2d3c4b; border: none; color: #FFFFFF; font-family: Inter; font-size: 14px; margin-right: 10px; cursor: pointer; border-radius: 3px; }
.button-all:hover { background-color: #52b7c1; color: #FFF; }
.button-all:active, .button-all.is-checked { background-color: #52b7c1; }
.button-all.is-checked { color: white; }
.button-all:active {}
.button-all-60 { float:left;width:54px }
.button-all-mb10 { margin-bottom: 10px; }
.sm_kanal_buttons { float: left; width: calc(100% - 220px); }
.button-group-all:after { content: ''; display: block; clear: both; }
.button-group-all .button-all { float: left; border-radius: 3px; margin-left: 0; margin-right: 10px; }

.bs-facebook { background: #3b5999; }
.bs-facebook i { color: #FFFFFF !important; }
.bs-instagram { background: #e41b64; }
.bs-instagram i { color: #FFFFFF !important; }
.bs-twitter { background: #000000; }
.bs-twitter i { color: #FFFFFF !important; }
.bs-youtube { background: #fe0000; }
.bs-youtube i { color: #FFFFFF !important; }

.button-single-group { float:left; width: 100%; text-align: center; margin: 20px 0; }
.button-single { display: inline-block; padding: 0.5em 1.0em; background: #2d3c4b; border: none; color: #FFFFFF; font-family: Inter; font-size: 14px; margin-right: 10px;  cursor: pointer; border-radius: 3px; }

.bs-single-facebook { background: #3b5999; }
.bs-single-facebook i { color: #FFFFFF !important; }
.bs-single-instagram { background: #e41b64; }
.bs-single-instagram i { color: #FFFFFF !important; }
.bs-single-twitter { background: #000000; }
.bs-single-twitter i { color: #FFFFFF !important; }
.bs-single-youtube { background: #fe0000; }
.bs-single-youtube i { color: #FFFFFF !important; }

.profil_social { margin-top: 0px; float:left; width: 100%; background: #F9F9F9; margin-bottom: 30px; }
.profil_social .sm-post { float:left; }

.news_social { margin-top: 0px; float:left; width: 100%; margin-bottom: 30px; }
.news-social-headline { float:left; width: 100%; margin: 20px 0px; font-size: 23px; }
.news-social-footer { float:left; width: 100%; margin: 20px 0px; font-size: 18px; font-weight: 400; }
.news_social .sm-post { float:left; width: 100%; margin: 10px 0; }

.presse_social { margin-top: 0px; float:left; width: 100%; margin-bottom: 30px; }
.presse-social-headline { float:left; width: 100%; margin: 20px 0px; }
.presse_social .sm-post { float:left; width: 100%; margin: 10px 0; }

.projekt_social-right { margin-top: 0px; float:left; width: 100%; margin-bottom: 30px; }
.projekt_social-right .sm-post { float:left; width: 90%; margin: 10px 10% 10px 0; }

.projekt_social-left { margin-top: 0px; float:left; width: 100%; margin-bottom: 30px; text-align:left; }
.projekt_social-left .sm-post { float:left; width: 90%; margin: 10px 0 10px 10%; }

.social-post-textblock-right { margin-top: 0px; float:right; width: 33%; margin: 0 0 30px 30px; text-align:left; }
.social-post-textblock-right .sm-post { float:left; width: 100%; margin: 10px 0 10px 0; }

.social-post-textblock-left { margin-top: 0px; float:left; width: 33%; margin: 0 30px 30px 0; text-align:left; }
.social-post-textblock-left .sm-post { float:left; width: 100%; margin: 10px 0 10px 0; }

.sm-halb,
.sm-drei {
    width: 48% !important;
    max-width: 100% !important;
    padding: 10px;
    margin: 0px 2% 0px 0px !important;
}

.sm-drei:last-child { margin: 10px 0 0 0px; }

@media only screen and (min-width: 769px) and (max-width: 1024px) {
    .sm-post { background-color: #F0F0F0; font-size: 14px; padding: 15px; width: 100%; max-width: 46% !important; margin: 0 2% 30px 2%; }
    .news_social .sm-post { padding: 15px; float:left; max-width: 46% !important; margin: 0 2% 30px 2%; }
    .presse_social .sm-post { padding: 15px; float:left; max-width: 46% !important; margin: 0 2% 30px 2%; }
    
    .social-post-textblock-right { margin-top: 0px; float:right; width: 33%; margin: 0 0 30px 30px; text-align:left; }
    .social-post-textblock-right .sm-post { float:left; width: 100%; max-width: 100% !important; margin: 10px 0 10px 0; }
    
    .social-post-textblock-left { margin-top: 0px; float:left; width: 33%; margin: 0 30px 30px 0; text-align:left; }
    .social-post-textblock-left .sm-post { float:left; width: 100%; max-width: 100% !important; margin: 10px 0 10px 0; }
    
    .projekt_social-left .sm-post { float:left; width: 100%; max-width: 100% !important; margin: 10px 0 10px 0; }
    .projekt_social-right .sm-post { float:left; width: 100%; max-width: 100% !important; margin: 10px 0 10px 0; }
}

@media only screen and (max-width: 768px) {
    .sm-post { background-color: #F0F0F0; font-size: 14px; padding: 15px; width: 100%; max-width: 100% !important; margin: 0 0 30px 0; }
    .news_social .sm-post { padding: 15px; float:left; max-width: 100% !important; margin: 0 0 30px 0; }
    .presse_social .sm-post { padding: 15px; float:left; max-width: 100% !important; margin: 0 0 30px 0; }
    
    .social-post-textblock-right { margin-top: 0px; float:right; width: 100%; margin: 0 0 30px 0; text-align:left; }
    .social-post-textblock-right .sm-post { float:left; width: 100%; max-width: 100% !important; margin: 10px 0 10px 0; padding: 10px; }
    
    .social-post-textblock-left { margin-top: 0px; float:left; width: 100%; margin: 0 0 30px 0; text-align:left; }
    .social-post-textblock-left .sm-post { float:left; width: 100%; max-width: 100% !important; margin: 10px 0 10px 0; padding: 10px; }
    .sm_kanal_buttons { clear: left; margin-top: 10px; width: 100%; }
    
    .projekt_social-left .sm-post { float:left; width: 100%; max-width: 100% !important; margin: 10px 0 10px 0; }
    .projekt_social-right .sm-post { float:left; width: 100%; max-width: 100% !important; margin: 10px 0 10px 0; }
}

.counter_kampagne_rahmen { background: #bde9ff; color: #0088CC; float: left; width: 100%; padding: 20px; border-radius: 10px; }
.counter_kampagne_text { font-size: 30px; float:left; width: 100%; padding-bottom: 20px; text-align:center; line-height: 1.2em; }
.counter_kampagne_zahl { font-size: 16px; float:left; width: 100%; }
.zaehlercounter { font-size: 3rem; font-weight: bold; text-align: center; padding-bottom: 10px;  margin-top: 20px; animation: fadeInzaehler 1s ease-in-out; }

@keyframes fadeInzaehler { from { opacity: 0; } to { opacity: 1; } }
.socialwall2box h3 { font-size: 1em; }

/* Mediathek */
.c_mediathek_video { background: #0088CC; float:left; width: 100%; margin-bottom: 30px; }
.mediathek_video_panel { float:left; width:31%; margin-right:1%; background: #ffffff; padding:10px; margin-left:10px; margin-bottom: 30px; }
.mediathek_video_video { float:left; width:100%; }
.mediathek_video_titel { float:left; font-size:24px; margin-bottom:10px; font-weight: 900; width: 100%; word-wrap: break-word;}
.mediathek_datum { font-size:14px; margin-bottom:10px; }
.mediathek_video_beschreibung { font-size:16px; margin:10px 0; font-weight: 400; }

@media only screen and (max-width: 1024px) {
  .mediathek_video_panel { float:left; width:47%; margin-right:1%; background: #ffffff; padding:10px; margin-left:10px; margin-bottom: 30px; }
}

@media only screen and (max-width: 600px) {
  .mediathek_video_panel { float:left; width:100%; margin-right:0; background: #ffffff; padding:10px; margin-left:0px; margin-bottom: 30px; }
  .c_mediathek_video { float:left; margin-bottom: 30px; background: #0088CC; font-weigt: 900; }
  .section--team { float: left; width: 100%; }
}

.c_mediathek_podcast { background: #52b7c1; float:left; width: 100%; margin-bottom: 30px; }
.mediathek_podcast_panel { float:left; width:31%; margin-right:1%; background: #ffffff; padding:10px; margin-left:10px; margin-bottom: 30px; }
.mediathek_podcast_video { position: relative; float:left; width:100%; }
.mediathek_podcast_titel { float:left; font-size:24px; margin-bottom:10px; font-weight: 900; width: 100%; word-wrap: break-word;}
.mediathek_podcast_beschreibung { font-size:16px; margin:10px 0; font-weight: 400; }

@media only screen and (max-width: 1024px) {
  .mediathek_podcast_panel { float:left; width:47%; margin-right:1%; background: #ffffff; padding:10px; margin-left:10px; margin-bottom: 30px; }
}

@media only screen and (max-width: 600px) {
  .mediathek_podcast_panel { float:left; width:100%; margin-right:0; background: #ffffff; padding:10px; margin-left:0px; margin-bottom: 30px; }
  .c_mediathek_podcast { float:left; margin-bottom: 30px; background: #e7e7e7; }
}

#revolutionSlider_forcefullwidth { margin-bottom: 40px !important; }