/* Responsive: về 1 cột trên mobile */
@media (max-width: 768px) {
    .woocommerce-billing-fields__field-wrapper,
    .woocommerce-additional-fields__field-wrapper {
        grid-template-columns: 1fr;
    }
    .home-product-categories .proc-item .proc-item-content {
        padding: 15px;
    }
    .home-product-categories .proc-item .proc-item-content h3 a {
        font-size: 24px;
        line-height: 40px;
    }
    .home-about {
        padding: 40px 0 0 0;
    }
    .home-about .col-left {
        margin-bottom: 20px;
    }
    .home-about .col-right {
        text-align: justify;
    }
    .home-about .commit {
        margin: 40px 0 0 0;
    }
    .commit .commit-list {
        gap: 0;
    }
    .commit .commit-list .commit-item {
        width: 100%;
        margin: 0 0 15px 0;
    }
    .product-in-project .title, .related-project .title, .category-list .title, .home-set-product .title {
        font-size: 30px;
        line-height: 42px;
    }
    .product-item:nth-child(-n+4), .related-project .project-item:nth-child(-n+4) {
        border-left: 1px solid #363636;
    }
    .related-project .project-item .project-content {
        padding: 15px;
    }
    .related-project .project-item .project-content h3, .related-project .project-item .project-content h3 a {
        font-size: 20px;
        line-height: 27px;
    }
    #footer .col-infomation {
        margin: 0 0 40px 0;
    }
    .top-footer .col-menu p, .top-footer .col-contact > p {
        font-size: 16px;
        line-height: 22px;
    }
    #footer .col-contact {
        margin: 20px 0 0 0;
    }
    .bottom-footer .payment-logos ul {
        justify-content: center;
    }
    .bottom-footer .copyright {
        width: 100%;
        text-align: center;
        margin: 0 0 15px 0;
    }
    .top-footer .col-menu ul li {
        margin: 0 0 9px 0;
    }
    .top-footer .col-menu ul li a, .top-footer .col-contact .col-contact-content ul li {
        font-size: 15px;
        line-height: 24px;
    }
    .container-fluid {
        padding: 0 15px;
    }
    .about-page, .about-list-content, .product-in-project, .related-project, .related.product,
    .project-page, .single-project, .category-page, .contact-page {
        margin: 50px 0 0 0;
    }
    .about-page .about-content h3, .product-page h1, .related.products h2,
    .project-page .project-content h3, .aside-content > p:nth-child(1), .aside-content > p:nth-child(2),
    .single-project h1, .category-page h1, .contact-page .col-left h1,
    .contact-page .col-right p:first-child, .products-in-set p.title {
        font-size: 30px;
        line-height: 42px;
    }
    .about-list-content .about-content-item {
        display: block;
    }
    .about-list-content .about-content-item .inner-content {
        padding: 30px;
    }
    .about-list-content .about-content-item .inner-content > p {
        font-size: 24px;
        line-height: 32px;
        margin: 0 0 30px 0;
    }
    .hidden-mobile {
        display: none!important;
    }
    .hidden-desktop {
        display: block!important;
    }
    .about-list-content .about-content-item .inner-content .inner-item .content p:first-child {
        font-size: 18px;
        line-height: 22px;
    }
    .navbar-brand {
        text-align: center;
        display: block;
    }
    .navbar-light .navbar-toggler {
        padding: 5px 0 0 0;
        border: 0;
    }
    .navbar-light .navbar-toggler:focus {
        outline: none;
    }
    .product-page h1 {
        margin-top: 30px;
    }
    .product-page ul.product-categories {
        margin: 0 0 30px 0;
        gap: 10px;
    }
    .product-page ul.product-categories li a {
        font-size: 16px;
        line-height: 24px;
    }
    .product-list, .featured-one-post {
        display: block;
    }
    .product-item, .related-project .project-item {
        padding: 24px 15px;
    }
    .featured-one-post .post-content {
        padding: 20px 15px;
    }
    .featured-one-post .post-content h3 a, .featured-one-post .post-content h4 {
        font-size: 24px;
        line-height: 32px;
    }
    .single-product .woocommerce-product-gallery {
        float: none;
        width: 100%!important;
        border-left: 1px #363636 solid;
    }
    .box-top-single-product {
        display: block!important;
    }
    .single-product .summary {
        float: none;
        width: 100%!important;
        padding: 15px;
    }
    .single-product h1 {
        font-size: 24px;
        line-height: 34px;
    }
    .woocommerce div.product form.cart div.quantity {
        width: 50%;
    }
    input.qty {
        width: calc(100% - 112px)!important;
    }
    .woocommerce div.product form.cart .button {
        width: calc(50% - 9px);
        padding: 17px 15px 15px 15px;
    }
    .related.products h2 {
        margin: 0 0 30px 0;
    }
    .customer-reviews .review-item .review-content {
        padding: 0 15px;
        font-size: 20px;
        line-height: 30px;
    }
    .customer-reviews {
        padding: 50px 0;
    }
    .project-list {
        margin: 50px 0;
    }
    .top-footer .col-contact .col-contact-content ul li {
        background: url('../images/building-fill.png') no-repeat left top 2px;
    }
    .single-project-title {
        padding: 0 15px;
        margin-bottom: 30px;
    }
    .single-project .content-below-image, .single-project-content, .single-project .content-below-product {
        padding: 0 15px;
        margin-top: 40px;
    }
    .single-project .content-below-image h3, .single-project-content h3, .content-below-product h3 {
        line-height: 34px;
        font-size: 22px;
    }
    .single-project .gallery-below-content {
        margin-top: 40px;
        display: block;
    }
    .wp-caption {
        max-width: 100%;
    }
    .category-page .category-content {
        margin-bottom: 40px;
    }
    .category-post-item .category-post-content {
        padding: 15px;
    }
    .category-post-item .category-post-content h3 {
        display: block;
    }
    .consultation-form {
        padding: 0 15px;
    }
    .consultation-form .wpcf7-form {
        display: block;
    }
    .consultation-form .name, .consultation-form .phone, .consultation-form .demand, .consultation-form .send {
        width: 100%;
    }
    .consultation-form .send input {
        margin-top: 0;
    }
    .commit .commit-title {
        font-size: 30px;
        line-height: 38px;
        margin-top: 40px;
    }
    .contact-page .col-left {
        border: 0;
        text-align: center;
        padding: 0 20px;
    }
    .contact-page .col-right {
        border: 0;
        padding: 15px;
    }
    .receiving-channel {
        padding: 30px 0;
    }
    .receiving-channel-list {
        display: block;
    }
    .receiving-channel-list .receiving-channel-content {
        padding: 30px 15px;
    }
    .receiving-channel-list .receiving-channel-content p:first-child {
        font-size: 22px;
        line-height: 32px;
    }
    .contact-page .map iframe {
        height: 300px;
    }
    .aside-content {
        padding: 40px 0;
    }
    .aside-list-contents .post-content > p:first-child {
        font-size: 30px;
        line-height: 38px;
    }
    .home-cart a {
        position: relative;
        padding-top: 8px;
    }
    .home-cart a i {
        font-size: 22px;
    }
    .home-cart a span {
        position: absolute;
        top: 0;
        right: -12px;
        z-index: 999;
    }
    .home-cart span.cart-count {
        padding: 0px 4px;
        line-height: 15px;
        font-size: 9px;
    }
    .main-menu {
        position: fixed;
        top: 0;
        right: -100%; /* ẩn ở bên phải ban đầu */
        width: 100%;
        height: 100%;
        background: #363636;
        color: #fff;
        overflow-y: auto;
        transition: right 0.3s ease-in-out;
        z-index: 1500;
        padding: 20px;
    }
    ul.navbar {
        display: none;
    }
    .main-menu.open ul.navbar {
        display: block;
        width: 100%;
        padding-top: 60px;
        padding-right: 0;
        padding-left: 20px;
    }
    .main-menu.open {
        right: 0;
        display: block !important;
        padding: 0;
    }
    .main-menu.open .nav-close {
        font-size: 30px;
        background: none;
        border: none;
        color: #fff;
        cursor: pointer;
        position: absolute;
        top: 20px;
        right: 20px;
        display: block!important;
        z-index: 99;
    }
    ul.navbar > li > a {
        color: #fff;
        display: block;
        margin: 5px 0;
    }
    .set-list-inner {
        display: block;
    }
    .set-list-inner .set-item {
        margin: 0 0 15px 0;
    }
    .set-item .set-content h3 {
        display: block;
    }
    .aside-content > p:nth-child(1), .aside-content > p:nth-child(2) {
        font-size: 24px;
    }
    ul.navbar > li > ul {
        display: block;
        position: static;
        background: transparent;
    }
    ul.navbar > li > ul > li a {
        border: 0;
        color: #fff;
    }
}
