@media only screen and (max-width: 991px) {
    .top-bar { display: none; }

    .site-header > .wrap { 
        margin-top: 0;
        align-items: center;
        padding: 20px;
    }

    body.menu-triggered { overflow: hidden; }

    .menu-toggle {
        line-height: 28px;
        margin-bottom: 10px;
        margin-top: 10px;
        padding: 4px 0;
        position: relative;
        border: 1px solid #eee;
        z-index: 1000;
        background: #f7f7f7;
        width: 35px;
        height: 36px;
        border-radius: 3px;
    }

    .menu-toggle span {
        position: absolute;
        background-color: #000;
        width: 19px;
        height: 2px;
        right: 7px;
        -webkit-transition-duration: 0.3s;
        -o-transition-duration: 0.3s;
        transition-duration: 0.3s;
    }

    .menu-toggle span:first-child { top: 10px; }

    .menu-toggle span:nth-child(2) { top: 16px; }

    .menu-toggle span:nth-child(3) { top: 22px; }

    .menu-toggle.activated span:nth-child(2) {
        width: 19px;
        top: 7px;
        -webkit-transform: translateY(9px) rotate(45deg);
        -ms-transform: translateY(9px) rotate(45deg);
        transform: translateY(9px) rotate(45deg);
    }

    .menu-toggle.activated span:first-child {
        width: 19px;
        top: 25px;
        -webkit-transform: translateY(-9px) rotate(-45deg);
        -ms-transform: translateY(-9px) rotate(-45deg);
        transform: translateY(-9px) rotate(-45deg);
    }

    .menu-toggle.activated span:nth-child(3) { background: transparent; }

    .site-header .menu-primary { 
        align-items: flex-start;
        margin-right: 0;
        position: fixed;
        top: 122px;
        right: -100%;
        margin-right: 0;
        flex-direction: column;
        z-index: 999;
        background: #fff;
        height: 100vh !important;
        width: 100%;
        max-width: 300px;
        padding: 10px 25px 170px 20px;
        overflow: auto;     
        transition: .3s ease-in-out; 
    }

    .admin-bar .site-header .menu-primary { top: 154px; }

    .menu-primary.triggered { right: 0; }

    .menu-primary .menu-item-has-children > a::after { content: none; }

    .site-header .menu-primary li > a { padding: 8px 4px; }

    .sub-menu-toggle { 
        display: flex;
        position: absolute;
        background: transparent;
        border: none;
        top: 0;
        right: 0;
        width: 35px;
        height: 35px;
        justify-content: center;
        align-items: center;
    }

    .sub-menu-toggle::after {
        content: '\f107';
        font-family: "Font Awesome 5 Pro";
        margin-left: 0px;
        font-size: 26px;
        font-weight: 300;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        transition: .3s ease-in-out;
    }

    .sub-menu-toggle:focus,
    .sub-menu-toggle:hover { color: #343434; }

    .sub-menu-toggle.activated::after {
        -webkit-transform: rotate(180deg) translate(50%, 50%);
        -ms-transform: rotate(180deg) translate(50%, 50%);
        transform: rotate(180deg) translate(50%, 50%);
    }

    .site-header .menu-primary > li {
        margin-bottom: 5px;
        position: relative;
        width: 100%;
    }

    .menu-overlay {
        position: fixed;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.9);
        z-index: 999;
        pointer-events: none;
        opacity: 0;
        transition: .3s ease-in-out;
    }

    .menu-overlay.menu-triggered {
        opacity: 1;
        pointer-events: auto;
    }

    .genesis-nav-menu .sub-menu {
        position: relative;
        transition: none;
        opacity: 1;
        display: none;
        background-color: #f7f7f7;
        padding: 10px;
        margin-bottom: 0px;
        border: none;
        width: 100%;
    }

    /*.genesis-nav-menu .sub-menu:after { content: none; }*/

    .genesis-nav-menu .sub-menu li a {
        padding: 6px 10px;
        border: none;
        text-transform: initial;
        letter-spacing: 0;
        font-size: 15px;
    }

    .mobile-link { display: block; }

    .mobile-top-bar { 
        display: flex; 
        order: -1;
        margin-bottom: 10px;
    }

    .site-header .menu-primary .mobile-top-bar a { padding: 0; }

    .site-header .menu-primary .mobile-top-bar li {
        position: relative;
        font-size: 12px;
        margin-bottom: 0;
        text-transform: uppercase;
        padding: 2px 4px;
        margin-right: 6px;
    }

    .site-header .menu-primary .mobile-top-bar li:last-child { margin-right: 0; }

    .site-header .menu-primary .mobile-top-bar li::after {
        content: "|";
        position: absolute;
        right: -6px;
        top: 1px;
    }

    .site-header .menu-primary .mobile-top-bar li:last-child::after { content: none; }

    .sidebar.sidebar-primary.widget-area { top: 180px; }

    .sidebar-content .content-sidebar-wrap {
        flex-wrap: wrap;
        gap: 0;
        flex-direction: column-reverse;
        row-gap: 30px;
    }

    .sidebar-content .content-sidebar-wrap main.content {
        order: 1;
        max-width: 100%;
        margin-bottom: 0;
    }

    .pagination { margin: 10px 0 0; }

    .sidebar-content .content-sidebar-wrap .sidebar {
        order: 2;
        max-width: 100%;
        position: relative;
        top: 0;
        text-align: left;
    }

    .produkte-wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .produkte-wrap .produkt-news__box--xl { width: calc(50% - 10px); }

    .category-single { display: none; }

    .mobile-category,
    .mobile-category .category-single { display: flex; }
}
@media only screen and (max-width: 782px) {
    .admin-bar .site-header { top: 46px; }

    .title-area { max-width: 130px; }

    .site-header.active > .wrap {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .site-header .menu-primary { top: 99px; }

    .admin-bar .site-header .menu-primary { top: 145px; }

    .site-header.active .menu-primary { top: 79px; }

    .admin-bar .site-header.active .menu-primary { top: 125px; }
}
@media only screen and (max-width: 767px) {
    .footer-widgets > .wrap { justify-content: space-between; }

    .mb--md-20 { margin-bottom: 20px; }
}
@media only screen and (max-width: 599px) {
    .has-text-align-right { text-align: left; }

    .wp-block-column p:last-child { margin-bottom: 30px; }
}
@media only screen and (max-width: 575px) {

    .produkte-wrap .produkt-news__box--xl {
        width: 100%;
        padding: 15px 20px;
    }

    .produkt-news__box { width: 100%; }

    .footer-widgets > .wrap { flex-wrap: wrap; }

    .widget-area { 
        width: 100%;
        text-align: center;
        margin-bottom: 30px;
    }

    .widget-area:last-child { margin-bottom: 0; }

    .hero-slider .owl-nav { 
        opacity: 1; 
        left: 20px;
        right: 20px;
    }

    .hero-slider .owl-nav button::before { font-size: 30px; }

    .tabs { display: none !important; }

    .tab_content { 
        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
        min-height: auto; 
        margin-top: -1px;
        margin-bottom: -1px;
    }

    .tab_drawer_heading {
        font-size: 14px;
        border-radius: 5px;
        background-color: #f8f8f8;
        border: 1px solid #f0f0f0;
        font-weight: 700;
        color: #6A6A6A;
        margin: 0;
        padding: 14px 20px;
        display: block;
        cursor: pointer;
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -khtml-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    .d_active {
        background-color: #c7c7c7;
        color: #fff;
    }
}
@media only screen and (max-width: 400px) {
    .txt--lg { font-size: 22px; }

    .error-loop__box h1 { font-size: 150px; }
}
@media only screen and (max-width: 350px) {
    .site-header .menu-primary {
        max-width: 270px;
        padding: 10px 15px 170px 10px;   
    }

    .title-area { max-width: 100px; }

    .site-header > .wrap { padding: 8px 20px; }

    .site-header.active > .wrap {
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .admin-bar .site-header .menu-primary { top: 118px; }

    .admin-bar .site-header.active .menu-primary { top: 118px; }

    .site-header .menu-primary,
    .site-header.active .menu-primary { top: 72px; }

    .site-header .menu-primary { max-width: 240px; }

    .site-header .menu-primary li { font-size: 12px; }

    .genesis-nav-menu .sub-menu li a { font-size: 13px; }

    .sub-menu-toggle {
        width: 30px;
        height: 30px;
    }
}