@media screen and (min-width: 576px) {
    .woocommerce-page #content,
    body:not([class*=elementor-page-]) .site-main {
        max-width: 100%;
    }
}
@media screen and (min-width: 992px) {
    .container,
    header#site-header,
    footer#site-footer,
    body:not([class*=elementor-page-]) .site-main {
        max-width: 85.6%;
        padding-left: 0;
        padding-right: 0;
        margin: 0 auto;
    }
    div#ez-cookie-notification {
        max-width: 1040px;
    }
}
@media screen and (min-width: 1200px) {
    .container,
    header#site-header,
    footer#site-footer,
    body:not([class*=elementor-page-]) .site-main {
        max-width: 1440px;
        margin: 0 auto;
    }
    header#site-header,
    footer#site-footer,
    .container,
    body:not([class*=elementor-page-]) .site-main {
        padding-left: 184px;
        padding-right: 184px;
    }
}

@media screen and (max-width: 1438px) {
    .product-list-modulo > a {
        flex-basis: 346px !important;
    }
}

@media screen and (max-width: 1115px) {
    .site-header-wrapper:has(>header#site-header .site-navigation .mobile-menu-wrapper.active) {
        position: sticky;
        top: 0;
        background: #ffffff;
    }
    .hamburger-menu {
        display: flex;
        margin-left: 12px;
        cursor: pointer;
    }
    .mobile-menu-wrapper.active {
        display: flex;
        padding: 48px 32px;
    }
    .mobile-menu-wrapper {
        position: fixed;
        width: 100%;
        height: 100%;
        background: #ffffff;
        top: 73px;
        left: 0;
    }
    .hamburger-menu .hamburger-menu-close {
        display: none;
    }
    #site-header .site-navigation:has(>.mobile-menu-wrapper.active) ul#menu-main-menu > li.contact-us {
        display: none;
    }
    #site-header .site-navigation:has(>.mobile-menu-wrapper.active) .hamburger-menu .hamburger-menu-active {
        display: none;
    }
    #site-header .site-navigation:has(>.mobile-menu-wrapper.active) .hamburger-menu .hamburger-menu-close {
        display: flex;
    }
    #site-header .mobile-menu-wrapper ul#menu-main-menu {
        flex-direction: column;
        justify-content: flex-start;
        width: 100%;
        align-items: flex-start;
        gap: 0;
    }
    #site-header ul#menu-main-menu > li:not(.contact-us) {
        display: none;
    }
    #site-header .mobile-menu-wrapper ul#menu-main-menu > li {
        display: flex;
        width: 100%;
    }
    #site-header .mobile-menu-wrapper ul#menu-main-menu > li:not(.contact-us) > a {
        padding: 16px 0;
        width: 100%;
        border-bottom: 1px solid #EBEBEB;
    }
    #site-header .site-navigation .mobile-menu-wrapper.active ul#menu-main-menu > li.contact-us {
        display: flex;
        margin: 0;
        margin-top: 64px;
        width: 100%;
    }
    #site-header .site-navigation .mobile-menu-wrapper.active ul#menu-main-menu > li.contact-us > a {
        width: 100%;
        text-align: center;
    }
    .heading {
        white-space-collapse: unset;
    }
    .product-list-modulo {
        display: grid;
        flex-wrap: wrap;
        grid-template-columns: auto auto;
        gap: 16px;
    }
    .product-list-modulo > a {
        max-width: 100% !important;
        flex-basis: 344px !important;
        justify-content: flex-start;
    }
    .product-list-modulo > a .prod-thumb-wrapper {
        max-height: 260px;
        min-height: 260px;
        overflow: hidden;
    }
    .section-story .row, 
    .section-approach .row {
        flex-direction: column;
    }
    .section-story .row .col, 
    .section-approach .row .col {
        width: 100% !important;
        max-width: 100% !important;
    }
    .faq-content-wrapper {
        max-width: 100%;
    }
    section.section.single-banner .content-wrapper {
        max-width: 496px;
    }
    .footer-wrapper {
        gap: 46px;
    }
    section.section.single-banner.outlets .content-wrapper {
        max-width: 439px;
    }
    section.section.single-banner.outlets .background-image {
        top: -253px;
        right: -396px;
        z-index: -1;
    }
    section.section.section-outlet .row {
        row-gap: 16px;
    }
    section.section.single-banner.exhibition-section .background-image {
        rotate: -120deg;
        width: 1010px;
        height: 612px;
        top: -16px;
        right: -400px;
    }
    .post-wrapper .post-col {
        max-width: 100%;
    }
    .product-sub-details > p {
        font-size: 24px;
        line-height: 32px;
    }
    .single-product nav.woocommerce-breadcrumb {
        padding: 64px 32px 48px 32px;
    }
    div#ez-cookie-notification {
        flex-direction: column;
        gap: 24px;
        align-items: flex-start;
    }
    div#ez-cookie-notification > .enzuzo-notification-text .notification-desc {
        flex-direction: row;
        max-width: 100%;
    }
    .ez-consent .notification-main.notification-bottom-center-floating .notification-buttons {
        flex-direction: row !important;
        align-self: flex-end;
    }
    section.section.upcoming-section {
        padding-bottom: 64px;
    }
    section.section.past-section {
        padding-top: 64px;
    }
    section.section.section-gallery {
        padding-bottom: 64px;
    }
    section.section.single-banner.contact .content-wrapper {
        max-width: 100%;
    }
    section.section.single-banner .content-wrapper .heading, 
    section.section.single-banner .content-wrapper .sub-heading {
        text-align: center;
    }
    .page-template-products section.section.single-banner .content-wrapper .heading, 
    .page-template-products section.section.single-banner .content-wrapper .sub-heading,
    .page-template-outlets section.section.single-banner .content-wrapper .heading, 
    .page-template-outlets section.section.single-banner .content-wrapper .sub-heading, 
    section.section.single-banner.contact .content-wrapper .sub-heading, 
    section.section.single-banner.contact .content-wrapper .heading, 
    .page-template-exhibition section.section.single-banner .content-wrapper .heading, 
    .page-template-exhibition section.section.single-banner .content-wrapper .sub-heading {
        text-align: left;
    }
    section.section.section-contact .content-wrapper .row {
        flex-direction: column;
        gap: 64px;
    }
    section.section.section-contact .row .col {
        max-width: 100%;
    }
}

@media screen and (max-width: 992px) {
    div#ez-cookie-notification {
        max-width: 704px;
    }
}

@media screen and (max-width: 991px) {
    header#site-header,
    footer#site-footer,
    .container.container,
    body:not([class*=elementor-page-]) .site-main {
        max-width: 100%;
        padding-left: 32px;
        padding-right: 32px;
    }
}

@media screen and (max-width: 972px){
    .section-product .row, 
    .section-prod-details .row {
        flex-direction: column;
    }
    .section-product .row .col, 
    .section-prod-details .row .col, 
    .section-prod-details .image-detail-wrapper {
        max-width: 100% !important;
    }
}

@media screen and (max-width: 767px) {
    header#site-header,
    footer#site-footer,
    .container.container,
    body:not([class*=elementor-page-]) .site-main,
    .single-product nav.woocommerce-breadcrumb {
        padding-left: 16px;
        padding-right: 16px;
    }
    .product-list-modulo > a {
        flex-basis: 328px !important;
    }
    .mobile-menu-wrapper.active {
        padding: 32px 16px;
    }
}
@media screen and (max-width: 735px) { 
    .desktop {
        display: none;
    }
    .mobile {
        display: block;
    }
    h1.heading {
        font-size: 40px;
        line-height: 56px;
    }
    .sub-heading {
        font-size: 18px;
        line-height: 28px;
    }
    section.section.section-banner {
        padding-top: 40px;
        padding-bottom: 80px;
    }
    section.section.section-products {
        padding-top: 64px;
        padding-bottom: 64px;
    }
    .product-list-modulo > a .product-content {
        padding: 0 16px 16px 16px;
    }
    .product-list-modulo > a .product-content .product-title-wrapper h3 {
        font-size: 20px;
        line-height: 32px;
    }
    .product-list-modulo > a .product-content > p {
        font-size: 16px;
        line-height: 24px;
    }
    h2.heading-secondary {
        font-size: 32px;
        line-height: 44px;
    }
    p.fs-18 {
        font-size: 16px;
        line-height: 24px;
    }
    .product-list .product-content .fs-18 {
        font-size: 18px;
        line-height: 28px;
    }
    .fs-32 {
        font-size: 24px;
        line-height: 32px;
    }
    .modal-popup-wrapper.active .fs-32 {
        font-size: 32px;
        line-height: 44px;
    }
    footer#site-footer {
        flex-direction: column;
        gap: 24px;
        padding-top: 40px;
    }
    footer#site-footer .site-navigation {
        width: 100%;
    }
    footer#site-footer .site-navigation > ul, 
    footer#site-footer .site-navigation > div {
        width: 100%;
    }
    .footer-wrapper {
        gap: 24px;
        flex-direction: column;
        align-items: flex-start;
    }
    .bottom-menu-wrapper {
        gap: 24px;
    }
    section.section.section-faq {
        padding-bottom: 64px;
        padding-top: 64px;
    }
    .pb-112 {
        padding-bottom: 64px;
    }
    .pt-112 {
        padding-top: 64px;
    }
    section.section.single-banner .content-wrapper {
        max-width: 311px;
    }
    .background-image {
        width: 728px;
        height: 442px;
        top: -165px;
        right: -384px;
    }
    section.section.single-banner {
        padding: 64px 16px;
    }
    section.section.product-wrapper {
        padding: 64px 0;
    }
    section.section.handcraft-section {
        padding-top: 80px;
    }
    .testi-list .slick-track {
        gap: 16px;
    }
    .slick-track:before, .slick-track:after {
        content: unset !important;
    }
    .slick-dotted.slick-slider {
        margin-bottom: 48px;
    }
    .page-template-products section.section.testimonials-section, 
    .single-product section.section.testimonials-section {
        padding-top: 32px;
        padding-bottom: 64px;
    }
    section.section.commissions-section {
        padding-top: 64px;
        padding-bottom: 64px;
    }
    .single-product nav.woocommerce-breadcrumb {
        padding: 40px 16px 32px 16px;
    }
    section.section.section-product .heading {
        font-size: 32px;
        line-height: 44px;
    }
    .prod-content-wrapper {
        font-size: 16px;
        line-height: 24px;
    }
    .product-sub-details > p {
        font-size: 16px;
        line-height: 24px;
    }
    section.section.single-banner.outlets .background-image {
        width: 556px;
        height: 417px;
        top: -160px;
        right: -366px;
    }
    .heading.mobile {
        white-space: break-spaces;
        white-space-collapse: break-spaces;
        white-space-collapse: preserve-breaks;
    }
    section.section.single-banner.outlets {
        padding-left: 0;
        padding-right: 0;
    }
    section.section.section-outlet {
        padding: 64px 0;
    }
    section.section.section-outlet .row {
        margin-bottom: 64px;
    }
    section.section.single-banner.exhibition-section {
        padding: 64px 0;
    }
    section.section.single-banner.exhibition-section .content-wrapper {
        max-width: 288px;
    }
    section.section.single-banner.exhibition-section .background-image {
        rotate: -120deg;
        width: 663px;
        height: 402px;
        top: 34px;
        right: -380px;
    }
    section.section.upcoming-section {
        padding: 64px 0;
    }
    .post-wrapper .post-col {
        padding: 0;
    }
    section.section.upcoming-section h2, 
    section.section.past-section h2,
    section.section.section-like h2 {
        font-size: 32px;
        line-height: 44px;
    }
    section.section.single-post {
        padding-top: 40px;
        padding-bottom: 64px;
    }
    .single-post .title-wrapper {
        align-items: center;
        gap: 40px
    }
    .single-post .title-wrapper h3 {
        font-size: 18px;
        line-height: 28px;
        max-width: 231px;
    }
    .single-post .thumb-wrapper {
        margin-bottom: 40px;
    }
    .single-post .thumb-wrapper {
        max-height: 193px;
        background-position: left;
    }
    section.section.section-like {
        padding-top: 64px;
    }
    .single-post .content-details-wrapper {
        padding-left: 16px;
        padding-right: 16px;
    }
    section.section.section-gallery {
        padding-top: 64px;
    }
    section.section.section-gallery h1 {
        font-size: 40px;
        line-height: 56px;
    }
    section.section.section-gallery p {
        font-size: 18px;
        line-height: 28px;
    }
    .gallery-wrapper .image-wrapper {
        width: calc(50% - 16px);
    }
    section.section.section-about {
        padding-top: 64px;
        padding-bottom: 64px;
    }
    section.section.section-approach h2,
    section.section.section-contact h4 {
        font-size: 32px;
        line-height: 44px;
    }
    section.section.section-approach h4 {
        font-size: 18px;
        line-height: 28px;
    }
    section.section.section-approach .col > P {
        font-size: 16px;
        line-height: 24px;
    }
    section.section.single-banner.contact {
        padding-left: 0;
        padding-right: 0;
    }
    section.section.section-contact {
        padding-top: 64px;
        padding-bottom: 64px;
    }
    .form-row .input-col {
        flex-direction: column;
        gap: 0;
    }
    section.section.section-contact .row .col .contact-side-wrapper {
        padding: 24px;
        gap: 0;
    }
    section.section.section-contact .row .col .contact-side-wrapper .icon-wrapper {
        width: 64px;
        height: 64px;
        margin-bottom: 8px;
    }
    section.section.section-contact .row .col .contact-side-wrapper .outlet-details-wrapper {
        margin-bottom: 24px;
    }
    section.section.section-contact .social-wrapper > h4, 
    section.section.section-contact .outlet-details-wrapper > h4 {
        font-size: 18px;
        line-height: 28px;
    }
    .legal-heading {
        font-size: 32px;
        line-height: 44px;
    }
    ul.default, 
    ul.style-number,
    ul.style-number li ul {
        padding-left: 22px;
    }
    .legal-pages p {
        font-size: 16px;
        line-height: 24px;
    }
    .error404 main#content {
        padding: 64px 16px;
    }
    .error404 h1.entry-title {
        font-size: 40px;
        line-height: 56px;
        padding: 0;
    }
    .error404 .page-content p {
        font-size: 18px;
        line-height: 28px;
    }
    .error404 .button-wrapper {
        width: 100%;
    }
}
@media screen and (max-width: 720px) { 
    div#ez-cookie-notification {
        max-width: 95%;
        padding: 24px;
    }
}
@media screen and (max-width: 645px) { 
    .outlet-rows {
        flex-direction: column;
        gap: 40px;
    }
    .modal-content {
        max-width: 100%;
        margin: 0;
        border-radius: 0;
        padding: 64px 16px 56px 16px;
    }
}
@media screen and (max-width: 520px) { 
    .button-wrapper {
        flex-direction: column;
    }
    #site-header ul#menu-main-menu > li.contact-us > a {
        display: none;
    }
    #site-header .site-navigation .mobile-menu-wrapper.active ul#menu-main-menu > li.contact-us > a {
        display: block;
    }
}
@media screen and (max-width: 480px) { 
    .ez-consent .notification-main.notification-bottom-center-floating .notification-buttons {
        flex-direction: column-reverse !important;
    }
    div#enzuzo-modal-wrap {
        padding: 0;
    }
    .ez-consent #enzuzo-modal-wrap .enzuzo-cookie-modal {
        border-radius: 0;
        margin: 0;
    }
    .ez-consent #enzuzo-modal-wrap .enzuzo-modal-header {
        padding: 40px 16px 16px;
    }
    .ez-consent .enzuzo-cookie-preferences {
        padding: 0 16px;
    }
    .ez-consent #enzuzo-modal-wrap .enzuzo-modal-footer {
        padding: 24px 16px 16px;
    }
}
