@keyframes headeranimationin {
    from   {opacity: 0; left: -50vw}
    to {opacity: 1; left: 0;}
}

@keyframes headeranimationout {
    0%   {opacity: 1;}
    25%  {opacity: 0; left: -50vw;}
    50%  {opacity: 0;}
    100% {opacity: 0;}
}

body,
html {
    font-family: "Open Sans"; 
    font-weight: 400;
    font-size: 16px;
}
body,html {
 position: relative;
} 

body {}

a {color: #000; text-decoration: underline;}
a:hover {color: #358257;}
.mainheader {top: 0; left:0; right: 0; padding:0; background-color: #e6dbb8; z-index: 100; color: #000; margin-bottom:5px; pointer-events: auto;}


/* Topmenu */
.firstmenu {color: #000; padding: 5px; }

#logo.shrink img {padding: 5px 15px 5px 0px; width: 120px; transition: all ease 0.3s;}

.stickywrapper {height: 135px; pointer-events: none;}

.topmenu {font-family: "Open Sans", sans-serif; z-index: 15; height: auto;}

.breadcrumbwrapper {
  margin-bottom: 0;
  padding: 10px 10px;
  background-color: #e6dbb8;
}

.breadcrumb {margin-bottom: 0;}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: .5rem;
  color: #6c757d;
  content: "/";
}

#mainmenu, #mainmenu button, #mainmenu a {margin-bottom: 0; font-family: "Open Sans"; font-size: 16px; font-weight: 600; color: #000; padding:0px 15px;}
nav.mainmenu {height: 100%}
.mainmenu {display:flex;}

#mainmenu a {color: #000;}

.dropdown ul {box-shadow: 2px 2px 10px #000;}

/*mobilemenu*/
mm-burger {padding: 10px; display: none; position: absolute; z-index: 100;}
#mm-search .input-row {width:100%; margin-top: 8px;}
#mm-search input {color: #fff;}
 .mm-wrapper {display: flex;
flex-direction: column;}

/* Slidercontent */

/*BG Cover Helper */

.navcontainer {

  overflow: hidden;
  transition: all 0.5s ease;
  height:100%;
  cursor: pointer;
  position:relative;
}

.area2, .area1, .area3 {  cursor: pointer; position:relative; margin-left: 5px; height: 33%; overflow: hidden;}
.area1 {margin-bottom: 5px;}
.area2 {margin-top: 5px; margin-bottom: 5px;}
.navcontainer img {
  transition: all 0.5s ease;


}
.subnavi {position: relative;}
.navcontainer a {display: flex;}
.navcontainer img {width:100%; object-fit: cover;}
.subnavi span {position: absolute;
z-index: 5;
left: 50%;
top: 50%;
transform: translateX(-50%) translateY(-50%);
background-color: #e6dbb8;
min-width: 50%;
text-align: center;
 padding: 10px;
border-radius: 10px;
color: #000;
font-weight: bold;}


.navcontainer:hover img {
  filter: grayscale(100%) brightness(50%);
}

/* Kulani */
.navcontainer {
  height: 100%;
  overflow: hidden;
  transition: all 0.5s ease;
  
  cursor: pointer;
  position:relative;
}

.area2, .area1, .area3 {  cursor: pointer; position:relative; margin-left: 5px; height: 33%; overflow: hidden;}
.area1 {margin-bottom: 5px;}
.area2 {margin-top: 5px; margin-bottom: 5px;}
.navcontainer img {
  transition: all 0.5s ease;
}


.navcontainer a {display: flex; height: 100%;}
.navcontainer img {width:100%; object-fit: cover; height: 100%;}

.subnavi a:hover img {filter: grayscale(100%) brightness(50%);}


.subnavi span {color:#000; text-decoration: none; font-size: 20px; text-shadow: 1px 1px 0px #fff; }



.slidercontent {position: absolute; top: 0; left: 0; right: 0; z-index: 20;}
#logo img {padding: 15px 15px 15px 0px; width: 240px; transition: all ease 0.5s;}

#toplogo img, #m-toplogo img {width: 220px;}
#toplogo, #m-toplogo {margin: auto; transition: all ease 0.5s; opacity: 0;}
.fade-in {opacity: 1 !important;}

.img-responsive {
  max-width: 100%;
  height: auto;
}

.ce-bodytext ul {list-style: none;}
.ce-bodytext ul li::before {
    content: "\25A0\A0";
    margin-left: -25px;
    margin-right: 8px;
    vertical-align: 4px;
    color: #358257;
    font-family:'bootstrap-icons';
    font-size: 14px;
}

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

/*  h1 {width: 50%; text-align: right; padding: 0 25px; color: #fff; background-color: #DE7A29; font-family: "PT Sans";  hyphens: auto; font-size: 30px; line-height: inherit; font-weight: normal; margin: 15px 0; border-radius: 0 5px 5px 0;}*/ 
.breaker [class*="col-"] h1 {background-color: transparent; color: #A3833A; font-family: "Raleway";  hyphens: auto; font-size: 25px; line-height: inherit; font-weight: normal; margin-bottom: 15px;}
/* h1:before {
    content: ": :";
position: relative;
display: inline-block;
bottom: 0.08em;
padding-right: 15px;
}
*/ 

.breaker h1 {background: none; width: 100%; color: #fff; font-size:60px;font-family: "Satisfy";}
.breaker h2 {background: none; width: 100%; color: #fff; font-size: 40px; font-family: "Satisfy";}
.breaker h1:before {display:none;}
.breaker h3 {font-family: "Satisfy"; color: #A3833A; hyphens: auto; font-size: 35px; margin-top:23px; margin-bottom:20px;}
h1 {font-family: "Raleway"; color: #A3833A; hyphens: auto; font-size: 30px; margin-top:30px; margin-bottom:20px; }
h2 {font-family: "Raleway"; color: #A3833A; hyphens: auto; font-size: 25px; margin-top:23px; margin-bottom:20px; }
h3 {font-family: "Raleway"; color: #A3833A; hyphens: auto; font-size: 20px; margin-top:23px; margin-bottom:20px;}
h4 {color: #A3833A; font-size:25px; font-family: "Raleway";}
h5 {color: #fff; font-size:40px; font-family: "Satisfy";}

.container, .container-fluid {position: relative;}

.mainwrapper {transition: all ease 0.5s; position: relative;}
.main { padding-top: 0px;}

.row {position: relative;}


.transition  { -webkit-transition: all 0.4s ease-in-out;
   -moz-transition: all 0.4s ease-in-out ;
   -ms-transition: all 0.4s ease-in-out ;
   -o-transition: all 0.4s ease-in-out ;
   transition: all 0.4s ease-in-out ; }


.opacity {background-color: rgba(254,254,254,1);}


.object-fit-cover {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    width: 100%;
    object-fit: cover;
}


/* FM CEs */
.breaker {
  width: 100svw;
  position: relative;
  left: calc(-1 * (100svw - 100%) / 2);
}

.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 .container-col {padding: 0 50px; background-color: #fff; border-radius: 0.375rem;}
.breaker .onecol {background-color: #fff; padding: 50px;}
.breaker .breakercontent {padding: 15px 0;}

.breaker .container-col {padding: 50px; padding-top:10px; height: 100%;}
.twocol .container-col {position: relative;}
.twocol .container-col .colbg {position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: -1;}

.breaker .container {position: relative; z-index: 1;}

.breakercontent .container {padding-left: 0; padding-right: 0;} 
.breakercontent .email-link {color: inherit;}


.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;}
 
/* Contentbox */

.col-md-6 .contentbox div[class^="col-"], .col-md-4 .contentbox div[class^="col-"] {width: 100%;}
.contentbox .child {position: absolute; top: -5px; left: -5px; right: -5px; bottom: -5px;}
.contentbox .parent {position: absolute;
top: 0;
right: 15px;
bottom: 0;
left: 15px;
overflow: hidden;
}

.contentbox.imagefloat .parent{left: 50%; margin-left: -50vw; right: 0px;}
.contentbox.imagefloat .right .parent
{width: 50vw; 
 left: 50vw; 
}

.ce-border img {border-radius: 50%; border-color: transparent;}

.imagefloat .fm_button {
margin: auto;
color: #fff !important;
border: 1px solid #fff;
margin-top: auto;
}
.imagefloat .fm_button:hover {color: #fff !important; background-color: #FBC07E !important;}

.parent img {  position: absolute;
  top: 50%;
  left: 50%;

  width: auto;
  height: auto;

  max-height: none;
  max-width: none;

  min-height: 100%;
  min-width: 100%;
 
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);}

.contentbox .boxtext {padding: 15px 35px;}
.contentbox .button {width: 100%;}

/* 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: 605px;
    position: relative;
    min-height: 220px;
}

.content .sliderwrapper {height: 605px; min-height: 220px;}
.content .navcontainer {height: 300px;}

.sliderwrapper .swiper-button-next,
.sliderwrapper .swiper-button-prev{
    visibility: hidden;
  }

.sliderwrapper {position: relative; overflow: hidden; margin: 0; padding: 0;}
.sliderwrapper .stripe {position: absolute; left: 0; right: 0; bottom: 0; background-color: #fff;}
.sliderwrapper hr {position: absolute; bottom: 80px; left:0; right: 0;z-index: 200; border-top: 1px solid #fff; margin: 0;}
.sliderwrapper .container {position: relative;}
.sliderwrapper .swiper-slide {position: relative; }
.sliderwrapper .wrapper {position: absolute;top: 0;
bottom: 0;
left: 0;
right: 0;
overflow: hidden;}

.sliderwrapper .swiper-slide img {min-width: 100%; }

.sliderwrapper .swiper-slide {margin-bottom: -5px;}
.sliderwrapper .claim .row {margin:0;}

.sliderwrapper .claim {
  position: absolute;
  background-color: rgba(0,0,0,0.6);
  bottom: 40%;
  left: 0;
  font-weight: 300;
  min-width: 40vw;
  animation-duration: 0.6s;
  animation-fill-mode: forwards;
  opacity: 0;
  animation-name: headeranimationin;
  padding: 10px 15px 15px 10px;
  text-align: right;
  border-radius: 0px 5px 5px 0px;
}

.claim.hidden {opacity: 0;}

.sliderwrapper  .claim h1 {text-align: right; margin:0; padding:0; color: #fff; font-weight: normal; font-size: 47px; font-family: "Raleway", sans-serif; }
.sliderwrapper  .claim h2 {text-align: center; margin:0; padding:0; color: #fff; font-weight: normal; font-size: 60px; font-family: "Open Sans", sans-serif; }
.sliderwrapper  .claim h3 {text-align: center; margin:0; padding:0; color: #fff; font-weight: normal; font-size: 40px; font-family: "Open Sans", sans-serif; font-weight: bold; margin-top: 50px; }
.sliderwrapper  .claim a {text-align: center; background-color: rgba(147,181,63,0.8); color: #fff; text-decoration: none; padding: 5px 20px; border-radius: 5px;}



.sliderwrapper .container {position:relative;}

.sliderwrapper span.bottomstripe {position: absolute; bottom: -2px; left:-2px; right: -2px; z-index: 10;}
 
.slider {height: 605px; overflow: hidden;}
.subnavi {height: 100%;}
.btn-default {
   color: #fff;
   background: #358257;
   margin-top:20px;
   padding:5px;
   width:130px;
   transition: background ease 0.3s;
}
 

.fm_button {text-align: center;
display: block;
margin: auto;
margin-top: 15px;
position: relative;
width: 200px;
border-color: transparent !important;
border-radius: 5px;}


.btn-default:hover {background-color: #000; color:#FFF;}

   
 textarea.form-control {height: 180px;}
.btn-primary { color: #ffffff; background-color: #358257; border-color: #358257; text-align:center!important;}
.btn-primary:hover { background-color: #358257; color:#FFF; border-color: #358257; text-align:center!important;}


.ce-textpic {position: relative;}



 .frame-type-uploads h1 {background-color: #5C605C; color: #FFF!important; padding: 2px 10px; margin-bottom: 0px !important; margin-top: 8px; font-weight: normal; font-size: 18px; }
 .ce-uploads li a {color: #000; text-decoration:none;}
 .ce-uploads li { padding: 5px 5px; margin: 4px 0; background:#DDDDDD;}
.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;}
 
  hr {border-top: 1px solid #dddddd;}
  td {padding:5px;}
  tr {border-bottom: 1pt solid #DDDDDD;}
 .extra {margin-bottom:5px; margin-top:9px;} 
 
 
 
 label {font-weight:normal; padding: 15px 0px 5px 0px}


.ce-uploads-description {font-style: italic; margin-top:3px;}


footer {
  background: #e6dbb8;
    background-position-y: 0%;
    background-repeat: repeat;
    background-image: none;
  color: #444;
  border-bottom: 5px solid #ddbb71;
  padding-bottom: 30px;
  padding-top: 25px;
  overflow: hidden;
  text-align: center;
}

footer ul {margin-bottom: 0;}
footer ul a {color: #555;}
footer a {color: #555; text-decoration:none}
footer ul a:hover {color: #000; text-decoration: none;}
footer .ce-bodytext ul li::before {
  content: "\F285\A0";
  margin-left: -25px;
  vertical-align: -2px;
  color: rgba(254,254,254,0.5);
  font-family: 'bootstrap-icons';
  font-size: 14px;
}

footer ul {list-style: none;}
footer li {display: inline-block; padding-right: 25px;}
footer li.last {padding-right:0;}

.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: #25578f;
  padding: 0.5rem;
  border: none;
  cursor: pointer;
  opacity: 100%;
  transition: opacity 0.5s;
  z-index: 100;
}

.hidden {
  opacity: 0%;
}

/* Suchfeld */
.expandable-search__btn {background: none;}

/* Social */
.social {margin: auto 0; font-size: 20px;}
.social a {margin-right: 15px;}
.social a {color: #000;}
.mm-navbar .fa, .mm-navbar .fab {font-size: 24px;}
/* Textstyles */

.blue-bg {background-color: #004474;}
.breaker .frametop {  }  
.breaker .framebottom { }
.breaker .frametop img {margin-top: -2px;}
.breaker .framebottom img {margin-bottom: -2px;}
.grey-bg {background-color: #e6dbb8;color:#fff}
.breaker-top {margin-top:5px;}


.news .swiper-slide {height: auto; display: flex;}
.news-list-item {display: flex; flex-direction: column;height: auto;}
.news .news-list-view .row {margin: 25px 0;}
.news .news-list-view h2 a {text-decoration: none; color: #000;}
.news .lead {font-weight: 400;}
.news-list-view.sliding {padding-left: 80px; padding-right: 80px; position:relative;}
.news-list-item .teaser {margin-top: 5px; background-color: #ebebeb; padding: 15px; flex: 1;}
.news-list-item .lead {font-size: 16px;}
.news-list-item .teaser h3 a {color: #000; text-decoration: none;}
.news-list-item .teaser h3 { font-family: "Open Sans"; font-size: 16px;}
.news-list-item a.btn-read-more {margin: auto;}
.news-list-item img {border-radius: .375rem .375rem 0 0;}
.news-list-item .teaser {border-radius: 0 0 .375rem .375rem;} 
.news-list-item .news-button {margin-top: auto;}



.news .article .news-img-wrap a {
	padding: 0px;
	border: none;
}

.news .article .news-img-wrap a img {border-radius: .375rem; max-width: 100%;}

.news-single .article .news-img-wrap {
	float: right;
	width: auto;
	margin: 0 0 0 25px;
}

.weekmenu {text-align:center;}
.weekmenu_current h2 {text-align: center; color: #A3833A; margin: 100px 0;}

.accordion button.accordion-trigger {
    border-radius: 5px;
}
.accordion .ka-content {border-radius: 0 0 5px 5px; transform: translateY(-5px); background: rgba(0,0,0,0.4) !important; margin-top:10px !important;}


.accordion button.accordion-trigger:hover {background: #e6dbb8 !important; border:1px solid #fff !important; color:#000 !important;}
.accordion button.accordion-trigger {background: none !important; border:1px solid #fff !important;}

.parvus__overlay {
	background-color: rgba(254,254,254,1) !important;
}

/* Container Styles */
.newsletter_col .container-col{background-color: rgba(254,254,254,0.9);}
.ce-bodytext a {color:#000}

/* a11y */
.visible-hidden {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
    background-color: #366b94;
    color: #fff !important;
}

.visible-hidden:focus {
    clip: auto;
    height: auto;
    overflow: auto;
    position: absolute;
    width: auto;
}

#language {list-style: none; display:inline-block; margin: 0;}
#language img {height: 20px; width: 20px; margin: 3px;}
#language img.el-active {height: 26px; width: 26px; margin: 0;}

.topmenu #language {position: absolute;
right: 15px;
top: 10px;
display: none;}

.topmenu #language img {filter: invert(100);}
#m-toplogo {position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
margin-top: 10px;
opacity: 0;
display:none;}

.tiles div[class*="col-"] {padding:5px; position:relative;}


.tiles .col-md-3 img {
  width: 100%;
  height: 300px;
  object-fit: cover;
}
.tiles .col-md-6 img {
  width: 100%;
  height: 300px;
  object-fit: cover;
}

.tiles a {position: absolute;
right: 5px;
bottom: 5px;
top: 5px;
left: 5px;
background-color: rgba(0,0,0,0);
transition: all ease 0.3s;}

.tiles a:hover {background-color: rgba(0,0,0,0.5)}

.tiles a span {position: absolute;
bottom: 0;
right: 0;
background-color: #366b94;
color: #fff;
padding: 5px 15px;
font-size: 18px;
border-radius: 5px 0 0 0;
}

ul.tx-indexedsearch-browsebox {
    padding-left: 0;
    list-style: none;
    margin-top: 25px;
}



.tx-indexedsearch-browsebox li {display:inline-block;}
 .tx-indexedsearch-browsebox li a {
    position: relative;
    display: block;
    padding: 0.5rem 0.75rem;
    margin-left: -1px;
    line-height: 1.25;
    color: #000;
    background-color: #fff;
    border: 1px solid #000;
}
.tx-indexedsearch-search-submit, .tx-indexedsearch-form {display:inline-block;}
#tx_indexedsearch legend{display: none;}
.tx-indexedsearch-searchbox {margin-bottom: 15px;}
li.tx-indexedsearch-browselist-currentPage a {background-color: #366b94; color: #fff;}
.tx-indexedsearch-browsebox li:first-child a
 {
    margin-left: 0;
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}
.tx-indexedsearch-browsebox li:last-child a
 {
    margin-left: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-left: none;
}
.tx-indexedsearch-description strong {color: #c31924;}

.breakermap .cbQuickGoogleMap {
margin-right: calc(50% - 50lvw);
margin-top: -47px;
margin-bottom: -129px;
position: absolute;
top: 0;
left: 0;
right: 0px;
bottom: 0;
margin-left: 67%;}

.leaflet-control-attribution svg {display: none !important;}

figure.c-gallery__figure {margin: 0; padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5); padding-top: calc(var(--bs-gutter-x) * .5);}

.breakermap .inner_cbQuickGoogleMap {height:100% !important;}
.breakermap .leaflet-tile {filter: grayscale(100%) invert(80%); }
.breakermap .leaflet-container {background: transparent;}
.breakermap .leaflet-right {right: inherit !important;}

.daymenu .container-col {padding-bottom: 10px;}
.daymenu .container-col h1 {margin: 10px 0; font-weight: bold;}

.cookie-consent-replacement {border: 1px solid #000; padding: 25px; text-align: center; margin: 25px 0;}
.cookie-consent-replacement .info {color: #888;
  font-size: 14px;
  padding-top: 15px;}

.cookie-consent-container {font-family: "Open Sans", sans-serif !important; font-size: 15px !important;}

.cookie-consent-container .buttons .btn--secondary {width: 184px; display: inline-block; vertical-align: inherit;} 
.cookie-consent-container .label {font-size: 15px;}
@media (min-width: 950px) {
  .cookie-consent-container .consent-modal {
    height: 500px;
    font-size: 15px;
  }
}

.cookie-consent-container .buttons .btn--primary {background: #358257; border-color: #358257; }
.cookie-consent-container .label input:checked ~ .checkmark {
  background-color: #358257;
}

label {
    font-weight: bold;
    padding: 20px 0px 0px 0px;
}
.form-text {
       color: inherit;
       font-size: inherit;
       margin-bottom:15px;}
.form-check {padding-left:0px;}