:root {
  --icon-font: "bootstrap-icons";
}

@font-face {
  font-family: 'Oswald Regular';
  src: url('../fonts/Oswald-Regular.ttf')  format('truetype') ;
}

@font-face {
  font-family: 'Roboto Light';
  src: url('../fonts/Roboto-Light.ttf')  format('truetype') ;
}

@font-face {
  font-family: 'Bold';
  src: url('../fonts/Roboto-Bold.ttf')  format('truetype') ;
}

@font-face {
  font-family: 'Roboto Regular';
  src: url('../fonts/Roboto-Regular.ttf')  format('truetype') ;
}

body {
  font-family: 'Roboto Regular', sans-serif;
  color: #6b706f;
  font-size: 1.5;
  line-height: 1.6;
}

.rel {
  position: relative;
}

.bgStyle h1 strong, 
.banner-bg h1 strong,
.title-big h1,
b, strong { 
  font-family: 'Bold', sans-serif;  
}

h1 {
  font-size: 36px;
  margin: 0 0 15px 0;
  font-family: 'Roboto Regular'!important;
}

h2 {
  font-size: 20px;
  margin: 0 0 15px 0;
  font-family: 'Roboto Regular'!important;
}

h3 {
  font-size: 18px;
  margin: 0 0 15px 0;
}

h3 .bi {
  font-size: 1.75em;
  vertical-align: middle;
}


h4 {
  font-size: 16px;
  margin: 0 0 15px 0;
}

h1, h2, h3 { font-family: 'Roboto Light', sans-serif;    text-transform: uppercase; }
.title-big h1 { font-size: 48px;    }
.top1 { padding-top: 60px; }

a:hover { text-decoration: none; }

.p1 {
  padding-bottom: 80px;
  padding-top: 80px;
}

.nopadding { padding: 0; }

.column-1 {
  -webkit-column-count: 1; /* Chrome, Safari, Opera */
  -moz-column-count: 1; /* Firefox */
  column-count: 1;
}

.column-2 {
  -webkit-column-count: 2; /* Chrome, Safari, Opera */
  -moz-column-count: 2; /* Firefox */
  column-count: 2;
}

.column-3 {
  -webkit-column-count: 3; /* Chrome, Safari, Opera */
  -moz-column-count: 3; /* Firefox */
  column-count: 3;
}

.column-4 {
  -webkit-column-count: 4; /* Chrome, Safari, Opera */
  -moz-column-count: 4; /* Firefox */
  column-count: 4;
}

.column-5 {
  -webkit-column-count: 5; /* Chrome, Safari, Opera */
  -moz-column-count: 5; /* Firefox */
  column-count: 5;
}

.column-6 {
  -webkit-column-count: 6; /* Chrome, Safari, Opera */
  -moz-column-count: 6; /* Firefox */
  column-count: 6;
}

.p1 { padding: 80px 0 80px 0; }

.btn, .submit, .btn-primary, p.more a, p.back a, .newsletter .submit, .btn-big {
        border-radius: 0;
        margin-top: 18px;
        text-transform: uppercase;
        font-size: 13px;
        border: 0;
        display: inline-block;
          -moz-transition: all .5s;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.topbar .btn { margin: 0; }

.btn-big {
        font-size: 16px;
        padding: 3px 12px;
}

.newsletter .submit {
  color: #fff!important;
  padding: 9px; 
  margin:0;
}

.newsletter .widget-submit {
        position: absolute;
        right: 0;
        display: inline-block;
        top: 0;

        margin: 0;
          -moz-transition: all .5s;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.newsletter .submit:hover { background: rgba(255,255,255,0.1)!important; border-color: rgba(255,255,255,0.1)!important; }

#footer .formbody input.text { border-color: rgba(255,255,255,0.3); }

.btn-primary { background: none; border: none; }

.btn:hover,.btn-big:hover { color: #fff; }

.topbar {
  position: relative;
  padding: 20px 0;
  width: 100%;
  margin-top: 0;
  background: #fff;
}

.fixedTop .topbar {
  margin: 0;
  width: 100%;
}

#header .bangb1 .mod_navigation ul {
  overflow: hidden;
}

.mainnavi .level_1 a, .mainnavi .level_1 strong {
  padding: 3px 9px;
  display: inline-block;
  text-decoration: none;
  font-size: 14px;
  font-weight: normal;
  font-family: 'Roboto Light', sans-serif;
}

/* Aktiver Menüpunkt (ersetzt <strong>) */
.mainnavi .level_1 li.active > a,
.mainnavi .level_1 a[aria-current="page"] {
  font-family: 'Roboto Regular', sans-serif;
}

/* expliziter Fokus-Stil für die Hauptnavigation */
.mainnavi .level_1 a:hover,
.mainnavi .level_1 a:focus-visible {
  text-decoration: none;

  
}

.mainnavi span {
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
/*
.level_1 .active {
  font-family: 'Roboto Regular', sans-serif;
}
*/
.level_2 .active {
  color: #fff;
}

footer p { color: rgba(255,255,255,0.4); }

footer ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

p.more a, p.back a {
  font-size: 13px;
  font-family: 'Roboto Light', sans-serif;
  position: relative;
  text-transform: uppercase;
}

.mod_eventlist div.header a:before,
p.more a:before,
p.back a:before,
p.info a:before {
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: scaleY(0);
  transform-origin: 50% 100% 0;
  transition-duration: 0.3s;
  transition-property: transform;
  transition-timing-function: ease-out;
  z-index: -1;
}

.mod_eventlist div.header a, p.more a, p.back a {
  backface-visibility: hidden;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  color: #ffffff;
  display: inline-block;
  transform: translateZ(0px);
  transition-duration: 0.3s;
  transition-property: color;
  vertical-align: middle;
}

p.more a, p.back a {
  padding: 6px 11px;
  margin-top: 9px;
}

.mod_eventlist div.header a:hover,
p.more a:hover,
p.back a:hover,
p.info a:hover {
  color: #ffffff;
  -moz-transition: all .8s;
  -webkit-transition: all .8s;
  transition: all .8s;
}

p.back {
  display: inline-block;
}

.comment_default .reply {
  background: #eee;
  padding: 23px 27px;
}

.mod_nl_list li {
  color: #666;
  font-size: 12px;
}

.mod_nl_list li a {
  font-size: 18px;
  margin-left: 5px;
}

.multicell {
  border-top: 4px solid #ccc;
}

.multicell .ce_text {
  padding: 10px 0;
  margin: 10px 0;
  border-bottom: 1px solid #ccc;
}

.multicell h2, .multicell h1, {
  margin-top: 0;
  padding-top: 0;
}

.fullwidth .content-slider .ce_text {
  padding: 200px 0;
}

/* ========================== */
.bangb1 {
  width: 100%;
}

.fixedTop {
  position: fixed;
  z-index: 99;
  top: 0;
}

.fixedTop .ce_form ,
.fixedTop .mainnavi {
  margin-top: 0px!important;
}

.logo {
  position: relative;
  padding-top: 5px;
}

.devider {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  margin-bottom: 55px;
  z-index: 99;
}

.ContentStripe {
  padding: 50px 0;
}

.ContentStripe .image_container {
  display: inline-block;
  margin-bottom: 20px;
  -moz-transition: all .5s;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.InsideOut,
.OutsideIn {
  overflow: hidden;
}

.InsideOut h1, .InsideOut h2, .InsideOut h3, .InsideOut h4, .InsideOut p,
.InsideOut a {
  border: none;
  color: #fff;
}

.mod_newslist .layout_simple time:before,
p.back a:before,
.ce_gallery a.cboxElement:before,
.mod_newsreader p.info:before,
.topnavi li a:before,
.topnavi li span:before,
.quote:after ,
footer .mod_newslist time:before,
.reply p.info:before,
span.day:before,
span.time:before,
.mod_newslist p.info:before,
.mod_eventreader p.info:before,
.scrolltop a:after ,
footer .linkIcon a:before,
footer .linkIcon span:before,
footer a:before,
.scrolltop a:after,
.ce_accordion .toggler:after,
.ce_accordion .acc-arrow .toggler:after,
.slider-control .slider-prev:before, .slider-control .slider-next:after,
.check p:before,
.time:before {
  font-family: 'bootstrap-icons';
  padding-right: 5px;
}

p.info a:before {
  content: "\F1F6";
  font-family: var(--icon-font);
}


p.back a:before {
  content: "\F284";
  font-family: var(--icon-font);
}


.ce_accordion .toggler:after {
  content: "\F282"; /* chevron-down */
  font-family: var(--icon-font);
  float: right;
  padding: 0;
}

.ce_accordion .toggler:hover:after,
.ce_accordion .toggler.active:after {
  content: "\F286"; /* chevron-up */
}


.acc-arrow .ce_accordion .toggler:after {
  content: "\F282"; /* chevron-down */
  font-family: "bootstrap-icons";
  float: right;
  padding: 0;
}

.acc-arrow .ce_accordion .toggler:hover:after,
.acc-arrow .ce_accordion .toggler.active:after {
  content: "\F286"; /* chevron-up */
}


footer .linkIcon a:before {
  content: "\F285";
  font-family: "bootstrap-icons";
}


.reply p.info:before {
  content: "\F52A";
  font-family: "bootstrap-icons";
}

span.time:before,
.time:before {
  content: "\F293";
  font-family: "bootstrap-icons";
}

span.time:before,
.time:before {
  content: "\F293";
  font-family: "bootstrap-icons";
}


footer .mod_newslist time:before,
.mod_newsreader p.info:before,
.mod_newslist p.info:before,
.mod_eventreader p.info:before ,
span.day:before {
  content: "\f073";
}

a:focus {
  outline: none;
}

.scrolltop a {
        position: fixed;
        background:rgba(255, 255, 255, .2);
        width: 41px;
        height: 71px;
        overflow: hidden;
        cursor: pointer;
        padding: 11px 4px 21px;
        bottom: -18px;
        z-index: 9999 !important;
}

.scrolltop {
  right: 50px;
  margin-top: 0;
  position: absolute;
  z-index: 101;
}

.scrolltop a:after {
  content: "\F27C";
  display: block;
  font-size: 20px;
  color: rgba(255,255,255,0.8);
  background: none;
  -moz-transition: all .8s;
  -webkit-transition: all .8s;
  transition: all .8s;
  text-align: center; padding: 0;
}

.scrolltop a:hover:after {
  color: #212121;
  -moz-transition: all .5s;
  -webkit-transition: all .5s;
  transition: all .5s;
}

footer h1, footer h2, footer h3, footer h4 {
  color: #fff;
}

header .formbody {
  position: relative;
}

.homecontact .formbody {
  background: #fff;
  padding: 26px 26px 70px 26px;
  left: 50%;
  right: 50%;
}

body:not(.contact) .formbody {
  position: relative;
  display: flex;
  flex-wrap: wrap;
}
.formbody {
    position: relative;
}
form .widget {
    padding-right: .5rem;
    padding-left: .5rem;
}

.quote {
  padding: 20px;
  background: #e7e7e7;
  text-align: center;
}

.quote:after {
  content: "\f10e";
  font-size: 32px;
  margin: 10px 0 -10px;
  display: block;
}

.quote-name {
  text-transform: uppercase;
  margin: 0;
  padding: 0;
}


#main { background: white; }

.home #main {
  padding: 0;
}

body.home #main {
  padding-top: 0;
}

.topnavi ul {
  margin: 25px 0!important;
  padding: 0;
}

.topnavi li a, .topnavi li span {
  text-transform: uppercase;
  font-size: 10px;
  float: left;
  margin-right: 10px;
}

.topnavi li.login a:before,
.topnavi li.login span:before {
  content: "\f090";
  font-size: 14px;
}

.topnavi li.register a:before,
.topnavi li.register span:before {
  content: "\f007 ";
  font-size: 14px;
}

a, span, img, figure {
  -moz-transition: all .5s;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.bi.pull-left {
  width: 30px;
}

#service em {
  -moz-border-radius: 50%;
  -webmit-border-radius: 50%;
  border-radius: 50%;
  width: 100px;
  height: 100px;
  line-height: 100px;
  text-indent: 15px;
}

#main .home-pics .ce_image figure.image_container figcaption {
  padding: 0 15px;
  position: absolute;
  top: 20%;
  opacity: 0;
  font-size: 18px;
  color: #fff;
}

/* -- foter events + footer news -- */

footer .mod_navigation li a, footer .mod_navigation li span {
  color: #707176;
  font-family: 'Roboto Light', sans-serif;
}

footer a {
  color: #fff;
  font-family: 'Roboto Light', sans-serif;
}

footer {
  color: rgba(255, 255, 255, 0.5);
}

footer .mod_newslist time,
footer .mod_eventlist span.date {
  text-transform: uppercase;
  font-size: 10px;
  line-height: normal;
}

footer .mod_navigation li a,
footer .mod_navigation li span,
footer .mod_newslist > div,
footer .mod_eventlist > div {
  display: block;
}

footer .mod_newslist a,
footer .mod_eventlist a {
  color: white;
  display: block;
}

.copyright {
  color: #fff;
}

.formbody label {
        display: block;
        top: 11px;
    font-size: 14px;
}

/*
.ce_gallery a.cboxElement { display: block; }
.ce_gallery a.cboxElement:before { position:absolute; top:0; width: 100%; height: 100%; background: rgba(255, 255, 255, .2); content:"\f00e "; text-align:center; display: block; padding-top: 100px; font-size: 50px; color: #fff; }
*/

.formbody input.text {
  padding: 6px 10px;
  border: 1px solid rgba(0,0,0,0.1);
/*  color: rgba(255,255,255,0.6);*/
}

.mod_subscribe .formbody input.text { padding: 10px 10px; }

header .ce_form  input.text {
  background: none;
  font-size: 14px;
  text-shadow: 0 none;
  opacity: 0;
}

header .ce_form  input.text:hover {
  opacity: 1;
}

.sliderselect button, input, optgroup, select, textarea {
  background: none;
  border: none;
  font-size: 14px;
  line-height: 1.42857;
  padding: 6px 12px;
  margin-bottom: 6px;
  transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
  border: 1px solid rgba(0,0,0,0.1);
}

.short_text {
  display: inline-block;
  padding: 3px 5px;
}

.bg-white {
  background: white;
  padding: 20px;
}

.footergallery figure {
  padding: 4px;
}

.events {
  border-bottom: 1px solid #ccc;
  margin-bottom: 20px;
  padding-bottom: 20px;
}

.dlh_googlemap {
  margin-bottom: 0px;
}

.small-text {
  background: #dfdfdf;
  width: 400px;
  padding: 10px 23px;
}

embed.mejs-shim {
  width: 100%;
}

.mejs-container .mejs-controls {
  none!important;
}

.InsideOut .white-bg:hover h2, .InsideOut .white-bg:hover h4, .InsideOut .white-bg:hover a, .InsideOut .white-bg:hover p, .InsideOut .white-bg:hover .bi {
  color: #fff;
  border-color: #fff;
}

.icon .bi {
  padding: 0;
  text-indent: 5px;
  width: 45px;
  height: 45px;
  line-height: 46px;
  text-align: center;
  font-size: 20px;
  position: absolute;
}

.InsideOut .icon .bi {
  opacity: 0.6;
  padding: 0;
  text-indent: 5px;
  width: 45px;
  height: 45px;
  line-height: 46px;
  text-align: center;
  font-size: 20px;
}

.features {
        padding-left: 54px;
        position: relative;
        top: -42px;
}

.rotate-page {
  height: 900px;
  left: 50%;
  margin: 0 auto 0 -350px;
  padding-right: 10px;
  position: absolute;
  top: 270px;
  width: 700px;
  z-index: 333;
}

.team:last-child {
  border-right: none;
}

.rotate {
  background: rgba(255, 255, 255, 0.15) none repeat scroll 0 0;
  border: 1px solid rgba(255,255,255,0.6);
  color: #ffffff;
  display: block;
  float: left;
  padding-bottom: 23.3333%;
  position: relative;
  transform: rotate(45deg);
  width: 23.3333%;
  -moz-transition: all .50s;
  -webkit-transition: all .50s;
  transition: all .50s;
}

.rotate:hover {
  transform: scale(1);
  -moz-transition: all .50s;
  -webkit-transition: all .50s;
  transition: all .50s;
}


.rotate .img-responsive {
  border-radius: 50%;
  bottom: 50%;
  display: block;
  left: 14%;
  position: fixed;
  top: 14%;
  transform: rotate(-45deg);
}

.rotate figure {
  position: absolute;
}

.bincy-text {
  margin-top: 100px;
}

.ce_gallery .img-responsive {
  padding: 0;
  opacity: 0.8;
  background: #000;
}

.ce_gallery .img-responsive:hover {
  opacity: 1;
}

.devider {
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  margin-bottom: 20px;
  margin-top: 20px;
  z-index: 99;
}

.ce_gallery .figure .img-responsive {
width: 300px;
        height: auto;
        -webkit-transition: .3s ease-in-out;
        transition: .3s ease-in-out;
}

.ce_gallery .figure:hover .img-responsive {
width: 350px;
  transition: all .8s;
}

}

.downloadicon {
  display: block;
  font-size: 16px;
  margin: 0 0 10px;
}

.ce_downloads .bi {
  font-size: 30px;
  display: block;
}

.mod_faqlist li {
  font-size: 14px;
}

.round .bi {
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.white-bg:hover .bi {
}

body.contact #main {
  padding: 0;
}

.iframe,
.me-plugin,
.mejs-container {
  width: 100%!important;
}

body.contact .form-control {
  background: rgba(255, 255, 255, .2);
  color: #999!important;
}


.bi-lila .bi {
        text-indent: 2px;
        line-height: 2.2;
        display: inline-block;
        color: #fff;
}

.bi-lila .bi:hover {
  transform: none;
}

.home-pics .ce_image,
.home-pics .ce_image,
.home-pics .ce_image,
.home-pics .col-lg-6 {
  padding: 0;
}

div.overlay-textinput .submit {
  color: #fff; height: 45px; line-height: 43px;
}


div.overlay-textinput .submit::before {
  content: "\F52A"; /* bi-search */
  font-family: "bootstrap-icons";
}


div.overlay-textinput .submit:hover {
  color: #fff;
}

#ctrl_registration {
  border: 1px solid rgba(0,0,0,0.1);
}

#ctrl_registration:hover,
#ctrl_registration:focus,
#ctrl_registration:active {
  border: 1px solid rgba(0,0,0,0.2);
  -moz-transition: all .5s;
  -webkit-transition: all .5s;
  transition: all .5s;
}


.home .ce_form .formbody {
  background: none;
  padding: 0;
}

.newsitem .news {
  margin: 0!important;
}

.newsitem .newstxt {
  padding: ;
}

.mod_newsreader p.info,
.layout_latest p.info,
.mod_eventreader  p.info,
.news .info, .event .header {
font-size: 10px;
}

input.submit {
        text-transform: uppercase;
        font-size: 13px;
        padding: 8px 14px;
}


/* buttons */

.newstxt p.more a:hover, p.back a:hover, input.submit:hover {
  border: none;
  -moz-transition: all .8s;
  -webkit-transition: all .8s;
  transition: all .8s;
}

.newstxt p.more:hover, p.back:hover, input.submit:hover {
  color: #fff;
  border: none;
}

.newstxt p.more, p.back {
  margin-bottom: 0;
}

/*.newstxt p.more, p.back, input.submit {
        color: #fff;
        text-transform: uppercase;
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
*/
.newstxt p.more a:before, p.back a:before, input.submit:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.newstxt p.more a:hover, .newstxt p.more a:focus, .newstxt p.more a:active,
p.back a:hover, p.back a:focus, p.back a:active,
input.submit:hover, input.submit:focus, input.submit:active {
  color: white;
}

.newstxt p.more a:hover:before, .newstxt p.more:focus:before, .newstxt p.more:active:before,
p.back:hover:before, p.back:focus:before, p.back:active:before,
input.submit:hover:before, input.submit:focus:before, input.submit:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}

input.submit {
  color: white;
}

body.home .mod_breadcrumb {
  display: none;
}

.mod_breadcrumb ul {
  list-style: none;
  margin-top: 17px;
  padding: 10px 0;
  border-bottom: 1px dotted;
  overflow: hidden;
}

.mod_breadcrumb ul li > a, .mod_breadcrumb ul li {
  text-decoration: none;
  font-size: 14px;
}

.mod_breadcrumb ul li.active {
  font-family: 'Roboto Light', sans-serif;
}

.videotitle {
  position: absolute;
  width: 100%;
  top: 50%;
  color: white;
  text-align: center;
  z-index: 99;
}

header .headerborder {
  border-top: 1px solid rgba(255, 255, 255, .2);
  width: 100%;
  position: relative;
  top: 16px;
}

.mainnavi > ul.level_1 > li.submenu > span:nth-last-child(2):after,
.mainnavi > ul.level_1 > li.submenu > a:nth-last-child(2):after {
  content: "\F279";
  margin-left: 5px;
  font-family: bootstrap-icons;
  font-size: 15px; position: relative;
  top: 3px;
}

@media screen and (max-width: 767px) {
  .mainnavi > ul.level_1 > li.submenu > span:nth-last-child(2):after,
        .mainnavi > ul.level_1 > li.submenu > a:nth-last-child(2):after {
    content: "";
  }

  .mainnavi .level_1 span.aftrelink {
    display: none;
  }
}

.footercontainer .mod_eventlist a:before { font-family: 'bootstrap-icons'; content: "\f178"; position: absolute; left: 16px; }
.footercontainer .mod_eventlist h2 { margin-top: 20px; font-size: 18px; }
.mod_newslist h2 { margin-top: 10px; }
.newsletter a:before { font-family: 'bootstrap-icons'; content: "\f0e0" }
.ce_accordion .toggler:after { color: #fff; padding: 3px 7px; }
.ce_accordion .toggler:hover:after { background: none;}

.footeraddress p {
        margin-left: 25px;
}

.footeraddress em {
        position: absolute;
        left: 19px;
        margin-top: 5px;
}

.contact-icons em {
        margin-left: -65px;
}
.contact-icons p, .contact-icons h3 {
        margin-left: 65px;
}

.text-hover h3, .text-hover p {
        position: relative;
        bottom: 114px;
        color: #fff;
        padding-left: 21px;
        opacity: 0;
}

.text-hover:hover h3, .text-hover:hover p {
        opacity: 1;
        -moz-transition: all .8s;
        -webkit-transition: all .8s;
        transition: all .8s;

}

.text-hover .image_container { background: #111115; }
.text-hover:hover .img-responsive { opacity: 0.2; }

.text-hover p {
        line-height: 0;
}

footer .mod_newslist .bi, footer .mod_eventlist .bi { padding-right: 5px; }

textarea.form-control { border: 1px solid rgba(0,0,0,0.1); }

.ce_gallery figure:after {
    font-family: 'bootstrap-icons';
    content: "\F62C";
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 23px;
    cursor: pointer;
    transition: all .5s ease 0s;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.ce_gallery figure:hover:after { opacity: 0;   -moz-transition: all .5s;
  -webkit-transition: all .5s;
  transition: all .5s;  }



.navibutton {
  float: right;
  top: 17px;
  margin-left: 30px;
}

.home-headline .bi { font-size: 50px; padding: 10px 10px 10px 24px; color: #fff; }

.dark-bg .bi { font-size: 29px!important; color: #fff; position:absolute; margin-top: 10px; }

.home-headline p {
  font-size: 15px;
}


.team .socialIcons  { position: absolute; }

.team .socialIcons {
  position: absolute;
  text-align: center;
  width: 92%;
  top: 40%;
  opacity: 0;
}

.team .ce_text:hover .socialIcons {
  opacity: 1;
}

.team .img-responsive:hover { opacity: 0.9; }


.video .mejs-controls { display: none; }

.clients .bi {
        color: white !important;
        font-size: 24px;
        width: 50px;
        height: 50px;
        padding: 0;
        text-indent: 8px;
        padding-top: 10px;
}

.home-headline .bi {
        color: white !important;
        font-size: 42px;
        width: 50px;
        height: 50px;
        padding: 0;
        text-indent: 8px;
        padding-top: 1px;
}

.mod_eventlist .layout_teaser {
        padding-bottom: 60px;
}

@media (max-width: 1500px) {
.bannerheadline { padding: 5% 0!important; }
}

.blueicons ul { list-style-type: none; padding: 0; }
.blueicons ul li { margin-bottom: 15px ; }
.blueicons em { color: rgba(255, 255, 255, .6)!important; }

.ce_comments { border-top: 1px solid #ccc; margin-top: 20px; padding-top: 20px; }

.slider-text-bg h1, .slider-text-bg h2, .slider-text-bg h3, .slider-text-bg h4, .slider-text-bg h5, .slider-text-bg a, .slider-text-bg p {
        color: #fff;
}

.slider-text-bg {
        padding: 19px 46px 40px;
}

#footer .about a::before {
  content: "\F285"; /* bi-chevron-right */
  margin-left: 5px;
  font-family: "bootstrap-icons";
  font-size: 15px;
  top: 0;
}


#footer input.submit::before {
  content: "\F282"; /* bi-chevron-down */
  margin-left: 5px;
  font-family: "bootstrap-icons";
  font-size: 15px;
  top: 0;
}

@media (max-width: 992px) {
.container { width: auto!important; }
}

@media (max-width: 1270px) {
.bgStyle {
        background-size: cover;
        background-position: middle center;
        height: auto;
}
}

.pricing-box {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 30px;
        text-align: center;
        border: 1px solid rgba(0,0,0,0.2);
        margin-top: 20px;
}

.plan-price {
        font-size: 20px;
        margin-bottom: 10px;
        color: #fff;
        display: inline-block;
        height: 60px;
        width: 100px;
        line-height: 60px;
}

.plan-features {
        margin-top: 40px;
        border-top: 1px dotted rgba(0,0,0,0.2);
}

#main .rte .list-unstyled {
        padding-left: 0;
        list-style: none;
        margin-left: 0;
}

.plan-features li {
        margin: 18px 0;
        border-bottom: 1px dotted rgba(0,0,0,0.2);
        padding-bottom: 17px;
}

.pricing-standard, .pricing-standard h4, .pricing-standard a.btn {
        color: #fff;
        border-color: #fff;
}

.pricing-standard .plan-price {
        background: rgba(255,255,255,0.2);
}

.fullwidth-text h1, .fullwidth-text h2, .fullwidth-text h3, .fullwidth-text h4, .fullwidth-text p, .fullwidth-text a, .fullwidth-text a.btn, .fullwidth-text .submit {
        color: #fff!important;
        border-color: #fff;
}

.rotated-title {
        padding-right: 130px;
        position: relative;
}


.rotated-title .page-title {
        bottom: 0;
        position: relative;
        top: 0;
        width: 100px;
        margin-bottom: 0;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: sideways-lr;
        -ms-writing-mode: tb-lr;
        -o-writing-mode: sideways-lr;
        writing-mode: sideways-lr;
}

.btn-icon {
        color: #fff;
        overflow: hidden;
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        backface-visibility: hidden;
}
.btn-icon:before {
        left: 0;
        top: -70px;
}

.btn-icon:hover:before {
        top: -50%;
}

.btn-icon:before {
        position: absolute;
        height: 100%;
        width: 100%;
        line-height: 2.5;
        font-size: 180%;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        transition: all 0.3s;
}

.mail-icon:before {
        content: "\F32C";
        font-family: 'bootstrap-icons';
}
a.mail-icon {
    position: relative;
}

.btn-icon:hover span { opacity: 0; }

/* team */

.socials p {
        display: inline-block;
        margin: 8px 7px 6px 0;
        position: relative;
}

.team .blockInner .socials {
        position: absolute;
        top: 25%;
        left: 27%;
        -webkit-transform: translate3d(0, 100px, 0);
        transform: translate3d(0, 100px, 0);
        opacity: 0;
        -webkit-transition: -webkit-transform .4s ease, opacity .4s ease, visibility .4s ease;
        transition: transform .4s ease, opacity .4s ease, visibility .4s ease;
}

.team .blockInner:hover .socials {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
        visibility: visible;
}

.team .blockInner img {
        -webkit-transform: translate3d(0, 100px, 0);
        transform: translate3d(0, 20px, 0);
}

.team .blockInner:hover img {
        opacity: 0.1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
}

.team .bi { color: #fff; font-size: 16px; }

.team .textInner {
        padding-top: 20px;
}

.team h2 {
        margin: 5px 0;
}

.team-btn:after { content: "\F138"; font-family: bootstrap-icons; padding-left: 7px; }
.team-btn:hover:after {
        padding-left: 10px;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        transition: all 0.3s; }

.check p:before { content: "\f00c"; }

.homecontact-form { border: 5px solid #fff; padding: 60px; }

.homecontact-form .formbody input.text, .homecontact-form textarea.form-control { border-color: rgba(255,255,255,0.3); }

.homecontact-form .formbody .form-group  label { position: absolute; }
.homecontact-form .formbody:hover .form-group:hover  label { opacity:0; }

input::-webkit-input-placeholder {color: #ccc!important;}
input:-moz-placeholder { color: #ccc !important;  }
input::-moz-placeholder {  color: #ccc !important;  }
input:-ms-input-placeholder {  color: #ccc !important;  }

textarea::-webkit-input-placeholder {color: #ccc!important;}
textarea:-moz-placeholder { color: #ccc !important;  }
textarea::-moz-placeholder {  color: #ccc !important;  }
textarea:-ms-input-placeholder {  color: #ccc !important;  }


.bg-grey-dark h1,
.bg-grey-dark h2,
.bg-grey-dark h3,
.bg-grey-dark h4,
.bg-grey-dark a,
.bg-grey-dark a.btn {
        color: #fff;
        border-color: #fff;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        transition: all 0.3s;
}

.clients .slider-control .slider-prev, .clients .slider-control .slider-next { background: none; color: #131b19; }
.slider-control a, .slider-control .slider-menu { text-decoration: none; }

.blognews .layout_latest { margin-bottom: 30px; }

.background-main figure img {        opacity: 0.3;}
.dark-slider h1, .dark-slider h2, .dark-slider h3, .dark-slider h4, .dark-slider a, .dark-slider .btn { color: white!important; border-color: white; }
.dark-slider p { color: rgba(255,255,255,0.6)!important; }

.search .submit {
        position: absolute;
        top: 0;
        right: 0;
        margin: 0;
        padding: 5px;
        background: none;
}

.rightblock { border-left: 1px solid rgba(0,0,0,0.2); }
.rightblock input {height: 43px; }

.project-bg {
        background: #f1f1f1;
        padding: 15px;
}

.projectbox:hover .project-bg {
        -moz-transition: background .5s;
        -webkit-transition: background .5s;
        transition: background .5s;
}

.projectbox:hover .project-bg p, .projectbox:hover .project-bg .btn {
        color: white;
        border-color: white;
        -moz-transition: all .5s;
        -webkit-transition: all .5s;
        transition: all .5s;
}

.o-dark h1, .o-dark h2, .o-dark h3, .o-dark h4,
.o-main h1, .o-main h2, .o-main h3, .o-main h4, .o-main p { color: white; }

.o-bottom .textInner { bottom: 0; }


.footergallery { overflow: hidden; }
.footergallery .ce_gallery {    padding: 0;    margin: 0; }
.footergallery .ce_gallery li { min-height:auto; display: inline; }
.footergallery .ce_gallery img, .footergallery .ce_gallery figure { padding: 0; }
.footergallery .ce_gallery figure:after { display: none; }


.clients  figcaption { text-transform: uppercase; margin: 10px 0 0; background: #e7e7e7; color: #353535; display: inline-block; padding: 3px 8px; font-size: 10px; }

.mod_newslist .layout_simple { margin: 0 0 5px; border-bottom: 1px solid #e7e7e7; padding-bottom: 5px; }
.mod_newslist .layout_simple.last { border: 0 none;}
.mod_newslist .layout_simple time { font-size: 10px;  background: #e7e7e7; display: inline-block; padding: 3px 6px; }
.mod_newslist .layout_simple time:before { content: "\f073";}
.mod_newslist .layout_simple a { }


a.btn, .btn, .submit, .btn-primary, p.more a, p.back a, .newsletter .submit, .btn-big { background: transparent; padding: 6px 12px; }

.footergalery li img { min-width: 100%; display: block; }
.footergalery li {margin: 0; padding: 0; }
.footergalery figure:after { display: none; }

#header .mod_navigation {
  padding-bottom: 0;
}
.ce_accordion div{
   -moz-transition: none;
    -webkit-transition: none;
    -o-transition: color 0 ease-in;
    transition: none;
}
/* 
/*.level_2 a {
/*	background: #fff;
/*}

/*** improvements contao 5 */
a:hover { text-decoration:none; }
.img-responsive { 
  width:100%;
  max-width:100% ;
  height: auto;
}

.flex-row {flex-direction: column!important; }

.bgStyle,
.banner-bg  { 
    width: 100%; 
}
.slider-control .slider-menu b { margin: 0 .4rem; }

.no-gutters .col, .no-gutters [class*=col-] {
    padding-right: 0;
    padding-left: 0;
}

/*---- downloads ---*/
.content-downloads ul { padding:0; list-style-type:none; }
.content-downloads li a {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.content-downloads  li a:before {
    content: "\F30A ";
    font-family: 'bootstrap-icons';
    font-size: 2rem;
    line-height: normal;
    display: block;
}
.media.right-socials { flex-direction: column; }


table.calendar tbody tr > td {
    background: #e7e7e7;
    position: relative;
    height: 150px;
    width: 15%;
    vertical-align: top;
}
table.calendar tbody tr > td.today .header {
    font-weight: bold;
}
table.calendar .empty { background:white }
table.calendar .weekend { background:#efefef }

.events {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.mod_calendar .event a {
    text-align: left;
    padding: 5px;
    background: white;
    margin: 0.1rem 0;
    display: inline-block;
    font-size: .75rem;
}

.bgStyle { background-position: center ; padding:10% 0 }
.slider-wrapper, .content-slider .content-text { display: flex; align-items: stretch; }


.mainservice img { width:100% }
.blockInner { margin:20px 0; position:relative; }
.hover-sh:hover .blockInner  {
  box-shadow: 0 0 20px rgba(31,38,47,.3);
}

.hover-img figure { overflow:hidden; }
.hover-img:hover img {
  transform: scale(1.1);
}

.socials-left  img { width:100% }
.socials-left .textInner {
  border-top: 5px solid #1C84C0;
  background-color: rgba(31,38,47,.1);
  padding: 10px 20px 20px 20px;
}

#main .rte ul { margin-left: 25px; list-style-type: disc; }
figure { margin:0 }

.fluid-margin {margin:  0 15px}

time.date {
    display: inline-block;
    font-size: .75rem;
    background: #efefef;
    padding: .2rem .5rem;
    border-radius: .1rem;
    color: #353535;
}


footer#footer .newsletter .widget { margin:0; }
footer#footer .newsletter .widget input.text { width:100% }
footer#footer .newsletter .widget button { border-radius:0 }
p.footerIcons.small {    font-size: .8rem; }
footer p:last-child {    margin-bottom: 0; }
#header .mainnavi li:last-child ul.level_2 {
    right: 0;
}

form textarea.form-control { height:140px } 

/* .overlayContent h1 { font-size:46px } */

.overlayContent h3,
.overlayContent h2 {
  text-transform: none;
  margin-top: 0;
  padding-top: 0;
}

ul.ce_gallery {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.comment {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-top: 30px;
    padding-bottom: 30px;
}
.comment p { margin:0 }

.media, .media .media {margin: 0}

#footer .devider { width:100% }
.media {    flex-wrap: wrap; }
.media h1 {    width: 100%; }

/**** image layout ***/
.media.media--left.content-text,
.media.media--right.content-text,
.media.media--above.content-text,
.media.media--below.content-text {
  display: flex; 
  gap: 1rem;
}
.media--right .rte,
.media--left .rte { flex:1 }

.media.media--left.content-text {   flex-direction: row;}
.media.media--right.content-text {  flex-direction: row-reverse; }
.media.media--above.content-text {  flex-direction: column; }
.media.media--below.content-text {  flex-direction: column-reverse;}

/************/


.eventreader-eventlist {
    flex-direction: column;
    display: flex;
    align-items: flex-start;  
}



.blockInner2 { 
  border-radius: 6px 6px 0 0;
  margin: 10px;
  overflow: hidden;

  position:relative; 
  top: 0;
}
.blockInner2:hover {
  box-shadow: 0 4px 10px rgba(0,0,0, .3);
  top: -2px;

}

.textInner2 {
  padding: 1rem;
  background: #efefef;
}


.features-block .bi {
    font-size: 1.7rem;
    position: relative;
    top: 10px;
}
.footergalery li.col img {
    width: 100%;
    height: auto;
}
.overlaytext .textInner {
    position: absolute;
    padding: 15px;
}
.o-bottom .textInner {
    bottom: 0;
}
.o-light .textInner {
    background: rgba(255, 255, 255, .7);
    color: #353535;
}
.o-dark .textInner {
    background: rgba(0, 0, 0, .7);
    color: #ccc;
}
img {
    max-width: 100%;
    height: auto;
}
iframe { width:100% }

/* sorgt dafür, dass der Videoplayer immer die komplette Breite des umschließenden DIVs einnimmt */
.content-player video {
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 1rem;
}

/* Erzeugt einen Schatten für einen Text auf einem Bild auf der Startseite */
.text-shadow {
  text-shadow:
    0 2px 4px rgba(0,0,0,.8),
    0 0 20px rgba(0,0,0,.4);
}
/* Preistabelle ohne Zeilenumbruch für mobile Darstellung */
.preistabelle table td:last-child {
    white-space: nowrap;
}

/* Abstand zwischen den Bildern */
.ce_gallery > li {
  padding: 10px;
}

/* Container für Bild (runde Ecken + Schatten) */
.ce_gallery figure {
  display: inline-block;       /* <<< FIX */
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
  transition: box-shadow 0.3s ease;
}

/* Bild-Animation */
.ce_gallery img {
  transition: transform 0.3s ease;
  display: block;              /* verhindert Inline-Gaps */
}

/* Hover-Effekte */
.ce_gallery a:hover img {
  transform: scale(1.05);
}

.ce_gallery a:hover figure {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}

/* Container für allgemeine Bild (runde Ecken + Schatten) */
#main .content-image figure {
  display: inline-block;       /* <<< FIX */
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
  transition: box-shadow 0.3s ease;
}

/* Container für allgemeine Bild (runde Ecken + Schatten) */
#main .blockInner figure {
  display: inline-block;       /* <<< FIX */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
  transition: box-shadow 0.3s ease;
}
