/*
    *  
    *  Table of Content
    *  ----------------
    *      1. Visible and Hidden class
    *      2. Media min-width: 768px and max-width: 959px
    *      3. Media max-width: 767px
    *      4. Media max-width: 479px
*/

/* -----------------------------------------------
 *  1. Visible and Hidden class
 * ----------------------------------------------- */
@-ms-viewport {
    width: device-width;
}

.clearfix {
    *zoom: 1;
}

.clearfix:before,
.clearfix:after {
    display: table;
    line-height: 0;
    content: "";
}

.clearfix:after {
    clear: both;
}

.hidden {
    display: none;
    visibility: hidden;
}

.visible-phone {
    display: none !important;
}

.visible-tablet {
    display: none !important;
}

.hidden-desktop {
    display: none !important;
}

.visible-desktop {
    display: inherit !important;
}


@media (min-width: 768px) and 
  (max-width: 959px) {
    .hidden-desktop {
        display: none !important;
    }
    .visible-desktop {
        display: inherit !important ;
    }
    .visible-tablet {
        display: inherit !important;
    }
    .hidden-tablet {
        display: none !important;
    }
}


@media (min-width: 768px) and (max-width: 959px) {
    .hidden-desktop {
        display: inherit !important;
    }
    .visible-desktop {
        display: none !important ;
    }
    .visible-tablet {
        display: inherit !important;
    }
    .hidden-tablet {
        display: none !important;
    }
}

@media (min-width: 479px) {
    .hidden-desktop {
        display: inherit !important;
    }
    .visible-desktop {
        display: none !important;
    }
    .visible-phone {
        display: inherit !important;
    }
    .hidden-phone {
        display: none !important;
    }
}

/* -----------------------------------------------
 *  2. Media min-width: 768px and max-width: 959px
 * ----------------------------------------------- */
@media (min-width: 768px) and 
  (max-width: 959px) {
      
      body{
          overflow-x: hidden;
      }
      
      #logo{
          margin: 10px 0 10px 10px;
      }
      
      .main-navi {
          margin: 10px 0 0 0;
          width: 100%;/* 830px/960px */
      }
      
      .main-navi .main-navi-box{
          display: block;
          margin-left: 5px;
          width: 129px;
      } 
      
      /* Slideshow*/
      .slider {        
          height: 183px;
      }
}


/* -----------------------------------------------
 *  3. Media max-width: 767px
 * ----------------------------------------------- */
@media (max-width: 767px) {
    
    body{
        background-color: #ffffff;
        background-image: none;
        overflow-x: hidden;
    }
    
    #logo{
        margin-left: 34%;
    }
    
    /* Information Line Head*/
    .info-phone{
        margin: 8px 0 0 10px;
        width: 150px;
    }

    .info-mail{
        margin: 8px 41px 0 0;
        width: 175px;
    }

    /* Content */
    .container-left{
        display: none;
    }    

    /* Content Text */
    .text-box{
        width: 84%;
    }
    
    .text-box-small .icon-text{
        margin: 0 0 0 0;
        float: left;
    }    
    
    /* Karte Kontakt */    
    .googlemaps{
        height: 200px;
    }

    .googlemaps iframe{
        height: 200px;
    }
    
    /* Menü + Toogle Box fürs Submenü */    
    .responsive{
        display: block;
    }
    
    /* A Tag Abstand */
    .main-navi a.navi-margin-1 {
        margin: 10px 0 0 33px;
    }
    
    .main-navi a.navi-margin-2 {
        margin: 9px 0 0 32px;
    }
    
    .main-navi a.navi-margin-3 {
        margin: 10px 0 0 33px;
    }
    
    .main-navi a.navi-margin {
        margin: 11px 0 0 35px;
    }
    
    .main-navi ul li:hover .sub-navi{
        display: none;
    }

    .main-navi{
        margin: 10px 0 0 15px;  
    }

    .main-navi .main-navi-box{
        width: 100%;
        height: 43px;
        float: left;
        margin-top: 10px;
    } 

    .main-navi .main-navi-box:hover, .nav .activ{
        height: 43px;
        margin-top: 10px;
        background: #ed1704;    /* farbe einzele menü boxen bei mouse over */
        -webkit-transition: all 0.218s ease-in 0s;
        -moz-transition: all 0.218s ease-out 0s;
        -o-transition: all 0.218s ease-in 0s;
        transition: all 0.218s ease-in 0s; 
    }

    .main-navi .main-navi-box a{
        height: 50px;
        width: 50%;
        text-align: left;
    }    

    .main-navi-box button{
        display: block;
    }
    
    .nav-collapse .btn {
        padding: 4px 10px 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
    }
    
    .btn-navbar {
        background-color: #ffffff;
        border-color: rgba(255, 255, 255, 0.1) rgba(255, 255, 255, 0.1) rgba(255, 255, 255, 0.25);
        color: #FFFFFF;
        height: 25px;
        width: 40px;
        margin: 9px 0 0 25px;
        float: left;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
    }
    
    .btn-navbar .icon-bar {
        background-color: #ed1704;
        display: block;
        height: 2px;
        width: 18px;
    }    

    .btn-navbar .icon-bar + .icon-bar {
        margin-top: 3px;
    }
    
    ul.sub-navi{
        display: none;
    }
    
    .toogle-navi{
        display: none;
    } 
    
    .toogle-navi .toogle-a1{
        width: 170px;
        margin: 10px 0 0 35px;
        font-size: 16px;
        height: 30px;
        float: left;
    }
    
    .toogle-navi .toogle-a2{
        width: 170px;
        margin: 10px 0 0 35px;
        font-size: 16px;
        height: 30px;
        float: left;
    }
    
    .toogle-sub-navi-top{
        display: block;   
        width: 100%;
        height: 43px;
        float: left;
        margin: 0 0 0 9px;
        background: url(../img/regular/bg-infolayer.png) repeat-x;  
        -webkit-border-radius: 0px;
        border-radius: 0px; 
    }
    
    .toogle-sub-navi-bottom{
        display: block;   
        width: 100%;
        height: 43px;
        float: left;
        margin: 0 0 0 9px;
        background: url(../img/regular/bg-infolayer.png) repeat-x;  
        -webkit-border-radius: 0px 0px 4px 0;
        border-radius: 0px 0px 4px 4px; 
    }
    
    .toogle-sub-navi-bottom:hover, .toogle-sub-navi-top:hover{
        background: #ed1704;    /* farbe einzele menü boxen bei mouse over */
        -webkit-transition: all 0.218s ease-in 0s;
        -moz-transition: all 0.218s ease-out 0s;
        -o-transition: all 0.218s ease-in 0s;
        transition: all 0.218s ease-in 0s; 
    }
    
    /* Slideshow*/
    .slider {        
        height: 100px;
    }
    
    .slider .prev,
    .slider .next {
        top: 25%;
    }
    
    .slider .prev {
        left: 5px;
    }

    .slider .next {
        right: -6px;
    }    

    .carousel-control {
        border: 2px solid #FFFFFF;
        border-radius: 15px 15px 15px 15px;
        font-size: 27px;
        height: 20px;
        line-height: 15px;
        width: 20px;
    }
    
    .slider:hover .prev,
    .slider:hover .next {
     display: block;
    }

}

/* -----------------------------------------------
 *  4. Media max-width: 479px
 * ----------------------------------------------- */
@media (max-width: 479px) {
    
    body{
        overflow-x: hidden;
    }
}