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

.spalte {
    padding: 20px;
}
.limit {
    max-width: 80%;
}
}    
@media only screen and (max-width: 1320px) {
    footer .spalten {
        flex-direction: column;
    }
    footer .spalte:first-child,
    footer .spalte:last-child,
    footer .spalte {
        padding: 20px;
        margin: 0 auto;
        text-align: center !important;
    }
    .spalten.produkte .spalte {
       width:calc(50% - 5px);
    }
    footer .spalte:last-child img {
       height: 42px;
       margin-left: 12px;
       margin-right: 12px;
    }
    nav li a {
        padding: 10px 8px;
        font-size: 16px;
    }
}

@media only screen and (max-width: 960px) {
 
 body.smaller .logo {
   top:-90px;
   clip-path: rect(0px 183px 160px 0px);
   transition: top ease-in-out 1s;
 }
 
 #menu_desktop nav {
     display: none;
 }
 #menu_desktop  {
     text-align: left;
     height: 60px;
 }
 /* img.logo  {
     height:20px;
     margin-left: 20px;
 } */
 #menu_mobil_button {
     display: block;
 }
 
#kontaktbox {
        display: none;
    }
#anfrageformular .halbsobreit {
    width: 100%;
    display: block;
}
.limit#anfrageformular {
    width: 100%;
    max-width: 100%;
}
.spalte.foto {
        min-height:80vw;
    }
    .spalten.links {
        flex-direction: column;
    }
    .spalten.rechts {
        flex-direction: column;
    }
    
    .spalten.produkte .spalte {
       width:100% !important;
    }
    
    .doppelter_abstand_oben_und_unten {
        padding: 80px 0;
    }

    .spalten {
        flex-direction: column;
    }
    .spalten.linie {
        flex-direction: column-reverse;
    }
    .slick-slider .spalte {
        border-top: 0;
        text-align: center !important;
    }
    
    .spalte:first-child {
        border-top: 0;
    }
    .stoerer {
        bottom: 10px;
        padding: 0 60px 0 60px;
        width: 100%;
        text-align: center;
    }
    .stoerer strong {
        font-size: 38px;
        line-height: 38px;
    }
    .slick-arrow {
        display: none !important;
    }
    .foto .fototitel {
        left: 40px;
        width: auto;
        right: 40px;
        font-size: 38px;
        line-height: 38px;
        text-align: center;
    }
    .foto .fototitel span,
    .foto .fototitel a,
    .foto .fototitel a:hover {
        color: white;
        font-size: 32px;
        line-height: 32px;
        margin-top: 20px;
    }
    .foto_slider .slick-dots {
        display: block !important;
		bottom: 15px;
    }
    .foto_slider .slick-dots li button:before,
    .foto_slider .slick-dots li.slick-active button:before {
        color: white !important;
    }

}

@media only screen and (max-width: 620px) {
	
    * {
        hyphens: auto;
        hyphenate-limit-chars: auto 5;
        hyphenate-limit-lines: 2;
    }
    .slick-dots {
        bottom: -25px;
    }
    /* .spalte.text img {
        width:100%;
        max-width:90% !important;
    } */
}

@media only screen and (max-width: 500px) {
	.limit {
        max-width: 85%;
    }
    .limit .limit {
        max-width: 85%;
    }
    .spalten .spalte {
    padding-left: 5px;
    padding-right: 5px;
    }
    .modul_spalten table tr td {
        display: block;
    }
    .modul_spalten table tr td:first-child {
        border-bottom: 0;
        font-weight: 600;
        padding-bottom: 0;
    }
    .modul_spalten table tr td:last-child {
        padding-top: 0;
    }
    .slick-dots {
        bottom: -25px;
    }
    .spalten {
        flex-direction: column;
    }
    .stoerer {
        bottom: 10px;
        padding: 0 20px 0 20px;
    }
    .stoerer strong {
        font-size: 28px;
        line-height: 30px;
    }
    .foto .fototitel {
        left: 20px;
        right: 20px;
        font-size: 28px;
        line-height: 30px;
    }
    .foto .fototitel span,
    .foto .fototitel a,
    .foto .fototitel a:hover {
        color: white;
        font-size: 24px;
        line-height: 38px;
        margin-top: 20px;
    }
    .abstand_keiner {
        padding: 0;
    }
    .abstand_oben_und_unten {
        padding: 40px 0;
    }
    .doppelter_abstand_oben_und_unten {
        padding: 40px 0;
    }
    .abstand_oben {
        padding: 40px 0 0 0;
    }
    .abstand_unten {
        padding: 0 0 40px 0;
    }
    .infobox_breit .spalte {
        padding: 20px;
    }
    #textslider.max_2_spalten .swiper-slide, 
    #textslider.max_3_spalten .swiper-slide, 
    #textslider.max_4_spalten .swiper-slide {
        padding: 60px 20px 0 20px;
    }

    footer .spalte {
        white-space: wrap;
    }
}
