body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}
header,footer,nav,section,aside,main,article,figure,figcaption{display:block}body,div,h1,h2,h3,h4,h5,h6,p,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea{margin:0;padding:0}table{border-spacing:0;border-collapse:collapse}caption,th,td{text-align:left;text-align:start;vertical-align:top}abbr,acronym{font-variant:normal;border-bottom:1px dotted #666;cursor:help}blockquote,q{quotes:none}fieldset,img,iframe{border:0}ul{list-style-type:none}sup{vertical-align:text-top}sub{vertical-align:text-bottom}del{text-decoration:line-through}ins{text-decoration:none}body{font:12px/1 "Lucida Grande","Lucida Sans Unicode",Verdana,sans-serif;color:#000}input,button,textarea,select{font-family:inherit;font-size:99%;font-weight:inherit}pre,code{font-family:Monaco,monospace}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}h1{font-size:1.8333em}h2{font-size:1.6667em}h3{font-size:1.5em}h4{font-size:1.3333em}table{font-size:inherit}caption,th{font-weight:700}a{color:#00f}h1,h2,h3,h4,h5,h6{margin-top:1em}h1,h2,h3,h4,h5,h6,p,pre,blockquote,table,ol,ul,form{margin-bottom:12px}
#colorbox,#cboxOverlay,#cboxWrapper{position:absolute;top:0;left:0;z-index:9999;overflow:hidden;-webkit-transform:translate3d(0,0,0)}#cboxWrapper{max-width:none}#cboxOverlay{position:fixed;width:100%;height:100%}#cboxMiddleLeft,#cboxBottomLeft{clear:left}#cboxContent{position:relative}#cboxLoadedContent{overflow:auto;-webkit-overflow-scrolling:touch}#cboxTitle{margin:0}#cboxLoadingOverlay,#cboxLoadingGraphic{position:absolute;top:0;left:0;width:100%;height:100%}#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow{cursor:pointer}.cboxPhoto{float:left;margin:auto;border:0;display:block;max-width:none;-ms-interpolation-mode:bicubic}.cboxIframe{width:100%;height:100%;display:block;border:0;padding:0;margin:0}#colorbox,#cboxContent,#cboxLoadedContent{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box}#cboxOverlay{background:#000;opacity:.9;filter:alpha(opacity = 90)}#colorbox{outline:0}#cboxContent{margin-top:20px;background:#000}.cboxIframe{background:#fff}#cboxError{padding:50px;border:1px solid #ccc}#cboxLoadedContent{border:5px solid #000;background:#fff}#cboxTitle{position:absolute;top:-20px;left:0;color:#ccc}#cboxCurrent{position:absolute;top:-20px;right:0;color:#ccc}#cboxLoadingGraphic{background:url(../../assets/colorbox/images/loading.gif) no-repeat center center}#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose{border:0;padding:0;margin:0;overflow:visible;width:auto;background:0 0}#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active{outline:0}#cboxSlideshow{position:absolute;top:-20px;right:90px;color:#fff}#cboxPrevious{position:absolute;top:50%;left:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top left;width:28px;height:65px;text-indent:-9999px}#cboxPrevious:hover{background-position:bottom left}#cboxNext{position:absolute;top:50%;right:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top right;width:28px;height:65px;text-indent:-9999px}#cboxNext:hover{background-position:bottom right}#cboxClose{position:absolute;top:5px;right:5px;display:block;background:url(../../assets/colorbox/images/controls.png) no-repeat top center;width:38px;height:19px;text-indent:-9999px}#cboxClose:hover{background-position:bottom center}
table.sortable thead th{background-image:url(../../assets/tablesorter/images/default.svg);background-repeat:no-repeat;background-position:center right}table.sortable thead th.tablesorter-headerAsc{background-image:url(../../assets/tablesorter/images/asc.svg)}table.sortable thead th.tablesorter-headerDesc{background-image:url(../../assets/tablesorter/images/desc.svg)}
.content-slider{overflow:hidden;visibility:hidden;position:relative}.slider-wrapper{overflow:hidden;position:relative}.slider-wrapper>*{float:left;width:100%;position:relative}.slider-control{height:30px;position:relative}.slider-control a,.slider-control .slider-menu{position:absolute;top:9px;display:inline-block}.slider-control .slider-prev{left:0}.slider-control .slider-next{right:0}.slider-control .slider-menu{top:0;width:50%;left:50%;margin-left:-25%;font-size:27px;text-align:center}.slider-control .slider-menu b{color:#bbb;cursor:pointer}.slider-control .slider-menu b.active{color:#666}
/* ****************************************************************************************************************** */
/* --- Fonts -------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

/* ****************************************************************************************************************** */
/* --- Variablen ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

:root {
    --ka-bk-color:#edf1f8;

    --ka-bk-blue1:#10577b;
    --ka-bk-blue2:#216d95;

    --ka-bk-grey: #788994;

    --ka-font-color:#000000;
    --ka-font-white:#fff;
    --ka-font-blue:#10577b;
    --ka-font-blue2:#216d95;
    --ka-font-size:16px;

    --ka-desktopwidth:85%;
    --ka-desktopwidth2:70%;
    --ka-desktopmargin:7.5%;
    --ka-desktopmargin2:15%;


}

/* ****************************************************************************************************************** */
/* --- Basics ------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

body {
  background-color: var(--ka-bk-color);
  font:18px/23px Open Sans,Arial;
  color:#454545;
}
#wrapper {
    width:100%;
    min-height:200px;
}
#container {
}
#main .inside {
  padding:30px 0 50px 0;

}
a,
b,
body,
cite,
div,
em,
i,
label,
li,
ol,
p,
strong,
td,
th,
u,
ul {
    font-family:Open Sans,Arial;
}
fieldset,
form,
input,
optgroup,
select,
textarea {
    font-family:Open Sans,Arial;
}
a,
body,
div,
fieldset,
form,
input,
label,
li,
ol,
optgroup,
p,
select,
td,
th,
textarea,
ul,
b {
}
ul {
    padding-top:4px;
    padding-left:17px;
}
li {
    margin-bottom:4px;
    padding-left:2px;
    list-style-type:square;
}
pre,
form {
    margin:0;
    padding:0;
}
p {
    margin-top:8px;
    margin-bottom:8px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
}
h1 {
    margin-top:10px;
    margin-bottom:15px;
    font-size:36px;
    line-height:42px;
    font-weight:bold;

}
h2 {
    margin:10px 0 5px;
    padding:0;
    font-size:36px;
    line-height:42px;
    font-weight:bold;
    color: var(--ka-font-blue);
}
h3 {
    margin:10px 0 2px;
    padding:0;
    font-size:22px;
    line-height:26px;
    font-weight:bold;

}
h4 {
    margin:10px 0 2px;
    padding:0;
    font-size:24px;
    line-height:20px;
    font-weight:bold;
    color:#ffb300;
}
optgroup {
    padding-top:3px;
    padding-bottom:3px;
}
a {
    text-decoration:none;
    color:#7d7d7d;
}
a:hover {
    text-decoration:underline;
}
.masonry {
    padding-top:20px;
    padding-bottom:20px;
}

.content-gallery {
  display: flex;
  justify-content: center;
}
.content-gallery ul {
  display: grid;
  justify-content: center;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-column-gap: 20px;
  grid-row-gap: 20px;
}
.content-gallery ul li {
  display: flex;
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.content-gallery ul li figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.col33 {
    width:33.3%;
}
.col33m {
    margin-left:25px;
    width:calc(33.33% - 25px);
}
.col33line {
    width:calc(33.33% - 40px);
}
.col50 {
    position:relative;
    margin-right:0;
    margin-left:0;
    width:calc(50% - 0px);
}
.col50m {
    margin-right:40px;
    width:calc(50% - 40px);
}
.col50mr {
    margin-right:0;
    margin-left:20px;
    width:calc(50% - 20px);
}
.col50line {
    width:calc(50% - 41px);
}
.col66m {
    margin-right:25px;
    margin-left:0;
    width:calc(66.66% - 25px);
}
.col66line {
    width:calc(66.66% - 42px);
}
.colline {
    width:2px;
    float:left;
    display:inline-block;
    margin-right:39px;
    margin-left:39px;
    padding-right:0;
    padding-left:0;
    border-right:2px solid #b3b3b3;
}
.dist20 {
    height:20px;
    display:block;
}
.dist25 {
    height:25px;
    display:block;
}
.dist30 {
    height:30px;
    display:block;
}
.dist50 {
    height:50px;
    display:block;
}

.dist100 {
    height:100px;
    display:block;
}

.clear,
#clear {
    float:none;
    clear:both;
    height:auto;
}
.center {
    width:100%;
    text-align:center;
}
.limit1600,
.limit1600int {
  width:100%;
  max-width:1600px;
  margin-right:auto;
  margin-left:auto;
}
.limit1400,
.limit1400int {
  width:100%;
  max-width:1400px;
  margin-right:auto;
  margin-left:auto;
}
.limit1200,
.limit1200int {
  width:100%;
  max-width:1200px;
  margin-right:auto;
  margin-left:auto;
}
.limit800,
.limit800int {
  width:100%;
  max-width:800px;
  margin-right:auto;
  margin-left:auto;
}
.limit600,
.limit600int {
  width:100%;
  max-width:600px;
  margin-right:auto;
  margin-left:auto;
}

.startbox {
  padding: 40px 0 40px 10%;
  max-width: 600px;
}

.button a,
.textimg a.button {
  padding: 5px 20px;
  background-color: var(--ka-bk-coloryellow);
}

.boxwhite {
    width:100%;
    padding:80px 0 60px 0;
    background:linear-gradient(0deg, var(--ka-bk-color) 0%, var(--ka-bk-color) 50%, var(--ka-bk-lightblue1) 100%);
}
.boxwhite h1,
body.home .boxwhite h1 {
  margin:15px 0 0 0;
  padding:0;
  color:var(--ka-font-blue);
}
.boxwhite h2,
body.home .boxwhite h2 {
  max-width:100%;
  margin-top:0px;
  margin-bottom:20px;
  padding-top:0;
  font-weight:800;
  text-shadow: 0 0 0px;
  color:var(--ka-font-blue);
}
.boxwhite h3,
body.home .boxwhite h3 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font:34px/40p;
  text-shadow: 0 0 0px;
  color:var(--ka-font-white);
}

.boxwhite p,
body.home .boxwhite p {
  margin:15px 0 0 0;
  padding:0;
  color:var(--ka-font-grey);
}


.boxblue {
  background:linear-gradient(0deg, var(--ka-bk-blue1) 0%, var(--ka-bk-blue2) 100%);
  width:100%;
  display:inline-block;
  padding-top:30px;
  padding-bottom:30px;
}
.boxblue h1,
body.home .boxblue h1 {
  margin:15px 0 0 0;
  padding:0;
  color:var(--ka-font-white);
}
.boxblue h2,
body.home .boxblue h2 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font-weight:800;
  text-shadow: 0 0 0px;
  color:var(--ka-font-white);
}
.boxblue h3,
body.home .boxblue h3 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:20px;
  padding-top:0;
  text-shadow: 0 0 0px;
  color:var(--ka-font-white);
}

.boxblue p,
body.home .boxblue p {
  margin:15px 0 0 0;
  padding:0;
  color:var(--ka-font-white);
}



.boxgrey {
  background-color:var(--ka-bk-grey);
  width:100%;
  display:inline-block;
  padding-top:30px;
  padding-bottom:30px;
}
.boxgrey h1,
body.home .boxgrey h1 {
  margin:15px 0 0 0;
  padding:0;
  font-weight:800;
  text-shadow: 0 0 0px;
  color:var(--ka-font-blue2);
}
.boxgrey h2,
body.home .boxgrey h2 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font-weight:600;
  text-shadow: 0 0 0px;
  color:var(--ka-font-blue2);
}
.boxgrey h3,
body.home .boxgrey h3 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font:34px/40p;
  text-shadow: 0 0 0px;
  color:var(--ka-font-white);
}

.boxgrey p,
body.home .boxgrey p {
  margin:15px 0 0 0;
  padding:0;
  color:var(--ka-font-white);
}

.boxmiddlegrey {
    width:100%;
    padding:80px 0 100px 0;
    background-color:#e0e0e0;
}
.boxdarkgrey {
    width:100%;
    padding:80px 0 80px 0;
    background-color:var(--ka-bk-colordarkgrey);
}
.boxdarkgrey h1,
body.home .boxdarkgrey h1 {
  margin:15px 0 0 0;
  padding:0;
  font-weight:900;
  color:var(--ka-font-grey);
}
.boxdarkgrey h2,
body.home .boxdarkgrey h2 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font-weight:400;
  color:var(--ka-font-lightblue);
}
.boxdarkgrey h3,
body.home .boxdarkgrey h3 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font-weight:400;
  color:var(--ka-font-white);
}

.boxdarkgrey p,
body.home .boxdarkgrey p {
  margin:15px 0 0 0;
  padding:0;
  color:var(--ka-font-white);
}

.begruessung h1 {
  margin:15px 0 0 0;
  padding:0;
  font-weight:900;
  text-shadow: 0 0 8px #FFFFFF;
  color:var(--ka-font-black);
}

.boxwhite h1,
.boxgrey h1,
.boxdarkgrey h1,
.boxmiddlegrey h1,
.boxblue h1 {
    margin-bottom: 20px;
}

.flexcontainer {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  /*margin:20px 0;*/
}
.flexbox {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
.flexcontainer.column {
  flex-direction: column;
}
.flexcontainer.row.vcenter {
  align-items: center;
}
.flexcontainer.column.space-between {
  justify-content: space-between;
}
.flexcontainer.limit800 {
    justify-content: center;
}

.grid {
  display:grid;
}

.grid.frx {
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}

.grid.fr2 {
  grid-template-columns: 1fr 1fr;

}
.grid.fr3 {
  grid-template-columns: 1fr 1fr 1fr;

}
.grid.fr4 {
  grid-template-columns: 1fr 1fr 1fr 1fr;

}
.grid.fr5 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;

}
.grid.fr6 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;

}
.grid.fr21 {
  grid-template-columns: 2fr 1fr;

}
.grid.fr12 {
  grid-template-columns: 1fr 2fr;

}

.grid.gap0 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}
.grid.gap20 {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
}
.grid.gap40 {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.gap60 {
  grid-column-gap: 60px;
  grid-row-gap: 60px;
}
.grid.gap80 {
  grid-column-gap: 80px;
  grid-row-gap: 80px;
}

/*
.grid.center * {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
*/

.w100,
.width100 {
  width: 100%;
}

.h100  {
  height: 100%;
}
.h50  {
  height: 50%;
}

.maxw600 {
  max-width: 600px;
}
.maxw800 {
  max-width: 800px;
}

.moveup {
  position: relative;
  top: -100px;
  z-index: +1;
}

/* ****************************************************************************************************************** */
/* --- header ---------- -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

#header {
    width:100%;
    height:120px;
    top:0;
    position:fixed;
    background-color: rgba(0,0,0,0.7);
    z-index:990;
}
#header .inside {
    /*
    max-width:1100px;
    margin-right:auto;
    margin-left:auto;
    */
    padding:0;
}
#HeaderLogo {
    width:350px;
    max-width:70%;
    left:30px;
    top:30px;
    position:absolute;
    z-index:902;
}
#HeaderBildhauer {
  width: 150px;
  right:0px;
  top:10px;
  position:absolute;
  z-index:902;
}
#HeaderLogo a,
 {
    color:#e8e8e8;
}

#banner {
  position:relative;
  margin:0px;
  display: flex;
  height: 200px;
  overflow: hidden;
  display: flex;
  z-index: 0;
}
body.home #banner {
  height: calc(66vh - 0px);  
}
#banner .mod_article {
  width: 100%;
  height: 100%;
}
/*
#bannerimage #bannersmall,
#bannerimage #bannersmall img.image {
    width:100%;
    font-size:2px;
    line-height:2px;
}
*/
#banner .downbutton {
  position:absolute;
  left: 50%;
  width:100%;
  top: auto;
  bottom:5px;
  transform: translateX(-50%);
  display:flex;
  align-items: center;
  justify-content: center;
  font-size:1px;
  line-height:1px;
  z-index:801;
}
#banner .downbutton a {
  overflow:hidden;
  font-size:1px;
  line-height:1px;
}
#banner .downbutton a img {
  width: 44px;
  height: 32px;
}



/* ****************************************************************************************************************** */
/* --- footer ------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

#footer {
  position: relative;
  display:inline-block;
  margin:0;
  padding:30px 0;
  background-color:var(--ka-bk-blue1);
  width: 100%;
  height: auto;
}
#footer * {
  color: var(--ka-font-white);
}
#footer .inside  {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width:1400px;
  margin-right:auto;
  margin-left:auto;
}
#footer .line1,
#footer .line2 {
  position: relative;
  padding:15px 0;
  margin: 0;
  display: flex;
  width: 100%;
}

#footer .line1 {
  justify-content: space-between;
}

#footer .mod_footer_navi {
  position: relative;
  margin:0;
  padding:0;
}
#footer .mod_footer_navi ul {
  display: flex;
  flex-direction: column;
}
#footer .mod_footer_navi li {
  padding:0px 0;
  list-style-type:none;
}
#footer .mod_footer_navi li.active {
  font-weight: 400;
  /*color:#bdbdbd;*/
}

.mod_footer_copyright {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

}

/* ****************************************************************************************************************** */
/* --- mainmenu ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media screen and (min-width: 801px) {
  #navmobil {
      display:none;
  }
  #mainnav {
      height:30;
      right:120px;
      top:93px;
      position:absolute;
      overflow:visible;
      margin:0;
      z-index: 999;
  }
  .mod_navigation {
      text-transform:uppercase;
  }
  .mod_navigation span.active,
  .mod_navigation li.sibling {
      margin:0;
      padding:0;
  }
  .mod_navigation a {
      margin:0 0;
      padding:0;
      text-decoration:none;
      text-transform:uppercase;
  }
  .mod_navigation a:hover {
      text-decoration:none;
  }
  .mod_navigation li {
      position:relative;
      float:left;
      list-style-type:none;
      margin:0;
      padding:0;
  }
  .mod_navigation li a,
  .mod_navigation li strong {
      height:30px;
      position:relative;
      float:left;
      margin:0 7px 0 0;
      padding:2px 5px;
      text-align:center;
      font:18px/16px Open Sans,Arial;
      font-weight:bold;
      color:#bababa;
      text-transform:uppercase;
      list-style-type:none;
  }
  .mod_navigation li strong {
      color:#c9c9c9;
  }
  .mod_navigation li a:hover,
  .mod_navigation li a.sfhover {
      text-decoration:none;
      color:#a80303;   /* Farbton für den Hovereffekt */
      -webkit-transition: color 500ms ease-in-out; /* WebKit   */
      -moz-transition: color 500ms ease-in-out;    /* Firefox  */
      -o-transition: color 500ms ease-in-out;      /* Opera    */
      transition: color 500ms ease-in-out;         /* Standard */
  }
  .mod_navigation ul {
      margin:0;
      padding:0;
      list-style-type:none;
  }
  .mod_navigation li ul {
      width:225px;
      bottom:0;
      left:0;
      right:0;
      top:34px;
      position:absolute;
      display:none;
      padding-top:4px;
      background-color:#bababa;
  }
  .mod_navigation li ul li {
      margin:0;
      padding:0;
      border-bottom:1px solid #b5b5b5;
      border-radius:0;
  }
  .mod_navigation li ul li a {
      width:220px;
      height:30px;
      margin:0;
      padding:12px 0 0 5px;
      text-align:left;
      background-color:rgba(94,94,94,.7);
      background-image:none;
      color:#e3e3e3;   /* Farbton für den Link im Normalzustand */
      -webkit-transition: color 1s ease-out; /* WebKit   */
      -moz-transition: color 1s ease-out;    /* Firefox  */
      -o-transition: color 1s ease-out;      /* Opera    */
      transition: color 1s ease-out;         /* Standard */
  }
  .mod_navigation li ul li a:hover {
      color:#a80303;   /* Farbton für den Hovereffekt */
      -webkit-transition: color 500ms ease-in-out; /* WebKit   */
      -moz-transition: color 500ms ease-in-out;    /* Firefox  */
      -o-transition: color 500ms ease-in-out;      /* Opera    */
      transition: color 500ms ease-in-out;         /* Standard */
  }
  .mod_navigation li ul li.active {
      width:220px;
      height:30px;
      margin:0;
      padding:12px 0 0 5px;
      text-align:left;
      background-color:rgba(176,176,176,.7);
      background-image:none;
      border-bottom:1px solid #d6d6d6;
      border-radius:0;
      color:#FFF;
  }
  .mod_navigation li ul ul {
      left:260px;
      top:-4px;
      position:absolute;
      z-index: 999;
  }
  .mod_navigation li:hover ul {
      display:block;
  }
  .mod_navigation ul li:hover ul ul {
      display:none;
  }
  .mod_navigation ul ul li:hover ul {
      display:block;
  }
}


/* ****************************************************************************************************************** */
/* --- Variablen ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */


/* ****************************************************************************************************************** */
/* --- ScrollVisible ------------------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */

/* Test BG xxx 1111 */

.scroll {
  transition: all 1.5s ease-in-out;
}

/* Einblenden */
.scroll.sc-opacity {
  transition: all 0.8s ease-in-out;
  opacity: 0.1;
}
.scroll.sc-opacity.scrollinout {
  opacity: 0.99;
}

.scroll.sc-opacity-fast {
  transition: all 0.5s ease-in-out;
  opacity: 0.1;
}
.scroll.sc-opacity-fast.scrollinout {
  opacity: 0.99;
}


/* Blur */
/*
.scroll.sc-opacity {
  transition: all 1.5s ease-in-out;
  filter: blur(5px);
  filter: blur(0);
}
.scroll.sc-opacity.scrollinout {
  filter: blur(0px);
}
*/

/* nach oben */
.scroll.sc-up {
  transition: all 1.5s ease-in-out;
  margin-top: 80px !important;
}
.scroll.sc-up.ma0 {
  margin-top: 20px !important;
}
.scroll.sc-up.ma1 {
  margin-top: 40px !important;
}
.scroll.sc-up.ma2 {
  margin-top: 60px !important;
}
.scroll.sc-up.ma3 {
  margin-top: 80px !important;
}
.scroll.sc-up.scrollin {
  margin-top: 0 !important;
}
section.kalinks .content .links .link.scroll.sc-up.scrollin,
.masonry .scrollin#refweb-old {
  margin-top: 20px !important;
}

/* Einblenden, Vergrössern, nach oben */
.scroll.sc-grow-opacity-up {
  transition: all 1.5s ease-in-out;
  margin-top: 40px;
  /*transform: rotateX(15deg);*/
  transform: scale(90%);
  opacity: 0.75;
}
.scroll.sc-grow-opacity-up.scrollinout {
  margin-top: 0px;
  /*transform: rotateX(0deg);*/
  transform: scale(100%);
  opacity: 0.99;
}

/* Abwärtskompa */
.scrolling {
  transition: all 1.5s ease-in-out;
  margin-top: 40px;
  /*transform: rotateX(15deg);*/
  transform: scale(90%);
  opacity: 0.75;
}
.scrolling.scrollinout {
  margin-top: 0px;
  /*transform: rotateX(0deg);*/
  transform: scale(100%);
  opacity: 0.99;
}

/* Textbox am Tablet einblenden */
.scroll.sc-opacity.touchdevice .textbox.sc-tab {
  transition: all 2s ease-in-out !important;
  opacity: 0.1 !important;
  background-color: rgba(50,50,50,0.01) !important;
}
.scroll.sc-opacity.touchdevice.scrollinout .textbox.sc-tab {
  opacity: 0.99 !important;
  background-color: rgba(50,50,50,0.5) !important;
}




/* ****************************************************************************************************************** */
/* --- swiperslider ------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.swiper-container {
	position: relative;

	max-width: 100%;
	overflow: hidden; /* !!! */
}

.swiper-wrapper {
	max-width: 100%;
}

.swiper-slide {
  height: auto !important;
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after,
.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
	 content: '' !important;
}

/*
.swiper-wrapper {
	width: 100%;
}
*/

.swiper-button-prev,
.swiper-button-next {
	position: absolute;
	top: calc(50% - 0px);
	left: auto;
	right: auto;
	width: 60px !important;
  height: 60px !important;
  background-repeat: no-repeat;
	background-position: center;
  background-size: 80% !important;
	transition: background-position 0.5s ease-in-out;
	cursor:pointer;
	z-index: 999;
}

.swiper-button-prev {
  left: 0px;
  background-image:url("/files/intern/common/slider-left.svg");
}

.swiper-button-next {
  right: 0px;
  background-image:url("/files/intern/common/slider-right.svg");
}

.swiper-pagination {
  position: relative;
  top: auto;
  bottom: -60px !important;
}

.swiper-pagination .swiper-pagination-bullet {
  width: 40px;
  height: 6px;
  border-radius: 20px;
  /*cursor: pointer;*/
}

.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--ka-brand_gold);
}


/* ****************************************************************************************************************** */
/* --- Variablen ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.movetop120 {
  position: relative;
  top: -120px;
  padding: 40px 80px;
  margin-bottom: -120px;
}


img.rustdesk {
  width: 100px;
}

#begruessung figure img {
    width: 800px;
}


/* Für den Anker-Link Scroll-Abstand */
/*
#infos::before,
#fuehrungen::before,
#eintrittspreise::before,
#fuehrungen::before,
#buchen::before,
#stollenschaenke::before,
#fuehrungen::before,
#bergwerk::before,
#galerie::before,
#geschichte::before,
#mineralogie::before,
#kelten::before,
#stadt-und-schloss::before,
#verein::before,
#brauchtum::before,
#team::before,
#einblicke::before,
#mitglied::before {
  content: "";
  display: block;
  height: 120px;
  margin-top: -120px;
  visibility: hidden;
  pointer-events: none;
}
*/

.kontakt div.logo img {
  max-width: 80px;
  margin: 0 15px 0 0;
}




/* ****************************************************************************************************************** */
/* --- bannerslider --------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */



section.bannerslider {
	position: relative;
	display: block;
	width: 100%;
  height: 100%;
  background: linear-gradient(180deg, var(--hero-from) 0%, var(--hero-to) 100%);
  padding: 0;
  overflow: hidden;

}

section.bannerslider .swiper-container {
  height: 100%;
}

section.bannerslider .slinside {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
}

section.bannerslider .slinside .bkimg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  object-fit: cover;
}

section.bannerslider .slinside .grid {
  height: 100%;
}

section.bannerslider .swiper-container {
  z-index: 2;
}

section.bannerslider .textblock {
  display: flex;
	flex-direction: column;
	align-items: center;
  justify-content: center;
	text-align: left;

  z-index: +2;
}

section.bannerslider .textblock * {
	color: var(--ka-font-white);
}
section.bannerslider .textblock h1,
section.bannerslider .textblock h2 {
	font-size: 70px;
	line-height: 80px;
  margin: 0;
  padding: 0;
  text-transform: inherit;
  color: var(--ka-font-white);
}

section.bannerslider .buttons a {
  display: flex;
  padding: 0;
  font-size: 26px;
  line-height: 36px;
  width: 100%;
  height: 100%;
  color: var(--ka-bk-btn-hover);
  cursor: pointer;
  font-weight: 600;
  transition: all .25s ease-in-out;
  text-align: center;
  justify-content: center;
  opacity: 0;
}
section.bannerslider :hover .buttons a {
  opacity: 1;
}


section.bannerslider .swiper-slide {
  display: flex;
  height: auto;
}

section.bannerslider .image_container {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
	max-height: 100%;
  height: 100%;
	z-index: +2;
}

section.bannerslider .image_container img.bkimg {
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%);
	top: 50%;
	width: auto;
	max-height: 100%;
	z-index: 0;
}

section.bannerslider .image_container img.image {
	position: relative;
	width: 100%;
	height: 100%;
  object-fit: cover;
	z-index: +1;
}

section.bannerslider .image_container img.award {
	position: absolute;
	left: 18%;
	transform: translate(-50%, 0);
	top: 15%;
	width: 100px;
	z-index: +2;
}

section.bannerslider .swiper-pagination {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0 0 10px 0;
  text-align: right;
  display: none;
}
section.bannerslider .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
section.bannerslider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  display: none;
}


/* ****************************************************************************************************************** */
/* ---ka-Text mit Bild ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */


#main .textimg {
  display: flex;
  position: relative;
  width: 100%;
  height: 100%;

}
/*
#main .textimg .imgblock * {
    line-height: 1px;
}
*/
#main .textimg .imgblock {
  position: relative;
  display: flex;
  overflow: hidden;

}
#main .textimg .imgblock .image_container,
#main .textimg .imgblock .swiper-container {
  position: relative;
  width: 100%;
  height: 100%;
  max-height: 800px;

}

#main .textimg .imgblock .image_container {
  overflow: hidden;
}
#main .textimg .imgblock .image_container img {
    /*
    position: absolute;
    width: 150%;
    height: 100%;
    left:-25%;
    */

    width: 100%;
    height: 100%;
    object-fit: cover;
    display: inline-block;
    max-width: 100%;

}

#main .textimg .imgblock .swiper-container .swiper-slide {
  position: relative;
  width: 100%;
  height: 100%;

  display: flex;
  justify-content: center;
  flex-direction:column;
  flex-shrink: 0;

  opacity: 1;
  margin: 0;

  overflow: hidden;
  transition: all 0.5s ease-out;


  transition-property: transform;
}

#main .textimg .imgblock .swiper-container .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#main .textimg .textblock {
    padding: 20px 40px;
    display: flex;
    flex-direction:column;
    justify-content :flex-start;
    min-height: 100px;
}
#main .textimg .textblock,
#main .textimg .textblock * {

}


#main .textimg .textblock {

}
#main .textimg .textblock ul {

}
#main .textimg .textblock li {
        list-style-type: disc;
}
#main .textimg .left .headline,
#main .textimg .left .text,
#main .textimg .right .headline,
#main .textimg .right .text,
#main .textimg .left .button,
#main .textimg .right .button {
    padding-left: 50px;
    padding-right: 50px;
}
#main .textimg .headline {
    margin-top: 0;
}
#main .textimg .textblock a {


}
#main .textimg .left .button,
#main .textimg .right .button {
    margin-top: 20px;
}

#main .textimg .buttons {
  margin: 20px 0 0 0;
}

#main .textimg .noswiper .swiper-button-next,
#main .textimg .noswiper .swiper-button-prev,
#main .textimg.imgcnt_1 .swiper-button-next,
#main .textimg.imgcnt_1 .swiper-button-prev {
  display: none;
}
/*
#main .textimg .button a {
  font-weight: 600;
  transition: 0.5s;
}
#main .textimg .button a:hover {
    color:var(--ka-font-darkgrey)
}
*/


/* ****************************************************************************************************************** */
/* --- kalinks ------------------------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */

section.kalinks {
  position: relative;
  padding: 0 0 50px 0;
  overflow: visible;
}

section.kalinks .colorbox {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 32px 32px 0;
  /*border-radius: 24px;*/

}

section.kalinks .limit1400,
section.kalinks .grid {
  overflow: visible;
}

section.kalinks .link {
  position: relative;
  display: flex;
  flex-direction: column;
  background: transparent;
  padding: 40px 0;

  background: linear-gradient(0deg, #16547c 0%, #2b8ebb 50%, #16547c 100%);
  background: linear-gradient(0deg, #16547c 0%, #2b8ebb 100%);
  box-shadow: 0 18px 30px rgba(8, 26, 45, 0.5);

}

/*
section.kalinks .link:first-child {
  border-left: 10px solid transparent;
}
section.kalinks .link:last-child {
  border-right: 10px solid transparent;
}
*/

section.kalinks .link .textblock {
  position: relative;
  padding: 60px 20px 0 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

section.kalinks .link .textblock * {
  color: var(--ka-font-white);
}

section.kalinks .link .textblock h3 {
  margin-top: 0;
  padding-top: 0;
}

section.kalinks .link .textblock a {
  font-size: 17px;
  line-height: 17px;

}

section.kalinks .link .image_container {
  position: relative;
  overflow: hidden;
  /*height: 100%;*/
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin: 0 0 0 20px;
  flex: 0 0 68px; /* fixierte Breite */
}
section.kalinks .link .image_container a {
  width: 68px;

}

section.kalinks .link .image_container img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  transform: scale(1.0);
  transition: 1.5s ease-in-out;
  width: 60px;
  height: 60px;
  background-color: var(--ka-bk-lightblue);
  padding: 4px;
}

section.kalinks .link .image_container img:hover {
  /*transform: scale(1.2);*/
}


/* ****************************************************************************************************************** */
/* --- slider ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */


/* ****************************************************************************************************************** */
/* --- Comments ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

/* ****************************************************************************************************************** */
/* --- Form --------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.formbody {
  margin: 20px 0;
}

.widget {
  display: flex;
  flex-direction: row;
  margin: 5px 0;
}
.widget.widget-checkbox {
  margin: 20px 0 5px 0;
}

.submit {
  width:264px;
  height:25px;
  margin:20px 0 0 0;
  background-color:var(--ka-bk-blue1);
  color: var(--ka-font-white);
  border:medium none;
  padding: 18px 0;
  display: flex;
  justify-content: center;
  align-items: center;

}
fieldset {

}
legend {

}
input.text,
input.password,
textarea {
  width:360px;
  margin:1px 0 1px 0px;
  padding:2px 4px 2px 4px;
  background-color:#fff;
  border:1px solid #808080;
}
input.captcha {
    width:75px;
    margin:1px 0 1px 10px;
    color:#FFF;
    border:medium none;
}
textarea {

}
select {
    width:204px;
    margin:1px 0;
}
div.radio_container {
    margin:5px 0 1px;
}
div.radio_container span {
    display:block;
    padding-right:6px;
}
input.radio {
    top:2px;
    position:relative;
    margin:1px 2px 0 1px;
    padding:0;
}
div.checkbox_container {
    margin:5px 0 1px;
}
div.checkbox_container span {
    display:block;
    padding-right:6px;
}
input.checkbox {
    margin:3px 3px 0 1px;
    padding:0;
}
fieldset table td:first-child {
    margin:1px 0;
}
label {
    width:250px;
    margin-left:0;
}
#col_0 {
    margin-left:0;
}

/* ****************************************************************************************************************** */
/* --- Variablen ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

:root {
  --ka-tabletwidth: 90%;
  --ka-tabletmargin: 5%;
}

/* ****************************************************************************************************************** */
/* --- max-width: 1920px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media screen and (min-width: 1920px) {
}


/* ****************************************************************************************************************** */
/* --- max-width: 1210px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media screen and (max-width: 1119px) {
  #main .inside {
      padding-right:15px;
      padding-left:15px;
  }
}

/* ****************************************************************************************************************** */
/* --- max-width: 850px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */


/* ****************************************************************************************************************** */
/* --- max-width: 500px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media screen and (max-width: 499px) {
  h1,
  h2,
  h3 {
      font-size:18px;
  }
  .spalte1,
  .spalte2 {
      width:100%;
      clear:both;
  }
  #StartBeg {
      width:100%;
      height:87px;
  }
  #StartBeg .title {
      bottom:30px;
      font-size:32px;
  }
  #StartBeg .downbutton {
      width:100px;
  }
  #StartBeg .sign {
      width:250px;
      bottom:20px;
      float:none;
  }
  #footer-navigation {
      height:54px;
  }
}


/* ****************************************************************************************************************** */
/* --- menu-mobile -------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 800px) {
  #mainnav {
      display:none;
  }
  #navmobil {
      right:5px;
      top:5px;
      position:absolute;
      z-index:999;
  }
  #navmobil img {
      float:left;      
  }
  #navmobil .label {
      float:left;
      margin-top:3px;
      margin-right:5px;
      font-size:16px;
      color:#d1d1d1;
  }
  #header {
      height:80px;
  }
  #HeaderLogo {
      max-width:50%;
      bottom:0;
      left:15px;
      position:absolute;
      -webkit-animation-name: slide_box;
      -webkit-animation-duration: 1s;
      -webkit-animation-iteration-count: 1;
      -moz-animation-name: slide_box;
      -moz-animation-duration: 1s;
      -moz-animation-iteration-count: 1;
      animation-name: slide_box;
      animation-duration: 1s;
      animation-iteration-count: 1;
      z-index:902;
  }
  #HeaderLogo img {
      max-height:105px;
  }
  #HeaderKontakt {
      top:2px;
  }
  #header_imageslider {
      max-height:150px;
  }
  #bannersmall .title {
      max-height:70px;
      padding-bottom:10px;
      text-align:center;
      font-size:32px;
  }
  #StartBeg {
      width:100%;
      height:120px;
  }
  #StartBeg .title {
      bottom:45px;
      font-size:50px;
  }
  #StartBeg .sign {
      width:350px;
      bottom:30px;
  }
  #StartBeg .downbutton {
      width:150px;
      bottom:0;
  }
  #main .inside {
      padding-right:15px;
      padding-left:15px;
  }
  #footer,
  #footer-columns {
      height:100%;
  }
  #footer img {
      height:20px;
      max-width:250px;
  }
  .mod_footer_copyright,
  .mod_footer_navi,
  #FooterLogo,
  #FooterZeiten,
  #FooterKontakt,
  #FooterAnschrift {
      width:90%;
      max-width:100%;
      left:0;
      top:0;
      position:relative;
      float:none;
      margin:0;
      padding-top:0;
      padding-bottom:0;
      padding-left:15px;
      text-align:left;
      float:none !important;
  }
  .mod_footer_navi ul {
      width:90%;
      margin-right:auto;
      margin-left:0;
      padding-left:0;
      text-align:left;
  }
  .mod_footer_navi li {
      margin-right:auto;
      margin-left:0;
      padding-right:15px;
      padding-left:0;
      text-align:left;
  }

  .mm-list > li strong {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    color: inherit;
    line-height: 20px;
    display: block;
    padding: 10px 10px 10px 20px;
    margin: 0;
  }
}

