
body {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Saira SemiCondensed SemiCond';
  overflow-x:hidden;
  background-color: #fff;
}

#header_container {display:none!important;}




.slick-slide img {
  height: 380px;
}

.termincontainer { display: grid;
  gap: 40px;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: auto;
  align-items: stretch; }
.termin_main_container
 {
  box-sizing: border-box;
  padding: 20px;
  border: 1px #eaeaea solid;
   box-sizing: border-box;
  padding: 20px;
  border: 1px #eaeaea solid;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: #ececec;
}

#dia_slider_img::after {

margin: 0;
  content: "";
  position: absolute;
  inset: 0;
  background: #ff0000d9;
  opacity: 0.36;
  mix-blend-mode: soft-light;
  pointer-events: none;
  
}

.primary_active {

  background-image:url('images/active.png');
  background-size: 32px;
  background-repeat: no-repeat;
  padding-left: 30px;
  background-position: 0px 3px;
}
.primary {

 padding-left: 30px;
}

.ce-bodytext ul li {color: #3e3e3e !important;
  font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
  line-height: clamp(1.25rem, 1.125rem + 0.625vw, 1.875rem);}



.slick-slide img {  filter: grayscale(100%) brightness(1) contrast(1.32); }
  

#slideshow figure::after {
  margin: 0;
  content: "";
  position: absolute;
  inset: 0;
 background: #ff0000d9;
  opacity: 0.36;
  mix-blend-mode: soft-light;
  pointer-events: none;


}




#footer1 ul li { margin-right: 0px; display: inline-block;}

.ce-bodytext ul {list-style-type: square;}
.ce-bodytext li::marker {   color: #d80028; }

.frame-layout-0 .ce-bodytext { columns: 2; column-gap: 40px; }

#footer {
  background-image: url('images/footer_backdrop_top.jpg');
  background-repeat: no-repeat;
  background-position: 0px -42px;
  background-color: #d70127;}

/* ++++++++++++++ POPUP ++++++++++++++++++++++ */

.close_button { position: absolute;
  bottom: 30px;
  right: 50px;
}


/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++  */

#slideshow { 
margin:0 auto;
margin-top: 0px;
           max-width: 1280px;
            
  
           } 



.slick-slide {
  position: relative;
}

.slick-slide::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url('images/schraege.png') bottom center / cover no-repeat;
    
  pointer-events: none;      /* klicks bleiben durchsichtig */
  z-index: 2;
  background-size:100%;
}



.frame-layout-6 {background-color: #188743; }
.frame-layout-6 .ce-bodytext > p{

  padding: 40px;
  color: #f2f2f2 !important;
  line-height: 40px;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.83);
  font-size: 30px !important;
  margin: 0 auto;
  max-width: 1920px;
  box-sizing: border-box;
  padding-left: 100px;
  padding-right: 100px;
  
}



.contenttable {width: 100%;   border-collapse: collapse;  background-color: #aaa;  color: #444;}
.contenttable th, .contenttable td {text-align: left;}

tbody,th {font-size: clamp(1rem, 0.875rem + 0.625vw, 1.625rem);
  line-height: 1.2;}



.contenttable tr td:first-child {padding-left: 3vw;}
.contenttable tr td:last-child { padding-left: 3vw;}

.contenttable tr:first-of-type > td {padding-top: 2vw;}




.slick-dots li button::before { color:#ac0a20!important; }

  .slider_button_rot {border-radius: 5px;
  background-color: #ac0a20;;
  color: #fff;
  box-sizing: border-box;
  padding: 8px 25px 10px 24px;
  text-shadow: none;
  bottom: 10px;
     white-space: nowrap;
box-shadow: 0 4px 5px -2px rgba(0,0,0,.22),0 2px 1px -1px rgba(0,0,0,.05);
                      font-size: clamp(1rem, 0.875rem + 0.625vw, 1.625rem);
  line-height: 1.5;
  word-spacing: 0.02em;
}

  .slider_button_gelb {border-radius: 5px;
  background-color: #f7cc00;;
  color: #454545;
  box-sizing: border-box;
  padding: 8px 25px 10px 24px;
  text-shadow: none;
  bottom: 10px;
                       font-size: clamp(1rem, 0.875rem + 0.625vw, 1.625rem);
  line-height: 1.5;
  word-spacing: 0.02em;
     white-space: nowrap;
    position: absolute;
                       box-shadow: 0 4px 5px -2px rgba(0,0,0,.22),0 2px 1px -1px rgba(0,0,0,.05);
}

  .slider_button_gruen {border-radius: 5px;
  background-color: #1c6b1d;
  color: #fff;
  box-sizing: border-box;
  padding: 8px 25px 10px 24px;
  text-shadow: none;
  bottom: 90px;
     white-space: nowrap;
    position: absolute;
                        box-shadow: 0 4px 5px -2px rgba(0,0,0,.22),0 2px 1px -1px rgba(0,0,0,.05);
                        font-size: clamp(1rem, 0.875rem + 0.625vw, 1.625rem);
  line-height: 1.5;
  word-spacing: 0.02em;
}

.contenttable .slider_button_gruen {bottom: 44px;   position: relative; }

h4 {
  position: relative;
  display: inline-block;
  color: #ba071f !important;
  font-weight: 300;}

h4::after {
  content: "";
  display: inline-block;
  width: 16px;              /* Icon-Breite */
  height: 16px;             /* Icon-Höhe */
  margin-left: 0.5em;       /* Abstand zum Linktext */
  background-image: url("images/plus_circle.png");
  background-size: contain; /* oder cover */
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  top: -4px;
  right: -18px;
}


.ags_kachel_bottom .slider_button_rot{
  left: 50%;
  transform: translate(-50%, -50%)
}

.two-columns { box-sizing: border-box;   padding-top: 20px;   padding-bottom: 40px;}

 .left {position:relative;}

#content .slider_button_rot {
  position:absolute;
}

.ags_kachel_container_main {    aspect-ratio: 5/8;    width: 100%; position:relative; border: 1px #dfdfdf solid;
  border-radius: 10px 10px 0px 0px; box-shadow: 0 4px 5px -2px rgba(0,0,0,.22),0 2px 1px -1px rgba(0,0,0,.05);
  background-color: #fff;}
.ags_kachel_container_main img {width:100%;       border-radius: 10px 10px 0px 0px;  aspect-ratio: 16 / 6;     object-fit: cover; }


.ags_kachel_bottom h2  { font-size: 24px;
  margin-top: -10px;
  color:#666666;
  margin-bottom: 0px;
  font-weight: 600;                  }

.ags_kachel_top{
position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 30%;          /* 1/4 vom Quadrat */
  overflow: hidden; }

.ags_kachel_bottom {
  position: absolute;
  text-align: center;
  top: 30%;
  left: 0;
  width: 100%;
  height: 70%;          /* Rest */
  box-sizing: border-box;
  padding: 0px 18px 0px 18px;
}


.ags_kachel_bottom p {font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem); }

.ags_dce_padding {    padding-left: 4px;     padding-right: 4px;     box-sizing: border-box;}


.ags_swap_container_left img {margin-top:65px; width:100%; height:auto;  border-radius: 5px;
                             box-shadow: 0 4px 5px -2px rgba(0,0,0,.22),0 2px 1px -1px rgba(0,0,0,.05);}

.ags_swap_container_main { display: grid;
 grid-template-columns: 30% 68%;
  gap: 50px;
  }


/*ags_swap_container_main */

.swap_right {
  grid-template-columns: 30% 68%;
  grid-template-areas: "left right";
}

/*.ags_swap_container_main  */

.swap_left {
  grid-template-areas: "right left";
  grid-template-columns: 68% 30% ;
}



/*ags_swap_container_main */

.swap_right_pair {
  grid-template-columns: 1fr 1fr;
  grid-template-areas: "left right";
}

/*.ags_swap_container_main  */

.swap_left_pair {
  grid-template-areas: "right left";
  grid-template-columns:  1fr 1fr;
}






.ags_swap_container_left {
  grid-area: left;
}

.ags_swap_container_right {
    position:relative;
  grid-area: right;
}

.ags_swap_container_main h2,  .ce-bodytext h2{
  text-align:left!important;
  font-size: clamp(1.25rem, 1.05rem + 1vw, 2.25rem);
  margin-top: 20px;
  margin-bottom: 0px;
  color: #ba071f!important;
  
  font-weight: 600;
}


.ags_swap_container_main h3 { display:none;}

.ags_swap_container_main p { font-size:  clamp(1rem, 0.875rem + 0.625vw, 1.625rem);
                             line-height: 1.5;
                            max-width: 66ch;
                            word-spacing: 0.02em;
                           }

.ags_img_caption p {font-size: 16px;
  text-align: center;
  padding: 0;
  margin: 0;
    margin-top: 0px;
  margin-top: 10px;
}

.ags_swap_container_main_container{
  padding-left: 30px;
  padding-right: 30px;
  box-sizing: border-box;
  background-color: #e5e5e5;
  padding-bottom: 4vw;
  box-sizing: border-box;
  padding-top: 4vw;
}


 

.dia_slider_mask {   width: 100%;   height: 100%;   background-color: #000000a3;   position: absolute;   z-index: 999;   top: 0px;  transition: background-color 1000ms ease-in-out;}
.dia_slider_mask:hover {background-color: #00000075; }


.news .footer span {   border-right: 4px solid #cb0a21!important; }
.news-list-category {font-weight: 600;}
.header h1 { border-bottom: 1px #cb0920 solid;   padding-bottom: 5px; }

#slideshow .frame-default {max-width:100%!important; }

.news .article:last-child {
  padding-bottom: 15px!important;
  margin-bottom: 15px!important;
}

strong {color: #d70127; font-weight: 600;}

.articletype-0 { transition: all .2s ease-in-out; }
.articletype-0:hover { transform: scale(1.1); }




.menup2 {margin-left: 10px;
  margin-top: 20px;
  background-color: #eee;
  padding: 10px!important;
         box-sizing:border-box;
        }
.menup {padding: 0; padding-left: 20px; list-style-type: none;}
.menup li {
  position: relative;
}

.selected {transform: rotate(90deg);  transition-delay:0.5s;}


.handle {

  transition-delay: 0.5s;
  position: absolute;
  right: 47px;
  top: 0px;
  background-image: url(images/dropdown.png);
  width: 18px;
  height: 19px;
  background-size: 22px;
  background-repeat: no-repeat;
  color: transparent;
  cursor: pointer;
  border: 1px #dadada solid;
  padding: 2px;
  
}



.pagetitle {

  text-shadow: 2px 2px 0px rgba(0,0,0,0.99);
  color: #ffffffdb;
  font-size: 35px;
  font-weight: 700;
  position: absolute;
  bottom: -20px;
  display: block;
  width: 100%;
  text-align: center;
  
}



ol {columns: 2;   list-style-type: none;} 
ol li {height: 30px!important;}

.more, p a, .news-backlink-wrap a{
  text-decoration: none;
  font-weight: 600;
  color: #d70127;
}

.download {
  text-decoration: none;
  font-weight: 500;
  color: #8a8a8a;
  padding-left: 30px;
  background-repeat: no-repeat;
  background-image: url(images/download.png);
  background-size: 20px 23px;
}



.news .article .news-img-wrap a { border:none!important;}

.news .footer {
  clear: both;
  padding: 10px 0 0 0;
  border-top: none!important;
  color: #888;
  box-sizing:border-box;
  width: 100%; }

.news .article .news-img-wrap img {
  float: left;
  height: auto;
  margin-top: 13px;
  width: 130px!important;
  margin-right: 30px;
}


h3 a { color:#444; text-decoration:none;   font-size: 1.14em;
  color: #444;
  font-weight: 400; 
      min-height: 4em;
  display: block;
     }


.news-list-view {  display: grid; grid-gap: 20px; grid-template-columns: 1fr 1fr 1fr; }
.articletype-0 {box-sizing: border-box;   padding: 0px 20px 0px 20px; 
               border: 1px #ddd solid;
  background-color: #f9f9f9;
               }


div.slick-active > div {display:flex!important;}

#footer4 {padding-right: 30px;}

iframe {aspect-ratio: 16 / 9;  	height: 100%; 	width: 100%;}

#mainnavi > ul  li:last-child {border:none!important;}

.dce_container {display: grid;   grid-template-columns: 1fr 33%; }
 div.dce_container_right img {width:100%; height:auto; }
.dce_container_left_container_content {box-sizing: border-box; padding: 20px 40px 10px 20px;}

.dce_container_left_container_content p {
color: #3e3e3e!important;
  font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
  line-height: clamp(1.25rem, 1.125rem + 0.625vw, 1.875rem);
  margin-top: 0;
}

h1  {color: #222;   font-weight: 600!important; font-size: clamp(1.25rem, 0.8333rem + 1.3889vw, 2.5rem);}

.ce-bodytext > p { color:#3e3e3e!important;
  font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
  line-height: clamp(1.25rem, 1.125rem + 0.625vw, 1.875rem);
  margin-top: 0;}

.frame-default { margin: 0 auto;   max-width: 1920px; }




.dia_slider_content_container {position:relative;}
.dia_slider_content {position: absolute;  width: 33%;
  background-color: #d70127;
  box-sizing: border-box;
                     display: flex;
  align-items: center;
  padding: 40px;
  top: 0px;
  height: 94%;
  z-index: 3; } 

.dia_slider_content p {
  text-shadow: 2px 2px 0px rgba(0,0,0,0.99);
  color: #fff;
  line-height:1.8;
  font-size: clamp(1rem, 0.9rem + 0.5vw, 1.5rem);
  font-weight: 400;
  position: relative;
  z-index: 999;
  margin: 0;
}

.dia_slider_content h2 {
  
  text-shadow: 2px 2px 0px rgba(0,0,0,0.99);
  color: #fff;
  font-size: clamp(1.5rem, 1.2rem + 1.5vw, 3rem);
  font-weight: 600;
  position: relative;
  z-index: 999;
  margin: 0;
  padding: 0;
  text-align: left;
}

                       

#dia_slider_img > img  { height:450px; margin: 0 auto; }

.active {color:#ce172d!important;}



#searchbox { 
  position: absolute;
  z-index: 100;
  right: 160px;
  width: 26px;
  height: 25px;
  background-size: 100%;
  background-image: url(images/search.png);
  top: 23px;}

#popup_close {
width: 30px;
  height: 30px;
  background-color: #fff;
  position: absolute;
  top: 0px;
  right: 0px;
  cursor:pointer;
  background-image: url(images/close.png);
  background-size: 100%;
}




#popup {position: fixed;
  display: none;
  top: 120px;
  width: 640px;
  height: auto;
  z-index: 9999;
  background-color: #fff;
 
  padding: 30px;
  box-sizing: border-box;
  margin-top: -60px;
  border: 1px #d0d0d0 solid;
  -webkit-box-shadow: 11px -8px 15px 0px rgba(0,0,0,0.5);
  -moz-box-shadow: 11px -8px 15px 0px rgba(0,0,0,0.5);
  box-shadow: 11px -8px 15px 0px rgba(0,0,0,0.5);
  background-size: 100%;
  left: 30px;
}


#popup_close {display:none;
  cursor: pointer;
  width: 20px;
  height: 20px;
  background-color: red;
}




#content_container {
  margin:0 auto;
  margin: 0 auto;
    margin-top: 0px;
 max-width: 1280px;
  margin-top: 0px;}



.ce-div {
    border: none;
  
    padding: 0px;
    height: 1px;
    margin: 0;
    border-top: 1px #b6b6b6 solid; }
 
.form-check {margin-bottom:20px;}

.readmore_button p, .readless_button p {color: #ffffff;   line-height: 22px;   font-size: 16px; padding:0px; margin:0px;}

.captcha {
  margin-bottom: .5rem;
  margin-top: 40px;
}

#slideshow  header {display:none;}

.xxlarge {height: 200px; }
.form-control {
  font-family: 'Saira SemiCondensed SemiCond',  sans-serif;
  width: 100%;
  font-size: 16px;
  border: 1px #eee solid;
  background-color: #dfdfdf;
  margin-top: 10px;
  margin-bottom: 10px;
  padding: 5px;
  box-sizing: border-box;
}

.frame-layout-2 {margin: 0 auto;
    margin-bottom: 0px;
 
  box-sizing: border-box;
 
  background-color: #fff;
  padding-left: 20px;
 
 }

.frame-layout-3 {margin: 0 auto;
  margin-bottom: 0px;
  max-width: 1280px;
  padding-left: 40%;
  padding-right: 50px;
  box-sizing: border-box;
  margin-bottom: 50px;}


.g-recaptcha {margin-top: 20px;   margin-bottom: 40px; }


.btn{
  background-color: #cd141b;
  padding: 10px 20px 10px 20px;
  color: #eee !important;
  border: none;
  margin-top: 20px;
  margin-bottom: 50px;
  font-size: 20px;
  cursor: pointer;
}

.clearfix h2 {  font-size:10px!important; margin-top: -5px;   margin-left: 2px; }

.faq_container .dce {padding: 0px 10px 0px 10px;}

.faq_container {
  margin: 0 auto;
  max-width: 1280px;
  box-sizing: border-box;
  padding: 40px;
  display: grid;
  grid-template-columns: 1fr 1fr;
}


.Anfrage, .zurueck {
  text-decoration: none;
  display: inline-block;
  box-sizing: border-box;
    padding: 10px 20px 10px 20px;
  width: 50%;
  color: #fff;
  margin-bottom: 10px;
  margin-top: 10px;
  font-weight: 600;
  font-size: clamp(0.75rem, 0.625rem + 0.4167vw, 1.125rem);
}

.Anfrage {background-color: #39ce89; }
.zurueck {background-color: #cccccc;}


.frame-layout-1 {margin: 0 auto;
  margin: 65px 40px 50px 40px;
  box-sizing: border-box;
  padding: 30px;
  background-color: #fff;
  position: relative;
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
                }



 h1 {color: #cb0a21;   font-size: clamp(1.25rem, 0.8333rem + 1.3889vw, 2.5rem);  font-weight: normal; padding: 0;   margin: 0;}

 h2 {color: #444;   font-size: 28px; font-weight: normal; font-size: clamp(1.25rem, 1rem + 0.8333vw, 2rem);}

.color2 {background-color:#807879; }

.infokachel2 .info_kachel_container {background-color:#eee; }
.readmore_button {display:inline-block; margin-top: 10px;cursor:pointer;  background-color: #cd141b;
  padding: 10px 20px 10px 20px; margin-bottom:50px;
  color: #eee !important;}

.readless_button {display:inline-block; margin-top: 10px;  cursor:pointer;background-color: #cd141b;
  padding: 10px 20px 10px 20px; margin-bottom:50px;
  color: #eee !important;}
.readmore_container_content {display:none;}

.readmore_container {   max-width: 1280px;    width: 100%;   margin: 0 auto; box-sizing: border-box;
  padding-left: 0px;
  padding-right: 0px; }

.frame-layout-0 {box-shadow: none !important;
  max-width:1280px;
  margin: 0 auto;
  margin-top: 0px;
  margin-bottom: 0px;
  width: 100%;
  box-sizing: border-box;
  padding:30px;
                 padding-top:10px;
  background-color:#fff!important;
 }


#navi_on {transition: 1.5s;
  display: none;
  cursor: pointer;
  width: 31px;
  height: 32px;
  background-image: url(images/hamburgeri.png);
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  right: 19px;
  top: 5px;
}

#footer1 ul  {list-style-type:none; margin: 0; margin-top: 40px;
  padding: 0;}

#footer1  a {font-size: clamp(1rem, 0.6795rem + 1.0256vw, 1.5rem);}
#footer1 .cr a{font-size: 11px !important;}
.cr {font-size: 10px;
  position: absolute;
  right: 30px;
  text-align: right;
  bottom: 10px;
  color: #ccc;}

#phonenavi {

  position: absolute;
  right: 0px;
  top: 41px;
  background-color: #fff;
  width: 100%;
  display:none;
  box-shadow: 0 4px 5px -2px rgba(0,0,0,.22),0 2px 1px -1px rgba(0,0,0,.05);
}


#phonenavi ul {list-style-type:none; padding:0px;}

#phonenavi ul li {padding-bottom: 10px;
  border-bottom: 1px #eee solid;
  margin-top: 8px; }

 

#phonenavi a {text-decoration:none; color:#454545;margin-left:58px;}

#phonenavi a:hover {color:#cd141b; }

#navi_on:hover  { transition: 0.5s;  background-image: url(images/hamburgera.png);


}


.slick-prev::before, .slick-next::before {
 font-family: 'Saira SemiCondensed SemiCond'!important;
  -webkit-transform: scale(1, 1.95);
  display: inline-block;
  font-weight: 100;
}


.slick-prev::before {line-height: 35px;
  padding-bottom: 9px !important;
  content: '<'; font-family: 'Saira SemiCondensed SemiCond'!important;
}
.slick-next::before {line-height: 35px;
  padding-bottom: 9px !important;
  content: '>'; font-family: 'Saira SemiCondensed SemiCond'!important;
}

figure {   margin: 0; }
#content .slick-slider {margin-top:0px; margin-bottom: 0px;}

#mainnavi ul li ul li a { font-size:14px!important; }
#mainnavi ul li a:hover {color: #cb0a21!important; transition: 0.5s;}
#mainnavi ul li a {transition: 0.5s; color:#595959!important; }
.slick-dots {  bottom: -21px !important; }
.slick-dots li button::before {  font-size: 16px!important;}
.slick-prev::before, .slick-next::before {font-size: 44px;
  display: block;
  background-color: #222;
  width: 74px;
  padding: 0;
    padding-bottom: 0px;
  margin: 0;}
.slick-next {right: 70px!important;z-index:10;}
.slick-prev {left: 12px!important;z-index:10;}
a.bread_link_smallxx:last-child {color:#cd141b!important;}
.menu2 {display:none;}

.breadcrumb_container_main {height: 343px; }
.horizontal_menu {display: block;
  width: 50px;
  height: 50px;
  top: 150px;
  position: absolute; }

a.horizontal_menu {background-size:100%;  transition: 0.5s;}
a.horizontal_menu:nth-child(1) {left:80px; background-image:url(images/prev.png); opacity:0.5;}
a.horizontal_menu:nth-child(2) {right:80px;background-image:url(images/next.png); opacity:0.5;}
a.horizontal_menu:hover {opacity:1;}

.breadcrumb_container {margin:0 auto; max-width:1280px; width:100%; position:relative; }
.breadcrumb_title { position: absolute;
  top: 153px;
  left: 50%;
  transform: translate(-50%, 0);
  font-size: 30px;}

.breadcrumb_container_main {background-size: cover;}

.breadcrumb_navi {position: absolute;
  top: 198px;
  left: 50%; text-align: center;
  transform: translate(-50%, 0);
  font-size: 12px;}

a.bread_link_smallxxx {color:#252825!important; text-decoration:none;}


.back-to-top {
  background-image: url(images/scroll_up.png);
  position: fixed;
  bottom: 50px;
  background-size: 100%;
  right: 5px;
  width: 40px;
  height: 40px;
  z-index: 99999;
  transition: 0.5s;
  
}

.back-to-top:hover {
  background-image: url(images/scroll_up2.png);
}

#footer_container, #footer_container a {      color:#e8e8e8; }
#footer {  margin: 0 auto;   max-width: 1280px;   width: 100%; text-align: left; margin-top: -15px;   padding-top: 30px; padding-bottom: 30px;
  
  margin-bottom: 0px;
  box-sizing: border-box;
  padding-left: 40px;
  padding-right: 20px;
  position: relative;
        }
#footer a { text-decoration:none; transition: 0.5s;}
#footer a:hover {color:#fff;}

.button_link_rot {background-color: #ac0a20;
  padding: 10px 20px 10px 20px;
  color: #eee !important;      border-radius: 5px;
  
  white-space: nowrap;
  box-shadow: 0 4px 5px -2px rgba(0,0,0,.22),0 2px 1px -1px rgba(0,0,0,.05);      
                 font-size: clamp(1rem, 0.875rem + 0.625vw, 1.625rem);
  line-height: 1.5;
  word-spacing: 0.02em;}



.button_link_rot:hover {box-shadow: 0 2px 3px rgba(0,0,0,.1),0 4px 8px rgba(0,0,0,.3); }




.infokachel  {margin: 0 auto; margin-top: 0px;  width: 100%;   max-width: 1280px; display:grid; grid-template-columns: 1fr 1fr;  padding: 50px;   padding-top:0px;
                            margin-top: -140px;   position: relative;               box-sizing: border-box;}


.infokachel2  {margin: 0 auto; margin-top: 0px;  width: 100%;   max-width: 1280px; display:grid; grid-template-columns: 1fr 1fr;  padding: 50px;   padding-top:0px;
                                          box-sizing: border-box;}

.info_kachel_container {aspect-ratio: 1/1; text-align: center;
  border: 1px #d0d0d0 solid;  transition: 0.5s; position:relative;
  padding: 0px;
  margin: 20px;
  box-shadow: 0px 0px 80px 0px rgba(0,0,0,0.54);
                       }
      
.infokachel .info_kachel_container  {padding:30px;}

.info_kachel_container:hover {background-color:#f4f4f4;}

.info_kachel_container img {
  min-width: 100%;
  min-height: 100%;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
  opacity:0.3;
  

                            
                           } 

.infokachel2 .info_kachel_text {text-align:center; margin-top:40px; padding-left: 45px;   padding-right: 45px; position: absolute;
  top: 0;
  left: 0px;
  right: 0px;
  bottom: 0px;}

.square {margin: 0 auto; margin-top: 40px;  width: 100%;   max-width: 1280px; display:grid; grid-template-columns: 1fr 1fr 1fr 1fr; margin-bottom: 40px; }
.square_container { aspect-ratio: 1/1; overflow: hidden; margin: 2px; background-color: #cd141b;}
.square_container > img {width: 100%;
  object-fit: cover;
  transition: 0.5s;
  height: auto;}
.square_container > img:hover {opacity:0.6;}

.frame-layout-4 {        background-color: #e5e5e5;     padding: 0;     margin: 0;     box-sizing: border-box;     padding-left: 30px;     padding-right: 30px; }

.frame-layout-4  p, .frame-layout-4  h2{color:#eee!important; font-weight:700; }

#contentbottom {background-color: #807879;}


.powered-by {display:none;}


.header_pos {top:0px!important;}
.header_height {height:0px!important;}

p {color:#4f5459; line-height: 22px;   font-size: 16px;}
.image-embed-item {width:100%; height:auto; margin-bottom: 0px; }
.ce-right .ce-bodytext {margin-right: 40px;}
.ce-right {display: grid;  grid-template-columns: 66% 34%; }
.ce-right.ce-intext.ce-nowrap div.ce-gallery{order: 1;}
.ce-right .ce-gallery{order: 2; padding-right: 0px;}
.image {margin-right: 0px;}


.text-center {text-align: center;}


.primary_active {color: #fff !important; font-weight: 600;}

#logo {
  background-image: url(images/logo.png);
  height: 60px;
  width: 193px;
  position: absolute;
  right: 22px;
  top: 3px;
  background-size: 100%;
  background-repeat: no-repeat;
      }

#searchbox {background-image: url(images/help.png);
  height: 40px;
  width: 40px;
  position: absolute;
  right: 30px;
  top: 11px;
  background-size: 100%;
  background-repeat: no-repeat;
  cursor: pointer;
      }

#mainnavi {position: absolute;  left:0px;; top:7px;}
#mainnavi ul {list-style-type:none;}
#mainnavi ul a {text-decoration: none;
               
  font-size: 18px;
  padding: 7px;
  position: relative;
  z-index: 10;
  padding-bottom: 20px; 
  top: -4px;     
  font-weight: 500;
  padding-right: 20px;
               }

#mainnavi ul li ul li a  {padding:4px; display:block; padding-top: 15px;} 
#mainnavi li {display: inline-block;  height:16px;  vertical-align: top; margin-right: 0px; }


#mainnavi li ul li { border-right:none; height:auto; }




/* F�r Unterpunkte keine Float-Eigenschaft */
ul.menu ul li {margin-left:-35px; padding-right:40px; padding-left:30px;
    
  display: block !important;
}

/* Links auf Unterpunkten sollen die Hintergrundfarbe �ndern */
ul.menu ul li.hover, ul.menu ul li:hover {
   /* background-color: #FFF9E4;*/
}

/* Zweite Ebene */
      ul.menu ul {  transition: 0.5s; white-space: nowrap;
              margin:0;margin-left:0px;
                padding: 22px;
               position: absolute;
               /*background-color: #ffffff;*/
			  /* background-image:url(navbd.png);*/
                /*border: 1px solid #dd0000;*/
               display: none; 
                top: 53px;
  background-color: #fff;
padding-top: 0px;
        

-webkit-box-shadow: 4px 4px 5px 0px rgba(0,0,0,0.31); 
 box-shadow: 4px 4px 5px 0px rgba(0,0,0,0.31);
        box-sizing: border-box;
     }

   /* Zweite Ebene anzeigen */
       ul.menu li:hover ul {  transition: 0.5s;
               display: block;
   }








#header_container_top{
  transition: 0.5s;
  position: fixed;
  top: 0px; display:none;
  background-color: #ffffffc2;
  backdrop-filter: blur(4px);
  height: 35px;
  z-index: 1000;
  width: 100%;
}



#header_container {
  position: fixed;
  top: 0px;
  background-color: #fff;
  border-bottom-color: rgb(203, 10, 33);
  height: 60px;
  z-index: 1000;
  width: 100%;
  transition: 0.5s;
  box-shadow: 0 4px 5px -2px rgba(0,0,0,.22),0 2px 1px -1px rgba(0,0,0,.05);
  background-color: #fffffff0;
  backdrop-filter: blur(4px); 
}
.header_contacts {position: absolute;
  right: 34px;
  top: 7px;
  color: #696b6e;
  font-weight: normal;
  font-size: 16px;
                 
                 }

     .mev-mail, .mev-phone { color: #696b6e; font-family: 'Saira SemiCondensed SemiCond';  text-decoration:none;}

                  
.mev-phone {background-image: url(images/icon_phone.png);
  background-repeat: no-repeat;
  padding-left: 20px;
  background-size: 8%;
  background-position: 0px 2px;
  padding-bottom: 3px;
}


.mev-mail{background-image: url(images/icon_mail.png);
  background-repeat: no-repeat;
  padding-left: 27px;
  background-size: 7%;
  margin-left: 8px;
  background-position: 4px 0px;
  padding-bottom: 3px;}

#header_container_content{position: relative;
  margin: 0 auto;
  max-width:1280px;
  width: 100%;}

#slideshow .slick-slide img {
  display: block;
  
  object-fit: cover;
  width:100%;
}

#contentbottom .slick-slide img {     margin-bottom: 11px; }





#content {margin: 0 auto;
 
box-sizing: border-box;
 padding-right: 25px;
  padding-left: 25px;
          margin-bottom: 0px;
          padding-top: 10px;
  padding-bottom: 30px;
         }

          





.info_kachel_text h1 {font-size: clamp(22px, 2vw, 36px); }








/* ######################################################################################################## */
/* ###################################           SCSS TABS      ########################################### */
/* ######################################################################################################## */


.tab-wrap > label  {font-size: clamp(1rem, 0.925rem + 0.375vw, 1.375rem);}

.tab-wrap-container { margin: 50px 40px 30px 40px; }

.tab-wrap {
	 transition: 0.3s box-shadow ease;
	 border-radius: 6px;
	 max-width: 100%;
	 display: flex;
	 flex-wrap: wrap;
	 position: relative;
	 list-style: none;
	 background-color: #fff;
	 margin: 40px 0;
     max-width: 1920px;
     margin: 0 auto;
	 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}
 .tab-wrap:hover {
	 box-shadow: 0 12px 23px rgba(0, 0, 0, 0.23), 0 10px 10px rgba(0, 0, 0, 0.19);
}
 .tab {
	 display: none;
}
 .tab:checked:nth-of-type(1) ~ .tab__content:nth-of-type(1) {
	 opacity: 1;
	 transition: 0.5s opacity ease-in, 0.8s transform ease;
	 position: relative;
	 top: 0;
	 z-index: 100;
	 transform: translateY(0px);
	 text-shadow: 0 0 0;
}
 .tab:checked:nth-of-type(2) ~ .tab__content:nth-of-type(2) {
	 opacity: 1;
	 transition: 0.5s opacity ease-in, 0.8s transform ease;
	 position: relative;
	 top: 0;
	 z-index: 100;
	 transform: translateY(0px);
	 text-shadow: 0 0 0;
}
 .tab:checked:nth-of-type(3) ~ .tab__content:nth-of-type(3) {
	 opacity: 1;
	 transition: 0.5s opacity ease-in, 0.8s transform ease;
	 position: relative;
	 top: 0;
	 z-index: 100;
	 transform: translateY(0px);
	 text-shadow: 0 0 0;
}
 .tab:checked:nth-of-type(4) ~ .tab__content:nth-of-type(4) {
	 opacity: 1;
	 transition: 0.5s opacity ease-in, 0.8s transform ease;
	 position: relative;
	 top: 0;
	 z-index: 100;
	 transform: translateY(0px);
	 text-shadow: 0 0 0;
}
 .tab:checked:nth-of-type(5) ~ .tab__content:nth-of-type(5) {
	 opacity: 1;
	 transition: 0.5s opacity ease-in, 0.8s transform ease;
	 position: relative;
	 top: 0;
	 z-index: 100;
	 transform: translateY(0px);
	 text-shadow: 0 0 0;
}
 .tab:first-of-type:not(:last-of-type) + label {
	 border-top-right-radius: 0;
	 border-bottom-right-radius: 0;
}
 .tab:not(:first-of-type):not(:last-of-type) + label {
	 border-radius: 0;
}
 .tab:last-of-type:not(:first-of-type) + label {
	 border-top-left-radius: 0;
	 border-bottom-left-radius: 0;
}
 .tab:checked + label {
	 background-color: #fff;
	 box-shadow: 0 -1px 0 #fff inset;
	 cursor: default;
}
 .tab:checked + label:hover {
	 box-shadow: 0 -1px 0 #fff inset;
	 background-color: #fff;
}
 .tab + label {
	 box-shadow: 0 -1px 0 #eee inset;
	 border-radius: 6px 6px 0 0;
	 cursor: pointer;
	 display: block;
	 text-decoration: none;
	 color: #333;
	 flex-grow: 3;
	 text-align: center;
	 background-color: #cecece;
	 user-select: none;
	 text-align: center;
	 transition: 0.3s background-color ease, 0.3s box-shadow ease;
	 height: 50px;
	 box-sizing: border-box;
	 padding: 15px;
     padding-top: 12px;
}
 .tab + label:hover {
	background-color: #cb0a21;
    box-shadow: 0 1px 0 #f4f4f4 inset;
    color: #e3e3e3;
}
 .tab__content {
   box-sizing: border-box;
	 padding: 10px 25px;
	 background-color: transparent;
	 position: absolute;
	 width: 100%;
	 z-index: -1;
	 opacity: 0;
	 left: 0;
     background-color: #fff;
	 transform: translateY(-3px);
	 border-radius: 6px;
}
/* boring stuff */

 .container {
	 margin: 0 auto;
	 display: block;
	 max-width: 1920px;
     grid-template-columns: 30% 68%;
     display:grid;
     padding-bottom: 2vw;
     box-sizing: border-box;
     padding-top: 2vw;

}
 .container > *:not(.tab-wrap) {
	padding-left: 30px;
}


.ce-bodytext h1 {

  border-bottom: 1px rgb(203, 10, 33) solid;
  padding-bottom: 15px;
  
}
 h2 {
	 font-size: 1.4em;
  
  margin-bottom: 30px;
  color: #d70127;
  font-weight: 600;
}
 h3 {
	 font-weight: 400;
}
 p {
	 line-height: 1.4;
	 margin-bottom: 20px;
}
 

/* ######################################################################################################## */
/* ######################################################################################################## */
/* ######################################################################################################## */
@media screen and  (max-width: 1600px){
.cm_intro_container_left_container_content { columns: 1; }
}

@media screen and  (max-width: 1400px){
#footer {grid-template-columns: 1fr 35px 1fr;}
 
}

@media screen and  (max-width: 1080px){
#footer1 a {
  font-size: 18px !important;
}


  .primary_active {
  background-image: url('images/active.png');
  background-size: 27px;
  background-position: 0px 0px;
  }
  #mainnavi ul a {      font-size: 16px!important; padding: 4px!important; }
}

@media screen and  (max-width: 960px){


.dia_slider_content { width: 40%;  height: 96%; }
  
  
.infokachel2 ul a,
.infokachel2 ul strong {margin-bottom: 1px;}

  .news-list-view {
  display: grid;
  grid-template-columns: 1fr 1fr;
  }


  .primary_active, .primary { background-image:none!important;   padding-left: 15px; }

#logo {
    background-image: url(images/logo_only.png);
    height: 40px;
    width: 40px;
    position: absolute;
    left: 10px;
    top: 9px;
  }
  
}


@media screen and  (max-width: 800px){
.frame-layout-0 .ce-bodytext {  columns: 1; }


#header_container {   height: 40px!important;}
#slideshow { margin-top: 0px; }

.termincontainer {  grid-template-columns: repeat(1, 1fr);}

.cm_intro_main_container { margin-top:0px;}
.cm_intro_container, .dce_container  { display: initial;}
  
#searchbox {right: 210px; }
#selected_language { right: 119px; }
#lang_selector_btn { right: 79px; }
  
.tab-wrap {display:initial!important;}
.dual_rte_container {  display: block !important; margin: 20px; margin-bottom:100px;}

  
.info_kachel_container {   aspect-ratio: 4/3!important;}
.info_kachel_container img { max-height: 100%; min-height:initial!important;}


.frame-layout-3 {   padding-left: 15px;   padding-right: 15px; }
.faq_container {     padding: 10px; }

  
  .infokachel .info_kachel_container {
  padding: 15px;
}

.info_kachel_text p a {     bottom: 25px!important; }
  
.faq_container {   grid-template-columns: 1fr!important; }
  
.info_kachel_text {
  
  margin-top: 20px;
  padding-left: 15px;
  padding-right: 15px;
}

.product_container_wrapper {   grid-template-columns: 1fr; }
.infokachel2 {     grid-template-columns: 1fr; }


  .dia_slider_content {padding-left:10px!important; padding-right:20px!important;}
  
  .dia_slider_content p { font-size:16px!important;}
  
  .slick-slide img {    height:300px!important; }
  
  .ce-right .ce-bodytext {   margin-right: 0px; }
  h1 {font-size:24px;}
  h2 {font-size:20px;}
  a.horizontal_menu:nth-child(1) {   left: 15px; }
  a.horizontal_menu:nth-child(2) {   right: 15px; }
  .horizontal_menu {
  display: block;
  width: 35px;
  height: 35px;
  top: 168px;
}

  .infokachel { padding:0px; grid-template-columns: 1fr;}
  
.square {      grid-template-columns: 1fr 1fr;   padding: 20px;   box-sizing: border-box; }
#navi_on {display:block;}
#mainnavi { display:none;}
.ce-right {   grid-template-columns: initial; }

.image-caption {    bottom: 60%; }

#footer1 ul li {   display: inherit; }
  
  
}


@media screen and  (max-width: 640px){

.news-list-view {
  display: initial;
}

  
#popup {width:320px!important;}
  .infokachel2 ul a {      background-size: 20px; }
  .infokachel2 ul strong {      background-size: 14px; }

  .info_kachel_text p  {font-size: 16px!important;}
  .slick-slide img {     height: 400px; }
  
  .infokachel2 {padding:0px!important;}


.dia_slider_content {   }


  
#dia_slider_img > img {   width: 100px; }
.dia_slider_content p { font-size: 20px; }
.pagetitle {font-size: 28px; }


    .dia_slider_content p {
    font-size: 12px !important;
  }
  
}

@media screen and  (max-width: 500px){
.mev-phone,.mev-mail {
  
  background-size: 83%;
  background-position: 0px 2px;
  width: 0px;
  display: inline-block;
  overflow: hidden;
  height: 16px;
}

.header_contacts {position:initial;}

.mev-phone {position: absolute;   left: 23px;   top: 8px; }
.mev-mail {position: absolute;   right: 17px;   top: 6px;   height: 20px; }
  
}



@font-face {
    font-family: 'Saira SemiCondensed SemiCond';
    src: url('fonts/SairaSemiCondensed-Bold.woff2') format('woff2'),
        url('fonts/SairaSemiCondensed-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Saira SemiCondensed SemiCond';
    src: url('fonts/SairaSemiCondensed-SemiBold.woff2') format('woff2'),
        url('fonts/SairaSemiCondensed-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Saira SemiCondensed SemiCond';
    src: url('fonts/SairaSemiCondensed-Regular.woff2') format('woff2'),
        url('fonts/SairaSemiCondensed-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Saira SemiCondensed SemiCond';
    src: url('fonts/SairaSemiCondensed-Light.woff2') format('woff2'),
        url('fonts/SairaSemiCondensed-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Saira SemiCondensed SemiCond';
    src: url('fonts/SairaSemiCondensed-Black.woff2') format('woff2'),
        url('fonts/SairaSemiCondensed-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Saira SemiCondensed SemiCond';
    src: url('fonts/SairaSemiCondensed-Medium.woff2') format('woff2'),
        url('fonts/SairaSemiCondensed-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Saira SemiCondensed SemiCond';
    src: url('fonts/SairaSemiCondensed-ExtraLight.woff2') format('woff2'),
        url('fonts/SairaSemiCondensed-ExtraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Saira SemiCondensed SemiCond';
    src: url('fonts/SairaSemiCondensed-ExtraBold.woff2') format('woff2'),
        url('fonts/SairaSemiCondensed-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Saira SemiCondensed SemiCond';
    src: url('fonts/SairaSemiCondensed-Thin.woff2') format('woff2'),
        url('fonts/SairaSemiCondensed-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}


