html, body { height: 100.1%; margin: 0; padding: 0; font-size: 20px;}
body {
    font-family: 'Nunito Sans', sans-serif;
    line-height: 1.2;
    font-weight: 300;
    letter-spacing: .5px;
    background: #fff;
    color: #111; 
}
@media(max-width: 1199px) {
    html, body { font-size: 18px; }
}
@media(max-width: 991px) {
    html, body { font-size: 16px; }
}
@media(max-width: 575px) {
    html, body { font-size: 14px; }
}
/*
text:       000
hellgrau    ddd   
dunkelgrün: 41838A
hellgrün:   63BCBE

Farbverlauf: http://www.colorzilla.com/gradient-editor/#0070ba+0,00a1d4+53,95c11f+100
*/

/* bootstrap anpassungen */
@media(min-width: 1200px) {
    .container { max-width: 1590px; }    
}

/* ### Standard-Elemente ########################### */

/* Überschriften */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Nunito Sans', sans-serif;
    font-weight: 400;
    color: #012C3C;
    line-height: 1.15;
    margin-top: .5em;
}
h1,
h2 { font-size: 2.4rem; }
h3 { font-size: 1.75rem; }
h4 { font-size: 1.5rem; }
h5 { font-size: 1.25rem }
h6 { font-size: 1.1rem }
/*
div h2:first-child,
div h3:first-child,
div h4:first-child,
div h5:first-child,
div h6:first-child { margin-top: 0; }
*/

/* Links */
a,
a:focus, 
a:hover, 
a:active { outline: 0 !important; }

a,
a:not([href]):not([tabindex]) { 
    color: #41838A; text-decoration: none; font-weight: 400; -webkit-transition: all .6s; transition: all .6s; cursor: pointer; 
}
a:focus,
a:hover,
a:active { color: #45566D; text-decoration: none; }


/* Buttons */
.btn { 
    margin-right: 12px;
    padding: 7px 14px 5px;
    -webkit-transition: all .9s;
            transition: all .9s;
    white-space: inherit;
            border-radius: 0px 0px 0px 0px;
       -moz-border-radius: 0px 0px 0px 0px;
    -webkit-border-radius: 0px 0px 0px 0px;
    
}
.btn-primary { background-color: #41838A; border-color: #41838A; color:#fff; min-width: 235px; }
.btn-primary:focus,
.btn-primary:hover,
.btn-primary:active { background-color: #45566D; border-color: #45566D; }


/* Listen */
ul { padding: 0; padding-left: 1.2rem; }
#main li { list-style-image: url(images/li8_2.png); padding-left: 2px; }

b, strong { font-weight: 700; color: #012C3C; }

/* ======================================================== */
/* ICONS */
.ico { width: 40px; height: 40px; }


.ico-black .cls-1     { stroke:#000 !important; }
.ico-white .cls-1     { stroke:#fff !important; }
.ico-green .cls-1     { stroke:#63BCBE !important; }
.ico-darkgreen .cls-1 { stroke:#41838A !important; }


/* align-items */
.items-center {
      -webkit-box-align: center;
         -moz-box-align: center;
         -ms-flex-align: center;
    -webkit-align-items: center;
            align-items: center;
}
/* margin-bottom */
.margin-bottom-5   { margin-bottom:5px;  }
.margin-bottom-15  { margin-bottom:15px; }
.margin-bottom-30  { margin-bottom:30px; }
.margin-bottom-60  { margin-bottom:60px; }

/* Section-Space */

.space-1 { padding-top: 1rem; padding-bottom: 0; }
.space-3 { padding-top: 3rem; padding-bottom: 2rem; }
.space-5 { padding-top: 5rem; padding-bottom: 4rem; }

.space-1.space-top { padding-bottom: 0; }
.space-3.space-top { padding-bottom: 0; }
.space-5.space-top { padding-bottom: 0; }

.space-1.space-bottom { padding-top: 0; }
.space-3.space-bottom { padding-top: 0; }
.space-5.space-bottom { padding-top: 0; }



/* space2: top = margin-bottom + 60px */
/*
.space-2-top.bottom-0   { padding-top:60px;  padding-bottom:0; }
.space-2-top.bottom-5   { padding-top:65px;  padding-bottom:0; }
.space-2-top.bottom-15  { padding-top:75px;  padding-bottom:0; }
.space-2-top.bottom-30  { padding-top:90px;  padding-bottom:0; }
.space-2-top.bottom-60  { padding-top:120px; padding-bottom:0; }

.space-2.bottom-0   { padding-top:60px;  padding-bottom:calc(60px - 1rem) }
.space-2.bottom-5   { padding-top:65px;  padding-bottom:calc(60px - 1rem) }
.space-2.bottom-15  { padding-top:75px;  padding-bottom:calc(60px - 1rem) }
.space-2.bottom-30  { padding-top:90px;  padding-bottom:calc(60px - 1rem) }
.space-2.bottom-60  { padding-top:120px; padding-bottom:calc(60px - 1rem) }

.space-2-bottom.bottom-0   { padding-top:0px;  padding-bottom:calc(60px - 1rem) }
.space-2-bottom.bottom-5   { padding-top:0px;  padding-bottom:calc(60px - 1rem) }
.space-2-bottom.bottom-15  { padding-top:0px;  padding-bottom:calc(60px - 1rem) }
.space-2-bottom.bottom-30  { padding-top:0px;  padding-bottom:calc(60px - 1rem) }
.space-2-bottom.bottom-60  { padding-top:0px;  padding-bottom:calc(60px - 1rem) }

@media(max-width: 575px) {
    .space-2-top.bottom-0   { padding-top:30px;  padding-bottom:0; }
    .space-2-top.bottom-5   { padding-top:35px;  padding-bottom:0; }
    .space-2-top.bottom-15  { padding-top:45px;  padding-bottom:0; }
    .space-2-top.bottom-30  { padding-top:60px;  padding-bottom:0; }
    .space-2-top.bottom-60  { padding-top:90px;  padding-bottom:0; }
    
    .space-2.bottom-0   { padding-top:30px;  padding-bottom:calc(30px - 1rem) }
    .space-2.bottom-5   { padding-top:35px;  padding-bottom:calc(30px - 1rem) }
    .space-2.bottom-15  { padding-top:45px;  padding-bottom:calc(30px - 1rem) }
    .space-2.bottom-30  { padding-top:60px;  padding-bottom:calc(30px - 1rem) }
    .space-2.bottom-60  { padding-top:90px;  padding-bottom:calc(30px - 1rem) }
    
    .space-2-bottom.bottom-0   { padding-top:0px;  padding-bottom:calc(30px - 1rem) }
    .space-2-bottom.bottom-5   { padding-top:0px;  padding-bottom:calc(30px - 1rem) }
    .space-2-bottom.bottom-15  { padding-top:0px;  padding-bottom:calc(30px - 1rem) }
    .space-2-bottom.bottom-30  { padding-top:0px;  padding-bottom:calc(30px - 1rem) }
    .space-2-bottom.bottom-60  { padding-top:0px;  padding-bottom:calc(30px - 1rem) }

}
*/
/*
div[class*="col"] p:last-child { margin-bottom: 0; }
.row > div:first-child p:last-child { margin-bottom: 1rem; }
*/
.tc-bright { color: #fff; }

.bg-primary   { background-color: #45566D !important; }
.bg-secondary { background-color: #41838A !important; }
.bg-white     { background-color: #fff; }
.bg-gray      { background-color: rgba(221, 221, 221, 0.5); }
.bg-darkgray  { background-color: rgba(221, 221, 221, 1); }
.bg-dark      { background-color: #012C3C; }

/* sonstige Hilfsklassen und CKEditor-Klassen */
span.marker { background: rgba(255,237,0,.4); }
span.txt-colored { color: #41838A; }
a.download-pdf {  }
a.download-pdf:before { content: "\f1c1"; font: normal normal normal 14px/1 FontAwesome; padding-right: 5px; font-size: 1.2rem;}
li a.download-pdf:before { font-size: 1rem;}

a.phone:before  { content: "\f095"; font: normal normal normal 14px/1 FontAwesome; padding-right: 5px; font-size: 1.1rem; width: 1.5em;
    text-align: center; display: inline-block; }
a.mobile:before { content: "\f10b"; font: normal normal normal 14px/1 FontAwesome; padding-right: 5px; font-size: 1.1rem; width: 1.5em;
    text-align: center; display: inline-block; }
a.mail:before   { content: "\f0e0"; font: normal normal normal 14px/1 FontAwesome; padding-right: 5px; font-size: 1.1rem; width: 1.5em;
    text-align: center; display: inline-block; } /*\f003*/

.btn-full { display: block; width: 100%; min-width: inherit; text-align: center; margin-right: 0; }

.kleingedrucktes p { font-size: .8rem; font-weight: 300; }

p.intro { font-size: 1.2rem; font-weight: 400; }


/* ### Container-Elemente ########################### */
.noscript_warning {  }
/* wrapper */
.w1 {}
.w2 {}
.w3 { position: relative; }




/* HEADER ########################### */
#header { z-index: 1000; }
#header > .container { position: relative; }

#header.headroom-header { height: 104px; }
#main { margin-top: 104px; }
#A1 #main { margin-top: 0; }

/*#logo { z-index: 101; width: 64px; height:104px; display: inline-block; position: absolute; top: 0; left: 15px; }*/
#logo { z-index: 101; width: 264px; height:56px; display: inline-block; position: absolute; top: 24px; left: 15px; padding: 5px 10px; /*background: rgba(255,255,255,.95);*/ }

/* NAVI ############################# */
#navtog { position: fixed; left: inherit; bottom: inherit; top:23px; right: 25px; z-index: 2100; display: block;}
/* hamburger */
.hamburger { }
#navtog .hamburger.is-active:hover, 
#navtog .hamburger:hover {
    opacity: 1;
}
.hamburger-inner, 
.hamburger-inner:after, 
.hamburger-inner:before {
    height: 3px;
    width: 33px;
}
#A1 .hamburger-inner, 
#A1 .hamburger-inner:after, 
#A1 .hamburger-inner:before {
    background-color: #fff;
}

#top-nav { position: fixed; left: inherit; bottom: inherit; top: 27px; right: 0; padding-right: 75px; z-index: 1240; }
a.homelink { font-size: 36px; margin-right: 40px; color: #000; display: block; }
#A1 a.homelink { color: #fff; }
.hnav-link { display: none; }
#top-nav .hnav-link.active { color: #000 }
#top-nav .hnav-link { padding: 20px 10px; margin: 0 10px; line-height: 50px;  }
#top-nav .hnav-link .ico { margin-top: -4px; }

#A1 #top-nav.headroom-header.headroom--top a.hnav-link { color:#fff; }
#A1 #top-nav.headroom-header.headroom--top { background: rgba(0,0,0,.25); }

#mainnav {
    display: none;
    position: fixed; top:0; right: 0; bottom: 0; left: 0; width: 100%; z-index: 2000;
    background: rgba(0,0,0,.8); 
    overflow-y: auto;
}
#mainnav li { list-style-image: none; list-style-type: none; }
#mainnav .nav-item { padding: 5px 0; }
#mainnav .nav-link,
#mainnav .subnav-link { display: block; font-size: 2rem; color: #fff; font-weight: 300; cursor: pointer; padding: .5rem 1rem; line-height: 1.2; }
#mainnav .nav-link { text-transform: uppercase; }
#mainnav .nav-link:after {
    display:block;
    content: '';
    border-bottom: solid 2px #63BCBE;  
    -webkit-transform: scaleX(0);
       -moz-transform: scaleX(0);
        -ms-transform: scaleX(0);
         -o-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transition: transform 250ms ease-in-out;
       -moz-transition: transform 250ms ease-in-out;
         -o-transition: transform 250ms ease-in-out;
        -ms-transition: transform 250ms ease-in-out;
            transition: transform 250ms ease-in-out;
}
#mainnav .nav-link:hover:after,
#mainnav .active > .nav-link:after {
    -webkit-transform: scaleX(1);
       -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
         -o-transform: scaleX(1);
            transform: scaleX(1);    
    -webkit-transform-origin:  0% 50%;
       -moz-transform-origin:  0% 50%;
        -ms-transform-origin:  0% 50%;
         -o-transform-origin:  0% 50%;
            transform-origin:  0% 50%;
}
#mainnav .subnav-link.active,
#mainnav .subnav-link:focus,
#mainnav .subnav-link:hover,
#mainnav .subnav-link:active { color: #45566D }

@media(min-width: 1600px) {
    #top-nav {  min-width: 625px; }
}
@media(max-width: 991px) {
    #top-nav { padding-left: 15px; }
}
@media(min-width: 992px) {
    #navtog { display: none; }
    a.homelink,
    #A1 a.homelink { display: none; }
    #top-nav {  right: 0; padding-right: 35px; }
    .hnav-link { display: inline; }
}
@media(min-width: 992px) {
    #mainnav .fs-row {
        height: 100%!important;
        -ms-flex-align: center!important;
           align-items: center!important;
    }
    #mainnav .navi > .nav-item { width: 50%; }
    #mainnav .nav-link { padding-right: 0; }
    #mainnav .subnav-link { padding-right: 1rem; }
    #mainnav .subnav { 
        position: absolute; top: 0; right: 0; width: 50%; 
        opacity: 0; 
        height: 100%!important;
        display: -ms-flexbox!important;
        display: flex!important;
        transition: all 500ms ease-in-out;
        transform: translateX(10%);
        z-index: -1;
    }
    #mainnav .subnav .subnav-link { text-transform: inherit; }
    #mainnav .active .subnav { 
        opacity: 1; 
        transform: translateX(0);
        z-index: inherit;
    }
}
@media(max-width: 991px) {
    #mainnav .fs-row {
        padding-top: 104px;
        padding-bottom: 100px;
        
    }
    #mainnav ul.navi { padding-right: 1.2rem; }
    #mainnav .subnav { 
        padding-left: 1.2rem;
        height: 0; 
        opacity: 0;
        transition: all 300ms ease-in-out;
        transform: translateX(-100%);
    }
    #mainnav .active .subnav {
        height: auto;
        opacity: 1; 
        transform: translateX(0);
    }
}

@media(max-width: 767px) {
    
}
@media(max-width: 575px) {
	#logo { width: 230px; height: 45px; padding: 3px 8px; top: 27px; }
	a.homelink { opacity: 0; width: 0; }
}

#dotnav { position: relative; }
#dotnav > div { position: absolute; top:2rem; left: 15px; }
#dotnav > div ul { 
    position: fixed; 
    padding: 12px; /*Logobreite 64 - Img-Breite / 2 */
    background: rgba(255,255,255,.9); 
    border-radius: 50vh;
    z-index: 10;
}
#dotnav > div ul li { list-style-image: none; list-style-type: none; }
#dotnav > div ul li a { display: block; }
#dotnav > div ul li img {width: 40px; height: 40px; }
@media (max-width: 1199px){
    #dotnav > div { top:1rem; left:8px; }
    #dotnav > div ul { padding: 0;  }
    #dotnav > div ul li { display: inline-block; }
}

/* Auto-Hiding Navbar */
.headroom-header { 
    position: fixed;
    right: 0;
    left: 0;
    top: 0;
    z-index: 1030; 
}
.headroom {
    /*will-change: transform;*/
    -webkit-transition: all 200ms linear;
       -moz-transition: all 200ms linear;
         -o-transition: all 200ms linear;
            transition: all 200ms linear;
}
.headroom--pinned {
    -webkit-transform: translateY(0%);
       -moz-transform: translateY(0%);
        -ms-transform: translateY(0%);
         -o-transform: translateY(0%);
            transform: translateY(0%);
    
}
.headroom--unpinned {
    -webkit-transform: translateY(-150%);
       -moz-transform: translateY(-150%);
        -ms-transform: translateY(-150%);
         -o-transform: translateY(-150%);
            transform: translateY(-150%);
}   
.headroom--bottom {
    -webkit-transform: translateY(0%);
       -moz-transform: translateY(0%);
        -ms-transform: translateY(0%);
         -o-transform: translateY(0%);
            transform: translateY(0%);
}
#A1 .headroom-header.headroom--top {
    background-color:   transparent;
    -webkit-transition: all 500ms ease;
       -moz-transition: all 500ms ease;
         -o-transition: all 500ms ease;
        -ms-transition: all 500ms ease;
            transition: all 500ms ease;
}



#header.headroom-header {
    background-color: rgba(255,255,255,1);
    -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.55);
       -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.55);
            box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.55);
    
}
#A1 #header.headroom-header.headroom--top {
    -webkit-box-shadow: none;
       -moz-box-shadow: none;
            box-shadow: none;
    
}

#A1 .headroom-header.headroom--pinned:not(.headroom--top) a.homelink,
#A1 .headroom-header.headroom--bottom a.homelink { 
    color: #000; 
}
#A1 .headroom-header.headroom--not-top .hamburger-inner,
#A1 .headroom-header.headroom--pinned:not(.headroom--top) .hamburger-inner, 
#A1 .headroom-header.headroom--bottom .hamburger-inner,
#A1 .headroom-header.headroom--not-top .hamburger-inner:after, 
#A1 .headroom-header.headroom--pinned:not(.headroom--top) .hamburger-inner:after, 
#A1 .headroom-header.headroom--bottom .hamburger-inner:after,
#A1 .headroom-header.headroom--not-top .hamburger-inner:before, 
#A1 .headroom-header.headroom--pinned:not(.headroom--top) .hamburger-inner:before, 
#A1 .headroom-header.headroom--bottom .hamburger-inner:before {
    background-color: #000;
}
#A1 #top-nav.headroom-header.headroom--top .ico .cls-1 { 
    stroke:#fff !important; 
}

#navtog .is-active .hamburger-inner, 
#navtog .is-active  .hamburger-inner:after, 
#navtog .is-active  .hamburger-inner:before {
    background-color: #fff !important;
}




/* MAIN ###########################*/
#main { min-height: 300px; background: transparent; padding:0;}
#A1 #main { padding-top: 0; }

/* FOOTER ###########################*/
#footer .footer-content { 
    background: #63BCBE; padding: 1.6rem 0 .5rem; 
}
#footer .copyright-content { 
    background: #012C3C; 
    padding: 1.6rem 0 .5rem; 
}
#footer a { color: #fff; display: inline-block; margin-right: 1.5rem; }
#footer a:last-child { margin-right: 0; }
#footer a.top-link {
    -webkit-transform: rotate(90deg);
       -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
         -o-transform: rotate(90deg);
            transform: rotate(90deg);
}
#footer .footer-content .ico { width: 30px; margin-top: -4px; }
#footer .footer-content a:focus .ico-white .cls-1,
#footer .footer-content a:hover .ico-white .cls-1,
#footer .footer-content a:active .ico-white .cls-1 { stroke:#012C3C !important; }  
#footer .footer-content a:focus,
#footer .footer-content a:hover,
#footer .footer-content a:active { color: #012C3C; }

#footer .copyright-content a:focus,
#footer .copyright-content a:hover,
#footer .copyright-content a:active { color: #ddd; }


.but_sm_holder { text-align: center; margin: -20px 0 1em; }
.but_sm { 
    display: inline-block;
    width: 42px;
    line-height: 40px;
    border-radius: 50%;
    background: #0b72b5;
    color: #fff;
    font-size: 1.5em;
    margin: 0 5px;
    transition: all .3s ease;
    border: 1px solid #0b72b5;
}
.but_sm:focus, .but_sm:hover, .but_sm:active { color: #0b72b5; background: #fff; border-color: #0b72b5; }
.but_sm span { position: absolute; top:-32000px; left: -32000px; }





/* SPECIAL ELEMENTS ###########################*/
label.control-label { font-size: 14px; margin-bottom: 1px; }
.forminfo {
    margin: 25px 0 15px; font-size: 80%;
}
.formcheckbox label input{
    margin-top: -5px;
}
.form-group { margin-bottom: 10px; }



/* Back to Top */
a.back-to-top {
    display: none;
    position: absolute;
    top:-1px;
    right:8px;
    font-size: 1.5em; 
    line-height: 35px;
    width: 35px;
    text-align: center;
    color: #2a7cc0;
    background: #fff;
    opacity: .5;
    -webkit-box-shadow: 0px 0px 5px -1px rgba(0,0,0,0.35);
       -moz-box-shadow: 0px 0px 5px -1px rgba(0,0,0,0.35);
            box-shadow: 0px 0px 5px -1px rgba(0,0,0,0.35);
            border-radius: 4px 4px 4px 4px;
       -moz-border-radius: 4px 4px 4px 4px;
    -webkit-border-radius: 4px 4px 4px 4px;
    border: 1px solid #ddd;
}
a.back-to-top:focus,
a.back-to-top:hover,
a.back-to-top:active { color: #000; opacity: 1; }

.img-circle { 
    border: 2px solid transparent; 
    -webkit-transition: all 0.5s;
       -moz-transition: all 0.5s;
            transition: all 0.5s;
}
.img-circle:hover { border-color: #0A3278; }

.img-zoom { position: relative; overflow: hidden; }
.img-zoom img { 
       -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
            transition: all 0.3s;
}
.img-zoom:hover img {
       -moz-transform: scale(1.1);
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
}

.mfp-title span.copyright { display: block; font-size: 85%; opacity: .8; }

/* pagination */
.rex-nav-pagination { text-align: center; margin-bottom: 20px; }
.rex-nav-pagination .pagination { margin-bottom: 5px; }

/* 
    ##############################################
    ##############################################
*/

/* MODULE */
/********** MODUL Einzelne Ueberschrift **********/
/* Headline*/
.headline h1,
.headline h2,
.headline h3,
.headline h4,
.headline h5,
.headline h6 {}

.headline-v1 h1,
.headline-v1 h2,
.headline-v1 h3,
.headline-v1 h4,
.headline-v1 h5,
.headline-v1 h6 {
    position: relative;
    /*border-bottom: 2px solid #338dc9;*/
    /*padding-bottom: 10px;*/
    padding: 0 0 60px;
    margin-bottom: 1rem;  
}
.headline-v1 h1::after, 
.headline-v1 h2::after, 
.headline-v1 h3::after, 
.headline-v1 h4::after, 
.headline-v1 h5::after, 
.headline-v1 h6::after {
    content: '';
    width: 50%;
    position: absolute;
    left: 25%;
    bottom: -2px;
    height: 2px;
    background: #63BCBE;
}
.bg-primary .headline-v1 h2::after,
.bg-secondary .headline-v1 h2::after,
.bg-dark .headline-v1 h2::after{
    background: #fff;
}

.headline-v1 {
    margin-top: 2em;
}
.headline-v1 h2 {
    font-size: 4.45rem;
    margin-top: .25em;
}

.headline .hl-top {
    margin-bottom: 0; font-size: .9rem; color: #909696;
}
@media(max-width: 575px) {
    .headline-v1 h2 {
        font-size: 3rem;
    }
    .headline-v1 h1,
    .headline-v1 h2,
    .headline-v1 h3,
    .headline-v1 h4,
    .headline-v1 h5,
    .headline-v1 h6 {
        padding-bottom: 30px;
    }
}

/********** MODUL Einzelne Ueberschrift **********/



/********** MODUL Standardinhalt **********/
/* figure-holder */
.img-intxt {display: inline-block; margin-bottom: .3rem}
.img-intxt.img-left { float: left; margin-right: 1rem;}
.img-intxt.img-right { float: right; margin-left: 1rem;}
.img-intxt + p { margin-top: -5px; }
.img-intxt figure, 
.img-txtbottom figure { margin-bottom: 0; }

.img-txttop.img-center,
.img-txtbottom.img-center { text-align: center; } 
.img-txttop.img-right,
.img-txtbottom.img-right { text-align: right; } 
.img-txttop.img-left, 
.img-txttop.img-right,
.img-txtbottom.img-left, 
.img-txtbottom.img-right { float: none; margin-left: 0; margin-right: 0; }

figcaption { padding: 0 4px; background: #ddd; font-size: .8rem; }
figcaption span { display: block; }
figcaption span.img-copyright { display: block; font-size: .9em; line-height: inherit; }

@media(max-width: 767px) {
    .img-large.img-left,
    .img-large.img-right { float: none; margin-left: 0; margin-right: 0; }
}
@media(max-width: 575px) {
    .img-medium.img-left,
    .img-medium.img-right { float: none; margin-left: 0; margin-right: 0; }
}

/* Video-Plyr default-color #1aafff / rgb(26,175,255) */ 
.plyr--audio .plyr__control.plyr__tab-focus,
.plyr--audio .plyr__control:hover,
.plyr--audio .plyr__control[aria-expanded=true] {
    background: rgba(26,175,255,1);
    color: #fff;
}
.plyr--video .plyr__control.plyr__tab-focus,
.plyr--video .plyr__control:hover,
.plyr--video .plyr__control[aria-expanded=true] {
    background: rgba(26,175,255,1);
    color: #fff
}
.plyr__control--overlaid {
    background: rgba(26,175,255,.8);
    box-shadow: 0 1px 1px rgba(0,0,0,.15);
    color: #fff;
}
.plyr__control--overlaid:focus,
.plyr__control--overlaid:hover {
    background: rgba(26,175,255,1);
}
.plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]::before {
    background: rgba(26,175,255,1);
}
.plyr--full-ui input[type=range] {
    color: rgba(26,175,255,1);
}
.plyr__control.plyr__tab-focus,
.plyr--full-ui input[type=range].plyr__tab-focus::-webkit-slider-runnable-track,
.plyr--full-ui input[type=range].plyr__tab-focus::-moz-range-track,
.plyr--full-ui input[type=range].plyr__tab-focus::-ms-track {
    box-shadow: 0 0 0 5px rgba(26,175,255,.5);
}

/* Bildergallerie */
.gallery-item { margin-bottom: 1rem; }
.gallery-item a { 
    display: block; overflow: hidden; line-height: 0;
    -webkit-box-shadow: 0px 15px 15px 0px rgba(0,0,0,0.16);
       -moz-box-shadow: 0px 15px 15px 0px rgba(0,0,0,0.16);
            box-shadow: 0px 15px 15px 0px rgba(0,0,0,0.16); 
}
.gallery-item img { 
    width: 100%;
    transition: all .5s;
}
.gallery-item:hover img {
    transform: scale(1.04);
}
/********** MODUL Standardinhalt **********/
.cooperations figure { padding: 15px; background: #fff; }
@media(max-width: 991px) {
    .img-mw-200 img { max-width: 200px !important; }
}


/********** MODUL Intro-Block **********/
.intro p { font-size: 1.25rem; }
/********** MODUL Intro-Block **********/


/********** MODUL Bilder-Navigation **********/
.img-links { margin-bottom: 1rem; }
.img-links a { 
    display: block; 
}
.img-links a h4 { 
    color: #012C3C; 
    font-size: 1.5rem; 
    margin-bottom: -.75rem; 
    transition: color .5s; 
}
.img-links a:hover h4 {
    
}
.img-links figure { 
    margin-bottom: 0; 
    overflow: hidden; line-height: 0;
    -webkit-box-shadow: 0px 15px 15px 0px rgba(0,0,0,0.16);
       -moz-box-shadow: 0px 15px 15px 0px rgba(0,0,0,0.16);
            box-shadow: 0px 15px 15px 0px rgba(0,0,0,0.16);
}
.img-links img { 
    width:100%; 
    transition: all .5s;  
}
.img-links a:hover img {
    transform: scale(1.04);
}


.img-links .rounded-circle { 
    border: 2px solid transparent; 
    -webkit-transition: all 0.5s;
       -moz-transition: all 0.5s;
            transition: all 0.5s;
}
.img-links .rounded-circle:hover { border-color: #41838A; }

@media(max-width: 575px) {
    .img-links a h4 { margin-bottom: .5rem; }
    .img-links:last-child a h4 { margin-bottom: -.75rem; }
}
/********** MODUL Bilder-Navigation **********/



/********** MODUL Masterslider **********/
.ms-view { background: transparent; }

/* STARTSEITE */
.master-slider a.scroll-down {
    position: absolute;
    bottom: 65px;
    left: 45%;
    background: rgba(0,0,0,.25);
    z-index: 2;
    display: inline-block;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    color: #fff;
    letter-spacing: .1em;
    text-decoration: none;
    transition: opacity .3s;
    border: 1px solid #fff;
    border-radius: 50%;
    padding: 10px 9px 10px 11px;
}
@media(max-width: 991px) {
    .master-slider a.scroll-down {left: 18%;}
}
@media(max-width: 475px) {
    .master-slider a.scroll-down {display: none;}
}
.ms-layer h2,
.ms-layer h3 { color: #fff; font-weight: 700; font-family: 'Nunito Sans', sans-serif; line-height: 1 }
.ms-layer h2 { font-size: 7.5rem; max-width: 1440px; }
.ms-layer h2 em { font-style: normal; display: inline-block; margin-left: 5.5rem; }
.ms-layer h3 { font-size: 3.9rem }
@media(max-width: 1600px) {
    .ms-layer h2 { font-size: 6.5rem; }
}
@media(max-width: 1400px) {
    .ms-layer h2 { font-size: 6rem; }
}
@media(max-width: 1024px) {
    .ms-layer h2 { font-size: 5rem; }
}
@media(max-width: 766px) {
    .ms-layer h2 { font-size: 5.5rem; }
}
@media(max-width: 575px) {
    .ms-layer h2 { font-size: 4rem; margin-top: 33% !important; }
    .ms-layer h3 { font-size: 3.5rem; margin-top: 1rem; }
}
@media(max-width: 374px) {
    .ms-layer h2 { font-size: 4.3rem; margin-top: 32% !important; }
    .ms-layer h3 { font-size: 3.0rem; margin-top: 1.5rem; }
}

@media(max-height: 700px) and (min-width: 1000px) {
    .ms-layer h2 { font-size: 4rem; margin-top: 22% !important; margin-left: -25px; }
}
@media(max-height: 450px) {
    .ms-layer h2 { font-size: 4rem; margin-top: 22% !important; margin-left: -25px; }
    .master-slider a.scroll-down { display: none; }
}
@media(max-height: 375px) {
    .ms-layer h2 { font-size: 3rem; margin-top: 46% !important; margin-left: -45px; }
}
@media (max-height: 375px) and (min-width: 800px) {
    .ms-layer h2 { font-size: 4rem; margin-top: 22% !important; margin-left: -25px; }
}

.top-news * { box-sizing: border-box; }
.top-news {
    position: absolute; 
    bottom: 120px; right: 0px;
    width: 100%;
    max-width: 475px;
    background: rgba(0,0,0,0.8);
    padding: 60px 30px 30px 120px; 
}
.top-news span { 
    position: absolute;
    left: 120px;
    top: 36px;
    color: #999;
    font-size: 0.7em;
    /* transform: rotate(-90deg); */
}
.top-news h3 {
    font-size: 1.25rem; color: #fff; margin-top: 0;
}
.top-news a { color: #fff; display: block; }
.master-slider .top-news img { max-width: 100%; }
.top-news .news-image {
    position: relative;
}
.top-news .news-text {
    position: absolute; top: 0; left: 0; bottom: 0; right: 0; 
    background: rgba(99, 188, 190, .9);
    padding: 50px; 
    color: #fff;
    overflow: hidden;
    font-size: .9rem;
    opacity: 0;
    -webkit-transition: opacity 0.5s;
       -moz-transition: opacity 0.5s;
            transition: opacity 0.5s;
}
.top-news .news-image:hover .news-text {
    opacity: 1;
}
.top-news .news-text .more {
    position: absolute; bottom: 0;
    background: rgba(99, 188, 190, .9);
    line-height: 60px;
    padding: 0 50px;
    margin: 0 -50px;
    width: 100%;
    
}
.news-text .more img {
    float: right;
    width: 50px;
    margin-top: 5px;
    -webkit-transform: rotate(180deg);
       -moz-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
         -o-transform: rotate(180deg);
            transform: rotate(180deg);
}
@media(max-width: 1599px) {
    .top-news { max-width: 475px; bottom: 4vh; right: 0px; padding: 50px 30px 30px 75px;  }
    .top-news span { left: 75px; top: 29px; }
    .top-news .news-text { padding: 50px; }
    .top-news .news-text .more { padding: 0 50px; margin: 0 -50px; }
}
@media(max-width: 1199px) {
    .top-news { max-width: 400px; bottom: 50px; }
    .top-news .news-text { padding: 30px; }
    .top-news .news-text .more { padding: 0 30px; margin: 0 -30px; }
}
@media(max-width: 991px) {
    .top-news { max-width: 360px; bottom: 0px; padding: 30px 0 20px 40px; }
    .top-news span { left: 40px; top: 15px; }
    .top-news .news-text { opacity: .85; }
    .top-news .news-text .more { line-height: 45px; }
    .news-text .more img { width: 44px; margin-top: 0; }
}
@media(max-width: 574px) {
    .top-news { max-width: 300px; }
}
/*
.slider-holder { margin-left: -16px; margin-right: -16px; margin-top: -50px; }
.ms-title-headline h2 {
    margin-bottom: 15px; padding: 10px 15px; font-size: 2.2rem; background: rgba(255,255,255,.8); font-weight: 700; text-align: center;
}
@media(max-width: 1199px) {
    .ms-title-headline h2 { margin-bottom: 0; font-size: 2rem; }
}
@media(max-width: 767px) {
    .ms-title-headline h2 { font-size: 1.5rem; padding: 4px 15px 5px; }
}
@media(max-width: 575px) {
    .ms-title-headline h2 { font-size: 1.2rem; }
}
@media(max-width: 474px) {
    .ms-title-headline h2 { font-size: 1rem; }
}
*/

.ms-layer .slider-contact {
    margin-bottom: 0; padding: 15px 40px; 
}
@media(max-width: 1600px) { .ms-layer .slider-contact.tr {margin-top: 10%} }
@media(max-width: 767px) { .ms-layer .slider-contact.tr {margin-top: 15%; } }
@media(max-width: 550px) { .ms-layer .slider-contact.tr {margin-top: 20%; } }


/********** MODUL Masterslider **********/



/********** MODUL Linkliste **********/

ul.linklist { margin-bottom: 0; }
ul.linklist li { padding-bottom: 6px; list-style-image: none !important; } 
ul.linklist li a { line-height: 1.3em; }
ul.linklist .fa-li { font-size: 1.2em; }
.toggle-linklist { cursor: pointer; }
.toggle-linklist i { font-size: 75%; }
.toggle-linklist:hover { color: #0087c9; }

/********** MODUL linkliste **********/


/* Suchergebnisse */
.search_it-title a { display: block; }
.search_it-url { display: block; color: gray; font-weight: 300; font-size: 85%; margin-top: -2px; line-height: 1.3em; }
.hit { background: rgba(255,237,0,.2); }
.search_it-teaser .hit { font-weight: 400; }


.marker { background: rgba(255,237,0,.4); }
#A22 .marker { font-size: 75%; background: transparent; }





/* ======================================================== */
/* bootstrap carousel */
#main .carousel ol li { list-style-image: none; }
.carousel-caption { bottom: inherit; top: 50px; }
.carousel-caption h3 { color: #fff; font-size: 250%; }
.carousel-caption p { line-height: 1em; font-size: 110% }
.carousel-caption p span.desc { display: inline-block; padding: 5px 15px; font-weight: 400; background: rgba(33, 36, 97,.65); }
.carousel-caption p span.b2 {  }
@media (max-width: 992px) {
    .carousel-caption { top: 20px; }
    .carousel-caption h3 { font-size: 200%; }
    .carousel-caption p span.b2 { display: block; }
}
@media (max-width: 767px) {
    .carousel-caption { top: 0px; }
    .carousel-caption h3 { font-size: 95%; margin-bottom: 10px; }
    .carousel-caption p  { font-size: 80%; margin-bottom: 0; margin-left: -15%; margin-right: -15%; }
}
@media (max-width: 350px) {
    .carousel-caption { padding-top: 13px; }
    .carousel-caption p  { font-size: 75%; }
}

/* ======================================================== */
/* Ansprechpartner bootstrap carousel */
.asp-holder { 
    background: -moz-linear-gradient(left, rgba(30,87,153,0) 0%, rgba(221,221,221,0) 49%, rgba(221,221,221,0.5) 50%, rgba(221,221,221,0.5) 100%);
    background: -webkit-linear-gradient(left, rgba(30,87,153,0) 0%,rgba(221,221,221,0) 49%,rgba(221,221,221,0.5) 50%,rgba(221,221,221,0.5) 100%);
    background: linear-gradient(to right, rgba(30,87,153,0) 0%,rgba(221,221,221,0) 49%,rgba(221,221,221,0.5) 50%,rgba(221,221,221,0.5) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001e5799', endColorstr='#80dddddd',GradientType=1 );
}
.asp-row {
    background: #eee;
}
.asp-hl { margin-bottom: 40px; }

.asp-row p {
    margin-bottom: .1rem;
}
.asp-row p.contact { margin: .75rem 0; }
.asp-img { opacity: 1; -webkit-transition: all .4s; transition: all .4s; }
.asp-img.img-hidden { opacity: 0; }
.asp-data {
    padding: .9rem 30px !important; font-size: .9rem; margin-right: -12%; position: relative;
}
.asp-data .name { font-size: 1.5rem; font-weight: 700; }
.asp-data .contact span:first-child { margin-right: 1rem; }
.asp-data .countries { font-size: .9em; padding-top: 1px; }
.asp-data em.select-country { display: inline-block; padding: 1px 5px; background: #012C3C; font-style: normal; font-weight: 400; color: #fff; cursor: pointer; }
.asp-data em.select-country:hover { text-decoration: underline; }

.asp-data .counntry-select-holder {
    display: none;
    position: absolute; 
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: #eee;
}
.asp-data .select-country-close { 
    cursor: pointer;
    -webkit-transition: all .4s; transition: all .4s;
}
.asp-data .select-country-close span { 
    color: #45566D;
}
.asp-data .select-country-close:hover,
.asp-data .select-country-close:hover span{
    color: rgba(69,86,109,0.8);
}
#select-country-holder .select-country { padding: 10px 0; width: 80%; }
#select-country-holder .select-country input { width: 100%; max-width: 500px; padding: 6px 11px; }
#select-country-holder .select-country input:focus,
#select-country-holder .select-country input:focus-visible { outline-color: #45566D; }
#select-country-holder ::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #999; font-size: .8em;
  opacity: 1; /* Firefox */
}
#select-country-holder :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #999; font-size: .8em;
}
#select-country-holder ::-ms-input-placeholder { /* Microsoft Edge */
  color: #999; font-size: .8em;
}

#select-country-holder .select-info { padding: 10px 0; max-width: 500px; font-size: .8em; }

@media (max-width: 1199px) {
    .asp-data { margin-right: 0; }
}

@media (max-width: 992px) {
    .asp-data {
        padding: 1rem 30px !important; font-size: .9rem;
    }
    .asp-data .contact span { display: block; }
    .asp-data .contact span:first-child { margin-right: 0; }
}
@media (max-width: 767px) {

}
@media (max-width: 575px) {
    .asp-holder { background: transparent; }
}
@media (max-width: 350px) {

}

.autocomplete-suggestions { border: 1px solid #999; background: #FFF; overflow: auto; border-top-width: 0px; }
.autocomplete-suggestion { padding: 2px 5px; white-space: nowrap; overflow: hidden; }
.autocomplete-selected { background: #F0F0F0; }
.autocomplete-suggestions strong { font-weight: normal; color: #3399FF; }
.autocomplete-group { padding: 2px 5px; }
.autocomplete-group strong { display: block; border-bottom: 1px solid #000; }

/* ======================================================== */
/* Bild / Download / Tags */
.tag-content { border-top: 1px solid #45566D; border-bottom: 1px solid #45566D; padding: 1rem 0; height: 100% }
.tag-content .tag { font-size: 1.25rem; margin-bottom: 1.5rem; }

.dl-content { text-align: center; border-top: 1px solid #45566D;  }
.dl-content h4 { 
    margin-top: 0; margin-bottom: 1rem; 
    padding: .5rem 0; 
    font-weight: 400; 
    font-family: 'Nunito Sans', sans-serif;  
    font-size: 1rem; 
}
.dl-content > div {
    margin-bottom: 2rem;
}
.dl-content a { color: #000; font-weight: 300; }
.dl-content a:hover,
.dl-content a:focus,
.dl-content a:active { color: #45566D; }
.dl-content .ico { display: inline-block; width: 3rem; }
.dl-content .ico .
.dl-content p { font-size: .9rem; }

.dl-content .modal { text-align: left; }
.dl-content .modal-body { padding-top: 0; }

.dl-content .row { border-bottom: 1px solid #45566D; }
.dl-content .modal .row:last-child { border-bottom: 0; }

.dl-content .modal a { padding-top: .5rem; padding-bottom: .5rem; }
.dl-content .modal a:hover,
.dl-content .modal a:focus,
.dl-content .modal a:active { background-color: rgba(221, 221, 221, 0.5) }


.dl-content .modal-title { font-size: 1.1rem }
.dl-content .modal .ico { margin: 0; width: 2rem; }

@media (max-width: 991px) {
    .tag-content { display: none; }
}

/* ======================================================== */
/* Anregungen */
.anregung {
    background: #45566D;
    padding: 15px;
    cursor: pointer;
    border-radius: 50vh;
    font-size: .9rem;
    -webkit-transition: all .4s; transition: all .4s;
}
.anregung:hover { background: #41838A }
.anregung a { color: #fff; }
.anregung .ico { width: 143px; height: 143px; border-radius: 50%; border: 2px solid #fff; -webkit-transition: all .6s; transition: all .6s;}
.anregung a:hover .ico { 
    border-color: transparent; 
    -webkit-transform: rotate(360deg);
       -moz-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
         -o-transform: rotate(360deg);
            transform: rotate(360deg); 
}
.anregung ico-white .cls-1,
.anregung ico-white .cls-2,
.anregung ico-white .cls-3,
.anregung ico-white .cls-4 { stroke: #fff !important; }
@media (max-width: 767px) {
    .anregung .ico { width: 100%; height: 100%; }
}

/* ======================================================== */
/* Newsteaser */
.news-items-holder{  margin-bottom: 30px; }

.news-latest,
.news-item { height: 100%; position: relative; background: #fff; border: 1px solid #ddd;}

.news-teaser-txt { 
    position: relative; 
    overflow: hidden;
    padding: 2.5rem;
    background: #fff; 
    color: #000;
    -webkit-transition: all .6s;
            transition: all .6s; 
    z-index: 2;
}
.news-teaser-txt h4 { font-size: 1.25rem; margin-top: 0; }
.news-teaser-txt p {font-size: .9rem;}

.news-item .news-teaser-txt { 
    height: 400px;
}

.news-latest .news-teaser-txt {
    height: calc(100% - 6rem);
    margin-top: 6rem;
}
.news-latest .news-teaser-img {
    height: 100%;
    margin-left: 15px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.news-items-holder > div:focus .news-teaser-txt,
.news-items-holder > div:hover .news-teaser-txt,
.news-items-holder > div:active .news-teaser-txt {
    -webkit-transform: translateY(-2.5rem);
       -moz-transform: translateY(-2.5rem);
        -ms-transform: translateY(-2.5rem);
         -o-transform: translateY(-2.5rem);
            transform: translateY(-2.5rem);
}

.news-overflow {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2.5rem;
    background: #fff;
}
.news-overflow:before{
    content: '';
    position: absolute;
    width: 100%;
    height: 40px;
    top:-40px;
    left:0;
    background: rgba(255,255,255,0);
    background:    -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%, rgba(255,255,255,1) 100%);
    background:   linear-gradient(to bottom,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%, rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );
}

.news-more {
    position: absolute;
    color: #fff;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2.5rem;
    padding: 0 2.5rem;
    line-height: 2.5rem;
    background: #45566D;
    z-index: 0;
}
.news-latest .news-more { width: calc(100% - 15px); }

.news-more img{
    float: right;
    width: 50px;
    -webkit-transform: rotate(180deg);
       -moz-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
         -o-transform: rotate(180deg);
            transform: rotate(180deg);
}

.news-back {
    background: rgba(255,255,255,.9);
    padding: .5rem;
    position: fixed;
    width:245px;
    padding-right: 15px;
    top: 12%;
    display: inline-block;
    border-top-right-radius: 50vh;
    border-bottom-right-radius: 50vh;
}
.news-back .ico { width: 40px; }
.news-back span {
    text-transform: uppercase; 
    font-size: .9rem; 
    line-height: 40px; 
    height: 0px;
    float: right;
}
@media (max-width: 1199px) {
    .news-back { width:230px; }
}
@media (max-width: 991px) {
    .news-item .news-teaser-txt { 
        height: auto;
        padding-bottom: 1.5rem;
    }
    .news-more { position: relative; }
    .news-more img {
        width: 35px;
    }
    .news-overflow { display: none;  }
    .news-back { width:216px; padding-top:.4rem; padding-bottom: .4rem; }
}
@media (max-width: 575px) {
    .news-back { display: none !important; }
}

/* ======================================================== */
/* SM-Sharing */
.sm-sharing { position: relative; }
.sm-sharing > span { 
    position: absolute; 
    top: 0; left: 30px;
    line-height: 72px;
    font-size: .8rem;
    font-weight: 700;
    opacity: .5
}
@media (max-width: 475px) {
    .sm-sharing > span {
        left:15px;
        line-height: 58px;
    }
    .shariff li .fab, 
    .shariff li .far, 
    .shariff li .fas {
        width: 40px;
        line-height: 40px;
        font-size: 25px !important;
    }
    .shariff li, 
    .shariff li a {
        height: 40px;
    }
    .shariff .orientation-horizontal li {
        width: 40px;
    }
}

/* ======================================================== */
/* Facts-Counter */
.facts {}
.facts-hl { margin-bottom: 2.4rem }
.counter-holder {border: 1px solid transparent; border-left-color:#909696 }
.facts [class*=col-]:last-child .counter-holder { border-right-color: #909696 }
.counter { padding: 1.5rem 1.5rem 0;  }
.counter i.fa {}
.counter .num-counter { font-size: 4rem; font-weight: 700; color: #45566D; margin-bottom: 0.5rem;}
.counter .info { font-weight: 400; margin-bottom: 0;}
@media (max-width: 767px) {
    .counter { padding: 1.5rem 0 0;  }
    .counter .info { margin-bottom: 1.5rem;}
    .counter-holder { border-color: transparent; border-top-color: #909696 }
    .facts [class*=col-]:last-child .counter-holder { border-right-color: transparent;  border-bottom-color: #909696 }
}

.modal { z-index: 2300; }
@media (min-width: 992px){
    .modal-lg, .modal-xl {  max-width: 800px; }
}
@media (min-width: 1199px){
    .modal-xl {  max-width: 1060px; }
}