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}
.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}
/* raleway-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: 'Raleway';
  font-style: normal;
  font-weight: 300;
  src: url('/webfonts/raleway-v29-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* raleway-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: 'Raleway';
  font-style: normal;
  font-weight: 400;
  src: url('/webfonts/raleway-v29-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* raleway-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: 'Raleway';
  font-style: normal;
  font-weight: 500;
  src: url('/webfonts/raleway-v29-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* raleway-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: 'Raleway';
  font-style: normal;
  font-weight: 600;
  src: url('/webfonts/raleway-v29-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* raleway-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: 'Raleway';
  font-style: normal;
  font-weight: 700;
  src: url('/webfonts/raleway-v29-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* raleway-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: 'Raleway';
  font-style: normal;
  font-weight: 800;
  src: url('/webfonts/raleway-v29-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* varela-round-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: 'Varela Round';
  font-style: normal;
  font-weight: 400;
  src: url('/webfonts/varela-round-v20-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

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

:root {
  --ka-bk-color:#ECEDED;
  --ka-bk-color1:#0b5261;
  --ka-bk-color01:#0b4958;
  --ka-bk-color2:#e3e4e4;
  --ka-bk-color3:#575757;
  --ka-bk-color4:#0b4958;
  --ka-bk-menu1:#abd7c7;
  --ka-bk-color-footer:#4e4e4e;

  --ka-font-green: #0b5261;
  --ka-font-light-green: #abd7c7;
  --ka-font-black: #1f1f1f;
  --ka-font-vanille: #f1ebdd;
  --ka-font-white: #ECEDED;
  --ka-font-offwhite: #e3e4e4;
  --ka-font-light-grey: #dddddd;

  --ka-font-menu: #abd7c7;
  --ka-font-menu-active: #81dfbd;
  --ka-font-menu1-active: #000;
  --ka-font-menu-hover: #81dfbd;

  --ka-font-color:#1f1f1f;
  --ka-font-size:18px;
  --ka-line-height:26px;

  --ka-textimg-color: #575757;

  --ka-bk-form-color:#bbdb94;
  --ka-bk-form-color2:#8b7d6c;

  --ka-desktopwidth:1200px;

}


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

/* Scroll-Pseudoklasse für Anker */
html {
    scroll-behavior: smooth;
    scroll-padding-top: 90px;
}

body {
    background-color:var(--ka-bk-color);

    color:var(--ka-font-color);

    /*font-family:Raleway;*/
    font-family:'Varela Round';
    font-size:var(--ka-font-size);
    line-height:var(--ka-line-height);
    font-weight: 400;
    letter-spacing:0em;

    margin: 0;
    padding: 0;

}

#wrapper {
    width:100%;
    min-height:200px;
    margin: 0;
    padding: 0;
}

#container {
    width:100%;
    margin: 0px;
    padding: 0;
}

#main {
    min-height: 200px;
    margin-bottom: 0;
}

#main .inside {
  margin: 0;
  padding: 0px 0 0px 0;
}

body.home #main .inside {
    max-width: 100%;
    margin: 0;
    padding: 0px;
}

body.home #main .inside .ainside {
  /*
    max-width: 1200px;
  */
    margin: 0 auto;
}

a,
body,
fieldset,
form,
input,
label,
li,
ol,
optgroup,
p,
select,
td,
th,
textarea,
ul {

}

fieldset,
form,
input,
optgroup,
select,
textarea {

}

ul {
    padding-top:4px;
    padding-left:17px;
}
li {
    margin-bottom:4px;
    padding-left:2px;
    list-style-type: none;

}

#main ce_text li {
    list-style-type:disc;
}


#main .ce_text li::before {
    content: "•";
    color: var(--ka-font-green);
    display: inline-block;
    width: 15px;
    margin-left: -20px;
    font-size: 24px;
}

pre,
form {
    margin:0;
    padding:0;
}
p {
  margin: 0;
    padding-top:6px;
    padding-bottom:6px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    white-space: 300;
    color:var(--ka-font-color);
}
h1 {
    margin-top:50px;
    margin-bottom:30px;
    font-size:50px;
    line-height:54px;
    font-weight:800;
    color:var(--ka-font-green);
    letter-spacing: 0.0em;
    text-transform:uppercase;
}
h2 {
    margin-top:20px;
    font-size:36px;
    line-height:40px;
    font-weight:700;
    color:var(--ka-font-color);
    letter-spacing: 0.0em;

}
h3 {
    margin-top:20px;
    font-size:36px;
    line-height:40px;
    font-weight:700;
    color:var(--ka-font-green);
    letter-spacing:0.0em;
}
h4 {
    margin-top:10px;
    font-size:40px;
    line-height:46px;
    font-weight:400;
    text-transform: uppercase;
    color:var(--ka-font-green);
    letter-spacing:0em;
}
h5 {
    margin-top:15px;
    font-size:24px;
    line-height:28px;
    font-weight:600;
    color:var(--ka-font-green);
    letter-spacing:0em;
}
h6 {
  margin-top:15px;
  font-size:32px;
  line-height:36px;
  font-weight:400;
  color:#ffffff;
  letter-spacing: 0em;
}

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

}


table {
    margin-top:10px;
    margin-bottom:10px;
    width: auto;
}
#main table tr:nth-child(odd) {
    background-color:var(--ka-font-green);
}
table th,
table td {
    padding:6px 10px 2px 5px;
}
.ce_gallery > ul li.col_first {
    clear:none;
}
.ce_gallery .flex-images a {
    float:left;
    margin-right:0px;
    margin-bottom:20px;
    width:calc(33% - 10px);
}

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

.ce_gallery ul li {
    padding: 0;
}

.ce_gallery ul li .image_container {
    overflow: hidden;
    line-height: 1px;
}
.ce_gallery ul li .image_container a {
    line-height: 1px;
}

.ce_gallery ul li .image_container img {
    transform: scale(1.0, 1.0);
    -ms-transform: scale(1.0, 1.0);
    -webkit-transform: scale(1.0, 1.0);
    transition: all .75s ease-in-out;
}

.ce_gallery ul li .image_container img:hover {
    transform: scale(1.05, 1.05);
    -ms-transform: scale(1.05, 1.05);
    -webkit-transform: scale(1.05, 1.05);
}

.ce_gallery ul.cols_2 li {
    padding-left: 7px;
    padding-right: 7px;
    margin-bottom: 14px;
    width: calc(50% - 14px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery ul.cols_3 li {
    padding-left: 7px;
    padding-right: 7px;
    margin-bottom: 14px;
    width: calc(33.3% - 14px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery ul.cols_4 li {
    padding-left: 7px;
    padding-right: 7px;
    margin-bottom: 14px;
    width: calc(25% - 14px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery ul.cols_5 li {
    padding-left: 7px;
    padding-right: 7px;
    margin-bottom: 14px;
    width: calc(20% - 14px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery ul.cols_6 li {
    padding-left: 2px;
    padding-right: 2px;
    margin-bottom: 14px;
    width: calc(16.6% - 4px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery ul.cols_7 li {
    padding-left: 25px;
    padding-right: 25px;
    margin-bottom: 14px;
    width: calc(14% - 50px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}


.ce_gallery.margin0 ul.cols_2 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 50%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery.margin0 ul.cols_3 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 33.3%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery.margin0 ul.cols_4 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 25%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery.margin0 ul.cols_5 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 20%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery.margin0 ul.cols_6 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 16.6%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery.margin0 ul.cols_7 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 14%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}

.ce_gallery .flex-images {
    display: flex;
    justify-content: space-between;
}

.ce_gallery .flex-images .item img {
    align-self: center;
    height: auto;
}

figure.image_container.kimg.float_left {
    margin-right:20px;
    margin-bottom:20px;
}

.ce_gallery.masonry ul { /* Masonry container */
    column-count: 4;
    column-gap: 0.5em;
}
.ce_gallery.masonry > ul li.col_first {
    clear: left;
}
.ce_gallery.masonry li { /* Masonry bricks or child elements */
    background-color: #eee;
    display: inline-block;
    margin: 0 0 0.5em;
    padding: 0;
    width: 100%;
    float: none;
    /*width: 25% !important;*/
}

.clear,
#clear {
    float:none;
    clear:both;
    height:auto;
}
.center {
    width:100%;
    text-align:center;
}

.vcenter {
  display: flex;
  align-items: center;
  width:100%;
}

.marginleft100 {
  margin-left: 100px;
}

.floatleft {
    float: left;
}

.col20 {
    width:20%;
}
.col25 {
    width:25%;
}
.col33 {
    width:33.3%;
}
.col50 {
    width:50%;
}
.col66 {
    width:66.6%;
}
.col66 {
    width:80;
}
.col33m {
    float:left;
    margin-left:25px;
    width:calc(33.3% - 25px);
}
.col33line {
    float:left;
    width:calc(33.3% - 30px);
}

.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 #b3b3b3;
}
.limit400 {
  max-width:400px;
}
.limit600 {
  max-width:600px;
}

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

.distleft0 {
    position: absolute;
    left: 0;
}
.distleft10 {
    position: absolute;
    left: 10%;
}
.distleft20 {
    position: absolute;
    left: 20%;
}
.distleft25 {
    position: absolute;
    left: 25%;
}
.distleft33 {
    position: absolute;
    left: 33.3%;
}
.distleft40 {
    position: absolute;
    left: 40%;
}
.distright0 {
    position: absolute;
    right: 0;
}
.distright10 {
    position: absolute;
    right: 10%;
}
.distright20 {
    position: absolute;
    right: 20%;
}
.distright25 {
    position: absolute;
    right: 25%;
}
.distright33 {
    position: absolute;
    right: 33.3%;
}
.distright40 {
    position: absolute;
    right: 40%;
}


.limit1600,
.limit1600int {
    max-width:1600px;
    margin-right:auto;
    margin-left:auto;
}
.limit1400,
.limit1400int {
    max-width:1400px;
    margin-right:auto;
    margin-left:auto;
}
.limit1200,
.limit1200int {
    max-width:1200px;
    margin-right:auto;
    margin-left:auto;
}
.limit1000 {
  max-width:1000px;
  margin-right:auto;
  margin-left:auto;
}
.limit800 {
    max-width:800px;
    margin-right:auto;
    margin-left:auto;
}

.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-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr3 {
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr4 {
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-column-gap: 20px;
  grid-row-gap: 20px;
}
.grid.fr5 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr6 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr21 {
  grid-template-columns: 2fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr12 {
  grid-template-columns: 1fr 2fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr13 {
  grid-template-columns: 1fr 3fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}

.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.center {
  align-items: center;
  justify-content: center;
  text-align: center;
}

#main .grid.imgwidth250 img {
  max-width: 220px;
}

.pad20 {
  padding-left: 20px !important;
  padding-right: 20px !important;
  width: calc(100% - 40px) !important;
}

.bk-button {
  background-image: url('/files/intern/common/button-down-bg.png');
  background-repeat: no-repeat;
  background-size: 100%;

}
.bkfixed1 {
  position: relative;
  margin: 0px 0;
  background-color:#ffffff;
  background-image: url('/files/image/start/crowdpharma-bg-about-us-green.jpg');
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size:cover;
  height: 50%;
  background-attachment:fixed;
}

.bkfixed1 .limit1200 {
  padding: 120px 0 120px 0;
}


/*.bkfixed1::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 50px;
  z-index: +1;
  -webkit-mask: url('/files/intern/common/kante-grunge-oben.svg') no-repeat 100% 100%;
  mask: url('/files/intern/common/kante-grunge-oben.svg') no-repeat 100% 100%;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: #fff;
}

.bkfixed1::after {
  position: absolute;
  content: "";
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 50px;
  z-index: +1;
  -webkit-mask: url('/files/intern/common/kante-grunge-unten.svg') no-repeat 100% 10%;
  mask: url('/files/intern/common/kante-grunge-unten.svg') no-repeat 100% 10%;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: #fff;*/
}

.bkfixed1 * {
  /*font-size: 20px;*/
  color:var(--ka-font-light-green);
  text-align: center;
  line-height: 55px;

}

@-webkit-keyframes glow {
  from {
    text-shadow: 0 0 5px var(--ka-font-glow), 0 0 10px #fff, 0 0 15px var(--ka-font-glow), 0 0 20px var(--ka-font-glow), 0 0 25px var(--ka-font-glow), 0 0 35px var(--ka-font-glow), 0 0 50px var(--ka-font-glow);
  }
  to {
    text-shadow: 0 0 10px var(--ka-font-glow2), 0 0 150px #fff, 0 0 20px var(--ka-font-glow2), 0 0 25px var(--ka-font-glow2), 0 0 30px var(--ka-font-glow2), 0 0 40px var(--ka-font-glow2), 0 0 55px var(--ka-font-glow2);
  }
}


.begruessung,
.links,
.galerie,
.kontakt,
.infos,
.boxgreen,
.boxgreen2,
.boxgrey,
.boxblack,
.boxfaq,
.vita {
  width:100%;
  display: block;
  padding:80px 0 100px 0;
  background-color:var(--ka-bk-color);
  flex-direction:column;
  justify-content: center;
}


.links {
  background-color:var(--ka-bk-color2);
  background-image: url('/files/intern/common/struktur-background.jpg');
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: cover;
}


.kontakt {
    background-color:var(--ka-bk-color01);
    background-image: url('/files/intern/common/struktur-background.jpg');
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
}


.kontakt h1,
body.home .kontakt h1 {
  margin:15px 0 0 0;
  padding:0;
  font-size:46px;
  line-height:48px;
  font-weight: 800;
  letter-spacing: 0.03em;
  color:var(--ka-font-blue);
}
.kontakt h2,
body.home .kontakt h2 {
  margin:0px;
  padding:0;
  font-size:30px;
  line-height:36px;
  color:var(--ka-font-blue);
}
.kontakt h3,
body.home .kontakt h3 {
  margin:0px;
  padding:0;
  font-size:30px;
  line-height:36px;
  color:var(--ka-font-blue);
}

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

.colorwhite {
  color: #fff !important;
}

.boxgreen {
  background-color:var(--ka-bk-color4);

}
.boxgreen h1,
body.home .boxgreen h1 {
  margin:15px 0 0 0;
  padding:0;
  font-size:46px;
  line-height:48px;
  font-weight: 800;
  letter-spacing: 0.01em;
  color:var(--ka-font-light-green);
}
.boxgreen h2,
body.home .boxgreen h2 {
  margin:0px;
  padding:0;
  font-size:30px;
  line-height:36px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color:var(--ka-font-white);
}
.boxgreen h3,
body.home .boxgreen h3 {
  margin:0px;
  padding:0;
  font-size:24px;
  line-height:26px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color:var(--ka-font-white);
}

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


.boxgreen2 {
  background-color:var(--ka-bk-color4);

}
.boxgreen2 h1,
body.home .boxgreen2 h1 {
  margin:15px 0 0 0;
  padding:0;
  font-size:46px;
  line-height:48px;
  font-weight: 800;
  letter-spacing: 0.01em;
  color:var(--ka-font-green);
}
.boxgreen2 h2,
body.home .boxgreen2 h2 {
  margin:0px;
  padding:0;
  font-size:30px;
  line-height:36px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color:var(--ka-font-green);
}
.boxgreen2 h3,
body.home .boxgreen2 h3 {
  margin:0px;
  padding:0;
  font-size:24px;
  line-height:26px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color:var(--ka-font-green);
}

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


.boxgrey {
  background-color:var(--ka-bk-color3);

}
.boxgrey h1,
body.home .boxgrey h1 {
  margin:15px 0 0 0;
  padding:0;
  font-size:46px;
  line-height:48px;
  font-weight: 800;
  letter-spacing: 0.01em;
  color:var(--ka-font-white);
}
.boxgrey h2,
body.home .boxgrey h2 {
  margin-top:20px;
  font-size:36px;
  line-height:40px;
  font-weight:700;
  letter-spacing: 0.0em;
  color:var(--ka-font-black);
}
.boxgrey h3,
body.home .boxgrey h3 {
  margin:0px;
  padding:0;
  font-size:24px;
  line-height:26px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color:var(--ka-font-white);
}

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


.boxblack {
  background-color:var(--ka-bk-color1);

}
.boxboxblack h1,
body.home .boxblack h1 {
  margin:15px 0 0 0;
  padding:0;
  font-size:46px;
  line-height:48px;
  font-weight: 800;
  letter-spacing: 0.01em;
  color:var(--ka-font-white);
}
.boxblack h2,
body.home .boxblack h2 {
  margin:0px;
  padding:0;
  font-size:30px;
  line-height:36px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color:var(--ka-font-white);
}
.boxblack h3,
body.home .boxblack h3 {
  margin:0px;
  padding:0;
  font-size:24px;
  line-height:26px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color:var(--ka-font-white);
}

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

.infos {
  background-color:var(--ka-bk-color2);
}
.infos h1,
body.home .infos h1 {
  margin:15px 0 0 0;
  padding:0;
  font-size:46px;
  line-height:48px;
  font-weight: 800;
  letter-spacing: 0.02em;
  color:var(--ka-font-vanille);
}
.infos h2,
body.home .infos h2 {
  margin:0px;
  padding:0;
  font-size:30px;
  line-height:36px;
  color:var(--ka-font-vanille);
}
.infos h3,
body.home .infos h3 {
  margin:0px;
  padding:0;
  font-size:30px;
  line-height:36px;
  color:var(--ka-font-vanille);
}

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


.vita {
  background-color:var(--ka-bk-color1);
}
.vita h1,
body.home .vita h1 {
  margin:15px 0 0 0;
  padding:0;
  font-size:46px;
  line-height:48px;
  font-weight: bold;
  letter-spacing: 0.03em;
  color:var(--ka-font-blue);
}
.vita h2,
body.home .vita h2 {
  margin:0px;
  padding:0;
  font-size:30px;
  line-height:36px;
  color:var(--ka-font-blue);
}
.vita h3,
body.home .vita h3 {
  margin:0px;
  padding:0;
  font-size:30px;
  line-height:36px;
  color:var(--ka-font-blue);
}

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

.boxfaq {
  background-color:var(--ka-bk-color01);
}
.boxfaq h1,
body.home .boxfaq h1 {
  margin:15px 0 0 0;
  padding:0;
  font-size:46px;
  line-height:48px;
  font-weight: 900;
  letter-spacing: 0.02em;
  color:var(--ka-font-green);
}
.boxfaq h2,
body.home .boxfaq h2 {
  margin:0px;
  padding:0;
  font-size:30px;
  line-height:36px;
  color:var(--ka-font-vanille);
}
.boxfaq h3,
body.home .boxfaq h3 {
  margin:0px;
  padding:0;
  font-size:30px;
  line-height:36px;
  color:var(--ka-font-vanille);
}

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

.flexcontainer {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    /*
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    */
    flex-direction: row;
}
.flexcontainer.space-between {
    margin-top: 80px;
    margin-bottom: 80px;
    justify-content: space-between;
}
.flexcontainer.space-between .ce_hyperlink {
    position: relative;
    align-items: center;
    margin-right:0px;
    margin-bottom:20px;
    width:calc(33% - 10px);
    overflow: hidden;
}
.flexcontainer.column {
    flex-direction: column;
}

.flexcontainer.space-between .ce_hyperlink * {
    overflow: hidden;
    line-height: 1px;
}

.flexcontainer.space-between .ce_hyperlink .linktitle {
    position: absolute;
    width: 100%;
    top: calc(50% - 15px);
    color: #ffffff;
    font-size: 30px;
    line-height: 34px;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform:uppercase;
    pointer-events: none;
    text-align: center;
}

.flexcontainer.space-between .ce_hyperlink .image_container img {
    transform: scale(1.0, 1.0);
    -ms-transform: scale(1.0, 1.0);
    -webkit-transform: scale(1.0, 1.0);
    transition: all .5s ease-in-out;
}

.flexcontainer.space-between .ce_hyperlink:hover .image_container img {
    transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -webkit-transform: scale(1.1, 1.1);
}

.grid .ce_hyperlink {
  position: relative;
}
.grid .ce_hyperlink .image_container {
  position: relative;
}
.grid .ce_hyperlink .image_container .caption {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  font-size: 19px;
  line-height: 22px;
  text-transform: uppercase;
  text-align: center;
  font-weight: 500;
  min-width: 65%;
}


.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 {text-align: center;
    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;
}
body .msry_theme_standard .masonry_gallery {
    margin:10px;
    padding:0;
    width:calc(20% - 20px);
}
#main img {
    max-width:100%;
}

#main .ce_player .video_container {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
#main .ce_vimeo {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 790px;
    margin-left: auto;
    margin-right: auto;
}
#main .limit1400 .ce_youtube {
    position: relative;
    width: 100%;
    max-width: 1600px;
    padding-bottom: 56.25%;
    height: auto;
    margin-left: auto;
    margin-right: auto;
}

#main .ce_youtube.col50,
#main .ce_youtube.col50m {
    float:left;
    width: 50%;
    padding-bottom: 0%;
}

#main .limit1400 .ce_youtube iframe,
#main .limit1400 .ce_vimeo iframe {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100% !important;
    height: 100% !important;
}

#cboxContent {
    margin: 59px 30px 0 30px;
    background-color: rgba(0,0,0,0.1);
}
#cboxLoadedContent {
    border: 0;
    background-color: rgba(0,0,0,0.1);
}
#cboxCurrent {
    display: none !important;
}
#cboxPrevious {
    left:-29px;
    width: 25px;
    height: 47px;
    background-image: url("/files/intern/common/fmd-pfeile-galerie-links.png");
}
#cboxNext {
    right:-29px;
    width: 25px;
    height: 45px;
    background-image: url("/files/intern/common/fmd-pfeile-galerie-rechts.png");
}
#cboxPrevious:hover {
    /*background-position: left top;*/
    background-image: url("/files/intern/common/fmd-pfeile-galerie-links-hover.png");
}
#cboxNext:hover {
    /*background-position: right top;*/
    background-image: url("/files/intern/common/fmd-pfeile-galerie-rechts-hover.png");
}
#cboxClose {
    top: -44px;
    width: 40px;
    height: 40px;
    background-image: url("/files/intern/common/fmd-close.png");
}
#cboxClose:hover {
    background-image: url("/files/intern/common/fmd-close-hover.png");
}
#cboxTitle {
    top:-25px;
    left:50%;
    text-align: center;
}


.fla  {
    width: 25%;
}
.fla .mod_rocksolid_slider {
    width: 100%;
}
.fla .mod_rocksolid_slider .rsts-caption {
    display: none;
}
.fla .ce_hyperlink {
    margin-top: 15px;
}
.fla .ce_hyperlink a {
    text-transform:uppercase;
}

.ce_accordion {
    position: relative;
    display: flex;
    flex-direction:column;
    margin: 20px 0;
}
.ce_accordion > div p {
  padding: 10px 10px;
  background-color: var(--ka-bk-color2);
}

.ce_accordion .toggler {
  display: block;
  background-image: url('/files/intern/common/plus.svg');
  background-repeat: no-repeat;
  background-position: 0px center;
  background-size: 24px;
  cursor: pointer;
  margin: 15px 0 0px 0;
  padding: 0px 25px 0 30px;
  font-size:24px;
  line-height:28px;
  font-weight:600;
  color:var(--ka-font-green);
  letter-spacing:0em;
  text-indent: -9999px;
}

.ce_accordion .toggler.active {
    background-image: url('/files/intern/common/minus.svg');
}

.ce_accordion .accordion {
    margin: 15px 0 10px 0;
}


/* ****************************************************************************************************************** */
/* --- header ---------- -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */
#header {
    width:100%;
    height:90px;
    display:inline-block;
    top:0;
    position:fixed;
    z-index:980;
    margin: 0;
    padding: 0;
    background: var(--ka-bk-color1);
    border-bottom: 1px solid var(--ka-font-grey);
}
#header .inside {
    /*max-width: 1200px;*/
    height: 100%;
    padding:0;
    margin: 0 auto;
    position: relative;
}

#header .background {
    width: 100%;
    height: 100%;
    display: inline-block;
    background: rgba(0, 0, 0, 0.6);
}

#header.small {
    height:50px;
    -moz-transition: height 1s ease-in-out;
    -webkit-transition: height 1s ease-in-out;
    -o-transition: height 1s ease-in-out;
    transition: height 1s ease-in-out;
}

#header #HeaderLogo {
    position: absolute;
    left:20px;
    top:2px;
    width:350px;
    -webkit-transition: width 1s ease-in-out, top 1s ease-in-out;
    transition: width 1s ease-in-out, top 1s ease-in-out;
    z-index:990;
}

#header.small #HeaderLogo {
    top:10px;
    width: 180px;
}

#header #HeaderSlogan {
    position: absolute;
    top:10px;
    right:0px;
    text-align: right;
}

#header #HeaderSlogan h1 {
    color: var(--ka-font-vanille);
    font-size:25px;
    font-weight:300;
    margin:  0px 0 0px 0;
    opacity:1;
    -webkit-transition: opacity 1s ease-in-out, top 1s ease-in-out;
    transition: opacity 1s ease-in-out, top 1s ease-in-out;

}
#header #HeaderSlogan h4 {
    display: block;
    margin:  0px 0 0px 0;
    color: #7ab51d;
    font-size:40px;
    line-height:42px;
    font-weight: 400;
}

#header.small #HeaderSlogan h1 {
    /*display:none;*/
    opacity:0;
}

#header .headergrunge {
  position: relative;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 50px;
  z-index: +1;
}

#header .headergrunge .headerimgtop {
  position: absolute;
  display: inline-block;
  width: 100%;
  height: 100%;
  -webkit-mask: url('/files/intern/common/kante-grunge-oben.svg') no-repeat 100% 100%;
  mask: url('/files/intern/common/kante-grunge-oben.svg') no-repeat 100% 100%;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: var(--ka-bk-color4);
  /*transform: scaleY(1) rotate(-0.5deg);*/
}

#header .mod_changelanguage {
  position: absolute;
  right: 40px;
  top:10px;
  -webkit-transition: width 1s ease-in-out, top 1s ease-in-out;
  transition: width 1s ease-in-out, top 1s ease-in-out;
}

#header.small .mod_changelanguage {
  top:-35px;
}
#header .mod_changelanguage * {
  color:var(--ka-font-menu) !important;
}

#header .mod_changelanguage li.active * {
  color:#fff !important;
}


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

#banner {
  position:relative;
  top:0;
  margin-top:0px;
  z-index:950;
  min-height: 80px;
}
body.home #banner {
  height: 50vh;
  min-height: 250px !important;
}

#banner,
#banner .bannerinside,
#bannerimage {

}



body.home #banner .ainside {
  margin: 0;
  overflow:hidden;
  width: 100%;
  height:calc(50vh - 0px) !important;
  min-height: 250px !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

#bannerimage {
    width:100%;
    position:relative;
    max-height:calc(50vh - 0px) !important;
}

#bannerimage #bannersmall,
#bannerimage #bannersmall img.image {
    width:100%;
    font-size:2px;
    line-height:2px;
    z-index:950;
}

#bannerimage .mod_article {
    /*text-align: center;*/
}

#banner .ce_image .image_container img {
  width: 100%;
  object-fit: cover;
}

#bannerimage .downbutton {
    position:absolute;
    left:calc(50% - 25px);
    width:auto;
    bottom:30px;
    position:absolute;
    overflow:hidden;
    display:block;
    text-align:center;
    font-size:2px;
    padding:10px;
    line-height:2px;
    z-index:952;
}

#bannerimage .downbutton a {
    overflow:hidden;
    display:block;
    line-height:2px;
}
#bannerimage .image_container img,
#bannerimage .video_container video {
    width: 100%;
}
#bannerimage .video_container video {
    z-index:950;
}

#bannerimage .rsts-slide {
  /*position: relative; das flickert dann*/
}

#bannerimage .rsts-slide .ce_headline,
#bannerimage .rsts-slide .ce_text {
  position: absolute;
  left: 50px;
  bottom: 50px;
  /*transform: rotate3d(0, 0, 1, 90);*/
  display: flex;
  flex-direction: column;


  color: #fff;
  background-color: rgba(54, 37, 42, 0.5);
  padding: 20px;

  transform: rotateX(90deg);
  animation: perspect 2s forwards;
  animation-delay: 2.5s;
}
@keyframes perspect {
    0% {
      transform: rotateX(90deg);
    }
    100% {
      transform: rotateX(0deg);
    }
}
#bannerimage .rsts-slide .ce_text * {
  color: #fff;
}


#banner .bannergrunge {
  position: relative;
  bottom: 30px;
  left: 0;
  width: 100%;
  height: 50px;
  z-index: +1;
}

#banner .bannergrunge .headerimgbottom {
  position: absolute;
  display: inline-block;
  width: 100%;
  height: 100%;
  -webkit-mask: url('/files/intern/common/kante-grunge-unten.svg') no-repeat 100% 10%;
  mask: url('/files/intern/common/kante-grunge-unten.svg') no-repeat 100% 10%;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: #fff;

}




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

#footer {
    width: 100%;
    top:0;
    position:relative;
    clear:both;
    min-height: 120px;
    display:block;
    background-color:var(--ka-bk-color01);
    margin-top:0;
    margin-bottom:0;
    padding-top:0px;
}

#footer * {
    color: var(--ka-font-white);
    /*
    font-size: 15px;
    font-weight: 400;
    line-height:18px;
    letter-spacing: 0.05em;
    */
}

#footer .inside {
    position: relative;
    max-width: var(--ka-desktopwidth);
    margin-right:auto;
    margin-left:auto;
    padding:20px 0 20px 0;

    display: flex;
    flex-direction:column;
    align-items: center;
    justify-content: center;

}

#footer .footerlogo {
    width:200px;
    display: flex;
    margin: 10px 0px;
}

.mod_footer_navi {
    padding-top: 10px;
    display: flex;
}

.mod_footer_navi ul {
    list-style-type:none;
    display:flex;
    justify-content: center;
    margin-left: 0;
    padding-left: 0;
}

.mod_footer_navi li {
    display: block;
    padding: 0 5px;
    margin: 0;
}

#footer strong,
#footer div {

}

.mod_footer_navi li strong,
.mod_footer_navi a {
  padding-right:0;
  padding-left:0px;
  white-space: nowrap;
}

#footer .socials,
.mod_footer_copyright {
  position:relative;
  text-transform: uppercase;
}

#footer a:hover,
#footer .mod_footer_navi a:hover,
#footer .mod_footer_navi a:hover span {
    color:#ffffff;
}

#footer .partner,
#footer .mod_footer_copyright {
  display: flex;
  margin: 10px 0 10px 0;
  font-size: 12px;
}

#footer .footergrunge {
  position: absolute;
  top: -30px;
  left: 0;
  width: 100%;
  height: 50px;
  z-index: +1;
}

#footer .footergrunge .footerimgtop {
  display: inline-block;
  width: 100%;
  height: 100%;
  -webkit-mask: url('/files/intern/common/kante-grunge-unten.svg') no-repeat 100% 10%;
  mask: url('/files/intern/common/kante-grunge-unten.svg') no-repeat 100% 10%;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: var(--ka-bk-color4);

}

#footer .calendly,
#footer .socials,
#footer .partner {
  position: relative;
  display: flex;

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

#footer .partner {
  margin: 50px 0 20px 0;
  flex-direction: column;
}
#footer .partner .logos {
  margin: 20px 0 0px 0;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
#footer .partner .logos img {
  padding: 20px;
  background-color: #fff;
  margin: 0 20px;
  max-height: 50px;
}

#footer .socials .text {
  margin-right:  15px;
  font-size: 12px;
}

#footer .calendly img,
#footer .socials img,
#footer .iobc img {
  width: 50px;
  height: 50px;
  margin: 0 8px;
}




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

@media only screen and (min-width: 851px) {
    #navmobil {
        display:none;
    }

    #mainnav {
        height:30px;
        right:40px;
        top:50px;
        position:absolute;
        overflow:visible;
        margin:0;
        -moz-transition: top 1s ease-in-out;
        -webkit-transition:  top 1s ease-in-out;
        -o-transition:  top 1s ease-in-out;
        transition:  top 1s ease-in-out;HeaderS
        z-index: 999;
    }

    #header.small #mainnav {
        top: 20px;
        -webkit-transition: top 1s ease-in-out, top 1s ease-in-out;
        transition: top 1s ease-in-out, top 1s ease-in-out;
        z-index: +2;
    }

    #mainnav.mod_navigation a,
    #mainnav.mod_navigation li.active strong {
        margin:0;
        padding:0;
        font-size: 20px;
        font-weight:800;
        color:var(--ka-font-menu);
        text-transform:uppercase;HeaderS
        letter-spacing:0.3em;
    }

    #mainnav.mod_navigation a:hover {
        text-decoration:none;
    }

    #mainnav.mod_navigation span.active,
    #mainnav.mod_navigation li.sibling,
    #mainnav.mod_navigation li.trail {
        margin:0;
        padding:0;
    }

    #mainnav.mod_navigation ul.level_1 span.active,
    #mainnav.mod_navigation ul.level_1 li.sibling,
    #mainnav.mod_navigation ul.level_1 li.trail {
        padding-bottom: 0px;
    }


    #mainnav.mod_navigation li {
        position:relative;
        padding: 0;
        float:left;
        list-style-type:none;
    }
    #mainnav.mod_navigation li a,
    #mainnav.mod_navigation li.active strong {
        position:relative;
        float:left;
        margin:0;
        padding:2px 8px 50px 8px;
        text-align:center;
        text-transform:uppercase;
        list-style-type:none;
        z-index: +2;
    }
    #mainnav.mod_navigation li.active strong {
        color:var(--ka-font-menu-active);
    }
    #mainnav.mod_navigation ul.level_1 li a,
    #mainnav.mod_navigation ul.level_1 li.active strong {
        /*padding-right: 0;*/
    }

    #mainnav.mod_navigation ul.level_1 li.trail a {
      color:var(--ka-font-menu-hover);
    }
    #mainnav.mod_navigation ul.level_1 li.trail ul.level_2 a {
      color:#fff;
    }

    #mainnav.mod_navigation li a span {
        margin:0;
        padding:0;
    }
    #mainnav.mod_navigation li a:hover,
    #mainnav.mod_navigation li a.sfhover {
        color:var(--ka-font-menu-hover);   /* 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 */
    }
    #mainnav.mod_navigation ul {
        margin:0;
        padding:0;
        list-style-type:none;
    }
    #mainnav.mod_navigation li ul {
        width:220px;
        bottom:0;
        left:10px;
        right:0;
        top:40px;
        position:absolute;
        display:none;
        padding-top:2px;
        background-color:var(--ka-bk-menu1);
        /*background-color:#eee;*/
        z-index: +2;
    }

    #header.small #mainnav.mod_navigation li ul {
      top:30px;
    }

    #mainnav.mod_navigation li ul li {
        display: inline-block;
        margin:0;
        padding:0;
        border-bottom:1px solid var(--ka-font-menu);
        border-radius:0;
    }
    #mainnav.mod_navigation li ul li a,
    #mainnav.mod_navigation li ul li.active strong {
        width:200px;
        margin:0;
        padding:11px 10px 9px 10px;
        text-align:left;
        background-color:rgba(17,17,17,.3);
        background-color:var(--ka-bk-menu1);
        background-image:none;
        font-size: 16px;
        line-height: 16px;
        color:#fff;   /* 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 */
        text-transform: inherit;
        font-weight: 400;
    }
    #mainnav.mod_navigation li ul li a:hover {
        color:var(--ka-font-menu1-active);
        -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 */
    }
    #mainnav.mod_navigation li ul li.active strong {
        /*
        background-color:rgba(245,245,245,.85);
        */
        background-image:none;
        color:var(--ka-font-menu1-active);
    }
    #mainnav.mod_navigation li ul ul {
        left:220px;
        position:absolute;
        top:-2px;
        z-index: 999;
        margin: 0;
    }
    #mainnav.mod_navigation li:hover ul {
        display:block;
    }
    #mainnav.mod_navigation ul li:hover ul ul {
        display:none;
    }
    #mainnav.mod_navigation ul ul li:hover ul {
        display:block;
    }
}

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

.rsts-skin-default.rsts-main {

}

.rsts-skin-default .rsts-prev,
.rsts-skin-default .rsts-next,
.rsts-skin-default .rsts-video-play,
.rsts-skin-default .rsts-video-stop,
.rsts-skin-default .rsts-thumbs-prev,
.rsts-skin-default .rsts-thumbs-next {
    background-position:center center;
    background-repeat:no-repeat;
    -webkit-box-shadow:0 0 0 0;
    box-shadow:0 0 0 0;
    border:0px;
    border-radius:0;
    background-clip: initial;
    background-color:transparent;
    background-size: 30px,40px;
}

.rsts-skin-default .rsts-prev,
.slider50.rsts-skin-default .rsts-prev {
    position:absolute;
    width:30px;
    height:40px;
    top:calc(50% - 20px);
    left:20px;
    background-image:url("/files/intern/common/pfeil-links.png");
    background-size: 30px,40px;
}

.rsts-skin-default .rsts-next,
.slider50.rsts-skin-default .rsts-next {
    position:absolute;
    width:30px;
    height:40px;
    top:calc(50% - 20px);
    right:20px;
    background-image:url("/files/intern/common/pfeil-rechts.png");
    background-size: 30px,40px;
}

.rsts-skin-default .rsts-prev:hover,
.rsts-skin-default .rsts-next:hover,
.rsts-skin-default .rsts-video-play:hover,
.rsts-skin-default .rsts-video-stop:hover,
.rsts-skin-default .rsts-thumbs-prev:hover,
.rsts-skin-default .rsts-thumbs-next:hover {
    background-color: transparent;
}

.rsts-skin-default .rsts-nav {
    position: absolute;
    bottom: 15px;
    /*
    left:0;
    width: 100%;
    */
    text-align: center;

}

.rsts-skin-default .rsts-nav-bullets a {
    background-color: #e5e5e5;
    box-shadow: 0 0 0px #777;
}
.rsts-skin-default .rsts-nav-bullets a.active {
    background-color: #438a48;
}
.rsts-skin-default .rsts-nav-bullets a:hover {
    background-color: #438a48;
}


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

.swiper-container {
  max-width: 100%;
  display: flex;
	overflow: hidden; /* !!! */
}

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

.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: 50px !important;
  height: 50px !important;
  background-repeat: no-repeat;
	background-color: rgba(0,0,0,0.7);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 40%;
	transition: background-position 0.5s ease-in-out;
	cursor:pointer;
	z-index: 999;
}

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

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

.swiper-pagination-bullet-active {
  background-color: var(--ka-bk-color4) !important;

}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: -30px !important;

}



/* ****************************************************************************************************************** */
/* --- infobox ------------------------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */


div.ce_infobox {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  top:120px;
  left:auto;
  right: 50px;
  width: calc(100% - 100px);
  max-width: 300px;
  position:fixed;
  z-index:998;
  transition: all 2.5s ease-in-out;
  opacity: 0.01;
  background-color:rgba(255,255,255,0.95);
  border: 5px solid var(--ka-font-menu-active);
}

div.ce_infobox.loaded {
  opacity: 1;
}

div.ce_infobox .headline {
  width: 100%;
  text-align: center;
  margin: 30px 0 0 0;
}
div.ce_infobox .close a {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 24px;
  height: 24px;
  background-image: url('/files/intern/common/close.svg');
  background-position: center;
  background-repeat: no-repeat;
  z-index: +2;
}

div.infoboxs {
  position: relative;
  display: flex;
  flex-direction: column;
  text-align: center;
  justify-content: center;
  padding: 0px 0px 0px 0px;
  margin: 10px 0 0 0;
  width: 100%;
}
div.infoboxs.invisible {
  padding: 0;
}

div.infoboxs .infobox {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 20px 20px 20px 20px;
  /*border: 1px solid var(--ka-bk-color1);*/
  margin: 0 0 5px 0;
}

div.infoboxs .infobox  .headline {
  display: block;
  margin: 0 0 10px 0;
}

div.infoboxs .infobox  .text {
  display: block;
}
div.infoboxs .infobox  .link {
  display: flex;
}

div.infoboxs .infobox a {
  margin: 10px 0 0 0;
  display: inline-block;
  padding: 8px 20px;
  text-align: center;
  color: var(--ka-font-green);
  text-transform: uppercase;
  pointer-events: auto;
}

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

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

.scroll.sc-opacity {
  transition: all 1.5s ease-in-out;
  opacity: 0.1;
}
.scroll.sc-opacity.ma0 {
  transition: all 1.5s ease-in-out;
}
.scroll.sc-opacity.ma1 {
  transition: all 2.5s ease-in-out;
}
.scroll.sc-opacity.ma2 {
  transition: all 3.5s ease-in-out;
}
.scroll.sc-opacity.ma3 {
  transition: all 4.5s ease-in-out;
}
.scroll.sc-opacity.ma4 {
  transition: all 5.5s ease-in-out;
}
.scroll.sc-opacity.ma5 {
  transition: all 6.5s ease-in-out;
}

.scroll.sc-opacity.scrollinout {
  opacity: 0.99;
}

.scroll.sc-up,
.scroll.sc-up.ma0 {
  transition: all 1.5s ease-in-out;
  margin: 20px 0 0 0;
}
.scroll.sc-up.ma1 {
  margin: 40px 0 0 0;
}
.scroll.sc-up.ma2 {
  margin: 60px 0 0 0;
}
.scroll.sc-up.ma3 {
  margin: 80px 0 0 0;
}
.scroll.sc-up.scrollin {
  margin: 0px 0 0 0;
}

.scroll.sc-grow-opacity-up {
  transition: all 1.5s ease-in-out;
  margin: 40px 0 0 0;
  transform: scale(90%);
  opacity: 0.75;
}
.scroll.sc-grow-opacity-up.scrollinout {
  margin: 0px 0 0 0;
  transform: scale(100%);
  opacity: 0.99;
}

.scroll .sc-left-in {
  position: relative;
  left: -100%;
  transform: scale(80%);
  transition: all 1s ease-in-out;
}
.scroll.scrollin .sc-left-in {
  left: 0px;
  transform: scale(100%);
}
.scroll .sc-right-in {
  position: relative;
  transition: all 1s ease-in-out;
  transform: scale(80%);
  left: 100%;
}
.scroll.scrollin .sc-right-in {
  left: 0px;
  transform: scale(100%);
}

.scroll .sc-left-in img,
.scroll .sc-right-in img {
  transition: all 1s ease-in-out;
  filter: blur(40px);
}
.scroll.scrollin .sc-left-in img,
.scroll.scrollin .sc-right-in img {
  filter: blur(0px);
}

.scroll.sc-flyin-br,
.scroll.sc-flyin.ma0 {
  transition: all 1.5s ease-in-out;
  margin: 0px 0 0 0;
  transform: rotateX(-90deg);
  opacity: 0.01;
}
.scroll.sc-flyin-br.ma1 {
  transition: all 2.5s ease-in-out;
  margin: 0px 0 0 0;
}
.scroll.sc-flyin-br.ma2 {
  transition: all 3.5s ease-in-out;
  margin: 0px 0 0 0;
}
.scroll.sc-flyin-br.ma3 {
  transition: all 4.5s ease-in-out;
  margin: 0px 0 0 0;
}
.scroll.sc-flyin-br.scrollin {
  position: relative;
  margin: 0px 0 0 0;
  left: 0%;
  transform: rotateX(0deg);
  opacity: 1;
}

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


/* ****************************************************************************************************************** */
/* --- kablur ------------------------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */

.blurbk {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;

}

.posabs {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.blurbk .posabs .image_container {
  width: 100%;
  height: 100%;
}

.blurbk .posabs img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(20px);
  transition: all 4s ease-in-out;
}

.blurbk.loaded .posabs img {
  filter: blur(0px);

}

  /* w100 h100 blur1*/

/* ****************************************************************************************************************** */
/* --- contactblock ------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

div.contactblock {
  position: relative;
  display: flex;
  justify-content: center;
  padding: 20px 0 80px 0;
}

div.contactblock .grid {
}

div.contactblock .grid .ce_hyperlink a {
  padding: 0;

}


/* ****************************************************************************************************************** */
/* --- kalist ------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.kalist {
  position: relative;
  display: flex;
  padding: 80px 0;
}



section.kalist.grey {
  background-color: var(--ka-bk-color2);
}

section.kalist.green {
  background-color: var(--ka-bk-color4);
  background-image: url(/files/intern/common/inspiring-change-logo-outline-bg.svg);
  background-position: center;
  /*background-repeat: no-repeat;*/
  background-repeat: repeat-x;
}

section.kalist .items {
  display: flex;
  flex-direction: column;
  position: relative;
  margin: 60px 0 40px 0;
}
section.kalist .items .item {
  position: relative;
  margin: 30px 0;
}

section.kalist .items .item .headline {
  display: flex;
  align-items: center;
  font-weight: 600;
  font-size: 24px;
}

section.kalist.green .items .item .headline {
  color: #fff;
}

section.kalist .grid .ce_hyperlink a {
  padding: 0;

}

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

section.kalinks {
  margin: 50px 0;
  position: relative;
  display: flex;
}

section.kalinks.center {
  justify-content: center;
}

section.kalinks.colorbox .grid {
  margin: 30px 0;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-column-gap: 30px;
  grid-row-gap: 30px;
}

section.kalinks.subpage .grid {
  margin: 40px 0;
  grid-template-columns: 1fr;
  grid-column-gap: 00px;
  grid-row-gap: 30px;
}


section.kalinks .column {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}
section.kalinks .column > a {
  font-size: 0px;
  line-height: 0px;
}


section.kalinks.colorbox .column {
  background-color: var(--ka-bk-color01);
  min-height: 180px;
  justify-content: center;
  padding: 40px;
}
section.kalinks.colorbox .column:nth-child(3n+1) {
  background-color: var(--ka-bk-color4);
}
section.kalinks.colorbox .column:nth-child(3n+2) {
  background-color: #fff;
}

section.kalinks.colorbox .column .image_container {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  margin: 0 30px 0 0;
  width: 60px;
}
section.kalinks .column .image_container {
  overflow: hidden;
}

section.kalinks .column .image_container img {
  transform: scale(1.0, 1.0);

  transition: all 0.5s ease-in-out;
}

section.kalinks .column a:hover .image_container img {
  transform: scale(1.1, 1.1);
}

section.kalinks.subpage .grid .column {
  align-items: flex-start;
}

section.kalinks.colorbox .grid .column a {
  display: grid;
  grid-template-columns: 1fr 4fr;
  align-items: center;
}
section.kalinks.subpage .grid .column a {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
}
section.kalinks.colorbox .grid .column a .button {
  text-align: left;
  font-size: 24px;
  line-height: 26px;
  font-weight: 800;
  text-transform: uppercase;
}
section.kalinks.subpage .grid .column a .button {
  font-size: 20px;
  line-height: 22px;
  font-weight: 600;
}

section.kalinks.colorbox .grid .column:nth-child(3n+1) a .button {
  color: var(--ka-bk-color1);
}
section.kalinks.colorbox .grid .column:nth-child(3n+0) a .button {
  color: #fff;
}

section.kalinks.subpage .grid .column .image_container {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  margin: 0 15px 0 0;
  width: 32px;
}

body.home section.kalinks .column .image_container img {
  /*filter: saturate(0);*/
}

section.kalinks.button .column {
  align-items: flex-start;
}
section.kalinks .column .image_container {
  position: relative;
}
#main section.kalinks.default .column .image_container a {
  position: relative;
  left: 0;
  top: 0;
  border: none;
  display: flex;
}

section.kalinks.default .column .image_container .headline {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 0;
  color:#fff;
  font-size:30px;
  line-height:40px;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
}

body.home section.kalinks.default .column .button {
  position: absolute;
  left: 50%;
  width: 100%;
  top: auto;
  bottom: 0px;
  transform: translate(-50%, 0%);
  margin: 0;
  padding: 80px 0 10px 0;
  background: linear-gradient(0, rgba(0,0,0,0.7), rgba(0,0,0,0.001));
  color:var(--ka-font-green);
  color:var(--ka-font-light-green);
  font-size:30px;
  line-height:40px;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  hyphens: auto;
}
section.kalinks.button .column .headline {
  margin: 0 0 20px 0;
  padding: 0;
  font-size: 20px;
  line-height: 24px;
  align-items: center;
  text-align: center;
}
section.kalinks.default .column .text {
  margin: 30px 0 0 0;
  text-align: center;
  text-transform:  uppercase;
}

section.kalinks.button .column .text {
  margin: 10px 0 0 0;
  text-align: left;
  text-transform:  inherit;
}

section.kalinks.button .column .button {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

section.kalinks.button .column .button * {
  color: #fff;
}

section.kalinks.button .column .button a {
  border: 1px solid #fff !important;
}



/* ****************************************************************************************************************** */
/* --- about -------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.kaabout {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 300px 0;
}

section.kaabout .image_container {
  margin: 0;
  padding: 0;
  width: 400px;
  max-width: 33%;
}
section.kaabout .image_container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

section.kaabout .alinks {
  position: absolute;
  left: 50%;
  top: 50%;

  transform: translate(-50%, -50%);
}

section.kaabout .alinks .alink {
  position: absolute;
  display: flex;
  flex-direction: column;
  padding: 30px;
  width: 300px;
}

section.kaabout .alinks .alink.ma0 {

}

section.kaabout .alinks {
  /*
    width: 200px;
    height: 200px;
    position: relative;
    margin: 50px auto;
  */
}

section.kaabout .alinks .alink {
  width: 210px;
  height: 210px;
  background-color:var(--ka-bk-color2);
  border-radius: 50%;
  position: absolute;
  transform-origin: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

section.kaabout .alinks .alink:nth-child(1) {
    transform: translate(-50%, -50%) rotate(60deg) translate(300px) rotate(-60deg);
}

section.kaabout .alinks .alink:nth-child(2) {
    transform: translate(-50%, -50%) rotate(120deg) translate(300px) rotate(-120deg);
}

section.kaabout .alinks .alink:nth-child(3) {
    transform: translate(-50%, -50%) rotate(180deg) translate(300px) rotate(-180deg);
}

section.kaabout .alinks .alink:nth-child(4) {
    transform: translate(-50%, -50%) rotate(240deg) translate(300px) rotate(-240deg);
}

section.kaabout .alinks .alink:nth-child(5) {
    transform: translate(-50%, -50%) rotate(300deg) translate(300px) rotate(-300deg);
}

section.kaabout .alinks .alink:nth-child(6) {
    transform: translate(-50%, -50%) rotate(360deg) translate(300px) rotate(-360deg);
}

section.kaabout .alinks .alink .headline {
  position: relative;
  display: inline-block;
  width: 100%;
  box-sizing: border-box;
  padding: 0px 0 10px 0;
  text-align: center;
  font-size: 26px;
  line-height: 30px;
  font-weight:700;
}

section.kaabout .alinks .alink .text p {
  margin: 0;
  text-align: center;
  font-size: 15px;
  line-height: 17px;
}

section.kaabout .alinks .alink .headline {
  font-size: 20px;
  line-height: 22px;
}


/* ****************************************************************************************************************** */
/* --- RecSlider ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */
section.karecslider {
  position: relative;
  display: flex;
  flex-direction:column;
  max-width: 1600px;
  margin: 20px auto;
}

section.karecslider .textblock {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction:column;
  margin: 20px 0;
}

section.karecslider .swiper-container {
  margin: 0 auto;
  max-width: 1200px;
}

section.karecslider .swiper-slide {
  width: auto;
  margin: 40px 0px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction:column;
  flex-shrink: 0;

}

section.karecslider .swiper-slide .slinside {
  width: calc(100% - 44px);
  padding: 0 20px;
  /*
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction:column;
  flex-shrink: 0;
  */
}

section.karecslider .swiper-slide .slinside .date,
section.karecslider .swiper-slide .slinside .author,
section.karecslider .swiper-slide .slinside .prof,
section.karecslider .swiper-slide .slinside .text p {
  font-size: 16px;
  line-height: 20px;
}

section.karecslider .swiper-slide .slinside .left {
  border-right: 2px solid var(--ka-bk-color4);
  padding: 0 40px 0 0;
}

section.karecslider .swiper-slide .slinside .right {
  padding: 0 0 0 40px;
}

section.karecslider .swiper-slide .slinside .date,
section.karecslider .swiper-slide .slinside .prof {
  margin: 20px 0 0 0;
  text-align: left;
  font-style: italic;
}

section.karecslider .swiper-slide .slinside .image_container {
  position: absolute;
  top: auto;
  bottom: 0;
  right: 0;
  width: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  margin: 0px 0 0 0;
  max-height: 70% !important;
}

section.karecslider .swiper-slide .slinside .image_container img {
  max-width: 220px !important;

  object-fit: contain;
}

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

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

.news-blog .col3 {

}

.mod_newsreader {
  position: relative;
}

.mod_newsreader section.bannertext {
  height: 700px;
  max-height: 66vh;
  margin: 0 0 50px 0;
}

.mod_newsreader p.back {
  max-width: 1200px;
  margin: 20px auto;
}

.mod_newsreader p.back a {
  display: inline-block;
  width: calc(100% - 0px);
  max-width: 250px;
  margin-top: 10px;
  margin-left: 0px;
  padding-top: 10px;
  padding-bottom: 8px;
  background-color: var(--ka-bk-color4);
  color: var(--ka-font-white);
  font-weight: 600;
  text-transform: uppercase;
  text-align: center;
  border: medium none;
  cursor: pointer;
}


/* ****************************************************************************************************************** */
/* --- ka_slider1 --------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.kaslider4 {
    position: relative;
    height: 100%;
    display: block;
    margin: 80px 0 80px 0;
}

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

    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    /* Fix of Webkit flickering */
    z-index: 1;

}

section.kaslider4.img1 .swiper-container {
    max-width: 1400px;
    overflow: hidden;
}

section.kaslider4 .swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box;
    /*align-items: flex-start;*/

    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box;
}


section.kaslider4 .swiper-slide {
  width: auto;
  height: 400px;


  /*
  max-width: 600px;
  max-height: 300px;

  height: 100%;
  position: relative;
  transition-property: transform;
  */


  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction:column;
  flex-shrink: 0;
  /*


  opacity: 0.01;
  opacity: 1;
  margin: 0;

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

  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  */

}

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

}

section.kaslider4 .swiper-pagination {
  position:absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  bottom: 20px;
  left: 0;
  width: 100%;
  height: 12px;
  z-index: 999;
}

section.kaslider4 .swiper-pagination .swiper-pagination-bullet {
  display: block;
  background-color: var(--ka-bk-color4);
  width: 10px;
  height: 10px;
  margin: 0 3px;
  border-radius: 50%;
}
section.kaslider4 .swiper-pagination .swiper-pagination-bullet-active {
  background-color: var(--ka-font-menu-active);
}

section.kaslider4 .swiper-button-prev,
section.kaslider4 .swiper-button-next {
  position:absolute;
  width:50px;
  height:50px;
  top:calc(50% - 25px);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
  transition: background-position 0.5s ease-in-out;
  cursor:pointer;
  z-index: +1;
}

section.kaslider4 .swiper-button-prev {
  left:calc(50% - 665px);
  background-image:url("/files/intern/common/pfeil-slider-links.png");
}

section.kaslider4 .swiper-button-next {
  left:calc(50% + 630px);
  background-image:url("/files/intern/common/pfeil-slider-rechts.png");
}

section.kaslider4.markergrey .swiper-button-prev {
    background-image:url("/files/intern/common/pfeil-slider-links.png");
}
section.kaslider4.markergrey .swiper-button-next {
    background-image:url("/files/intern/common/pfeil-slider-rechts.png");
}


/* ****************************************************************************************************************** */
/* --- allgemein ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */






#main .projectlink.imagegrow,
#main .projectlink.flat {
    position: relative;
    width:calc(25% - 10px);
}

#main .flexcontainer.col5 .projectlink.imagegrow,
#main .flexcontainer.col5 .projectlink.flat {
    position: relative;
    width:calc(20% - 10px);
}

#main .flexcontainer.col2 .projectlink.imagegrow,
#main .flexcontainer.col2 .projectlink.flat {
    position: relative;
    width:calc(50% - 10px);
}

#main .projectlink.imagegrow .imgblock,
#main .projectlink.flat .imgblock {
    position: relative;
    overflow: hidden;
}
#main .projectlink.imagegrow .imgblock *,
#main .projectlink.flat .imgblock * {
    line-height: 1px;
}
#main .projectlink.imagegrow .image_container,
#main .projectlink.flat .image_container {
    overflow: hidden;
    line-height: 1px;
}
#main .projectlink.imagegrow .image_container img,
#main .projectlink.flat .image_container img {
    transform: scale(1.0, 1.0);
    -ms-transform: scale(1.0, 1.0);
    -webkit-transform: scale(1.0, 1.0);
    transition: all .75s ease-in-out;
}
#main .projectlink.imagegrow:hover .image_container img,
#main .projectlink.flat:hover .image_container img {
    transform: scale(1.05, 1.05);
    -ms-transform: scale(1.05, 1.05);
    -webkit-transform: scale(1.05, 1.05);
}
#main .projectlink.imagegrow .imgblock .button {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    display:block;
    /*transform: translate(-50%, -50%);*/
    text-align: center;
    pointer-events: none;
    padding: 75px 0 10px 0;
    background: linear-gradient( 180deg, rgba(0, 0, 0, 0.001), rgba(0, 0, 0, 0.9));
}
#main .projectlink.imagegrow .button a {
    width: 100%;
    color: #ffffff;
    font-size: 24px;
    line-height: 28px;
    font-weight: 500;
    /*letter-spacing: 0.1em;*/
    /*text-transform: uppercase;*/
    pointer-events: none;
    text-align: center;
    white-space:nowrap;
    pointer-events: none;
    font-size: 20px;
    line-height: 24px;
    font-weight: 700;
    color: var(--ka-font-light-green);
    text-transform:uppercase;
}
#main .projectlink.imagegrow .text {
    margin: 5px 0 5px 0;
    font-size: 18px;
    line-height:22px;
    color:var(--ka-font-vanille);

}
#main .projectlink.imagegrow .text * {
    font-size: 18px;
    line-height:22px;
    color: var(--ka-font-vanille);

}


#main .projectlink.flat {
    position: relative;
    width:calc(33.3% - 10px);
}
#main .projectlink.flat .text {
    width: 80%;
}

#main .projectlink.hover {
    position: relative;
    display: inline-block;
    float: left;
    padding: 0;
    margin: 0;
}
#main .projectlink.hover .imgblock {
    /*
    position: absolute;
    top: 0;
    left: 0;
    */
}
#main .projectlink.hover .headline {
    color: #ffffff;
    font-size: 34px;
    font-weight: 300;
}
#main .projectlink.hover .imgblock * {
    line-height: 1px;
    position: relative;
}
#main .projectlink.hover .imgblock .headline {
    position: absolute;
    top:50%;
    width: 100%;
    text-align: center;
    transition: .5s;
}
#main .projectlink.hover:hover .imgblock .headline {
    opacity: 0;
}

#main .projectlink.hover .textblock {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% - 20%)  ;
    height: 100%;
    padding-left: 10%;
    padding-right: 10%;
    background-color: #131820;
    display: flex;
    flex-direction:column;
    text-align: center;
    justify-content :center;
    opacity: 0;
    transition: 1.5s;
}
#main .projectlink.hover:hover .textblock {
    opacity: 0.8;
}
#main .projectlink.hover .button a {
    font-size: 34px;
}
#main .projectlink.hover .textblock .text {
    margin-top: 20px;
    margin-bottom: 20px;
}
#main .projectlink.hover .textblock .headlinecolor {
    /*
    font-size: 16px;
    line-height:18px;
    font-weight: 600;
    background-image:linear-gradient(90deg,#b91509,#20549d,#23bfe4);
    */
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
#main .projectlink.hover .button a {
    color: #ffffff;
    /*
    font-size: 16px;
    font-weight: 300;
    */
}
#main .projectlink.hover .textblock .text p {
    color: #999999;
}

#main .projectlink .imgblock .pl-yt {
    position: relative;
    display: inline-block;
}
#main .projectlink .imgblock .pl-yt .image {
    position: relative;
    visibility: visible;
    opacity: 1;
    transition: visibility 0s linear 500ms, opacity 500ms;
}
#main .projectlink .imgblock .pl-yt .image.disable {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s linear 500ms, opacity 500ms;
}
#main .projectlink .imgblock .pl-yt .image button {
    position: absolute;
    top:calc(50% - 15px);
    left:calc(50% - 20px);;
    width: 30px;
    height: 40px;
    background-image: url('/files/intern/common/fmd-pfeil-rechts-hover.png');
    pointer-events: none;
}

#main .projectlink .imgblock .pl-yt img {
    cursor: pointer;
}

#main .projectlink .imgblock .pl-yt img
#main .projectlink .imgblock .pl-yt .video {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    /*display:none;*/
}
#main .projectlink .imgblock .pl-yt .video {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s linear 500ms, opacity 500ms;
}
#main .projectlink .imgblock .pl-yt .video.enable {
    visibility: visible;
    opacity: 1;
    transition: visibility 0s linear 500ms, opacity 500ms;
}
#main .projectlink .imgblock .pl-yt .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ****************************************************************************************************************** */
/* ---ka-Bannertext ------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.bannertext {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0;
}
section.bannertext::after  {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 66%;
  height: 100%;
  background: linear-gradient(90deg, rgba(0,0,0,0.5), rgba(0,0,0,0.001));
  z-index: -1;
}

section.bannertext .quote {
  position: absolute;
  left: 0;
  top: auto;
  bottom: 0;
  width: 100%;
  margin: 80px 0 0 0;
  /*background: linear-gradient(0, rgba(0,0,0,0.7), rgba(0,0,0,0.001));*/
  min-height: 25vh;
  padding: 30px 30px 40px 30px;
  display: flex;
  align-items: flex-end;
  z-index: +1;
}

section.bannertext .quote * {
  color: #fff;
  color: var(--ka-font-green);
  color: #fff;
  font-size: 22px;
  font-weight: 500;
  font-style: italic;
}

section.bannertext .textblock.docready {
  position: absolute;
  top: auto;
  bottom: 5%;
  left: -100vw;
  left: 50px;
  width: 100%;
  /*background: linear-gradient(0, rgba(0,0,0,0.4), rgba(0,0,0,0.001));
  padding: 0px 10px 0px 10px;*/
  display: flex;
  flex-direction: column;
  text-align: left;
  align-items: flex-start;
  justify-content: center;
  z-index: +1;
  transition: all 2s ease-in-out;
  max-width: 66%;
  /*padding: 20px 50px 50px 50px;*/
}
section.bannertext .textblock.docready.loaded {
  left: 50px;
}

section.bannertext .textblock * {
  color:var(--ka-font-light-green);
  color: #fff;
  font-size: 44px;
  line-height: 50px;
  font-weight: 800;
}


section.bannertext .textblock .headline {
  margin-top: 0;
  text-transform: uppercase;
}

section.bannertext .textblock  .text * {
  font-size: 36px;
  line-height: 42px;
  font-weight: 400;
  padding-top: 2px;
  padding-bottom: 2px;
}

section.bannertext .image_container {
  position: absolute;
  left: 0;
  top: 0;
  display: flex;
  width: 100%;
  height: 100%;
  z-index: -1;
  overflow: hidden;

}

section.bannertext .image_container.blurbk img {
  display: flex;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 2s ease-in-out;
  filter: blur(20px);
  transform: scale(100%);
}

section.bannertext .image_container.blurbk.loaded img {
  filter: blur(0px);
  transform: scale(120%);
}

section.bannertext .image_container img.desktop {

}
section.bannertext .image_container img.mobile {
  display: none;
}

/* ****************************************************************************************************************** */
/* ---ka-TextCenter ------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

#main .textcenter {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  padding: 80px 0;
}

#main .limit1000 .textcenter {
  padding-top: 30px;
  padding-bottom: 30px;
}

#main .textcenter.grey {
  background-color: var(--ka-bk-color2);

}

#main .textcenter.green {
  background-color: var(--ka-bk-color4);
}

#main .textcenter.black {
  background-color: var(--ka-bk-color01);
}

#main .textcenter .headline {
  margin: 0 0 30px 0;
}

#main .textcenter.green .headline {
  color: #fff;
}

#main .textcenter.grey .headline {
  color: #ABCE90;
}

#main .textcenter.black h2,
#main .textcenter.black p {
  color: #fff;
}

#main .textcenter.black h3, {
  color:var(--ka-font-green);
}

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


#main .textimg {
    position: relative;
    width: 100%;
    height: 100%;
}
/*
#main .textimg .imgblock * {
    line-height: 1px;
}
*/
#main .textimg .imgblock .image_container,
#main .textimg .imgblock .slider {
    position: relative;
    width: 100%;
    height: 100%;
}

#main .textimg .imgblock .rsts-skin-default.rsts-main {
    position: relative;
    width: 100%;
    height: 100%;
}
#main .textimg .imgblock .rsts-skin-default.rsts-main img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#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 .textblock {
    padding-top: 40px;
    padding-bottom: 40px;
    display: flex;
    flex-direction:column;
    justify-content :center;
    min-height: 100px;
}
#main .textimg .textblock,
#main .textimg .textblock * {
    color: var(--ka-font-white);
}


#main .textimg .textblock {
  background-color: var(--ka-bk-color1);
}
#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 {
    color:var(--ka-font-light-green)
}
#main .textimg .left .button,
#main .textimg .right .button {
    margin-top: 20px;
}
#main .textimg .button a {
    font-weight: 600;
    transition: 0.2s;
}
#main .textimg .button a:hover {
    color:var(--ka-font-light-green)
}

/* ****************************************************************************************************************** */
/* --- changelanguage ----------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.mod_changelanguage {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding:0;
  margin:0;
}
nav.mod_changelanguage ul {
  display: flex;
  flex-direction: row;
  padding:0;
  margin:0;
}
nav.mod_changelanguage ul li {
  margin:10px 0;
  padding:0;
  z-index:953;
  width:32px;
  height:18px;

}
.mod_changelanguage ul li a,
.mod_changelanguage ul li strong {
  width: 100%;
  height: 100%;
  margin:0;
  padding:0;
  cursor: pointer;
  font-weight: 400;
}

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

body.home #main .textimg {
    position: relative;
    width: 100%;
    height: 100%;
}
/*
#main .textimg .imgblock * {
    line-height: 1px;
}
*/
body.home #main .textimg .imgblock .slider {
    position: relative;
    width: 100%;
    height: 100%;
}

body.home #main .textimg .imgblock .rsts-skin-default.rsts-main {
    position: relative;
    width: 100%;
    height: 100%;
}
body.home #main .textimg .imgblock .rsts-skin-default.rsts-main img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
body.home #main .textimg .imgblock .image_container {
    overflow: hidden;
}
body.home #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%;
}

body.home #main .textimg .textblock {
    padding-top: 40px;
    padding-bottom: 40px;
    display: flex;
    flex-direction:column;
    justify-content :center;
    min-height: 100px;
}
body.home #main .textimg .textblock,
body.home #main .textimg .textblock * {
    color: var(--ka-font-white);
}

body.home #main .vita .textimg .textblock,
body.home #main .vita .textimg .textblock * {
    color: var(--ka-font-white);
}

body.home #main .textimg .textblock h1,
body.home #main .textblock h1.headline {
    color: var(--ka-font-white);
}

body.home #main .vita .textimg .textblock h1,
body.home #main .vita .textblock h1.headline {
    color: var(--ka-font-green);
    font-size:40px;
    line-height:44px;
    font-weight: 800;
}


body.home #main .textimg .textblock {
  background-color: rgba(255,255,255,0.3);
  background-color: rgba(0,0,0,0.3);
}
body.home #main .textimg .textblock ul {

}
body.home #main .textimg .textblock li {
        list-style-type: disc;
}
body.home #main .textimg .left .headline,
body.home #main .textimg .left .text,
body.home #main .textimg .right .headline,
body.home #main .textimg .right .text,
body.home #main .textimg .left .button,
body.home #main .textimg .right .button {
    padding-left: 50px;
    padding-right: 50px;
}
body.home #main .textimg .headline {
  margin-top: 0;
  color: var(--ka-font-light-green);
}

body.home #main .textimg .textblock a {
    color:var(--ka-font-light-green)
}

body.home #main .vita .textimg .textblock a {
    color:var(--ka-font-light-green);
    font-weight: bold;
}

body.home #main .textimg .left .button,
body.home #main .textimg .right .button {
    margin-top: 20px;
}
body.home #main .textimg .button a {
    font-weight: 600;
    transition: 0.05s;
}
body.home #main .textimg .button a:hover {
    color:var(--ka-font-menu-hover)
}


#main .imgmain {
    background-color: #f6f2ec;
    padding-top: 40px;
    padding-bottom: 30px;
    margin-bottom: 40px;
    display: block;
}

#main .moving {
    font-size: 24px;
    font-family: Amatic SC, Arial;
    font-weight: 600;
    text-transform: uppercase;
    color: #000000;
    letter-spacing: 0.07em;
    margin-bottom: 40px;
}

.left1200 #main .inside {
    text-align: left;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.floatleft .rsts-skin-default.rsts-main {
    /*width: 33%;*/
    float:left;
}

.floatleft .rsts-slide {
    /*position: relative;*/
}

.floatleft .rsts-slide div {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.floatleft .rsts-slide div .boxgrey.center {
    padding-left: 10%;
    padding-right: 10%;
    height: 100%;
}



/* ****************************************************************************************************************** */
/* --- MAP Startseite ----------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.mapbox {
		position: relative;
		width: 100%;
		margin:0px 0;
		display: block;
}

.mapbox .mapcanvas {
		margin: 60px auto 0 auto;
		max-width: calc(100% - 0px);
		height: 100%;
		display: block;
}

.mapbox .mapcanvas #mapid {
		width: 100%;
		height: 550px;
}

.mapbox .map {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index:0;
}

.mapbox #mapid .leaflet-control-container {
		/*display: none;*/
}

.leaflet-tooltip.class-tooltip {
	  background: rgba(255,255,255,0.7) !important;
	  border: 0px solid #000;
		padding: 5px 15px 3px 15px;

		font-family: Amatic SC;
		letter-spacing:0.001em;
		text-transform: uppercase;
		font-weight: 400;
		box-shadow: 0 0px 0px rgba(0,0,0,0.5) !important;

		color: #000;
		font-size: 16px;
		font-family: var(--ka-hx-font-family);
}



 #mapid .leaflet-popup {
	  width:400px !important;
		/*
	  height:400px !important;
		min-width:400px !important;
	  min-height:400px !important;
		max-width:400px !important;
	  max-height:400px !important;
		*/
		margin:0;
		padding: 0;
}

 #mapid .leaflet-popup-content {
		line-height: 1px;
		margin: 0;
		width: 100%;
		height: 100%;
}

 #mapid .leaflet-popup div.content {
		position: relative;
		margin: 0;
		width: 100%;
		height: 100%;
}

 #mapid .leaflet-popup div.content img {
		width: 100%;
		margin: 0;
		padding: 0;
}


 #mapid .leaflet-popup div.content div.text {
		margin: 0;
		width:calc(100% - 20px);
		padding:10px 10px;
		background-color:rgba(255,255,255,0.8);
		/*color:#ac5e0c;*/
		color:#000;
		font-family: Arial;
		text-transform: uppercase;
		font-size: 14px;
		font-weight: 600;
		line-height: 16px;
}

.mod_article .osm {
    background-color: #000000;
    padding: 0 10px 10px 0;
}

.mod_article .osm * {
    font-size: 12px;
}

form {
  clear: both;
  width: 100%;
  margin: 20px 0;
}

.formbody {
  display: inline-block;
  max-width: 100%;
  position: relative;
}

.submit {
  width:calc(100% - 0px);
  max-width:250px;
  margin-top:10px;
  margin-left:0px;
  padding-top:10px;
  padding-bottom:8px;
  background-color:var(--ka-bk-color4);
  color:var(--ka-font-white);
  font-weight: 600;
  text-transform:uppercase;
  border:medium none;
  cursor: pointer;
}
fieldset {
    width:100%;
    display:block;
    margin:5px 0 5px 0;
    padding:5px 0 0px 0;
    border-top: 2px dotted var(--ka-bk-color4);
}
fieldset legend {
    background-color: var(--ka-bk-color4);
    padding: 5px 10px;
    margin: 20px 0 20px 20px;
    font-size: 16px;
    font-family: Montserrat;
    font-weight: 600;
    text-transform: uppercase;
    color: var(--ka-font-red);

}
.widget {
  display: block;
  clear: both;
}

.widget-textarea label,
.widget-captcha label,
.widget-text label,
.widget-password label,
.widget-radio legend,
.select label {
  /*width: 500px;*/
  float:none;
  display:block;
  max-width:calc(100% - 2 * var(--ka-mobile-border));
}
input.text,
input.password,
input.captcha,
textarea {
    width:1000px;
    max-width:100%;
    margin:4px 0 10px 0;
    padding:4px;
    background-color:#fff;
    color: #000 !important;
    font-size: 16px;
    line-height: 19px;
    border:medium none;
}
input.captcha {
    width:75px;
    margin-right:5px;
}
textarea {
    height:180px;
}
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;text-w
    padding:0;
}
fieldset.checkbox_container {
    position:relative;
    /*width:95%;*/
    margin:30px 0 30px 0px;
    padding:0 0 20px 0;
    border-top: none;
}
fieldset.checkbox_container legend {
    font-size: var(--ka-font-size);
    padding: 0;
    margin: 0;

}
fieldset.checkbox_container label {
  display:block;
  margin:0px 0px 0px 22px;
  max-width: calc(100% - 2 * var(--ka-mobile-border));
}
div.checkbox_container span {
    display:block;
    padding-right:6px;
}
input.checkbox {
    float:left;
    margin:4px 0px 2px 0px;
    padding:0 0 0 0;
}
input.checkbox label {

}
fieldset span {
    /*display: table-row-group;*/
}
fieldset.checkbox_container > span {
    position: relative;
    /*float: left;*/
    margin-left: 10px;
    display: block;
}
fieldset.checkbox_container > span:nth-child(1) {

}
fieldset legend span {
    display: inline;
}
fieldset span label {
    float: none;
}


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(100,161,133,0.4);
    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-font-light-green);
    color:var(--ka-font-blue);
    border:medium none;
    cursor: pointer;
}


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

:root {
  --ka-tablet-border:50px;

  --ka-mobile-border:20px;

}

/* ****************************************************************************************************************** */
/* --- max-width: 1800px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

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

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

  section.kalinks.colorbox .grid .column a {
    display: grid;
    grid-template-columns: 1fr 3fr;
    align-items: center;
  }
  section.kalinks.colorbox .column {
    padding: 20px;
  }

}


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

@media only screen and (max-width: 1610px) {
    .center,
    .boxdarkblue.center,
    .boxmiddleblue.center,
    .boxwhite.center,
    .kontakt {
      /*
        padding-left: var(--ka-tablet-border);
        padding-right: var(--ka-tablet-border);
        width:calc(100% - 2 * var(--ka-tablet-border));
      */
    }

    .limit1600 {
      padding-left: var(--ka-tablet-border);
      padding-right: var(--ka-tablet-border);
      width:calc(100% - 2 * var(--ka-tablet-border));
    }

    #footer .inside {
        padding-left: var(--ka-tablet-border);
        padding-right: var(--ka-tablet-border);
        width:calc(100% - 2 * var(--ka-tablet-border));
    }

    section.kaslider4 .swiper-button-prev {
      left: 50px;
      right: auto;
    }
    section.kaslider4 .swiper-button-next {
      left: auto;
      right: 50px;
    }

}



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

@media only screen and (max-width: 1410px) {
  .limit1400,
  body.home #main .textimg {
    padding-left: var(--ka-tablet-border);
    padding-right: var(--ka-tablet-border);
    width:calc(100% - 2 * var(--ka-tablet-border));
  }

  section.bannertext .textblock .headline {
    font-size: 36px;
    line-height: 40px;
    margin-bottom: 10px;
  }
  section.bannertext .textblock .text * {
    font-size: 30px;
    line-height: 34px;
    padding-top: 0px;
    padding-bottom: 1px;
  }

}

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

@media only screen and (max-width: 1210px) {
    #mainnav,
    #header #HeaderSlogan {
      right:10px;
      top: 60px;
    }

    #mainnav.mod_navigation li a,
    #mainnav.mod_navigation li.active strong {
        padding:2px 4px 50px 4px;
    }

    #mainnav.mod_navigation a,
    #mainnav.mod_navigation li.active strong {
      font-size: 18px;
      line-height: 20px;
    }

    #mainnav.mod_navigation li ul li a,
    #mainnav.mod_navigation li ul li.active strong {
      padding: 7px 10px 5px 10px;
    }

    section.bannertext .quote {
      width: calc(100% - 2 * var(--ka-mobile-border));
      padding: 30px var(--ka-mobile-border) 70px var(--ka-mobile-border);
    }



    h1,
    h2,
    h3,
    h4,
    h5 {
        white-space: normal;
    }

    .dist100 {
        height: 50px;
    }
    .dist50 {
        height: 35px;
    }

    .boxgrey {
        padding-right:0px;
        padding-left:0px;
        width:calc(100% - 0px);
    }

    .bildlink .image {
        width: calc(25% - 12px);
    }
    .bildlink .image.nr9,
    .bildlink .image.nr10 {
        display:none;
    }

    .limit1200 {
      padding-left: var(--ka-tablet-border);
      padding-right: var(--ka-tablet-border);
      width: calc(100% - 2 * var(--ka-tablet-border));
    }


    #main .mod_article .ce_text .ktext,
    #main .mod_article h1,
    #main .mod_article h2,
    #main .mod_article h3 {
      /*
        padding-right:10px;
        padding-left:10px;
      */
    }

    #main .mod_article h1,
    #main .mod_article h2,
    #main .mod_article h3 {
      hyphens: auto;
    }


    #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: var(--ka-tablet-border);
        padding-right: var(--ka-tablet-border);
      */
    }
    #main .textimg h4 {
        font-size: 28px;
        line-height: 32px;
        letter-spacing: 0.1em;
        word-break: break-word;
    }

    .col33m {
        margin-left: 20px;
        margin-right: 20px;
        width: calc(100% - 40px);
    }

    section.kaabout {
      padding: 220px 0;
    }

    section.kaabout .image_container {
      max-width: 33%;
    }

    section.kaabout .alinks .alink {
      width: 190px;
      height: 190px;
    }


    section.kaabout .alinks .alink:nth-child(1) {
      transform: translate(-50%, -50%) rotate(60deg) translate(260px) rotate(-60deg);
    }

    section.kaabout .alinks .alink:nth-child(2) {
      transform: translate(-50%, -50%) rotate(120deg) translate(260px) rotate(-120deg);
    }

    section.kaabout .alinks .alink:nth-child(3) {
      transform: translate(-50%, -50%) rotate(180deg) translate(260px) rotate(-180deg);
    }

    section.kaabout .alinks .alink:nth-child(4) {
      transform: translate(-50%, -50%) rotate(240deg) translate(260px) rotate(-240deg);
    }

    section.kaabout .alinks .alink:nth-child(5) {
      transform: translate(-50%, -50%) rotate(300deg) translate(260px) rotate(-300deg);
    }

    section.kaabout .alinks .alink:nth-child(6) {
      transform: translate(-50%, -50%) rotate(360deg) translate(260px) rotate(-360deg);
    }

    section.kaabout .alinks .alink .headline {
      margin: 0 0 10px 0;
      font-size: 20px;
      line-height: 22px;
      padding: 0;
    }
    section.kaabout .alinks .alink .text * {
      font-size: 14px;
      line-height: 16px;
    }

    section.karecslider .swiper-container {
      max-width: calc(100% - 100px);
    }


    .mod_footer_navi {
        margin-right:10px;
    }
  }

/* ****************************************************************************************************************** */
/* --- max-width: 1000px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 1030px) {
  .limit1000 {
    padding-left: var(--ka-tablet-border);
    padding-right: var(--ka-tablet-border);
    margin-left: 0;
    margin-right: 0;
  }

  section.bannertext .image_container img.desktop {
    display: none;
  }
  section.bannertext .image_container img.mobile {
    display: block;
  }

  section.bannertext .textblock * {
    font-size: 30px;
    line-height: 40px;
  }
  section.bannertext .textblock .text * {
    font-size: 24px;
    line-height: 28px;
  }
  body.home #main .textimg .imgblock .image_container img {
    object-fit: cover;
  }

  #main .limit1000 .textcenter {
    width: calc(100% - 40px);
  }

  .marginleft100 {
    margin-left: 0px;
  }


}

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

@media only screen and (max-width: 850px) {
    a,
    body,
    fieldset,
    form,
    input,
    label,
    li,
    ol,
    optgroup,
    p,
    select,
    td,
    th,
    textarea,
    ul {
      font-size:15px;
      line-height:19px;
    }

    h1,
    body.home h1,
    .boxgreen h1,
    body.home .boxgreen h1 {
      font-size:32px;
      line-height:36px;
      margin-top: 20px;
      margin-bottom: 15px;
    }
    body.home .mod_newslist h1 {
      font-size:24px;
      line-height:27px;
    }
    h2 {
      font-size:28px;
      line-height:32px;
    }
    h3 {
      font-size:24px;
      line-height:28px;
    }
    h5 {
      margin-top: 20px;
    }

    .col25 {
      width: 50%;
    }

    .grid {
      display:grid;
    }

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

    .grid.fr2,
    .grid.fr3,
    .grid.fr4,
    .grid.fr5,
    .grid.fr6 {
      grid-template-columns: 1fr;
      grid-column-gap: 20px;
      grid-row-gap: 20px;
    }

    .grid .ce_hyperlink .image_container a {
      display: inline-block;
      width: 100%;
      height: 100%;
    }

    .grid .ce_hyperlink .image_container img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    #main .grid.imgwidth250 img {
      max-width: 150px;
    }

    section.bannertext .textblock.docready {
      max-width: calc(100% - 20px);
    }

    #mainnav,
    #header .mod_changelanguage {
      display:none;

    }
    #navmobil {
      left:calc(50% - 16px);
      top:20px;
      position:absolute;
      display:block;
      transition: top 1s ease-in-out;
    }
    #header.small #navmobil {
      top:10px;
    }

    #header {
      height: 80px;
    }

    #HeaderSocials {
      right:50px;
      top:12px;
      position:absolute;
      margin-right:3px;
      margin-left:3px;
    }

    #header #HeaderLogo {
      left:12px;
      width: 260px;
    }

    #header #HeaderSlogan {
      position:absolute;
      left:50%;
      transform: translate(-50%, 0);
      text-align:center;
    }

    #header #HeaderSlogan h4 {
      font-size: 24px;
      line-height:30px;
    }
    #header #HeaderSlogan h1 {
      font-size: 20px;
      line-height:24px;
    }

    #header .socials {
      display: none;
    }

    #navmobil {
      position: absolute;
      right: 20px;
      top: 20px;
      left: auto;
    }

    .kontakt .flexcontainer {
      display: block;
    }

    .boxblack .col50m,
    .boxblack .col50mr,
    .kontakt .col50m,
    .kontakt .col50mr {
      width: 100%;
      float: none;
      margin: 0;
    }


    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 {

    }

    .rsts-skin-default .rsts-nav {
      display:none;
    }

    .flexcontainer.space-between {
      margin-top: 20px;
      margin-bottom: 20px;
      justify-content: flex-start;
      flex-wrap: wrap;
    }


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

    /*
    .boxdarkblue .projects {
        display: block;
    }
    */

    #main .flexcontainer.col5 .projectlink.imagegrow,
    #main .flexcontainer.col5 .projectlink.flat {
      width: calc(50% - 10px);
    }


    .mod_newslist {
      grid-template-columns: 1fr 1fr;
      grid-column-gap: 20px;
      grid-row-gap: 20px;
    }

    #main .textimg .col50 {
      width: 100%;
    }
    body.home #main .textimg .textblock {
      padding-top: 20px;
      padding-bottom: 20px;
    }

    body.home #main .textimg .left .headline,
    body.home #main .textimg .left .text,
    body.home #main .textimg .right .headline,
    body.home #main .textimg .right .text,
    body.home #main .textimg .left .button,
    body.home #main .textimg .right .button {
      padding-left: 20px;
      padding-right: 20px;
    }

    #main .textimg .imgblock {
      min-height: 350px !important;
    }
    #main .textimg img {
      position: absolute;
      width: 100%;
      height: 100%;
      left: 0;
      object-fit: cover;
      display: inline-block;
      max-width: 100%;
    }

    #main .projectlink.hover .textblock {
      width: calc(100% - 10%)  ;
      padding-left: 5%;
      padding-right: 5%;
    }
    section.kaabout .alinks .alink:nth-child(1) {
      transform: translate(-50%, -50%) rotate(60deg) translate(240px) rotate(-60deg);
    }

    section.kaabout .alinks .alink:nth-child(2) {
      transform: translate(-50%, -50%) rotate(120deg) translate(240px) rotate(-120deg);
    }

    section.kaabout .alinks .alink:nth-child(3) {
      transform: translate(-50%, -50%) rotate(180deg) translate(240px) rotate(-180deg);
    }

    section.kaabout .alinks .alink:nth-child(4) {
      transform: translate(-50%, -50%) rotate(240deg) translate(240px) rotate(-240deg);
    }

    section.kaabout .alinks .alink:nth-child(5) {
      transform: translate(-50%, -50%) rotate(300deg) translate(240px) rotate(-300deg);
    }

    section.kaabout .alinks .alink:nth-child(6) {
      transform: translate(-50%, -50%) rotate(360deg) translate(240px) rotate(-360deg);
    }

    section.karecslider .swiper-slide {
      flex-direction: row;
      margin: 5px 0;
    }

    section.karecslider .swiper-slide .slinside .left {
      border-right: 0px;
      padding: 0;
    }

    section.karecslider .swiper-slide .slinside .right {
      min-height: 300px;
      padding: 0;
    }
    section.karecslider .swiper-slide .slinside .image_container {
      position: relative;
      top: 0;
      bottom: auto;
      left: 0;
      right:auto;
      justify-content: flex-start;
      margin: 20px 0 0 0;
    }
    section.karecslider .swiper-slide .slinside .image_container img {

    }


    #footer {
      height: 100%;
    }
}

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

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

  #navmobil {
        width:32px;
        height:32px;
        right:15px;
        position:absolute;
        top:25px;
        z-index: 990;
        cursor: pointer;
    }
    .mobile_menu_overlay {
        z-index: 990;
    }
    .mobile_menu {
        width:100%;
        height: 100vh;
        z-index: 999;
    }

    .mobile_menu #HeaderLogo {
      position: absolute;
      top:12px;
      left:10px;
      width: 200px;
      max-width: 65%;
    }


    .mobile_menu .mobileclose {
        position: absolute;
        top:20px;
        right: 20px;
        display: block;
        width: 40px;
        height: 40px;
    }

    .mobile_menu .inner {
      height: 100%;
      /*background-color:var(--ka-bk-color4);*/
      background-color:var(--ka-bk-color01);
      color:#fff;
      text-transform:uppercase;
      font-size:18px;
      z-index: 999;
      display:flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-start;
      position: relative;

    }
    .mobile_menu .mod_navigation {
      margin-top: 100px;
    }

    .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:#fff;
    }



    .mobile_menu .mod_navigation {

    }
    .mobile_menu .mod_navigation ul.level_1 {
        min-width: 250px;
        margin:0;
        padding:0;
    }
    .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 {
        /*das Pfeilchen*/
        width:100%;
        position:relative;
        display:block;
        font-size:20px;
        line-height: 22px;
    }

    .mobile_menu .mod_navigation a,
    .mobile_menu .mod_navigation li span,
    .mobile_menu .mod_navigation li.active strong {
        width:100%;
        display:block;
        margin-top:0;
        margin-bottom:0;
        padding:2px 0;
        text-align:center;
        font-size:18px;
        line-height: 22px;
        text-decoration:none;
        color:var(--ka-font-white);
        height:auto;
        font-weight:500;
    }
    .mobile_menu .mod_navigation li.active strong {
      color: var(--ka-font-menu-hover);
    }
    .mobile_menu .mod_navigation a:focus,
    .mobile_menu .mod_navigation a:hover {
        /*color:#c2c2c2;*/
    }
    .mobile_menu .mod_navigation a.trail:focus,
    .mobile_menu .mod_navigation a.trail:hover {
        color:#fff;
    }
    .mobile_menu .submenu > a1::after,
    .mobile_menu .submenu > span::after {
        width:30px;
        height:28px;
        right:15px;
        position:absolute;
        display:inline-block;
        text-align:center;
        font-size:32px;
        line-height:32px;
        top:-6px;
        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-top: 4px;
        padding-bottom:0;
        /*border:0px solid #666;*/
    }
    .mobile_menu ul.level_2 ul {
        margin-bottom: 0;
    }
    .mobile_menu ul.level_2 a,
    .mobile_menu ul.level_2 span,
    .mobile_menu ul.level_2 li.active strong {
        font-size:15px;
        line-height: 17px;
    }


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

    .mobile_menu .inner .mod_footer_navi *,
    .mobile_menu .mod_changelanguage * {
      color:#fff;
    }

    .mobile_menu .inner .mod_footer_navi ul.level_1 li:first-child {
      display: none;
    }

    .mobile_menu .mod_footer_navi {
      /*
      position: absolute;
      top:auto;
      left:50%;
      bottom: 80px;
      transform: translateX(-50%);
      */
      position: relative;
    }
    .mobile_menu .mod_footer_navi ul {
      flex-direction: column;
      justify-content: center;
      align-items: center;
    }
    .mobile_menu .mod_footer_navi strong {
      color: var(--ka-font-light-green);
    }
    .mobile_menu .mod_changelanguage {
      position: absolute;
      top:auto;
      left:50%;
      bottom: 80px;
      transform: translateX(-50%);
    }


}


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

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

    #header {
        height: 50px;
    }

    #header.small {
        height: 30px;
    }

    #header #HeaderLogo {
        width: 180px;
    }

    #header.small #HeaderLogo {
        width: 100px;
    }

    #header .socials,
    #bannerimage .downbutton {
        display: none;
    }

    #header #HeaderSlogan h4 {
        font-size: 20px;
        line-height:22px;
    }
    #header #HeaderSlogan h1 {
        font-size: 16px;
        line-height:18px;
    }

    #banner {
      margin-top: 0px;
      min-height: 50px;
    }

    #banner .bannerinside,
    #banner #bannerimage .mod_rocksolid_slider {
      min-height: 250px;
      display: flex;
    }

    #banner .bannerinside,
    #banner #bannerimage,
    #banner #bannerimage .mod_rocksolid_slider,
    #banner #bannerimage .mod_rocksolid_slider .rsts-view {
      height: 100%;

    }
    #banner #bannerimage .mod_rocksolid_slider .rsts-slide > div {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    #banner #bannerimage .mod_rocksolid_slider img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    body.home #banner,
    body.home #banner .ainside {
      height: 33vh !important;
    }

    body.home #banner .ainside {
      height: 100%;

    }

    section.bannertext {
      height: calc(100vh - 00px);
    }


    .limit1600,
    .limit1400,
    .limit1200,
    .limit1000,
    body.home #main .textimg {
      width: calc(100% - 2 * var(--ka-mobile-border));
      padding-left: var(--ka-mobile-border);
      padding-right: var(--ka-mobile-border);
    }

    .begruessung, .links, .galerie, .kontakt, .infos, .boxgreen, .boxgreen2, .boxgrey, .boxblack, .boxfaq, .vita {
      padding: 40px 0 50px 0;
    }

    .begruessung, .links, .galerie, .kontakt, .infos, .boxgreen {
      padding: 40px 0 50px 0;
    }

    section.bannertext .textblock.docready {
      margin-top: 100px;
    }

    section.bannertext .textblock.docready.loaded {
      left: var(--ka-mobile-border);
    }

    section.bannertext .quote {
      width: calc(100% - 2 * var(--ka-mobile-border));
      padding: 30px var(--ka-mobile-border) 70px var(--ka-mobile-border);
    }

    section.bannertext .quote * {
      font-size: 18px;
    }

    section.bannertext .textblock .text * {
      font-size: 16px;
      line-height: 20px;
      padding-top: 0px;
      padding-bottom: 2px;
    }

    section.bannertext .textblock * {
      font-size: 20px;
      line-height: 24px;
    }


    #main .projectlink.imagegrow,
    #main .projectlink.flat,
    #main .flexcontainer.col5 .projectlink.imagegrow,
    #main .flexcontainer.col5 .projectlink.flat,
    #main .flexcontainer.col2 .projectlink.imagegrow,
    #main .flexcontainer.col2 .projectlink.flat {
      width: calc(100% - 0px);
    }

    #main .textimg .imgblock {
      min-height: 200px !important;
    }

    #main .textimg .imgblock .image_container img {
      position: relative;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
    }

    #navmobil {
        position: absolute;
        right: 10px;
        top: 10px;
        left: auto;
    }


    #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,
    .boxblack h1,
    body.home .boxblack h1,
    .kontakt h1,
    body.home .kontakt h1 {
      font-size:30px;
      line-height: 34px;
      letter-spacing:.01em;
    }
    h2,
    body.home  h2 {
        font-size:24px;
        line-height:28px;
        letter-spacing:.01em;
    }
    body.home .mod_newslist h1 {
        font-size:18px;
        line-height:20px;
        letter-spacing:.01em;
    }
    h4,
    #main .textimg h4 {
        font-size:20px;
        line-height:23px;

    }
    h5 {
        font-size:16px;
        line-height:20px;
        letter-spacing:0.1em;
    }
    #main .startproject div.headline {
        font-size:20px;
        line-height:23px;
    }

    .ce_accordion .toggler {
      font-size: 20px;
      line-height: 24px;
    }

    fieldset.checkbox_container,
    fieldset.checkbox_container label {
        width:100%;
        max-width:100%;
        margin-right:0;
        margin-left:0;
    }

    .bigtext p {
        font-size: 18px;
        line-height: 22px;
    }

    .flexcontainer {
        flex-direction: column;
    }

    .col25,
    .col50,
    .col50m,
    .col50mr,
    .startbox,
    .startbox50,
    .partner,
    .prodlink,
    .col33line,
    .col50line,
    .col66line,
    .flink div.linkimg,
    #main .ce_youtube.col50,
    #main .ce_youtube.col50m,
    #main .links .projectlink.imagegrow,
    #main .links .projectlink.flat {
      margin-right:0;
      margin-left:0;
      padding-right:0px;
      padding-left:0px;
      width: calc(100% - 0px);
      height:100% !important;
      clear:both;
      float: none;
    }

    .dist100 {
      height: 40px;
    }
    .dist50 {
      height: 25px;
    }
    .dist25,
    .dist30 {
      height: 20px;
    }

    .ce_gallery ul.cols_4 li {
      padding-left: 2px;
      padding-right: 2px;
      margin-bottom: 4px;
      width: calc(50% - 4px);
    }
    .ce_gallery ul.cols_5 li,
    .ce_gallery ul.cols_6 li {
      padding-left: 2px;
      padding-right: 2px;
      margin-bottom: 4px;
      width: calc(25% - 4px);
    }
    .ce_gallery ul.cols_6 li {
      width: calc(33.3% - 4px);
    }
    .ce_gallery ul.cols_7 li {
      padding-left: 5px;
      padding-right: 5px;
      margin-bottom: 10px;
      width: calc(25% - 10px);
    }

    #main .limit1200,
    #main .limit1000,
    .startproject div.headline,
    #main .startproject div.headline {
      max-width:100%;
      margin-right:auto;
      margin-left:auto;
    }

    #main .links .flexcontainer {
        display: block;
    }

    div.ce_infobox.loaded {
      top: 160px;
      left: 50%;
      transform: translate(-50%, 0);
      right: auto;
      width: calc(100% - 80px);
    }
    div.ce_infobox .headline {
      margin: 10px 0 0 0;
    }

    div.infoboxs {
      padding: 10px 10px 10px 10px;
      margin: 0px 0 0 0;
    }
    div.infoboxs .infobox {
      padding: 10px 10px 10px 10px;
      margin: 10px 0 0 0;
    }

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

    section.kaslider4 {
      margin: 10px 0 20px 0;
    }

    section.kaslider4 .swiper-button-prev,
    section.kaslider4 .swiper-button-next {
      width:35px;
      height:35px;
    }
    section.kaslider4 .swiper-button-prev {
      left:25px;
    }
    section.kaslider4 .swiper-button-next {
      left:auto;
      right: 25px;
    }

    section.kalist .items .item {
      grid-template-columns: 1fr;
    }

    section.kaabout .alinks .alink {
      width: 130px;
      height: 130px;
      border-radius: 25px;
      padding: 5px;
    }

    section.kaabout .alinks .alink:nth-child(1) {
      transform: translate(-50%, -50%) rotate(62deg) translate(165px) rotate(-62deg);
    }

    section.kaabout .alinks .alink:nth-child(2) {
      transform: translate(-50%, -50%) rotate(118deg) translate(165px) rotate(-118deg);
    }

    section.kaabout .alinks .alink:nth-child(3) {
      transform: translate(-50%, -50%) rotate(180deg) translate(115px) rotate(-180deg);
    }

    section.kaabout .alinks .alink:nth-child(4) {
      transform: translate(-50%, -50%) rotate(242deg) translate(165px) rotate(-242deg);
    }

    section.kaabout .alinks .alink:nth-child(5) {
      transform: translate(-50%, -50%) rotate(297deg) translate(165px) rotate(-297deg);
    }

    section.kaabout .alinks .alink:nth-child(6) {
      transform: translate(-50%, -50%) rotate(360deg) translate(120px) rotate(-360deg);
    }
    section.kaabout .alinks .alink .headline {
      margin: 0 0 5px 0;
      font-size: 14px;
      line-height: 16px;
      padding: 0;
    }
    section.kaabout .alinks .alink .text p {
      font-size: 11px;
      line-height: 13px;
    }

    section.karecslider .swiper-container {
      max-width: calc(100% - 00px);
    }

    section.kalinks.colorbox .column {
      min-height: 140px;
    }

    section.kalinks.colorbox .column .image_container {
      margin: 0 10px 0 0;
    }
    section.kalinks.colorbox .grid .column a .button {
      font-size: 20px;
      line-height: 22px;
      font-weight: 600;
    }

    .bkfixed1 * {
      line-height: 25px;
    }

    .mod_newslist {
      grid-template-columns: 1fr;
      grid-column-gap: 20px;
      grid-row-gap: 20px;
    }

    body.home #main .textimg {
      max-width: 100%;
    }
    body.home #main .textimg.limit1400 {
      max-width:calc(100% - 2 * var(--ka-mobile-border));
    }

    #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: 0px;
      padding-right: 0px;
    }

    #main .textimg .textblock {
      min-height: 100px;
    }

    body.home #main .textimg .textblock {
      padding: 10px;
      min-height: 100px;
      max-width:calc(100% - 20px);
    }

    body.home #main .textimg .left .headline,
    body.home #main .textimg .left .text,
    body.home #main .textimg .right .headline,
    body.home #main .textimg .right .text,
    body.home #main .textimg .left .button,
    body.home #main .textimg .right .button {
      padding: 5px 0;
    }

    #main .textimg .left .flexcontainer .imgblock {
      order: 2;
    }
    #main .textimg .left .flexcontainer .textblock {
      order: 1;
    }

    #main .textimg .right .flexcontainer {
      display: flex;
      flex-direction: column;
    }

    #main .textimg .flexcontainer .imgblock {
      width: 100%;
    }
    #main .textimg .flexcontainer .textblock {
      width: 100%;
    }


    #main .textimg .right .flexcontainer .imgblock {
      order: 2;
    }
    #main .textimg .right .flexcontainer .textblock {
      order: 1;
    }

    #main .limit1000 .textcenter {
      width: calc(100% - 40px);
    }

    #main .limit1000 .textcenter h1 {
      font-size: 24px;
      line-height: 28px;
    }

    #main .limit1000 .textcenter h2 {
      font-size: 22px;
      line-height: 24px;
    }



    .text2col .textblock.right {
        text-align:left;
    }

    .bildlink .image {
        width: calc(50% - 12px);
    }
    #cboxCurrent {
        bottom:5px !important;
        top: auto;
        right:10px;
    }
    .widget-radio legend {
        max-width: 33%;
    }
    fieldset.checkbox_container {
        margin-bottom: 5px;
    }

    fieldset.checkbox_container legend {
        margin-bottom: 10px;
    }
    fieldset.checkbox_container > span {
        margin-left:0;
        top:0;
        float: none;
        clear: both;
    }


    fieldset {
      /*
      width: calc(100% - 2 * var(--ka-mobile-border));
      max-width: calc(100% - 2 * var(--ka-mobile-border));
      */
    }

    input.text,
    input.password,
    input.captcha,
    textarea,
    .submit,
    fieldset.checkbox_container {
      margin-right:0;
      margin-left:0;
      width:calc(100% - 0 * var(--ka-mobile-border) - 4px);
      max-width:calc(100% - 0 * var(--ka-mobile-border) - 4px);
    }
    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);
    }

    .projects {
        margin: 0;
    }
    .projects .col25 {
      width:50%;
    }
    .projects .col25 p {
      font-size: 12px;
      line-height: 15px;
    }
    #main .projectlink.hover .headline {
      font-size: 20px;
      line-height: 24px;
    }
    #main .projectlink.hover .textblock .text {
      margin-top: 5px;
    }

    #main .ce_youtube iframe,
    #main .ce_vimeo iframe {
      width: 100% !important;
    }

    #banner .mod_newslist .news-blog.col3 .blogtext h4 {
      font-size:36px;
      line-height:40px;
    }
    #main .mod_newslist .news-blog.col3 {
      width:100%;
    }

    #footer {
      display:inline-block;
      height:100%;
    }
    #footer .inside {
      height:100%;
      padding-right:5px;
      padding-left:5px;
      width:calc(100% - 10px);
      /*display:inline-block;*/
    }
    .footer-cols {
      padding-top: 25px;
    }
    .footer-std {
      padding-bottom: 60px;
    }
    .mod_footer_copyright,
    #footer .socials,
    .mod_footer_navi {
      margin:0;
      text-align:center;textc
    }
    .mod_footer_navi ul {
      max-width:100%;
      display:inline-block;
    }
    .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;
      white-space: nowrap;
    }

    #footer .partner .text {
      text-align: center;
    }

    #footer .partner .logos {
      flex-direction: column;

    }

    div.ce_toplink {
      width: 35px;
      height: 35px;
    }
}

/* ****************************************************************************************************************** */
/* --- max-height: 750px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-height: 750px) {
  body.home #banner,
  body.home #banner .ainside {
      height: 80vh !important;
      min-height: 450px !important;
  }
}

/* ****************************************************************************************************************** */
/* --- max-height: 600px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-height: 600px) {
  body.home #banner,
  body.home #banner .ainside {
      height: 95vh !important;
      min-height: 350px !important;
  }
}

