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}
.mobile_menu{position:fixed;z-index:100;display:none}.mobile_menu .inner{height:100%;background:#000;overflow-y:scroll}.mobile_menu.active.position_left{box-shadow:2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_top{box-shadow:0 2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_right{box-shadow:-2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_bottom{box-shadow:0 -2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.no_shadow{box-shadow:none!important}.mobile_menu_trigger{display:none}.mobile_menu_wrapper{position:relative;width:100%;overflow:hidden}.mobile_menu_overlay{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:99}.mobile_menu_overlay.background{background:rgba(0,0,0,.5)}.mobile_menu li.submenu_hide>ul{display:none}.mobile_menu li.submenu_show>ul{display:block}body.ie8 .mobile_menu,body.ie8 .mobile_menu_trigger,body.ie9 .mobile_menu,body.ie9 .mobile_menu_trigger{display:none!important}
#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)}
/* ****************************************************************************************************************** */
/* --- Fonts -------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

/* barlow-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 300;
  src: url('/webfonts/barlow-v12-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 400;
  src: url('/webfonts/barlow-v12-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 500;
  src: url('/webfonts/barlow-v12-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 600;
  src: url('/webfonts/barlow-v12-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 700;
  src: url('/webfonts/barlow-v12-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 800;
  src: url('/webfonts/barlow-v12-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* barlow-semi-condensed-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 300;
  src: url('/webfonts/barlow-semi-condensed-v15-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-semi-condensed-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 400;
  src: url('/webfonts/barlow-semi-condensed-v15-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-semi-condensed-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 500;
  src: url('/webfonts/barlow-semi-condensed-v15-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-semi-condensed-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 600;
  src: url('/webfonts/barlow-semi-condensed-v15-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-semi-condensed-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 700;
  src: url('/webfonts/barlow-semi-condensed-v15-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-semi-condensed-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 800;
  src: url('/webfonts/barlow-semi-condensed-v15-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

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

:root {
    --ka-bk-color:#ffffff;
    --ka-bk-color1:#000000;
    --ka-bk-form:#404040;

    --ka-bk-white: #ffffff;
    --ka-bk-offwhite: #f0f0f0;
    --ka-bk-lightgrey: #d3d3d3;
    --ka-bk-grey: #525252;
    --ka-bk-middlegrey:#404040;
    --ka-bk-darkgrey:#2b2b2b;
    --ka-bk-black:#212121;

    --ka-font-white: #fff;
    --ka-font-orange: #f47c00;
    --ka-font-lightgrey: #cccccc;
    --ka-font-grey: #525252;
    --ka-font-darkgrey: #333333;
    --ka-font-black: #212121;

    --ka-font-color:#fff; /* #262626; */
    --ka-font-size:17px;
    --ka-line-height:21px;

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

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

body {
    background-color:var(--ka-bk-black);
}
#wrapper {
    width:100%;
    min-height:200px;
}

body.limit1200 #main .inside {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

a,
b,
body,
cite,
div,
em,
i,
label,
li,
ol,
p,
strong,
td,
th,
u,
ul {
    font-family:Barlow,Arial;
    color:var(--ka-font-color);
}
fieldset,
form,
input,
optgroup,
select,
textarea {
    font-family:Barlow,Arial;
}
a,
body,
fieldset,
form,
input,
label,
li,
ol,
optgroup,
p,
select,
td,
th,
textarea,
ul {
    font-size:var(--ka-font-size);
    line-height:var(--ka-line-height);
    color:var(--ka-font-color);
    letter-spacing:.02em;
}
ul {
    padding-top:4px;
    padding-left:17px;
}
li {
    margin-bottom:4px;
    padding-left:2px;
    list-style-type:none;
}
#main li::before {
    content: "•"; color: var(--ka-font-color);
    display: inline-block; width: 1em;
    margin-left: -1em;
}
pre,
form {
    margin:0;
    padding:0;
}
p {
    margin-top:8px;
    margin-bottom:8px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family:Barlow Semi Condensed,Arial;
    white-space: normal;
}
h1 {
    margin-top:20px;
    margin-bottom:10px;
    white-space:nowrap;
    font-size:48px;
    line-height:52px;
    letter-spacing:.05em;
    font-weight:800;
    color:var(--ka-font-lightgrey);
    text-transform:uppercase;
}
h2 {
    margin-top:15px;
    font-size:32px;
    line-height:36px;
    letter-spacing:.03em;
    color:var(--ka-font-lightgrey);
}
h3 {
    margin-top:15px;
    font-size:28px;
    line-height:32px;
    font-weight:normal;
    color:var(--ka-font-orange);

}
h4 {
    margin-top:35px;
    font-size:32px;
    line-height:36px;
    font-weight:normal;
    color:var(--ka-font-orange);
    text-transform:uppercase;
    letter-spacing:.03em;
}
body.home h1 {
    margin-bottom:15px;
    font-size:45px;
    line-height:52px;
    font-weight:bold;
    color:var(--ka-font-lightgrey);
    text-transform:uppercase;
    letter-spacing:3px;
    word-spacing:5px;
}
body.home h2 {
    display:block;
    margin-bottom:10px;
    font-size:30px;
    line-height:36px;
    font-weight:bold;
    color:var(--ka-font-lightgrey);
}
body.home h3 {
    display:block;
    margin-bottom:10px;
    font-size:30px;
    line-height:36px;
    color:var(--ka-font-orange);
}
h5 {
  margin-top:5px;
  font-size:24px;
  line-height:28px;
  font-weight:normal;
  color:var(--ka-font-grey);

}
optgroup {
    padding-top:3px;
    padding-bottom:3px;
}
a {
    text-decoration:none;
    color:var(--ka-font-orange);
}
strong {
    text-decoration:none;
    color:var(--ka-font-orange);
}


.ce_gallery > ul li.col_first {
    clear:none;
}
.ce_gallery .flex-images a {
    float:left;
    margin-right:20px;
    margin-bottom:20px;
    width:calc(33% - 20px);
}
figure.image_container.kimg.float_left {
    margin-right:20px;
    margin-bottom:20px;
}
.col33 {
    width:33.3%;
    float:left;
}
.col33m {
    float:left;
    margin-left:25px;
    width:calc(33.3% - 25px);
}
.col33line {
    float:left;
    width:calc(33.3% - 30px);
}
.col50 {
    position:relative;
    float:left;
    margin-right:0;
    margin-left:0;
    width:calc(50% - 0px);
}
.col50m {
    float:left;
    margin-right:20px;
    width:calc(50% - 20px);
}
.col50mr {
    float:left;
    margin-right:0;
    margin-left:20px;
    width:calc(50% - 20px);
}
.col50line {
    float:left;
    width:calc(50% - 31px);
}
.col66m {
    float:left;
    margin-right:25px;
    margin-left:0;
    width:calc(66.6% - 25px);
}
.col66line {
    float:left;
    width:calc(66.6% - 32px);
}
.colline {
    width:2px;
    float:left;
    display:inline-block;
    margin-right:29px;
    margin-left:29px;
    padding-right:0;
    padding-left:0;
    border-right:2px solid var(--ka-font-lightgrey);
}
.dist20 {
    height:20px;
    display:block;
}
.dist50 {
    height:50px;
    display:block;
}
.clear,
#clear {
    float:none;
    clear:both;
    height:auto;
}
.center {
    width:100%;
    text-align:center;
}
div.limit1200 {
    max-width:1200px;
    margin-right:auto;
    margin-left:auto;
}
.limit800 {
    max-width:800px;
    margin-right:auto;
    margin-left:auto;
}
.flexcontainer {
    display: -webkit-flex;
        display: -ms-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        flex-direction: row;
}
.flexbox {
    display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
}
.ce_dma,
.ce_ce_dma {
    width:100%;
}
.dlh_googlemap {
    margin-top:20px;
    width: 100% !important;
    height: 350px !important;
    padding-bottom: 0% !important;
}
.dlh_googlemap input {
    margin-right:5px;
    margin-left:0;
    padding-top:3px;
    padding-bottom:3px;
}
.dlh_googlemap .submit {
    width:40px;
    margin-right:0;
    margin-left:5px;
}
div.ce_toplink {
    bottom:10px;
    right:10px;
    position:fixed;
    z-index:991;
}
div.ce_toplink a {
    margin:0;
    padding:0;
}
.ce_code {
    margin-top:10px;
    margin-bottom:10px;
    padding:5px 20px;
    background: linear-gradient(#ddd .0625em, #f6f7f7 .0625em) 0 -.0625em repeat;
    1background-size: 100% 1.5em;
    1overflow: auto;
    border: 1px solid #c9c9c9;
    border-radius: 3px;
    box-shadow: 0 1px 5px rgba(0,0,0,0.2);
    1white-space: pre;
    word-wrap: normal;
}
code {
    width:100%;
    display:inline-block;
}
body .msry_theme_standard .masonry_gallery {
    margin:10px;
    padding:0;
    width:calc(20% - 20px);
}
#main img {
    max-width:100%;
}



.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 var(--ka-font-lightgrey);
}
.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;
}
div.limit1200,
div.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-colorred);
}

.boxwhite {
    width:100%;
    padding:80px 0 100px 0;
    background-color:var(--ka-bk-color);
}

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

.boxwhite h1,
body.home .boxwhite h1 {
  margin:15px 0 0 0;
  padding:0;
  font-weight:800;
  color:var(--ka-font-lightgrey);
}
.boxwhite h2,
body.home .boxwhite h2 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font-weight:600;
  color:var(--ka-font-orange);
}
.boxwhite h3,
body.home .boxwhite h3 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  color:var(--ka-font-lightgrey);
}

.boxwhite h4,
body.home .boxwhite h4 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font-size:48px;
  line-height:52px;
  font-weight:800;
  color:var(--ka-font-orange);
}


.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;
  color:var(--ka-font-white);
}
.boxgrey h2,
body.home .boxgrey h2 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font-weight:600;
  color:var(--ka-font-orange);
}
.boxgrey h3,
body.home .boxgrey h3 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  color:var(--ka-font-white);
}

.boxgrey h4,
body.home .boxgrey h4 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font-size:48px;
  line-height:52px;
  font-weight:800;
  color:var(--ka-font-orange);
}

.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:var(--ka-bk-middlegrey);
}



.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;
  /*text-shadow: 0 0 8px #FFFFFF;*/
  color:var(--ka-font-white);
}
.boxdarkgrey h2,
body.home .boxdarkgrey h2 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font-weight:400;
  text-shadow: 0 0 0px;
  color:var(--ka-font-white);
}
.boxdarkgrey h3,
body.home .boxdarkgrey h3 {
  max-width:100%;
  margin-top:20px;
  margin-bottom:40px;
  padding-top:0;
  font-weight:400;
  text-shadow: 0 0 0px;
  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
{
    margin-bottom: 25px;
}

.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;
}

.ce_dma,
.ce_ce_dma {
    width:100%;
}
.dlh_googlemap {
    margin-top:20px;
    width: 100% !important;
    height: 350px !important;
    padding-bottom: 0% !important;
}
.dlh_googlemap input {
    margin-right:5px;
    margin-left:0;
    padding-top:3px;
    padding-bottom:3px;
}
.dlh_googlemap .submit {
    width:40px;
    margin-right:0;
    margin-left:5px;
}
div.ce_toplink {
    bottom:10px;
    right:10px;
    position:fixed;
    z-index:991;
}
div.ce_toplink a {
    margin:0;
    padding:0;
}
div.ce_toplink a img {
    width: 32px;
}
.ce_code {
    margin-top:10px;
    margin-bottom:10px;
    padding:5px 20px;
    background: linear-gradient(#ddd .0625em, #f6f7f7 .0625em) 0 -.0625em repeat;
    1background-size: 100% 1.5em;
    1overflow: auto;
    border: 1px solid #c9c9c9;
    border-radius: 3px;
    box-shadow: 0 1px 5px rgba(0,0,0,0.2);
    1white-space: pre;
    word-wrap: normal;
}
code {
    width:100%;
    display:inline-block;
}


.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;
}


table {
  margin-top:10px;
  width: 100% !important;
}
.boxwhite table h3,
table h3 {
  padding: 3px;
  margin: 0;
  color: var(--ka-font-darkgrey);
}
table thead {
  /*background-color: var(--ka-bk-lightgrey);
  border-bottom:1px solid var(--ka-font-lightgrey);
  */
}
table tbody {

}
td,
.boxwhite td {
  padding:12px 20px 12px 8px;
}

.boxwhite tbody tr:nth-child(odd) {
  background-color: var(--ka-bk-offwhite);
}

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

#header {
    width:100%;
    height:140px;
    top:0;
    position:fixed;
    background-color:var(--ka-bk-color1);
    z-index:990;
    transition: all 1s ease;
}
#header .inside {
    max-width:1200px;
    float:none;
    margin-right:auto;
    margin-left:auto;
    padding:0;
}
#header.small {
    height:50px;
    -moz-transition: all 1s ease;
    -webkit-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease;
}
#header #HeaderLogo {
    width:400px;
    left:0;
    top:5px;
    position:absolute;
    transition: all 1s ease-out;
}
#header.small #HeaderLogo {
    width:160px;
    left:0;
    top:3px;
    position:absolute;
    overflow:hidden;
    transition: all 1s ease;
}
#banner {
    top:0;
    position:relative;
    margin-top:140px;
    z-index:800;
}
#banner .bannerinside {
    min-height:100px;
    overflow:hidden;
    1background-color:var(--ka-font-white);
    max-height:calc(100vh - 20px) !important;
}
#bannerimage {
    width:100%;
    position:relative;
    z-index:800;
}
#bannerimage #bannersmall,
#bannerimage #bannersmall img.image {
    width:100%;
    font-size:2px;
    line-height:2px;
}
#bannerimage .downbutton {
    width:100%;
    bottom:1px;
    position:absolute;
    overflow:hidden;
    display:block;
    text-align:center;
    font-size:2px;
    line-height:2px;
    z-index:801;
}
#bannerimage .downbutton a {
    overflow:hidden;
    display:block;
    font-size:17px;
    line-height:2px;
}
div#anker::before {
    content: '';
    display: block;
    height:      50px;
    margin-top: -50px;
    visibility: hidden;
}
#bannertext {
    width:100%;
    top:66%;
    position:absolute;
    display:inline-block;
    z-index:802;
}
#bannertext .textinside {
    width:80%;
    max-width:1600px;
    margin-right:auto;
    margin-left:auto;
}
#bannertext h1 {
    font-size:80px;
    line-height:85px;
    font-weight:bold;
    color:var(--ka-font-white);
    text-transform:none;
}
#bannertext p {
    font:36px/40px Caveat;
    color:var(--ka-font-white);
}
.rsts-skin-default .rsts-nav {
    bottom:5px;
    right:20px;
    position:absolute;
}


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

#footer {
    height:200px;
    top:0;
    position:relative;
    clear:both;
    display:block;
    margin-top:0;
    margin-bottom:0;
    padding-top:8px;
    background-color:var(--ka-bk-color1);
    border-top:2px solid var(--ka-font-orange);
}
#footer .inside {
    max-width:1200px;
    float:none;
    display:block;
    margin-right:auto;
    margin-bottom:10px;
    margin-left:auto;
    padding:0;
}
.mod_footer_contact,
.mod_footer_copyright,
.mod_footer_navi {
    margin:0;
    padding:10px 0 0 10px;
    color:var(--ka-font-white);
}
.mod_footer_copyright {
    left:0;
    top:0;
    position:absolute;
}
.mod_footer_navi {
    right:0;
    top:0;
    position:absolute;
    margin-left:auto;
    text-align:right;
}
.mod_footer_navi li {
    float:left;
}
#footer strong,
#footer div {
    font-weight:normal;
    color:var(--ka-font-white);
}
.mod_footer_navi li strong,
.mod_footer_navi a {
    padding-right:0;
    padding-left:10px;
    color:var(--ka-font-white);
}


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

@media screen and (min-width: 851px) {
  #navmobil {
      display:none;
  }
  #mainnav {
      height:30;
      right:0;
      top:98px;
      position:absolute;
      overflow:visible;
      margin:0;
      z-index: 999;
      transition:  top 0.5s linear;
  }
  #header.small #mainnav {
      top:14px;
      -moz-transition: top 1s ease;
      -webkit-transition:  top 1s ease;
      -o-transition:  top 1s ease;
      transition:  top 1s ease;
  }
  .mod_navigation a {
      margin:5px 0 0;
      padding:0;
      font:20px/22px Barlow Semi Condensed;
      font-weight:bold;
      color:var(--ka-font-orange);
      text-transform:uppercase;
      letter-spacing:.03em;
  }
  .mod_navigation a:hover {
      text-decoration:none;
  }
  .mod_navigation span.active,
  .mod_navigation li.sibling
  .mod_navigation li.trail {
      margin:0;
      padding:0;
  }
  .mod_navigation li {
      position:relative;
      float:left;
      list-style-type:none;
  }
  .mod_navigation li a,
  .mod_navigation li.active strong {
      height:42px;
      position:relative;
      float:left;
      margin:0;
      padding:2px 10px;
      text-align:center;
      font:20px/22px Barlow Semi Condensed;
      font-weight:bold;
      color:var(--ka-font-lightgrey);
      text-transform:uppercase;
      letter-spacing:.03em;
      list-style-type:none;
  }
  .mod_navigation li.active strong {
      font-weight:bold;
      color:var(--ka-font-orange);
  }
  .mod_navigation li a span {
      margin:0;
      padding:0;
  }
  .mod_navigation li a:hover,
  .mod_navigation li a.sfhover {
      color:var(--ka-font-orange);   /* 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:185px;
      bottom:0;
      left:0;
      right:0;
      top:42px;
      position:absolute;
      display:none;
      padding-top:4px;
      background-color:var(--ka-font-orange);
  }
  .mod_navigation li ul li {
      margin:0;
      padding:0;
      border-bottom:1px solid var(--ka-font-grey);
      border-radius:0;
  }
  .mod_navigation li ul li a,
  .mod_navigation li ul li.active strong {
      width:180px;
      height:28px;
      margin:0;
      padding:7px 0 0 5px;
      text-align:left;
      background-color:rgba(255,255,255,.7);
      background-image:none;
      color:var(--ka-font-grey);   /* 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:var(--ka-font-orange);   /* 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 strong {
      background-color:rgba(245,245,245,.85);
      background-image:none;
      color:var(--ka-font-orange);
  }
  .mod_navigation li ul ul {
      left:200px;
      position:absolute;
      top:0;
      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);
}


/* ****************************************************************************************************************** */
/* --- ka_bannerslider ---------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

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

section.kabannerslider .swiper-slide {
  position: relative;
  display: flex;
}

section.kabannerslider .swiper-slide .slinside {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
}


section.kabannerslider .image_container {
  position: relative;
  width: 100%;
  height: 100%;
}

section.kabannerslider .image_container img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section.kabannerslider .swiper-slide .background {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
}

section.kabannerslider .swiper-slide .background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section.kabannerslider .swiper-container {
  position: relative;
  width: 100%;
  height: 100%;
}

section.kabannerslider .swiper-slide .textblock {
  position: absolute;
  left: 0;
  top: auto;
  padding: 0;
  margin: 0;
  width: 66%;
  /*
  top: 50%;
  transform: translateY(-50%);
  */
  bottom: 5%;
  background-color: rgba(255,255,255,0.6);
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

section.kabannerslider .swiper-slide .textblock .left {
  position: relative;
  padding: 0;
  margin: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 50px 80px 60px 80px;
}

section.kabannerslider .swiper-slide .textblock .text,
section.kabannerslider .swiper-slide .textblock .button {
  position: relative;
  display: flex;
  flex-direction: column;
}
section.kabannerslider .swiper-slide .textblock .text {

}

section.kabannerslider .swiper-slide .textblock .headline {
  margin: 0 0 20px 0;
  font-size: 60px;
  line-height: 70px;
}
section.kabannerslider .swiper-slide .textblock .text {
  font-size: 32px;
  line-height: 38px;
}
section.kabannerslider .swiper-slide .textblock .button a {
  height: 100%;
  background-image: url('/files/intern/common/navexp.svg');
  background-repeat: no-repeat;
  background-position:right center;
  background-size: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 50px 0 30px;
  text-transform: uppercase;
  white-space: nowrap;
  background-color: var(--ka-bk-white);
}


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



/* ****************************************************************************************************************** */
/* ---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 :center;
    min-height: 200px;
}
#main .textimg .textblock,
#main .textimg .textblock * {

}


#main .textimg .textblock {
  background-color: rgba(50,50,50,0.1)
}
#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;
}


section.kalinks .grid.cnt_2,
section.kalinks .grid.cnt_4 {
  grid-template-columns: 1fr 1fr;
}

section.kalinks.limitimg .grid {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  margin: 30px 0;
}

section.kalinks .link {
  position: relative;
  display: flex;
  flex-direction: column;
  background-color: var(--ka-bk-darkgrey);
  margin: 0 10px;
}

section.kalinks.limitimg .link {
  max-width: 250px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}


section.kalinks .link .button {
  position: relative;
  margin: -23px 0 24px 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

section.kalinks .link .button a,
#main section.kalinks .link .button a {
  display: flex;
  position: relative;
  background-color: var(--ka-bk-darkgrey);
  justify-content: center;
  padding: 10px 10px;
  /*width: 300px;*/
  width: 70%;
  margin: 0;
  text-align: center;
  z-index: +1;
  text-transform: uppercase;
  color: var(--ka-font-orange);
}

section.kalinks .link .textbox {
  position: relative;
  background-color: var(--ka-bk-darkgrey);
  padding: 20px 20px;
}

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

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

section.kalinks .link .image_container {
  position: relative;
  overflow: hidden;
}

section.kalinks .link .image_container img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  transform: scale(1.0);
  transition: 1.5s ease-in-out;
}

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

section.kalinks.text {
  display: flex;
}
section.kalinks.text .grid.cnt_4 {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
section.kalinks.text .link {
  background-color: var(--ka-bk-white);
}
section.kalinks.text .link .button {
  margin: 0;
}
section.kalinks.text .link .button a,
#main section.kalinks.text .link .button a,
.boxwhite .button a
 {
  color: var(--ka-font-orange);
  font-weight:bold;
  text-transform: uppercase;
  background-color: var(--ka-bk-lightgrey);
  padding: 8px 20px 8px 20px;
  width: auto;
}

section.kalinks.submenu {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  top: 0;
  left: 0;
  width: 100%;
  z-index: +3;
  transition: top 500ms ease;
  background-color: var(--ka-bk-middlegrey);
}
section.kalinks.submenu.fixed {
  position: fixed;
  top:62px;
}
section.kalinks.submenu .links {
  max-width: 1600px;
  margin: 0 auto;
  padding: 20px 0 15px 0;
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
}
section.kalinks.submenu .links .link {
  position: relative;
  display: flex;
  margin: 0 10px;
}
section.kalinks.submenu .links .link a {
  color: var(--ka-font-white);
  background-color: var(--ka-bk-middlegrey);
}



/* ****************************************************************************************************************** */
/* --- kasubmenu ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.kasubmenu {
   position: relative;
   top:0;
   left: 0;
   display: flex;
   flex-direction: column;
   width: 100%;
   z-index: +3;
   transition: top 500ms ease;
   background-color: var(--ka-bk-black);
}

.kasubmenu.fixed {
  position: fixed;
  top:57px;
  /*border-bottom: 1px solid var(--ka-border);*/
  /*
  left:50%;
  transform: translateX(-50%);
  */
}

.kasubmenu *,
.kasubmenu a {
  color: var(--ka-bk-white);
}

.kasubmenu .items {
  max-width: 1600px;
  margin: 0 auto;
  padding: 20px 0 15px 0;
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
}

.kasubmenu .items .item {
  display: flex;
  margin: 0 10px;
}

.kasubmenu .items .item.case {
  font-weight: 800;
  margin: 0 40px 0 0;
}

.kasubmenu .items .item.configurator {
  font-weight: 400;
  margin: 0 0 0 40px;
  padding: 0;
}
.kasubmenu .items .item.configurator a {
  color: var(--ka-bk-lightgrey);
  padding: 0 0 0 30px;
  background-size: 16px;
  background-repeat: no-repeat;
  background-position: left;
}



/* ****************************************************************************************************************** */
/* --- Masonry ------------------------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */


.ce_masonry_gallery {
  margin: 30px 0;

  align-items: center;
  justify-content: center;
}

.ce_masonry_gallery .masonry,
.ce_masonry_start .masonry {
  position: relative;
  width: 100%;

  padding: 0;
  margin: 0;
  list-style: none;

  column-count: 6;
  column-gap: 10px;
  padding: 10px;


}

.ce_masonry_start .masonry {
  column-count: 3;
  column-gap: 30px;
  padding: 30px;
  align-items: center;
  justify-content: center;
}

.ce_masonry_gallery .masonry .masonry_gallery,
.ce_masonry_start .masonry .masonry_item {
  margin:0 20px 20px 0;
  padding:0;
  overflow: hidden;
  list-style-type: none;
  position: relative;
  width: calc(16.66% - 38px);
  border: 5px solid var(--ka-bk-white);
}
.ce_masonry_start .masonry .masonry_item {
  margin:0 40px 40px 0;
  width: calc(33.33% - 62px);
  border: 0px solid var(--ka-bk-white);
}

.ce_masonry_start .masonry .masonry_item h1 {
  width: 100%;
  text-align: center;
  margin-bottom: 20px;
  white-space: normal;
}

.ce_masonry_gallery .masonry .masonry_gallery figure a,
.ce_masonry_start .masonry .masonry_item figure a {
  display: flex;
  width: 100%;
  height: 100%;
}

.ce_masonry_gallery .masonry .masonry_gallery figure,
.ce_masonry_start .masonry .masonry_item figure {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.ce_masonry_start .masonry .masonry_item figure {
  width: calc(100% - 10px);
  border: 5px solid #fff;
}

.ce_masonry_gallery .masonry .masonry_gallery figure img,
.ce_masonry_start .masonry .masonry_item figure img {
  width: 100%;
  height: 100%;
  transform: scale(1);
  transition: all 0.75s ease;
  object-fit: cover;
}

.ce_masonry_gallery .masonry .masonry_gallery figure img:hover {
  transform: scale(1.2);
}
.ce_masonry_start .masonry .masonry_item figure img:hover {
  transform: scale(1.1);
}


/*
.masonry.content-gallery {

}

.masonry.content-gallery ul {
  padding: 0;
  margin: 0;
  list-style: none;

  column-count: 6;
  column-gap: 1rem;
  padding: 1rem;
}

.masonry.content-gallery li {
  break-inside: avoid;
  margin-bottom: 1rem;
  padding: 0;
  background: #fff;
  overflow: hidden;
  border: 5px solid #fff;
}

.masonry.content-gallery figure {
  margin: 0;
}

.masonry.content-gallery img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.3s ease;
}

.masonry.content-gallery img:hover {
  transform: scale(1.2);
}
*/




/* ****************************************************************************************************************** */
/* --- Links ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */


.prodlink {
    float:left;
    margin-right:30px;
    margin-bottom:30px;
    text-align:center;
    background-color:var(--ka-bk-lightgrey);
    width:calc(33.33% - 30px);
}
.prodlink.white {
    background-color:var(--ka-bk-white);
}
.prodlink.col4,
.col4 .prodlink {
    width:calc(25% - 30px);
}
.prodlink .textblock {
    min-height:105px;
    padding:5px 8px;
    z-index:10;
}
.prodlink .textblock .headline,
.prodlink .textblock .text,
.prodlink .textblock .text p {
    color:var(--ka-font-grey);
}
.prodlink.white .textblock .headline,
.prodlink.white .textblock .text,
.prodlink.white .textblock .text p {
    color:var(--ka-font-grey);
}
.prodlink .textblock .headline {
    width:100%;
    text-align:center;
    font-size:16px;
}
.prodlink .linkimg,
.flink .linkimg {
    overflow:hidden;
}
.prodlink .linkimg img,
.flink .linkimg img {
    transition: all .5s ease-in-out;
    z-index:9;
}
.prodlink .linkimg img:hover,
.flink .linkimg img:hover {
    overflow:hidden;
    -moz-transform: scale(1.3);
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
    -moz-transition: 0.5s ease-in-out;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    -webkit-filter: saturate(150%);
    /* Safari 6.0 - 9.0 */
        filter: saturate(150%);
}
.servicebtn {
    float:left;
    display:block;
    margin:15px;
    text-align:center;
    width:calc(33.33% - 30px);
}
.servicebtn .image_container {
    max-width:140px;
    display:block;
    margin-right:auto;
    margin-left:auto;
    padding:25px;
    background-color:var(--ka-font-black);
    border-radius:50%;
    behavior:url('assets/css3pie/1.0.0/PIE.htc');
    -moz-transition: background-color 500ms linear;
    -webkit-transition: background-color 500ms linear;
    -o-transition: background-color 500ms linear;
    transition: background-color 500ms linear;
}
.servicebtn .image_container:hover {
    background-color:var(--ka-font-orange);
    cursor:pointer;
    -moz-transition: background-color 250ms linear;
    -webkit-transition: background-color 250ms linear;
    -o-transition: background-color 250ms linear;
    transition: background-color 250ms linear;
}
.bildlink {
    width:100%;
    position:relative;
    overflow:hidden;
}
.bildlink div {
    font-size:17px;
    line-height:17px;
}
.bildlink .image {
    overflow:hidden;
    float:left;
    margin:5px;
    padding:0;
    border:1px solid #b5b5b5;
    font-size:8px;
    line-height:2px;
    height:auto;
    width: calc(20% - 12px);
}
.bildlink .image_container img {
    overflow:hidden;
    margin:0;
    padding:0;
    -webkit-transition: all 0.5s linear;
    transition: all 0.5s linear;
}
.bildlink img:hover {
    margin:0;
    padding:0;
    -ms-transform: scale(1.5, 1.5);
    -webkit-transform: scale(1.5, 1.5);
    transform: scale(1.5, 1.5);
}
.bildlink .linkbox {
    margin-right: 5px;
    margin-left: 5px;
    text-align: center;
    width: calc(100% - 0px);
    top: calc(50% - 12px);
    left: 0px;
    position: absolute;
}
.bildlink .linkbox a {
    padding:20px 120px;
    background-color:var(--ka-font-orange);
    font-size:24px;
    color:var(--ka-font-white);
}
.flink {
    float:none;
    margin:10px 0 20px;
    padding-top:10px;
    text-align:left;
    border-top:1px solid var(--ka-font-lightgrey);
    width:calc(100% - 0px);
}
.flink div.linkimg {
    float:left;
    margin-right:30px;
    width:calc(33.3% - 30px);
}
.flink div.textblock {
    float:left;
    margin-right:0;
    margin-left:0;
    width:calc(66.6% - 0px);
}
.flink h3 {
    padding-right:0;
    padding-left:0;
}


/* ****************************************************************************************************************** */
/* --- blog-- ------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.blog.mod_newslist {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 80px;
    grid-row-gap: 40px;
    margin: 0;
}
.blog.mod_newslist .layout_latest {
  width: 100%;
  margin: 0;
  /*text-align:center;*/
  padding: 0;
  position: relative;
  background-color: rgba(255, 255, 255, 0.1);
}



.blog.mod_newslist .layout_latest .textblock {
    margin: 0;
    padding: 0px 0px 20px 0px;
    /*background-color: #f5f5f5;*/
}

.blog.mod_newslist .layout_latest .textblock .ce_text {
    margin: 0;
    padding: 0px 20px 20px 20px;
    min-height: 100px;
    /*background-color: #f5f5f5;*/
}

.blog.mod_newslist .layout_latest .textblock h2 a {
    margin: 5px 20px 5px 20px;
    font-size:32px;
    line-height:36px;
    letter-spacing:.03em;
    font-weight:800;
    text-transform:uppercase;

}
.blog.mod_newslist .layout_latest .textblock p a {
  display: flex;
  justify-content: center;
  width: 100%;
  background-color: var(--ka-bk-white);
  padding: 8px 0;
  text-align: center;
}

.blog.mod_newslist .layout_latest .imageblock * {
  font-size: 1px;
  line-height: 1px;
}
.blog.mod_newslist .layout_latest .imageblock {
    margin: 0;
    padding: 0;
    overflow: hidden;
    -webkit-box-reflect: below 0px linear-gradient(transparent,transparent,#0005);

}
.blog.mod_newslist .layout_latest.imgpad .imageblock {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
    padding: 10px;
    min-height: 170px;
    object-fit: cover;
    background-color: #dddddd;
}
/*
.blog.mod_newslist .layout_latest .imageblock .imagemirror {
    -moz-transform: scale(-1, -1);
    -o-transform: scale(-1, -1);
    -webkit-transform: scale(-1, -1);
    transform: scale(-1, -1);
}
*/


.blog.mod_newslist .layout_latest .imageblock img {
    transition: all .75s ease-in-out;
}
.blog.mod_newslist .layout_latest .imageblock img:hover  {
    overflow:hidden;
    transform: scale(1.05);
    filter: saturate(150%);
}

.blog.mod_newslist .layout_latest div.more {
  position: relative;
  margin: -27px 0 34px 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.blog.mod_newslist .layout_latest p.more {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 0;
}
.blog.mod_newslist .layout_latest p.more a {
  display: flex;
  position: relative;
  background-color: var(--ka-bk-white);
  justify-content: center;
  padding: 10px 10px;
  /*width: 300px;*/
  width: 70%;
  margin: 0;
  text-align: center;
  z-index: +1;
  font-size:20px;
  line-height:24px;
  letter-spacing:.02em;
  font-weight:600;
  text-transform:uppercase;
  color: var(--ka-font-lightgrey);
}



/* ****************************************************************************************************************** */
/* --- blogdetails -------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.blogdetails {
    position: relative;
    height: 100%;
    /*
    max-width: 1200px;
    margin: 30px auto;
    background-color: #fff;
    padding: 30px 3%;
    */
}
.mod_newsreader.blog,
.blogdetails .blogdetails {
  position: relative;
  width: 100%;
  height: 100%;
}
.blogdetails .blogimage {
  width: 100%;
  height: 100%;
  display: flex;
    /*
    position: relative;

    max-height: 66vh;
    margin: 0;
    padding: 0;
    overflow: hidden;
    */
    font-size: 1px;
    line-height: 1px;
}
.blogdetails .blogimage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.blogdetails .blogimage .imgheadline {
    position: absolute;
    top: 50%;
    left: 0%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
    transform: translate(0, -50%);
    pointer-events: none;
    z-index: 952;
}
.blogdetails .blogimage .imgheadline > div {
    text-align: left;
}
.blogdetails .blogimage .imgheadline h1 {
  margin: 0;
  color: #fff;
  text-shadow: 2px 2px 8px #000;
  text-align: center;
}
.blogdetails .blogimage .subHeadline {
  position: absolute;
  right:5px;
  bottom: 5px;
  color: #fff;
  line-height: 20px;
  font-size: 16px;
  font-weight: 600;
}

.blogdetails .blogtext {
  margin: 30px 0;
  background-color: #fff;
  padding: 30px 0;
}

.blogdetails .blogtext figure img {
  max-width: 50%;
}

.blogdetails.back {
    margin: 40px 0 80px 0;
    min-height: 30px;
    padding: 0;
    display: flex;
    flex-direction:column;
    align-items: center;
    /*justify-content: center;*/
}

#bannerimage .blogdetails.back {
    display: none;
}

.blogdetails .blogsharebuttons .headline {
    margin: 0 0 15px 0;
}

.blogdetails .katdatetime {
    display: flex;
    align-items: center;
    justify-content: center;
}

.blogdetails h1.headline {

    text-align: left;
    /*
    width: 100%;
    margin: 30px 0;
    */
}

.blogdetails .blogsharebuttons * {
    border-style: none !important;
    list-style-type: none !important;
}



/* ****************************************************************************************************************** */
/* --- News ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

/* body.home .mod_newslist h1 {
    font-size:30px;
    line-height:36px;
    color:var(--ka-bk-grey);
}
.news-entry {
    padding:20px 15px;
}
.news-entry .newsinside {
    max-width:1200px;
    margin-right:auto;
    margin-left:auto;
}
.news-entry:nth-child(odd) {
    background-color:var(--ka-bk-offwhite);
}
.news-entry:nth-child(even) {
    background-color:var(--ka-bk-lightgrey);
}
.news-entry .news-image {
    float:left;
    margin-right:20px;
}
.mod_newslist .datetime,
.mod_newsreader .datetime {
    margin-top:0;
    margin-bottom:5px;
    padding-top:0;
    padding-bottom:0;
    color:var(--ka-bk-grey);
}
.news-entry .news-text h3 {
    margin-top:0;
}
.mod_newsreader .image_container.float_right,
.mod_newslist .image_container.float_right {
    max-width:33%;
    margin-top:10px;
    margin-bottom:30px;
    margin-left:30px;
}
.layout_simple .ce_image {
    float:left;
    margin-right:30px;
    width:calc(25% - 30px);
}
.layout_simple .ce_text {
    width:75%;
    float:left;
}
*/
/* ****************************************************************************************************************** */
/* --- Events ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */


div.mod_eventlist {
    display: flex;
     flex-direction: column;
     justify-content: space-between;
}
div.mod_eventlist div.event {
    margin-top:20px;
    margin-bottom:0;
    padding-top:20px;
    padding-bottom:20px;
    border-top:1px solid #d4d4d4;
}
div.mod_eventlist div.left {
    float:left;
    margin-right:30px;
    width: calc(25% - 30px);
}
div.mod_eventlist div.right {
    width:75%;
    float:left;
}
div.mod_eventreader div.event div.ce_text figure.image_container.float_right {
    max-width:33%;
}
div.mod_eventlist div.event time {
    font-size:22px;
    line-height:24px;
    color:var(--ka-bk-grey);
}
div.mod_eventlist div.event h2 a {
    font:32px/36px Barlow Semi Condensed,Arial;
    font-weight:bold;
    color:var(--ka-bk-grey);
}

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

.submit {
    width:265px;
    max-width:50%;
    margin-top:4px;
    margin-left:180px;
    padding-top:8px;
    padding-bottom:6px;
    background-color:rgba(244,124,0,.2);
    border:medium none;
    cursor: pointer;
}
fieldset {
    width:260px;
    display:block;
    margin:12px 0 24px;
    padding:12px 12px 0;
}
legend {
    color:#0000e6;
}
.widget-textarea label,
.widget-captcha label,
.widget-text label,
.widget-password label,
.select label {
    width:180px;
    float:left;
    display:block;
}
input.text,
input.password,
input.captcha {
    width:260px;
    max-width:50%;
    margin:3px 0;
    padding-top:2px;
    padding-bottom:2px;
    padding-left:4px;
    background-color:rgba(244,124,0,.2);
    border:medium none;
}
input.captcha {
    width:75px;
    margin-right:5px;
}
textarea {
    width:1020px;
    height:100px;
    margin-top:3px;
    margin-bottom:3px;
    margin-left:0;
    padding-left:5px;
    background-color:rgba(244,124,0,.2);
    border:medium none;
    max-width:calc(100% - 200px);
}
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;
}
fieldset.checkbox_container {
    width:95%;
    margin:10px 0 10px 170px;
    padding-top:0;
    padding-bottom:0;
}
fieldset.checkbox_container label {
    display:block;
    max-width:calc(100% - 200px);
}
div.checkbox_container span {
    display:block;
    padding-right:6px;
}
input.checkbox {
    float:left;
    margin:3px 7px 0 1px;
    padding:0;
}
fieldset table td:first-child {
    margin:1px 0;
}
#col_0 {
    width:150px;
    margin-left:0;
}
.startform .widget-textarea label,
.startform .widget-captcha label,
.startform .widget-text label,
.startform .widget-password label,
.startform .select label {
    width:180px;
    float:none;
    clear:both;
    display:block;
}
.startform input.text,
.startform input.password,
.startform input.captcha,
.startform textarea {
    width:100%;
    max-width:100%;
    margin:3px 0 9px;
    padding-top:6px;
    padding-bottom:6px;
    padding-left:6px;
    background-color:rgba(186,186,186,.5);
    border:medium none;
}
.startform fieldset.checkbox_container {
    width:100%;
    margin:10px 0;
    padding-top:0;
    padding-bottom:0;
    padding-left:0;
}
.startform fieldset.checkbox_container label {
    width:100%;
    display:block;
    max-width:calc(100% - 0px);
}
.startform .submit {
    width:100%;
    max-width:100%;
    margin-top:4px;
    margin-left:0;
    padding-top:8px;
    padding-bottom:6px;
    text-align:center;
    background-color:var(--ka-bk-orange);
    color:var(--ka-font-white);
    border:medium none;
    cursor: pointer;
}

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

:root {
  --ka-mobile-border: 20px;

}

/* ****************************************************************************************************************** */
/* --- max-width: 1610px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 1610px) {
  .limit1600,
  #main .limit1600 {
    max-width:calc(100% - 2 * var(--ka-mobile-border));
    margin-right:auto;
    margin-left:auto;
  }
}

/* ****************************************************************************************************************** */
/* --- max-width: 1410px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 1410px) {
  .limit1400,
  #main .limit1400 {
    max-width:calc(100% - 2 * var(--ka-mobile-border));
    margin-right:auto;
    margin-left:auto;
  }
}

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

@media only screen and (max-width: 1210px) {

  #main .limit1200,
  body.limit1200 #main .inside {
    max-width:calc(100% - 2 * var(--ka-mobile-border));
    margin-right:auto;
    margin-left:auto;
  }

  .home #bannerimage,
  .home #banner #bannerimage .rsts-slide > div,
  .home #banner #bannerimage .rsts-main {
      min-height: calc(40vh - 0px) !important;
      max-height: calc(40vh - 0px) !important;
  }
  #bannertext {
      top:55%;
      position:absolute;
  }
  #bannertext h1 {
      font-size:60px;
      line-height:64px;
      text-transform:none;
  }
  #bannertext p {
      font:30px/36px Caveat;
  }
  h1,
  h2,
  h3,
  h4,
  h5 {
      white-space: normal;
  }
  .boxgrey {
    /*
      padding-right:10px;
      padding-left:10px;
      width:calc(100% - 20px);
    */
  }
  .bildlink .image {
      width: calc(25% - 12px);
  }
  .bildlink .image.nr9,
  .bildlink .image.nr10 {
      display:none;
  }
  #main .limit1200 {
      margin-right:10px;
      margin-left:10px;
  }
  #main .mod_article .ce_text .ktext,
  #main .mod_article h1,
  #main .mod_article h2,
  #main .mod_article h3,
  #main .ce_form {
      padding-right:5px;
      padding-left:5px;
  }
  .prodlink {
      margin-right:15px;
      margin-left:15px;
  }
  .mod_footer_navi {
      margin-right:10px;
  }
}


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

@media only screen and (max-width: 850px) {

  #main .limit800 {
    max-width:calc(100% - 2 * var(--ka-mobile-border));
    margin-right:auto;
    margin-left:auto;
  }
  #mainnav {
    display:none;
  }
  #navmobil {
    display:block;
  }
  section.kabannerslider .swiper-slide .textblock {
    display: none;
  }



  html.mm-opening .mm-slideout {
      -webkit-transform: translate(260px, 0);
      -moz-transform: translate(260px, 0);
      -ms-transform: translate(260px, 0);
      -o-transform: translate(260px, 0);
      transform: translate(260px, 0);
  }
  .mm-menu {
      max-width: 260px;
  }
  #mmenu .mm-selected.mm-opened strong {
      overflow:hidden;
      display:block;
      padding:10px 10px 10px 20px;
      line-height:20px;
      text-overflow: ellipsis;
      white-space: nowrap;
  }
  #header {
      height:88px;
  }
  #header .inside {
      width:calc(100% - 10px);
  }
  #header #HeaderLogo {
      width:210px;
      left:5px;
      top:5px;
      position:absolute;
  }
  #banner {
      margin-top:88px;
  }
  .home #bannerimage,
  .home #banner #bannerimage .rsts-slide > div,
  .home #banner #bannerimage .rsts-main {
      min-height: calc(50vh - 0px) !important;
      max-height: calc(50vh - 0px) !important;
  }
  .rsts-skin-default .rsts-nav {
      display:none;
  }
  h1,
  body.home h1,
  .boxgreen h1,
  body.home .boxgreen h1 {
      font-size:32px;
      line-height:36px;
  }
  body.home .mod_newslist h1 {
      font-size:24px;
      line-height:27px;
  }
  .rsts-skin-default .rsts-nav {
      bottom:0;
      right:5px;
      position:absolute;
  }
  #bannertext {
      top:120px;
      position:absolute;
  }
  #bannertext h1 {
      font-size:40px;
      line-height:44px;
      text-transform:none;
  }
  #bannerimage .downbutton img {
      height:40px;
  }
  #main .ce_image img {
      max-width:90%;
  }
  body.home .msry_theme_standard .masonry_gallery {
      width: calc(33.3% - 20px);
  }
  #cboxTitle,
  #cboxCurrent {
      font-size:14px;
  }

  .dist100 {
    height:50px;
  }
  .dist50 {
    height:25px;
  }
  .dist25,
  .dist20 {
    height:10px;
  }

  .boxwhite {
    padding: 20px 0 30px 0;
  }

  section.kalinks.text .grid.cnt_4 {
    grid-template-columns: 1fr 1fr;
  }

  .blog.mod_newslist {
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-column-gap: 40px;
      grid-row-gap: 10px;
  }

  td,
  .boxwhite td {
    padding:12px 4px 12px 4px;
    font-size: 12px;
    line-height: 14px;
  }
  h5 {
    font-size:18px;
    line-height:20px;
  }

  .ce_masonry_gallery .masonry,
  .ce_masonry_start .masonry {
    column-count: 4;
  }
  .ce_masonry_gallery .masonry .masonry_gallery,
  .ce_masonry_start .masonry .masonry_item {
    width: calc(25% - 38px);
  }


  .textimg .grid.fr2 {
    grid-template-columns: 1fr;
  }
  .textimg .grid.fr2.txtleft .imageblock {
    order: 1;
  }
  .textimg .grid.fr2.txtleft .textblock {
    order: 2;
  }
  #main .textimg .grid.fr2 .textblock {
    margin-bottom: 20px;
  }

  section.kalinks.limitimg .grid {
    display: grid;
  }
  section.kalinks.limitimg .link {
    max-width: 350px;
  }

  .prodlink {
      width: calc(50% - 30px);
  }
  .bildlink .image {
      width: calc(33.3% - 12px);
  }
  .bildlink .image.nr7,
  .bildlink .image.nr8,
  .bildlink .image.nr9,
  .bildlink .image.nr10 {
      display:none;
  }
  .bildlink .linkbox a {
      padding-right:60px;
      padding-left:60px;
  }
}


/* ****************************************************************************************************************** */
/* --- max-width: 600px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 600px) {

  :root {
    --ka-mobile-border: 10px;
  }

  #header {
    height:68px;
  }
  #banner {
    margin-top: 68px;
  }

  #main .inside {
      width:100%;
      margin-right:0;
      margin-left:0;
      padding-right:0;
      padding-left:0;
      width:calc(100% - 0px);
  }
  h1,
  body.home h1,
  .boxgreen h1,
  body.home .boxgreen h1 {
      font-size:20px;
      letter-spacing:.01em;
  }
  h2,
  body.home  h2 {
      font-size:18px;
      line-height:20px;
      letter-spacing:.01em;
  }
  body.home .mod_newslist h1 {
      font-size:18px;
      line-height:20px;
      letter-spacing:.01em;
  }
  fieldset.checkbox_container,
  fieldset.checkbox_container label {
      width:100%;
      max-width:100%;
      margin-right:0;
      margin-left:0;
  }

  .dist100 {
    height:25px;
  }
  .dist50 {
    height:20px;
  }
  .dist25,
  .dist20 {
    height:5px;
  }

  .boxwhite,
  .boxdarkgrey {
    padding: 10px 0 10px 0;
  }

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

  .boxwhite h2, body.home .boxwhite h2 {
    margin-top: 10px;
    margin-bottom: 20px;
  }

  .ce_masonry_gallery .masonry,
  .ce_masonry_start .masonry {
    column-count: 2;
  }
  .ce_masonry_gallery .masonry .masonry_gallery,
  .ce_masonry_start .masonry .masonry_item {
    width: calc(50% - 40px);
  }

  .col50,
  .col50m,
  .col50mr,
  .startbox,
  .startbox50,
  .partner,
  .prodlink,
  .col33line,
  .col50line,
  .col66line,
  .flink div.linkimg {
      margin-right:0;
      margin-left:0;
      padding-right:5px;
      padding-left:5px;
      width: calc(100% - 10px);
      height:100% !important;
  }
  .text2col .textblock.right {
      text-align:left;
  }
  .bildlink .image {
      width: calc(50% - 12px);
  }
  #cboxCurrent {
      bottom:5px !important;
      top: auto;
      right:10px;
  }
  input.text,
  input.password,
  input.captcha,
  textarea,
  .submit,
  fieldset.checkbox_container {
      margin-right:0;
      margin-left:0;
      width:calc(100% - 5px);
      max-width:calc(100% - 5px);
  }
  fieldset.checkbox_container {
      margin-right:0;
      margin-left:0;
      padding-right:0;
      padding-left:0;
      width:calc(100% - 0px);
      max-width:calc(100% - 0px);
  }
  .submit {
      margin-right:0;
      margin-left:0;
      width:calc(100% - 0px);
      max-width:calc(100% - 0px);
  }
  .bildlink .image.nr5,
  .bildlink .image.nr6,
  .bildlink .image.nr7,
  .bildlink .image.nr8,
  .bildlink .image.nr9,
  .bildlink .image.nr10 {
      display:none;
  }
  .bildlink .linkbox a {
      padding:12px 30px;
      font-size:20px;
  }
  .ce_video iframe {
      max-width: calc(100% - 4px);
  }
  .blog.mod_newslist {
    display: grid;
    grid-template-columns: 1fr;
    grid-column-gap: 0px;
  }

  .blog.mod_newslist .layout_latest .textblock h2 a {
    font-size: 24px;
    line-height: 28px;
  }

  #main .textimg .textblock {
    padding: 20px 20px;
  }

  section.kalinks.text .grid.cnt_4 {
    grid-template-columns: 1fr;
  }

  section.kalinks.limitimg .grid {
    grid-template-columns: 1fr;
  }

  #footer {
      height:80px;
  }
  #footer .inside {
      padding-right:5px;
      padding-left:5px;
      width:calc(100% - 10px);
  }
  .mod_footer_contact,
  .mod_footer_copyright,
  .mod_footer_navi {
      width:100%;
      min-width:100%;
      max-width:100%;
      left:0;
      right:0;
      top:0;
      position:relative;
      float:left;
      clear:both;
      margin:0;
      padding:0;
      text-align:left;
      float:left !important;
  }
  .mod_footer_navi ul,
  .mod_footer_navi li {
      padding-right:0;
      padding-left:0;
  }
  .mod_footer_navi li strong,
  .mod_footer_navi a {
      padding-right:10px;
      padding-left:0;
  }
}


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

#navmobil {
  width:32px;
  height:32px;
  right:15px;
  position:absolute;
  top:10px;
  z-index: 990;
  cursor: pointer;
}
.mobile_menu_overlay {
    z-index: 990;
}
.mobile_menu {
    max-width:320px;
    z-index: 999;
    1height: auto !important;
    1height: 99vh !important;
}
.mobile_menu .inner {
    background-color:var(--ka-bk-darkgrey);
    color:var(--ka-font-white);
    text-transform:uppercase;
    font:14px DINCondensed-Regular,Arial,sans-serif;
    z-index: 999;
    1height: auto;
    1overflow: visible;
    1overflow-y: scroll;
}
.mobile_menu .inner .ce_text1,
.mobile_menu .inner .ce_text h1,
.mobile_menu .inner .ce_text p,
.mobile_menu .inner .ce_text a1 {
    margin-top:0;
    margin-bottom:0;
    padding:10px 0 10px 15px;
    font-size:18px;
    color:var(--ka-font-white);
}
.mobile_menu .mod_navigation {
    clear:both;
    margin:0 0 20px;
}
.mobile_menu .mod_navigation ul.level_1 {
    margin:0;
    padding:15px 0 0 15px;
}
.mobile_menu li.active.submenu_show > ul {
    padding-top:8px;
}
.mobile_menu .mod_navigation ul li {
    float:none;
    clear:both;
    margin:0;
    padding:0;
    list-style-type:none;
    width:calc(100% - 15px);
}
.mobile_menu .mod_navigation li span {
    width:100%;
    position:relative;
    display:block;
    font-size:15px;
    letter-spacing:.02em;
}
.mobile_menu .mod_navigation a,
.mobile_menu .mod_navigation strong {
    width:100%;
    display:block;
    margin-top:0;
    margin-bottom:0;
    padding:4px 0;
    text-align:left;
    border-bottom:1px solid #2a2e5c;
    font-size:15px;
    text-decoration:none;
    color:var(--ka-font-white);
    height:auto;
    color: var(--ka-font-white);
    font-weight:500;
}
.mobile_menu .mod_navigation li.active strong {
    padding-top:8px;
    padding-bottom:0;
    font-size:18px;
    color:var(--ka-font-orange);
    font-weight:500;
}
.mobile_menu .mod_navigation a:focus,
.mobile_menu .mod_navigation a:hover {
    color:var(--ka-font-lightgrey);
}
.mobile_menu .mod_navigation a.trail:focus,
.mobile_menu .mod_navigation a.trail:hover {
    color:var(--ka-font-white);
}
.mobile_menu .submenu > a1::after,
.mobile_menu .submenu > span::after {
    width:20px;
    height:20px;
    right:5px;
    position:absolute;
    display:inline-block;
    text-align:center;
    font-size:18px;
    line-height:20px;
    top:0;
    content: '›';
}
.mobile_menu .submenu_show > a::after,
.mobile_menu .submenu_show > span::after {
    text-indent:4px;
    transform: rotate(90deg);
}
.mobile_menu .mod_navigation li.active.submenu_show {
    padding-bottom:0;
    border:0px solid #666;
}
.mobile_menu .socials .hyperlink {
    width:20px;
    height:20px;
}
.mobile_menu ::-webkit-scrollbar {
    display:none;
}
.mobile_menu {
    display:none;
    -ms-overflow-style: none;
    // IE 10+
            overflow: -moz-scrollbars-none;
    // Firefox
            overflow-y: -moz-hidden-unscrollable;
    -moz-scrollbars-vertical:hidden;
}

