@import url('https://fonts.googleapis.com/css2?family=Merriweather+Sans:ital,wght@0,300..800;1,300..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Rubik+Dirt&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');


:root {
  --header-font:  "Roboto", sans-serif;
  --text-font: "Roboto", sans-serif;
  --grunge-font: "Antidotum", sans-serif;
  --bs-body-font-size: 1.1rem;
  --bs-body-line-height: 1.5;
}



.mm-menu--theme-dark {
  --mm-color-background: #333;
  --mm-color-border: rgb(0, 0, 0, 0.4);
  --mm-color-icon: rgb(255, 255, 255, 0.4);
  --mm-color-text: rgb(255, 255, 255, 1);
  --mm-color-text-dimmed: rgb(255, 255, 255, 0.8);
  --mm-color-background-highlight: rgb(255, 255, 255, 0.08);
  --mm-color-background-emphasis: rgb(0, 0, 0, 0.1);
  --mm-color-focusring: #06c;      
}

html, body {
    width: 100%;
    height: 100%;
}

#page {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

#logo {width: 500px;}

main {
    flex-grow: 1;
}

.main {padding-top: 25px;}

.blue-gradient { background: linear-gradient(180deg,rgba(85, 142, 216, 1) 0%, rgba(43, 71, 108, 1) 100%);}

header, main, footer {
    flex-shrink: 0;
}

body {background-color: #000; font-family: var(--text-font), sans-serif; color: #fff;}

h1 {font-family: var(--grunge-font); font-weight: normal; font-size: 3.2rem; color: #fff; text-align: center; margin-top: 25px;}
h2 {font-family: var(--header-font); font-weight: 500; font-size:0.9 rem;color: #000; text-align: left; margin-top: 25px;margin-bottom:10px;}
h3 {font-weight: bold; font-size: 24px;}

a {color: #fff; text-decoration: underline;}
a:hover {color: #fff; text-decoration: underline;}

.ce-bodytext a {color: #000; text-decoration: underline;}

header {text-align: center;}
header #mobilemenu {display:none;}

div.ce-gallery[data-ce-columns="2"] .ce-column {width: 49%;}
.ce-gallery img, .ce-gallery figure {max-width: 100%; height: auto !important;}

header img {display: inline-block;}

header ul {list-style: none; text-align: center; margin: 0; padding: 0; padding: 25px 0;}
header li {display: inline-block; padding: 0 25px;}
header li a {color: #fff; text-decoration: underline; font-weight: 600; font-size: 28px;}

.navwrapper {position: fixed; top:0; left: 0; right: 0; background: rgba(254,254,254, 0.6); transition: all 0.3s ease; z-index: 10;}
.navwrapper .logo {padding: 10px 50px; max-width: 350px; transition: all 0.4s ease; width: 300px;}

header .container {position:relative;}
mm-burger {
 position: absolute;
  top: 15px;
  right: 0px;
  z-index: 100;
  color: #333;
  text-align: right;
  width: auto !important;
  --mb-bar-width: 40px;
  --mb-bar-height: 4px;
  --mb-bar-spacing: 7px;  
}

.mm-panel {
  color: var(--mm-color-text);
  border-color: var(--mm-color-border);
  background: rgba(43, 71, 108, 1);
}

footer {background-color: #000; color: #fff;}
footer ul {list-style: none; text-align: center; margin: 0; padding: 0; font-family: var(--header-font); text-transform: uppercase;}
footer li {display: inline-block;  padding: 10px 10px 25px 10px;}
footer li a {color: #fff; text-decoration: none; font-weight: normal; font-size: 16px;}
footer li a:hover {color: #fff; text-decoration: underline;}

footer .fab {color: #fff; font-size: 40px; margin: 10px;}

.ce-uploads {text-align: center;}
 .ce-uploads li a {color: #000; text-decoration:underline; width: 100%;}
 .ce-uploads li { padding: 5px 5px; margin: 4px 0; display: inline-block;}
.ce-uploads img {vertical-align: middle;
display: inline-block;
float: none;
padding-right: 0;}
.ce-uploads span {display:inline-block; hyphens: auto;}
.ce-uploads .col {align-items: center;
display: flex;
flex: 1;}

.ce-gallery figcaption {
  font-style: italic;
  margin-top: -15px;
  margin-bottom: 25px;
text-align: center;}

.back-to-top-icon {
  width: 35px;
  height: 35px;
  color: #fff;
}

.back-to-top:hover {
  opacity: 60%;
}

.back-to-top {
  position: fixed;
  right: 2rem;
  bottom: 2rem;
  border-radius: 100%;
  background: #033A80;
  padding: 0.5rem;
  border: none;
  cursor: pointer;
  opacity: 100%;
  transition: opacity 0.5s;
  z-index: 100;
  border: #000;
}

.hidden {
  opacity: 0%;
}

/* Slider */
.object-fit-cover {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    width: 100%;
    object-fit: cover;
    margin-left: -1px;
}

.sliderwrapper .swiper {
    height: 75vh;
    position: relative;
    min-height: 450px;
}

.content-header {
    height: 30vh;
    position: relative;
    min-height: 200px;
}

.sliderwrapper .claim .row {margin:0;}
.sliderwrapper  .claim {position: absolute;
                        width: 100%;
top:50%;
left: 50%;
transform: translateX(-50%) translateY(-50%);
font-weight: 300;
animation-duration: 0.6s; animation-fill-mode: forwards;
z-index: 100;
}

.sliderwrapper .claim h1, .sliderwrapper .claim h2 {
    font-family: 'Antidotum', sans-serif;
    text-align: right; 
    margin:0; 
    padding:0; 
    color: #444; 
 
    font-size: 60px;

    text-transform: uppercase;
    hyphens: auto;
    line-height: 1.2;
    background-color: rgba(255,255,255,0.8);
    display: inline-block;
    min-width: 60vw;
    width:auto;
    padding: 10px 30px 10px 10px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
 }

 .sliderwrapper .claim h2 {
     background-color: rgba(246, 189, 79, 0.8);
     color: #fff;
 }
 
.sliderwrapper  .claim h3 {text-align: center; margin:0; padding:0; color: #fff; font-weight: normal; font-size: 30px; font-family: "RemoraSansW1-Medium", sans-serif; font-weight: normal; margin-top: 50px;hyphens: auto; }
.sliderwrapper  .claim a {text-align: center; background-color: rgba(37, 87, 143,0.8); color: #fff; text-decoration: none; padding: 5px 20px; border-radius: 5px;}

.sliderwrapper .container {position:relative;}

@media (min-width: 769px) {
.glightbox-clean .gslide-description {display: none !important;}
.glightbox-clean .gslide-media {box-shadow: none; -webkit-box-shadow: none !important;}
}

/* Container */

.ce-background .container-col {background-color: rgba(254,254,254,0.8); }

.col-lg-6 > .container-col {
  display: flex;
  flex-direction: column;
}

.col-lg-6 > .container-col .ce-button {
  margin-top: auto; /* schiebt den Button nach unten */
  order: 2;         /* Button ans Ende */
}

.col-lg-6 > .container-col .colbg {
  order: 1;    
}

.breaker {
  left: 50%;
  margin-left: -50vw;
  position: relative;
  width: 100vw;
  padding: 0;
}
.breaker .background {   
    position: absolute;
    top: 0;
    left: 0; 
    right: 0; 
    bottom: 0;
}
.coverbg {background: no-repeat center center;   -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover; }


.ce-background .twocol.frame {background-color: transparent;}
.ce-background .onecol.frame {background-color: transparent;}
.breaker .breakercontent {padding: 15px 0; overflow-x: hidden;}

.breaker .col {padding: 30px; height: 100%;}
.twocol .col {position: relative;}
.twocol .col .colbg, .onecol .col .colbg {position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: -1;
opacity: 0.9;}

.twocol .dark h1, .twocol .dark h2, .twocol .dark h3 {color: #fff;}
.twocol .dark {color: #fff;}
.dark .btn-default {background: #F3D32C; color: #000;}

.breaker .container {position: relative; z-index: 1;}
.orange-bg {color: #000; font-size: 1.2rem;}
.orange-bg blockquote {color: #000;}
.orange-bg .background {background-color: rgb(147,181,63); color: #000;}

.lightorange-bg .background {background-color: #FEE2BA; color: #000;}
.red-bg .background {background-color: #eee; color: #fff;}
 
 
 .orange-bg h1, .lightorange-bg h1 {color:#000; margin-bottom:10px;}
 .orange-bg h2, .lightorange-bg h2 {color:#fff; font-size:25px; margin-bottom:10px;}
 .orange-bg a, .lightorange-bg a {color:#000; text-decoration:underline;}
 .red-bg h1 {color:#000 !important;}
 
  .red-bg p {}
 .red-bg h1 {}
 .red-bg h1, h2, h3 {}
 
.centerright .frame-indent {height: 100%; margin-left: 15%;
margin-right: 0;} 
.centerright .frame-indent .ce-center {height: 100%; display: flex !important;} 
.centerright .frame-indent .ce-center .ce-gallery {align-self: center !important;}

.news-item {background-color:#E7EEF6; position:relative; padding: 25px; height: 500px; overflow: hidden; border-radius: 15px; transition: all 0.5s ease; cursor: pointer; display:flex;}
.news-item .card-body {margin-top: 0.75rem;}
.hellblau .news-item {background-color:#E7EEF6;}
.hellblau h1 {color:#033A80;}

.animated h1 {background-color:#000;}
.animated .news-item {
      opacity: 0;
      transform: translateX(-100px);
    }
.news-item:hover {background-color: #fff;}
.news-item img {border-radius: 15px;}
.news-item .news-time {text-align: center; font-family: var(--text-font); font-size: 20px; font-weight: 600}
.news-item .news-date {text-align: center; font-family: var(--header-font); font-size: 26px; padding-bottom: 10px; padding-top: 25px;}
.news-item .card-title {text-align: center; color: #033A80; }
.news-item .card-text {text-align: center; position: relative; font-family: var(--header-font); font-size: 22px; font-weight:500; line-height: 1.2; margin-top: 25px; }
.news-item a {text-decoration: none;}
.news-item .card-text {color: #000;}
.news-single .column-wrapper {margin: 10px 0;}
.news-single .related-files h2 {margin-top: 0;}
.news .column-wrapper .news-related-files-link a {text-decoration: none; color: #000; font-weight: 500;}
.news .column-wrapper {background-color: rgba(254,254,254,0.8); color: #333; padding: 25px; border-radius: 15px;}
.news .column-wrapper a {color: #033A80; text-decoration: underline;}
.news .column-wrapper a:hover {color: #033A80; text-decoration: none;} 
.news .header h1 {color: #033A80; font-size: 30px; text-align: left; margin-top: 15px; margin-bottom: 15px;}
.news .organizer h2, .news .related-files h2 {color: #333; font-size: 20px; text-transform: uppercase;}
.news .organizer, .news .organizer h2 {text-align: center;}
.news .company {display: inline-flex; flex-direction: column; text-align: center; margin-top: 25px;}
.news .news-img-caption {font-size: 13px;}
.news .item-category-title {position:absolute; bottom:0; right:0; padding:5px 10px; background-color: #033A80; font-size: 14px; border-top-left-radius: 15px;}

.page-item.active .page-link {background-color: #1b59aa; border-color: #1b59aa;}
.page-link, .page-link:hover {color: #1b59aa;}

.ce-background .container-col {background-color: rgba(254,254,254,0.8); color: #333; padding: 25px; border-radius: 15px;}
.ce-background .container-col h1 {color: #033A80; margin-top: 0;}

.smooth-wrapper {
   overflow: hidden;
}

.smooth-content {
   will-change: transform;
}


.form-group.teaser {display: none;}    
.form-group {margin: 15px;}
    
.checkbox-group {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;            
}

.checkbox-group .form-check {
  flex: 0 0 auto;
  margin: 0;           
  padding:0;
}
.checkbox-group.btn-group {
  white-space: normal;
}

.modal-dialog {color: #000;}
ul.typo3-messages {list-style: none; padding-left: 0;}

.tx-md-newsfrontend #mdNewsfrontendForm .group-bg a {color: #2651d0;}
.tx-md-newsfrontend .group-bg {background-color:#E7EEF6; color:#000; border-radius: 15px; padding: 25px; margin: 15px 0;}
.tx-md-newsfrontend .odd {background-color: #C1CAD7; padding: 5px; color: #000;}
.tx-md-newsfrontend .even {background-color:#E7EEF6; padding: 5px; color: #000}
.tx-md-newsfrontend .odd a,.tx-md-newsfrontend .even a {text-decoration: none;}
.tox-statusbar__branding {display: none !important;}
.tx-md-newsfrontend .checkbox-group {margin: 10px 0;}
.btn-primary {
  color: #fff;
  background-color: #1b59aa;
  border-color: #1b59aa;
}
#mdNewsfrontendForm em {font-size: 14px;
  font-weight: bold;
  color: green;
    display: block;}
.btn {padding: .175rem .75rem;}
.btn:hover {text-decoration: none;}

.frame-type-felogin_login fieldset {padding-bottom: 25px;}

.row-eq-height {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

.row-eq-height .container-col {height: 100%;}

.ce-button .fm_button {
    float: none;
    text-align: center;
    display: block;
    margin: 0 auto;
    margin-bottom:10px;
    max-width:200px;
    position: relative;
    width: auto;
    padding: 5px 10px;
    background-color: #033A80;
    color: #fff!important;    
}
/*
.btn {
    text-align: center;
    display: block;
    margin: 0 auto;
    margin-bottom:10px;
    max-width:200px;
    position: relative;
    width: auto;
    padding: 5px 10px;
    background-color: #033A80;
    color: #fff!important;
   }
*/ 

.newsSwiper .swiper-pagination {
  position: static;
  margin-top: 16px;
  text-align: center;
}
.newsSwiper .swiper-pagination-bullet {
  width: 32px;
  height: 4px;
  border-radius: 4px;
  background: #fff;
  opacity: 1;
  margin: 0 6px !important;
}
.newsSwiper .swiper-pagination-bullet-active {
  background: #033A80;
}

.navwrapper.shrink .logo {
  max-width: 350px;
  width: 140px;
  transition: all 0.5s ease;
  padding: 0;
}
