@media only screen and (max-width: 1360px) {
    .single_product_section .product_box {
        gap: 10px;
    }

        .single_product_section .product_box .left {
            width: auto;
            flex: 0 0 620px;
        }

        .single_product_section .product_box .right {
            width: auto;
            flex: 1 1 0;
            min-width: 0;
        }

            .single_product_section .product_box .right .product_top_row {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                column-gap: 12px;
            }

            .single_product_section .product_box .right .brand_block img {
                width: 190px;
            }

            .single_product_section .product_box .right .product_summary_row {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                column-gap: 12px;
            }

            .single_product_section .product_box .right p.single_param {
                font-size: 13px;
            }

            .single_product_section .product_box .right .price_area p.price {
                font-size: 42px;
                gap: 8px;
            }

                .single_product_section .product_box .right .price_area p.price .promotion {
                    font-size: 15px;
                }

            .single_product_section .product_box .right .buttons {
                gap: 4px;
            }

                .single_product_section .product_box .right .buttons .noveo_btn.add_to_cart {
                    padding: 14px 10px;
                    font-size: 12px;
                    white-space: nowrap;
                }

                .single_product_section .product_box .right .buttons .counters {
                    gap: 4px;
                }

                    .single_product_section .product_box .right .buttons .counters .noveo_btn {
                        width: 36px;
                        height: 36px;
                    }

                    .single_product_section .product_box .right .buttons .counters input {
                        width: 12px;
                    }

            .single_product_section .product_box .right .action_box .share_area {
                gap: 10px;
            }
}

@media only screen and (max-width: 1224px) {
    .noveo_mobile_bar_bottom {
        display: block;
    }

    .noveo_header .top_area .right > a {
        display: none;
    }

    .noveo_header .center_area {
        display: none;
    }

    .noveo_header.bottom_header {
        display: none;
    }

    .configurator_section .conf_box {
        flex-wrap: wrap;
    }

    .configurator_section .center {
        width: calc(100% - 264px - 24px);
    }

    .configurator_section .right {
        width: 100%;
    }

        .configurator_section .right .group {
            grid-template-columns: repeat(1, 1fr);
            text-align: center;
        }

            .configurator_section .right .group.show {
                display: block;
            }

    .products_loop_section .row-cols-4 > * {
        width: 33%;
    }

    .noveo_footer .footer_box .col {
        width: 33%;
    }

    .show_hide_conf {
        border-bottom: 0px;
    }

    .cart_section .single_row.title_row {
        display: none;
    }

    .cart_section .single_row {
        flex-direction: column;
    }

        .cart_section .single_row .half .counters_width.counter_info {
            justify-content: center;
        }

            .cart_section .single_row .half .counters_width.counter_info::before {
                content: 'x';
            }

    .admin_panel_section .admin_row > div {
        width: 100%;
    }
}

@media only screen and (max-width: 1180px) {
    .single_product_section .product_box {
        flex-direction: column-reverse;
        position: relative;
    }

        .single_product_section .product_box .left {
            flex: none;
            width: 100%;
        }

            .single_product_section .product_box .left .slider_area {
                position: absolute;
                top: 0px;
                left: 0px;
                width: 100%;
                max-width: none;
            }

        .single_product_section .product_box .right {
            display: flex;
            flex-direction: column;
            flex: none;
            width: 100%;
            padding-top: 130%;
        }

            .single_product_section .product_box .right .product_top_row {
                display: flex;
                flex-direction: column;
                gap: 16px;
            }

            .single_product_section .product_box .right .product_summary_row {
                display: flex;
                flex-direction: column;
                gap: 20px;
            }

                .single_product_section .product_box .right .product_top_row > .price_area,
                .single_product_section .product_box .right .product_summary_row > .price_area,
                .single_product_section .product_box .right .product_summary_row > .action_box {
                    width: 100%;
                    flex-basis: auto;
                }
}

@media only screen and (max-width: 1112px) {
    .noveo_header .top_area .right {
        display: none;
    }

    .cols_section .cols_box .text > div {
        padding-left: 48px;
    }

    .category_view_section .cols_box .right > div {
        width: 50%;
    }

        .category_view_section .cols_box .right > div.pagination_box {
            width: 100%;
        }

    .page_hero_section .bottom_box {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
    }

        .page_hero_section .bottom_box .right {
            justify-content: flex-start;
        }

    .single_product_section .product_box {
        flex-direction: column-reverse;
        position: relative;
    }

        .single_product_section .product_box .left {
            width: 100%;
        }

            .single_product_section .product_box .left .slider_area {
                position: absolute;
                top: 0px;
                left: 0px;
                width: 100%;
            }

        .single_product_section .product_box .right {
            display: flex;
            flex-direction: column;
            width: 100%;
            padding-top: 130%;
        }

            .single_product_section .product_box .right .product_top_row {
                display: flex;
                flex-direction: column;
                gap: 16px;
            }

            .single_product_section .product_box .right .product_summary_row {
                display: flex;
                flex-direction: column;
                gap: 20px;
            }

                .single_product_section .product_box .right .product_top_row > .price_area,
                .single_product_section .product_box .right .product_summary_row > .price_area {
                    flex-basis: auto;
                    width: 100%;
                }

                .single_product_section .product_box .right .product_summary_row > .action_box {
                    width: 100%;
                    flex-basis: auto;
                }

            .single_product_section .product_box .right .action_box .alert_button {
                margin-top: 6px;
                margin-left: 6px;
                margin-right: 6px;
            }

            .single_product_section .product_box .right .action_box .share_area {
                margin-top: 8px;
            }

            .single_product_section .product_box .right .cities .map_data .right {
                min-height: auto;
                padding-top: unset;
            }

    .compare_section .compare_box > * {
        width: 33%;
    }

    .blog_section .blog_box > * {
        width: 33%;
    }

    .preview_gallery_panel .slider_area .pagination_thumbnails,
    .preview_gallery_panel .slider_area #product_gallery_slider_init {
        width: calc(100% - 192px);
    }
}

@media only screen and (max-width: 992px) {
    .category_slider_section .slider_box {
        padding-bottom: 96px;
        position: relative;
    }

    .category_slider_section .nav {
        position: absolute;
        bottom: 0px;
        left: 0px;
    }

    .products_loop_section .row-cols-4 > * {
        width: 50%;
    }

    .cols_section .cols_box,
    .cols_section .cols_box.reverse {
        flex-direction: column;
    }

        .cols_section .cols_box .image {
            width: 100%;
            margin-bottom: 48px;
        }

        .cols_section .cols_box .text {
            width: 100%;
        }

            .cols_section .cols_box .text > div {
                padding-left: 0px;
            }

        .cols_section .cols_box.reverse .text > div {
            padding-right: 0px;
        }

    .cols_section .title_box {
        text-align: left;
    }

    .cols_section .cols_box .text .space {
        gap: 48px;
    }

    .simple_configurator_section .dropdown_item {
        display: none;
    }

    .noveo_footer .footer_box .col {
        width: 50%;
    }

    .noveo_footer .bottom_box {
        grid-template-columns: repeat(1, 1fr);
    }

        .noveo_footer .bottom_box .right {
            justify-content: flex-start;
        }

    .cart_section .cart_box .left {
        grid-column: span 3;
    }

    .cart_section .cart_box .right {
        grid-column: span 3;
    }

    .cart_section .check_group .double_info {
        justify-content: space-between;
    }
}

@media only screen and (max-width: 880px) {
    .noveo_header .top_area .center {
        display: none;
    }

    .noveo_mobile_bar_bottom .search_toggle {
        display: block;
    }

    .configurator_section .left {
        width: 100%;
    }

    .configurator_section .center {
        width: 100%;
    }

    .configurator_section .group .dropdown_item {
        grid-column: span 2;
    }

    .configurator_section .right img {
        max-width: 100%;
    }

    .category_view_section .cols_box .left {
        position: fixed;
        left: 0px;
        top: 0px;
        height: 100vh;
        background-color: #FFF;
        z-index: 10;
        border-right: 1px solid #EBEBEB;
        width: 260px;
        transition-duration: 0.4s;
    }

        .category_view_section .cols_box .left > div {
            overflow: auto;
            padding: 24px;
            width: 100%;
        }

        .category_view_section .cols_box .left:not(.show) {
            transform: translateX(-100%);
        }

        .category_view_section .cols_box .left .mobile_button {
            display: block;
        }

    .tabs_section .row > div {
        width: 100%;
    }

    .tabs_section .pakage_box {
        grid-template-columns: repeat(1, 1fr);
    }

    .compare_section .compare_box > * {
        width: 50%;
    }

    .blog_section .blog_box > * {
        width: 50%;
    }

    .single_post_hero_section .absolute_image {
        display: none;
    }

    .single_post_hero_section .content_box {
        width: 100%;
        padding-right: 0px;
    }

    .contact_maps_section .single_location .left {
        grid-column: span 3;
    }

    .contact_maps_section .single_location .right {
        grid-column: span 3;
    }

    .article_section .double_cols {
        gap: 48px;
    }

    .admin_panel_section .left_panel {
        position: fixed;
        left: 0px;
        top: 0px;
        height: 100vh;
        background-color: #FFF;
        z-index: 10;
        border-right: 1px solid #EBEBEB;
        width: 260px;
        transition-duration: 0.4s;
        padding: 0px;
        min-width: unset;
    }

        .admin_panel_section .left_panel:not(.show) {
            transform: translateX(-100%);
        }

        .admin_panel_section .left_panel > div {
            overflow: auto;
            padding: 24px;
            width: 100%;
        }

        .admin_panel_section .left_panel .mobile_button {
            display: block;
        }
    /*.mobile_menu_panel{
        top: 54px;
    }*/
    .show_hide_conf .tab_box::after {
        display: none;
    }
}

@media only screen and (max-width: 650px) {
    .single_product_section {
        overflow-x: clip;
    }

        .single_product_section .wrapper_full {
            max-width: calc(100% - 24px);
        }

    .products_loop_section.front_loop {
        overflow: hidden;
        position: relative;
        padding-bottom: 52px;
    }

        .products_loop_section.front_loop .tns-ovh {
            overflow: visible;
            /*clip-path: inset(0 -100% 0 0);*/
        }

        .products_loop_section.front_loop .tns-nav {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            position: absolute;
            left: 0px;
            bottom: 0px;
            width: 100%;
        }

            .products_loop_section.front_loop .tns-nav button {
                width: 36px;
                height: 4px;
                border: 0px;
                padding: 0px;
                border-radius: 4px;
                background-color: #FF7F0026;
                transition-duration: 0.4s;
            }

                .products_loop_section.front_loop .tns-nav button.tns-nav-active {
                    background-color: #FF7F00;
                }

    .noveo_footer .footer_box .col {
        width: 100%;
        margin-top: 0px;
    }

    .noveo_footer .footer_box {
        margin-bottom: 96px;
    }

        .noveo_footer .footer_box .col:not(:last-child) {
            margin-bottom: 48px;
        }

    .noveo_footer .bottom_box .left {
        align-items: flex-start;
        gap: 24px;
        flex-direction: column;
    }

    h1, .noveo_h1 {
        font-size: 36px;
    }

    h2, .noveo_h2 {
        font-size: 32px;
    }

    h3, .noveo_h3 {
        font-size: 24px;
    }

    .noveo_header .top_area .logo img {
        width: 100%;
    }

    .configurator_section {
        margin-bottom: 64px;
    }

        .configurator_section .right .group.show {
            margin-top: 24px;
        }

    .sec_outher {
        margin-bottom: 96px;
    }

    .cols_section .title_box h2 {
        font-size: 24px;
    }

    .cols_section .cols_box .text .flex_item {
        font-size: 18px;
    }

        .cols_section .cols_box .text .flex_item img {
            padding: 14px;
        }

    .orange_background {
        padding: 96px 0px;
    }

    .navy_background {
        padding: 96px 0px;
    }

    .noveo_footer h3 {
        margin-bottom: 24px;
    }

    .page_hero_section .bottom_box .right {
        flex-direction: column;
        align-items: flex-start;
    }

    .category_view_section .cols_box .right > div {
        width: 100%;
        padding: 0px;
    }

    .page_hero_section .bottom_box .center {
        display: none;
    }

    .products_loop_section .pagination_box {
        flex-wrap: wrap;
    }

    .category_view_section .cols_box {
        gap: 0px;
    }

    .single_product_section .product_box .right p.single_param {
        flex-direction: column;
        align-items: flex-start;
    }

    .single_product_section .product_box .right > .noveo_breadcrumbs {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        max-width: 100%;
        gap: 6px 10px;
        padding: 10px 14px;
    }

        .single_product_section .product_box .right > .noveo_breadcrumbs a {
            white-space: normal;
        }

    .single_product_section .product_box .right .product_top_row > *,
    .single_product_section .product_box .right .product_summary_row > *,
    .single_product_section .product_box .right .action_box,
    .single_product_section .product_box .fitment_banner span {
        min-width: 0;
    }

    .single_product_section .product_box .right .price_area p.price {
        flex-wrap: wrap;
        row-gap: 6px;
    }

    .single_product_section .product_box .right h3.flex_title {
        flex-direction: column;
        align-items: flex-start;
    }

        .single_product_section .product_box .right h3.flex_title a {
            flex-wrap: wrap;
        }

    .single_product_section .product_box .right .buttons {
        grid-template-columns: auto minmax(0, 1fr) auto;
        width: 100%;
    }

        .single_product_section .product_box .right .buttons .counters {
            min-height: 44px;
        }

        .single_product_section .product_box .right .buttons .noveo_btn.add_to_cart {
            white-space: normal;
            text-align: center;
        }

    .single_product_section .product_box .right .action_box .share_area {
        flex-wrap: wrap;
    }

    .single_product_section .product_box .right .cities {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

        .single_product_section .product_box .right .cities .map_data,
        .single_product_section .product_box .right .cities .right_item .map_data {
            left: 0px;
            right: auto;
            width: 100%;
            max-width: 100%;
            flex-direction: column;
        }

    .single_product_section .product_box .fitment_banner span {
        font-size: 16px;
    }

    .single_product_section .product_box .left .single_file {
        word-break: break-all;
    }

    .tabs_section .nav_box {
        display: none;
    }

    .tabs_section .nav_hook .single_param {
        flex-direction: column;
        align-items: flex-start;
    }

    .compare_section .compare_box > * {
        width: 100%;
    }

    .blog_section .blog_box > * {
        width: 100%;
    }

    .article_section .double_cols {
        grid-template-columns: repeat(1, 1fr);
    }

    .admin_panel_section .right_panel .title_area {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
    }

    .admin_panel_section .admin_item .table_header {
        flex-wrap: wrap;
    }

        .admin_panel_section .admin_item .table_header > span {
            width: calc(50% - 2px);
        }

        .admin_panel_section .admin_item .table_header .to_right {
            width: calc(50% - 2px);
            text-align: left;
        }

    .admin_panel_section .admin_item .table_row {
        flex-wrap: wrap;
    }

        .admin_panel_section .admin_item .table_row > span {
            width: calc(50% - 2px);
        }

        .admin_panel_section .admin_item .table_row .to_right {
            width: calc(50% - 2px);
            text-align: left;
        }

    .contact_data_section {
        margin-bottom: 96px;
    }

    .preview_gallery_panel .slider_area .pagination_thumbnails,
    .preview_gallery_panel .slider_area #product_gallery_slider_init {
        width: calc(100% - 48px);
    }

        .preview_gallery_panel .slider_area #product_gallery_slider_init .controls button {
            left: 8px;
        }

            .preview_gallery_panel .slider_area #product_gallery_slider_init .controls button:last-child {
                right: 8px;
            }

    #noveo_product_map .noveo_content {
        flex-direction: column;
    }

    #product_info_html .noveo_content {
        flex-direction: column;
    }

        #product_info_html .noveo_content img {
            border-radius: 0px 0px 16px 16px;
        }
}

@media only screen and (max-width: 450px) {
    .single_product_section .product_box .right .cities {
        grid-template-columns: repeat(1, 1fr);
    }

    .single_product_section .product_box .fitment_banner {
        align-items: flex-start;
    }

        .single_product_section .product_box .fitment_banner img {
            width: 52px;
            height: 52px;
        }

    .single_product_section .product_box .right .cities .map_data {
        width: 100%;
        flex-direction: column;
    }

    .tabs_section .pakage_box .single_product {
        flex-direction: column;
    }

        .tabs_section .pakage_box .single_product .data p:last-child {
            display: flex;
            align-items: flex-start;
            flex-direction: column;
        }

    .cart_section .single_row .half {
        flex-direction: column;
        text-align: center;
    }

    .cart_section .check_group .double_info {
        flex-direction: column;
        align-items: flex-start;
    }

    .cart_section .check_group span.cost {
        text-align: left;
    }

    .cart_section .summary_area .single_param {
        flex-direction: column;
        align-items: flex-start;
    }

        .cart_section .summary_area .single_param span {
            max-width: unset;
            text-align: left;
        }

    .contact_maps_section .nav_box .group .single_item {
        padding: 14px 16px;
    }

    .mobile_menu_panel .top_area form .settings {
        width: 42px;
        min-width: 42px;
        height: 42px;
    }

    .mobile_menu_panel .top_area form button {
        height: 42px;
    }

    .mobile_menu_panel .top_area {
        gap: 4px;
    }

    .admin_panel_section .right_panel p.sub_title {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .admin_panel_section .content_area {
        padding: 0px;
    }
}
@media only screen and (max-width: 1180px) {
    /*
     * Mobile: wszystkie główne elementy produktu
     * układamy jeden pod drugim.
     */
    .single_product_section .product_box {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        position: relative;
    }
        /*
     * Usuwamy "pudełko" .left z layoutu,
     * ale jego dzieci nadal istnieją.
     *
     * Dzięki temu możemy wstawić:
     * 1. galerię
     * 2. dane produktu (.right)
     * 3. pliki / koszty dostawy
     */
        .single_product_section .product_box > .left {
            display: contents;
        }
            /*
     * GALERIA
     *
     * Najważniejsze:
     * NIE może być position:absolute.
     * Jej prawdziwa wysokość będzie teraz
     * powiększać cały product_box.
     */
            .single_product_section .product_box > .left > .slider_area {
                position: static;
                order: 1;
                width: 100%;
                max-width: none;
                margin-left: 0;
                margin-right: 0;
            }
        /*
     * Dane produktu od razu pod galerią.
     * Nie potrzebujemy już żadnego sztucznego paddingu.
     */
        .single_product_section .product_box > .right {
            order: 2;
            width: 100%;
            padding-top: 0;
        }
        /*
     * Pliki do pobrania, dostawa itd.
     * zostają pod właściwymi danymi produktu.
     */
        .single_product_section .product_box > .left > :not(.slider_area) {
            order: 3;
            width: 100%;
        }
        /*
     * Miniatury mogą mieć dowolną liczbę wierszy.
     * Kontener automatycznie zwiększy wysokość.
     */
        .single_product_section
        .product_box
        .slider_area
        .pagination_thumbnails {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            width: 100%;
            max-width: 100%;
            overflow: visible;
            gap: 8px;
            margin-top: 8px;
            margin-bottom: 28px;
        }

            .single_product_section
            .product_box
            .slider_area
            .pagination_thumbnails button {
                width: auto;
                min-width: 0;
                flex: none;
            }
}
