


/* NAVIGATION */
@media (min-width: 992px) {


    .fixed-top, .navbar-mainnavigation.navbar-fixed-top {
        top: 120px;
        background-color: #ededed !important;
    }

    .navbar-mainnavigation .navbar-nav > li > .nav-link::before {
        content: '';
        position: absolute;
        top: 0px;
        left: 0;
        width: 4px;
        height: 100%;
        background: transparent;
        opacity: 0;
    }


    .dropdown-item:hover { background: #f07d00; color: white;}
    .dropdown-item { border-bottom: 1px solid #efefef; background: #f07d00; text-transform: uppercase;} 
    .dropdown-text { color: white; text-transform: uppercase; }

    .navbar-mainnavigation .dropdown-menu {
        position: absolute;
        background: #f07d00;
        padding-left: 1rem; padding-right: 1rem;
    }


    /* Farbe Navigation normal */
    .navbar-light .navbar-nav .nav-link, .navbar-default .navbar-nav .nav-link, .navbar-default-transition .navbar-nav .nav-link, .navbar-default-transition.navbar-transition .navbar-nav .nav-link {
        color: rgba(0, 0, 0, 1);
    }

    .navbar-mainnavigation > .navbar-nav .nav-link, .navbar-mainnavigation > .container > .collapse > .navbar-nav .nav-link, .navbar-mainnavigation > .container-fluid > .collapse > .navbar-nav .nav-link {
        padding-right: 0rem;
        padding-left: 1rem;
        text-transform: uppercase;
    }


}

/* Striche - Spacer zwischen den Navigationspunkten nicht in der Mobilen Ansicht anzeigen */
@media (max-width: 992px) {
    .nav-item-spacer-char { display:none; height: 0; width: 0; opacity: 0;}

}




@media (max-width:992px) {
    .fixed-top, .navbar-mainnavigation.navbar-fixed-top {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 10300;
        background: white;
    }
    .fixed-top, .navbar-mainnavigation.navbar-fixed-top .container {
        background: white;
        z-index: 10300;
    }
    .navbar-collapse .collapse .show {
        background-color: white;background: white;
    }

}

/* HEADER */

/* Abstände zwischen Hx */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    margin-bottom: 0.2rem; font-family: inherit; font-weight: 400; line-height: 1.1;
}



.frame-type-header .element-header      { color: #f07d00; font-weight: 600; margin-bottom: 0px; font-size: 2rem;}
.frame-type-header .element-subheader   {color: #b86200;font-weight: 600;margin-top: 0px;font-size: 2rem;}
.frame-background-primary .element-header { color: white; }
/* Perfektion ist unsere Leidenschaft */
.frame-background-primary h5 { font-weight: bold; font-size: 1.2rem;}



/* Slider Caroussel */
@media (min-width:768px) {
    .carousel-item { max-height: 400px;}

    /* Indicators */
    .carousel-indicators li {
        position: relative;
        flex: 0 1 auto;
        width: 15px;
        height: 15px;
        margin-right: 3px;
        margin-left: 3px;
        text-indent: -999px;
        cursor: pointer;
        background-color: rgba(240, 125, 0, 0.5);
        background-color: white;
    }



}




/* Übergang von weiss nach grau - Dreieck */
.section-default figure {
    margin-bottom: 0rem;
}


.row-no-frame-padding .frame  {
    padding-top: .5rem;
    padding-bottom: .5rem;
}


.row-primary .element-header  { 
    border-bottom: 4px solid #f07d00;
    padding-bottom: 1rem;
    margin-bottom: 1.5rem;
}

.row-secondary .element-header  { 
    border-bottom: 4px solid #f07d00;
    padding-bottom: 1rem;
    margin-bottom: 1.5rem;
}



/* Bilder Sektion 1 */
@media (min-width: 768px) { 
    .row-primary .col { padding-right: 0; padding-left: 0; background: white;}
}


/* Bilder Sektion 2 */
@media (min-width: 768px) {  
    .row-secondary  {  background: #ededed;}
    .row-secondary .col {  background: #ededed;}
    .row-secondary .frame-container { padding-left: 0; padding-right: 0;}
}

/* Abstandshalter */
@media (min-width: 768px) {  
    .row-secondary .frame  {padding-top: 0.5rem;padding-bottom: 0.5rem;}
    .row-secondary .col {  background: #ededed;}
    .row-secondary .frame-container { padding-left: 0; padding-right: 0;}
}
@media (min-width: 768px) and (max-width:992px){  
    .row-secondary .frame  {padding-top: 2.5rem;padding-bottom: 0.5rem;}
    .row-secondary .col {  background: #ededed;}
    .row-secondary .frame-container { padding-left: 0; padding-right: 0;}
}
@media (min-width: 200px) {
    .frame hr { display: none; color: transparent; }
}


@media (min-width: 768px) {

    .frame-social-icons { margin-top: 3.5rem; margin-bottom: 3.5rem; }
    .frame-social-icons  {padding-top: 1rem;padding-bottom: 1rem;}
    .frame-social-icons figure img { height: 50px; width: 50px; margin-top: -12px; }
    .frame-socila-icons .gallery-item-size-4 {
        width: 40px;
    }

}
@media (min-width:768px) and (max-width:992px) {
 .row-secondary .frame-indent .frame-inner {
    margin-left: 0%;
    margin-right: 0%;
    margin-bottom: 2.5rem;
}
}
@media (max-width:992px) {
    .row-secondary .frame-indent-right .frame-inner {
    margin-right: auto;
    margin-left: auto;
    border: 0px solid red;
    max-width: 720px;
}
}
 /* HIER */


/* Section-top */
@media (max-width:992px) { 
    .section-top { display: none;}
}

@media (min-width:992px) {

    /*
    <f:cObject typoscriptObjectPath="lib.dynamicContent" data="{pageUid: '{data.uid}', colPos: '8'}" />
    */

    .section-top {
        position: fixed; top: 0;
        background: white;
        z-index: 10090;
        border: 0px solid red;
        padding-top: 1rem;
    }
    .section-top .frame { margin-top: 0rem; margin-bottom: 0rem; padding-top: 0rem; padding-bottom: 0rem; }
    .section-top {height: 120px;width: 100%;border:  0px solid red;}
    .section-top .frame figure img { height: 80px; width: auto;}

    .section-top .col-1 { width: 60%; min-width: 60%; }
    .section-top .col-2 { width: 12%; max-width: 20%; }
    .section-top .col-3 { width: 12%; max-width: 20%; }

    .section-top .col-1 { border: 0px solid red; text-align: left; }
    .section-top .col-1 figure { float: left; border: 0px solid red; margin: 0; padding-left: 0px; }
    .section-top .col-1 img { float: left; border: 0px solid red; }
    .section-top .col-2 {  border: 0px solid green; }
    .section-top .col-3 {  border: 0px solid green; }

    .section-top .col { padding: 0;}


    /* Logo Desktop */

    .navbar-brand { display: none; width: 0px; max-width: 0px; height: 0px; max-height: 0px;}

    .section-border { margin-top: 30px;}
}








/* Footer */

.footer-section-content {
    color: #000;
    background-color: #ededed;
}
.footer-section-content a {
    color: #000;
}
.footer-section-content .footer-link-current { color: #f07d00; }

.footer-section-content img {
    /* height: 110px; */
}

.footer-section-content { border-top: 8px solid #f07d00;}

.footer-section-meta { height: 0px;display: none; }


.footer-section-content .frame-type-menu_pages ul { list-style: none; line-height: 1.45rem;}
.footer-section-content .frame-type-menu_pages ul a { text-transform: uppercase;}

.footer-section-content .frame { padding-top: 1.5rem; }


/* Footer mittleres Menü handy */

@media (max-width: 560px) {
.footer-section-content .frame-type-menu_pages ul { list-style: none; line-height: 1.45rem; margin-left: 0px; padding-left: 0px;}
.footer-section-content .frame-type-menu_pages ul a { text-transform: uppercase;}
}



@media (min-width: 560px) and (max-width: 768px) {   
    .footer-section-content-column-right { width: 100%; /*display: none;*/ }

    .footer-section-content-column-right img{ width: 100%; height: auto; padding: 20px;}

}

@media (min-width: 768px) {   

}


.row-team .textpic-item .textpic-text {
    background: white;
    padding: 1rem;
}

.row-team .frame { margin-left: 20px; margin-right: 20px; border: 0px solid red;}
.row-team .frame { margin-bottom: 32px;}

.row-team .textpic-text {  margin: 20px; margin-bottom: 0px; background: white;}
.row-team .frame-background-light { background: white;}


/* UNTERNEHMEN Team */
@media (min-width: 992px) {
    .row-team {

        margin: auto;
        padding-left: calc( (100vw - 920px)/2 ) ;
        padding-right: calc( (100vw - 1000px)/2 ) ;
    }

}
@media (min-width: 1200px) {
    .row-team {
        margin: auto;
        padding-left: calc( (100vw - 1100px)/2 ) ;
        padding-right: calc( (100vw - 1180px)/2 ) ;
    }
}



@media (min-width: 200px){
    .gmaps { width: 100%; min-height: 400px;}

}






/* Sliderbox - Transparenter Hintergrund */

/* Farbe der Texte */
.sliderbox-text .text-primary { color: #f07d00 !important;}
.sliderbox-text .text-secondary { color: #b86200 !important;}
    
/* Slider Texte in Rahmen */
@media (min-width: 200px) {
.sliderbox-text {
        background: rgba(255,255,255,.85);
        padding: 1rem;
        padding-left: 1rem;
        border: 0px solid red;
        margin-left: -20px;
        width: max-content;
}
}


@media (min-width: 768px) {
    

    .slick-slide {
        border: 0px solid red;
        height: 400px;
        min-height: 400px;
        max-height: 400px;
        overflow-y: hidden;
    }
    
     .slick-slide .frame { 
       
        height: 400px; 
        min-height: 400px;
        padding-top: 0rem;
        padding-bottom: 0rem;
    }
   
    .slick-slide .frame-container {
        border: 0px solid green;
        max-width: 100%;
        height: 400px;
    }
    

    .sliderbox-container {
       height: 400px;
       display: inline-flex;
       align-items: center;
       min-width: 50%;
    }

    
    /* Slider dots */
    .slick-dots {
    position: absolute;
    bottom: 20px;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    }
    .slick-dots li { background: white; }
    .slick-dots li.slick-active button::before {
    background: orange;
    opacity: 1;
  }


    
    .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding: 5px;
    cursor: pointer;
    color: orange;
    border: 0px solid black;
    outline: none;
    /* background: white; */
}
.slick-active   {
    
    
    background: orange;
}



.slick-dots li button:before {
    font-family: 'slick';
    font-size: 6px;
    line-height: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    content: '';
    text-align: center;
    opacity: 1;
    color: black;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
    
    
    
}

@media (min-width:768px) {
.sliderbox-text {
        background: rgba(255,255,255,.85);
        padding: 1rem;
        padding-left: calc( (100vw - 700px)/2 );
        border: 0px solid red;
        margin-left: -20px;
        width: max-content;
}

}

@media (min-width:992px) {
.sliderbox-text {
        background: rgba(255,255,255,.85);
        padding: 1rem;
        padding-left: calc( (100vw - 840px)/2 );
        border: 0px solid red;
        margin-left: -20px;
        width: max-content;
}

}


@media (min-width:1200px) {

.sliderbox-text {
        background: rgba(255,255,255,.85);
        padding: 1rem;
        padding-left: calc( (100vw - 1040px)/2 );
        border: 0px solid red;
        margin-left: -20px;
        width: max-content;
}
}




/* Slider border-content max height: 400px */
@media (min-width: 200px) {
    
    .section-main-slider {
        display: block;
        
        max-height: 400px;
        
        overflow-y: hidden;
        overflow-x: hidden;
    }
    
}

@media (min-width: 768px) {
    
    .section-main-slider {
        display: block;
        
        max-height: 400px;
        
        overflow-y: hidden;
        overflow-x: hidden;
    }
    
}


/* Gallery mit 5 Kacheln als Imagesonly */

@media (min-width:200px) {
.gallery-item-size-5 { margin-bottom: 1rem; }
}



/* diff 2019-03-14-1 */
@media (min-width: 992px) {
    
.row-primary-col-left .frame-indent .frame-inner {
    margin-left: 16%;
    width: calc( 50vw - 16vw - 4vw);
}

.row-primary-col-right .frame-indent .frame-inner {
    margin-left: 8%;
    width: calc( 50vw - 16vw - 4vw);
}


}

@media (min-width: 1200px) {
    
    .row-primary-col-left .frame-indent .frame-inner {
     margin-left: 32%;
    width: calc( 50vw - 16vw - 4vw);
    
}

.row-primary-col-right .frame-indent .frame-inner {
    margin-left: 10%;
    width: calc( 50vw - 16vw - 4vw);
}


}



/* secondary */
@media (min-width: 992px) {
    
.row-secondary .frame-indent .frame-inner {
    margin-right: 0;
    
}




}

@media (min-width: 1200px) {
    
.row-secondary .frame-indent .frame-inner {
    margin-right: 0;
    
}
}


/* Font size */

@media (min-width: 768px) { 
h2, .h2 {     font-size: 2.0rem; }  
h3, .h3 {     font-size: 2.0rem; }  
}
@media (min-width: 992px) { 
h2, .h2 {     font-size: 2.0rem; }  
h3, .h3 {     font-size: 2.0rem; }  
}
@media (min-width: 1200px) { 
h2, .h2 {     font-size: 2.0rem; }  
h3, .h3 {     font-size: 2.0rem; }  
}


/* Content oben bündig */

@media (min-width: 992px) {
    
    .align-items-start .frame { padding-top: 0rem; }
    
}



@media (min-width: 992px) {
    .frame-type-shortcut .frame-container { padding-right: 4px; padding-left: 12px;}
    
}



/* Oranger Balken Social Icons */
@media (min-width: 768px) {
    .row-social-icons {padding-top: 0rem;margin-top: 5rem;margin-bottom: 5rem;}
    .row-social-icons .frame {margin-top:0rem;margin-bottom: 0rem;padding-top: 1rem;padding-bottom: 1rem;}
    
    .row-social-icons { padding-right: calc((100vw - 720px) / 2);  }


}

@media (min-width: 992px) and (max-width: 1200px) {
   .row-social-icons .frame-type-image { padding-top: 15px;padding-bottom: 0rem;background: transparent;}
   .row-social-icons .frame-type-image .gallery-item { padding-right: 0rem;}
   .row-social-icons .frame-type-image  {  }
   .row-social-icons { padding-right: calc((100vw - 920px) / 2);  }
   .row {  }
}
@media (min-width: 1200px) {
    .row-social-icons .frame-type-image { padding-top: 10px;padding-bottom: 0rem;background: transparent;}
    .row-social-icons .frame-type-image .gallery-item {padding-right: .5rem;}
    .row-social-icons {padding-right: calc((100vw - 1140px) / 2);}
    .row {  }
}





@media (min-width: 200px) and (max-width: 560px) {

.row-social-icons { display: flex;}
  

.row-social-icons  .col-sm-12 {
    flex: 0 0 30%;
    max-width: 30%;
    border: 0px solid green;
}

.row-social-icons.col-sm-12 img { width: 32px; height: 32px;}

.row-social-icons .col-12:first-child {
    max-width: 70%; border: 0px solid red;
    flex: 0 0 70%;
}
.row-social-icons .col-sm12 {
    max-width: 30%; border: 0px solid red;
    flex: 0 0 20%;
    
}
    
.row-social-icons .gallery-item-size-1 img {
    position: relative;
    margin-top: -0px;
}
.row-social-icons .gallery-item-size-1 img  {
    border: 1px solid green;
    width: 44px; 
   
}

}



@media (min-width: 560px) and (max-width: 768px) {

.row-social-icons { display: flex;}
  

.row-social-icons  .col-sm-12 {
    flex: 0 0 30%;
    max-width: 30%;
    border: 0px solid green;
}

.row-social-icons.col-sm-12 img { width: 32px; height: 32px;}

.row-social-icons .col-12:first-child {
    max-width: 70%; border: 0px solid red;
    flex: 0 0 70%;
}
.row-social-icons .col-sm12 {
    max-width: 30%; border: 0px solid red;
    flex: 0 0 20%;
    
}
    
.row-social-icons .gallery-item-size-1 img {
    position: relative;
    margin-top: -10px;
}
.row-social-icons .gallery-item-size-1 img  {
    border: 1px solid green;
    width: 44px; 
   
}

}


@media (min-width: 768px)  {

.row-social-icons { display: flex;}
  

.row-social-icons  .col-sm-12 {
    flex: 0 0 20%;
    max-width: 20%;
    border: 0px solid green;
}

.row-social-icons.col-sm-12 img { width: 32px; height: 32px;}

.row-social-icons .col-12:first-child {
    max-width: 80%; border: 0px solid red;
    flex: 0 0 100%;
}
.row-social-icons .col-sm12 {
    max-width: 30%; border: 0px solid red;
    flex: 0 0 20%;
    
}
    
.row-social-icons .gallery-item-size-1 img {
    position: relative;
    margin-top: 0px;
}
.row-social-icons .gallery-item-size-1 img  {
    border: 0px solid green;
    width: 34px; 
   
}

}


@media (min-width: 768px) and (max-width:1200px) {

.row-social-icons .gallery-item-size-1 img {
    position: relative;    margin-top: 0px;
}
}

