/* Responsive */

@media only screen and (min-width: 1921px) {

}

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

}

@media only screen and (max-width: 1599.98px) {
    header .account_wrapper, header .search_wrapper {
        border-right-color:transparent;
    }

}

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

}

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

    header nav ul#menu-hauptmenu li a, header nav ul#menu-hauptmenu li a:link {
        padding: 36px 18px;
    }

}

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

    footer {
        margin-top: 50px;
    }

    footer .contact-wrapper {
        align-items: flex-start;
    }

    footer .contact-wrapper a {
        border: none;
    }

    header nav ul#menu-hauptmenu li a, header nav ul#menu-hauptmenu li a:link {
        padding: 36px 12px;
    }

    header nav ul#menu-hauptmenu {
        margin-right: 25px;
    }

    header nav ul li a, header nav ul li a:link {
        font-size: 15px;
    }

    .acf-block {
        padding-bottom: 100px;
    }

    .acf-block:not(:first-of-type) {
        margin-top: 50px;
    }

    header .container-large {
        padding-right: 60px;
        padding-left: 60px;
        max-width: unset;
    }

    .blog .blog_text_wrapper {
        padding: 50px 50px;
    }

    .blog .last {
        order: 1;
    }

    .blog .blog_image_wrapper {
        min-height: 200px;
        height: 40vh;
        max-height: 400px;
    }

    .blog article + article {
        margin-top: 50px;
    }

}

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

    header#top > .container-large {
        padding-right:20px;
        padding-left:20px;
    }

}

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

    header .account_wrapper a, header .cart_wrapper a, header .search_wrapper a {
        padding: 36px 14px;
    }

}


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

    header .cart_details {
        height: 0;
        width: 45px;
    }

    header .cart_wrapper a {
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        padding: 18px;
    }

    header .cart_details .cartname {
        position: static;
    }

    header .cart_details .carttotal {
        position: static;
    }

}

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

    .acf-block {
        padding-bottom: 50px;
    }

    footer {
        padding-bottom: 0;
    }

    footer .contact-wrapper i {
        display: block;
        font-size: 120%;
        padding-bottom: 10px;
    }

    header:not([class^=woocommerce]) {
        position: fixed;
        left: 0;
        right: 0;
        top: 0;
        height: 100px;
        width: 100%;
        background-color: #FFFFFF;
        padding: 0;
        transition: 250ms linear;
        display: flex;
        align-items: center;
    }

    header.active.hide {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: unset;
    }

    header nav#menu > ul {
        background-color: #FFFFFF;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        position: fixed;
        top: 100px;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 15;
        min-height: 500px;
    }

    header.active nav#menu > ul {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        height: calc(100vh - 100px);
    }

    header .container {
        position: relative;
        z-index: 1;
        background-color: white;
        border-bottom: 1px solid var(--color-grey2);
        padding-bottom: 5px;
        max-width: 100%;
    }

    #branding {
        display: inline-block;
    }

    #site-description {
        color: black;
    }

    header nav > ul {
        background-color: transparent;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100vw;
        bottom: 100%;
        transition: 400ms;
    }

    header nav ul li {
        float: left;
        display: block;
        width: 100%;
        position: relative;
    }

    header nav ul li a:hover,
    header nav ul li a:focus,
    header nav ul li a:active {
        color: #000000 !important;
    }

    header nav ul li a:hover + .mega-menu-wrapper {
        visibility: unset;
        opacity: unset;
        pointer-events: unset;
        padding: 0;
    }

    header nav ul li.has-mega-menu::after {
        content: "\f00d";
        font-family: "Font Awesome 5 Pro";
        font-weight: 300;
        font-size: 24px;
        color: #000000;
        position: absolute;
        transform-origin: center center;
        transform: rotate(-135deg);
        transition: all 250ms;
        top: 32px;
        right: 20px;
        z-index: -1;
    }

    header nav ul li.has-mega-menu.mobile-active::after {
        transform: rotate(0);
    }

    header nav ul li .mega-menu-wrapper {
        position: relative;
        height: 0;
        padding: 0 !important;
    }

    header nav ul li.mobile-active .mega-menu-wrapper {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
        height: unset;
    }

    header nav ul li .mega-menu-wrapper::before {
        content: unset;
    }

    header nav ul li a,
    header nav ul li a:link {
        color: black;
        display: block;
        padding: 10px 5px 10px;
        font-size: 18px;
        transition: 500ms ease-in-out;
    }

    header nav > ul > li > a {
        border-bottom: 1px solid var(--color-grey2) !important;
    }

    header nav ul li .mega-menu > div {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    header nav > ul > li.mobile-active {
        background-color: var(--color-grey1);
        z-index: 0;
    }

    header.active nav ul li a, .active nav ul li a:link {
        padding: 10px 5px 25px;
    }

    header.active nav > ul {
        top: 0;
        bottom: 0;
        left: 0;
        width: 100vw;
        overflow: auto;
    }

    header nav ul ul {
        display: flex;
        flex-direction: row;
        visibility: visible;
        opacity: 1;
        height: auto;
        width: auto;
        top: auto;
        left: 0;
        right: 0;
        position: relative;
        bottom: auto;
        background-color: transparent;
        border: none;
    }

    header nav ul ul li {
        float: left;
        display: inline-block;
        min-width: auto;
        margin-bottom: 0 !important;
        width: 100%;
    }

    header nav ul ul li:last-of-type a,
    header nav ul ul li:last-of-type a:link {
        padding: 10px 5px 25px;
    }

    header.active nav ul ul li a,
    header.active nav ul ul li a:link {
        display: block;
        color: black !important;
        padding: 10px 15px !important;
        border-bottom: 1px solid var(--color-grey2) !important;
    }

    /*header.active nav ul ul li:last-of-type a,
    header.active nav ul ul li:last-of-type a:link {
        border-bottom: none !important;
    }*/
    .hamburger {
        padding: 15px;
        display: flex;
        justify-content: center;
        align-items: center;
        cursor: pointer;
        transition-property: opacity, filter;
        transition-duration: 0.15s;
        transition-timing-function: linear;
        font: inherit;
        color: inherit;
        text-transform: none;
        background-color: transparent;
        border: 0;
        margin: 0;
        overflow: visible;
        float: right;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        z-index: 99;
    }

    .hamburger:hover {
        opacity: 0.7;
    }

    .hamburger-box {
        width: 40px;
        height: 24px;
        display: inline-block;
        position: relative;
    }

    .hamburger-inner {
        display: block;
        top: 50%;
        margin-top: -2px;
    }

    .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
        width: 40px;
        height: 2px;
        background-color: #000000;
        border-radius: unset;
        position: absolute;
        transition-property: transform;
        transition-duration: 0.15s;
        transition-timing-function: ease;
    }

    .hamburger-inner::before, .hamburger-inner::after {
        content: "";
        display: block;
    }

    .hamburger-inner::before {
        top: -10px;
    }

    .hamburger-inner::after {
        bottom: -10px;
    }

    /* Collapse */
    .hamburger--collapse .hamburger-inner {
        top: auto;
        bottom: 0;
        transition-duration: 0.15s;
        transition-delay: 0.15s;
        transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    .hamburger--collapse .hamburger-inner::after {
        top: -20px;
        transition: top 0.3s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
    }

    .hamburger--collapse .hamburger-inner::before {
        transition: top 0.12s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    header.active .hamburger--collapse .hamburger-inner {
        transform: translate3d(0, -10px, 0) rotate(-45deg);
        transition-delay: 0.32s;
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    header.active .hamburger--collapse .hamburger-inner::after {
        top: 0;
        opacity: 0;
        transition: top 0.3s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.27s linear;
    }

    header.active .hamburger--collapse .hamburger-inner::before {
        top: 0;
        transform: rotate(-90deg);
        transition: top 0.12s 0.18s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.15s 0.42s cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    .topbar {
        display: none;
    }

    header .logo {
        height: 50px;
    }

    #menuwrapper {
        padding-right: 75px;
        z-index: 3;
    }

    .cookie-notice {
        height: unset;
        padding-top: 15px;
        padding-bottom: 15px;
    }

    header .cart_details {
        height: unset;
        width: 60px;
    }

    header .cart_wrapper a {
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 36px 18px;
    }

    header .cart_details .cartname {
        position: absolute;
    }

    header .cart_details .carttotal {
        position: absolute;
    }

    header nav ul li a.mobile,
    header nav ul li a.mobile:link {
        display: block;
    }

    .desktop {
        display: none;
    }

    .mobile {
        display: block;
    }

    .blog article + article {
        margin-top: 0;
    }

    a.marken-laden,
    a.marken-laden:link {
        display: inline-block;
        margin-top: 10px;
        margin-right: 15px;
        margin-left: 15px;
    }

    a.marken-laden span {
        display: none;
    }

    header#top > .container-large {
        padding-right: 30px;
        padding-left: 30px;
    }

}

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

    a.marken-laden span {
        display: inline;
    }

    #single_post_wrapper {
        margin-top: 35px;
        padding: 0;
    }

    footer {
        text-align: center;
    }

    footer .logo {
        width: 100%;
        display: block;
        text-align: center;
    }

    #menuwrapper {
        position: relative;
        /*padding-right: 85px;*/
    }

    .content-wrapper {
        padding-top: 100px;
    }

    .subheader {
        margin-top: 100px;
    }

    .subheader + .content-wrapper {
        padding-top: 0;
    }

    footer .footer-wrapper > .container.flex-center {
        flex-direction: column;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    footer .contact-wrapper {
        flex-direction: column;
        align-items: center;
    }

    footer .contact-wrapper i {
        display: inline-block;
    }

    footer .contact-wrapper a {
        padding: 0 0 10px;
        width: unset;
        text-align: left;
        margin: 0;
    }

    footer .menu-footermenu li a {
        padding: 10px 15px;
    }

    footer .thelastone {
        width: 100%;
        max-width: 540px;
        margin: auto;
        position: relative;
        padding-top: 30px;
        display: flex;
        justify-content: center;
        align-items: center;
        left: 0;
        right: 0;
        padding-left: 15px;
        padding-right: 15px;
    }

    footer .thelastone > div {
        display: inline-flex;
    }

    footer .thelastone > div > div {
        padding-top: 10px;
        text-align: center !important;
    }

    div.container-fluid {
        padding-right: 15px;
        padding-left: 15px;
    }

    .woo_search_field {
        margin-right: 0;
    }

    header#top > .container-large {
        padding-right: 15px;
        padding-left: 15px;
    }

    header nav ul li .mega-menu > div {
        padding-top: 15px;
        padding-bottom: 15px;
    }

    header nav ul ul {
        padding-left: 15px;
    }

    .blog .blog_text_wrapper {
        padding: 25px 15px;
    }

    .blog .blog_image_wrapper {
        height: 35vh;
        max-height: 300px;
    }

}

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



    footer .thelastone {
        max-width: 100%;
    }

    footer .footer-wrapper {
        padding-bottom: 45px;
    }

    footer .text-right {
        text-align: center !important;
    }

    footer nav {
        margin-top: 25px;
    }

    footer ul.menu-footermenu {
        flex-wrap: wrap;
        flex-direction: column;
    }

    footer ul.menu-footermenu li {
        display: flex;
        justify-content: center;
    }

    footer .menu-footermenu li:after, footer .menu-footermenu li::after {
        content: unset;
    }

    footer ul.menu-footermenu li a {
        font-size: 14px;
    }

    #menuwrapper {
        padding-right: 73px;
    }

    .acf-block {
        padding-bottom: 30px;
    }

    .acf-block:not(:first-of-type) {
        margin-top: 20px;
    }

    .cookie-notice > div {
        flex-direction: column;
        align-items: flex-start;
    }

    .woocommerce .woo_search_field button {
        float: right;
    }

    .blog .blog_text_wrapper {
        padding: 25px 0px;
    }

}

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

    body:not(.wp-admin) .form-submit #submit, body:not(.wp-admin) .form-submit #submit:visited, body:not(.wp-admin) .frm_button_submit, body:not(.wp-admin) .frm_button_submit:visited, body:not(.wp-admin) .button, body:not(.wp-admin) .button:visited, body:not(.wp-admin) .button.green, body:not(.wp-admin) .button.green:visited, body:not(.wp-admin) .wp-block-button__link, body:not(.wp-admin) .wp-block-button__link:visited, body:not(.wp-admin) a.tinvwl_add_to_wishlist_button.tinvwl-position-after, body:not(.wp-admin) a.tinvwl_add_to_wishlist_button.tinvwl-position-after:visited, body.wp-admin .edit-post-visual-editor .acf-block-preview .form-submit #submit, body.wp-admin .edit-post-visual-editor .acf-block-preview .form-submit #submit:visited, body.wp-admin .edit-post-visual-editor .acf-block-preview .frm_button_submit, body.wp-admin .edit-post-visual-editor .acf-block-preview .frm_button_submit:visited, body.wp-admin .edit-post-visual-editor .acf-block-preview .button, body.wp-admin .edit-post-visual-editor .acf-block-preview .button:visited, body.wp-admin .edit-post-visual-editor .acf-block-preview .button.green, body.wp-admin .edit-post-visual-editor .acf-block-preview .button.green:visited, body.wp-admin .edit-post-visual-editor .acf-block-preview .wp-block-button__link, body.wp-admin .edit-post-visual-editor .acf-block-preview .wp-block-button__link:visited, body.wp-admin .edit-post-visual-editor .acf-block-preview a.tinvwl_add_to_wishlist_button.tinvwl-position-after, body.wp-admin .edit-post-visual-editor .acf-block-preview a.tinvwl_add_to_wishlist_button.tinvwl-position-after:visited {
        font-size: 12px !important;
    }

    input:not([type="range"]), textarea, select {
        padding: 10px 12px;
    }

}

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

    header .cart_details {
        display: none;
    }

}

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

    #cartoffcanvas .wc-proceed-to-checkout {
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
    }

}

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

    header .logo {
        height: 40px;
    }

    header .logo-link {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        width: 100px;
    }

}

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

    header .logo {
        height: 30px;
    }

    header .logo-link {
        width: 70px;
    }

}

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

}


@media only screen and (max-height: 599.98px) {

    header nav#menu > ul {
        flex-direction: row;
        min-height: 100px;
    }

}