/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/

/* =========================================
   CSS general
   ========================================= */
.container-width, .full-width .ubermenu-nav, .container, .row {
    max-width: 1250px !important;
}
@media only screen and (min-width: 1400px) {
    .row-full-width{
        width: 99% !important;
        max-width: 1360px !important;
    }
}
@media only screen and (min-width: 1600px) {
    .row-full-width{
        width: 99% !important;
        max-width: 1460px !important;
    }
}
/* Chặn việc tràn Slider làm hỏng layout trang (quan trọng) */
.section-content { 
    overflow: hidden; 
}
/* header-box */
.header-box {
    margin-bottom: 1.5rem;
}
.header-box .info {
    color: #393939;
    font-family: "Be Vietnam Pro";
    font-size: 15px;
    font-weight: 600;
    line-height: 1.8;
    text-transform: uppercase;
    margin-bottom: .5rem;
}
.header-box .title {
    color: #EB8C37;
    font-family: "Be Vietnam Pro";
    font-size: 45px;
    font-weight: 700;
    line-height: 1.4;
}

/* Cấu hình chung cho nút mũi tên */
.flickity-slider {
    display: flex !important;
    align-items: center !important;
}
.flickity-prev-next-button {
    background-color: #ffffff !important; /* Nền trắng */
    width: 45px !important;
    height: 45px !important;
    border-radius: 50% !important; /* Hình tròn */
    box-shadow: 0 4px 10px rgba(0,0,0,0.1); /* Đổ bóng nhẹ */
    transition: all 0.3s;
    top: 45% !important;
    transform: translateY(-45%) !important;
}
.flickity-prev-next-button .arrow {
    fill: #EB8C37 !important; /* Màu cam thương hiệu */
}
.flickity-prev-next-button:focus {
    outline: none !important;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2) !important;
}
.flickity-prev-next-button:hover {
    background-color: #EB8C37 !important;
    transform: scale(1.1);
    box-shadow: 0 4px 10px rgba(0,0,0,0.1) !important;
}
.flickity-prev-next-button:hover .arrow {
    fill: #ffffff !important;
}
.home-slide .flickity-prev-next-button.previous { left: 25px !important; }
.home-slide .flickity-prev-next-button.next { right: 25px !important; }

.flickity-prev-next-button.previous {left: -40px !important; }
.flickity-prev-next-button.next { right: -40px !important; }

.slider-nav-push:not(.slider-nav-reveal) .flickity-prev-next-button {
    margin-top: unset !important;
}
/* Chỉnh hình dạng dấu chấm thành vạch ngang */
.flickity-page-dots .dot {
    width: 12px !important;
    height: 12px !important;
    border-radius: 6px !important;
    background: #519528 !important; /* Màu khi chưa chọn */
    margin: 0 5px !important;
    opacity: 1 !important;
}
.flickity-page-dots .dot.is-selected {
    background: #EB8C37 !important; /* Màu cam thương hiệu */
    width: 48px !important; /* Dài ra thêm một chút khi chọn */
}

#wrapper > .woocommerce-message {
    position: fixed !important;
    z-index: 9999 !important;
}

/* =========================================
   HEADER > header
   ========================================= */
.header {
    padding-top: 30px;
}
.header-wrapper .header-main {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
}
.header .header-nav-main.nav-left {
    justify-content: center !important;
    border-radius: 100px;
    border: 1px solid rgba(255, 255, 255, 0.40);
    background: rgba(0, 0, 0, 0.21);
    backdrop-filter: blur(7.5px);
    padding: 10px 25px 10px 25px;
    position: relative;
    /* overflow: hidden; */
}
.header .header-nav-main.nav-left>li.active .nav-top-link {
    color: #EB8C37 !important;
}
.header .flex-col.hide-for-medium.flex-left.flex-grow {
    margin-left: auto;
    flex: 0 0 715px;
}
.header .header-nav-main.nav-left>li>a {
    font-size: 16px;
}
.nav-dropdown-has-arrow li.has-dropdown:before {
    top: calc(100% + 10px) !important;
}
.nav-dropdown-has-arrow li.has-dropdown:after {
    top: calc(100% - 5px) !important;
}
/* .header .header-nav-main.nav-left>li .sub-menu {
    padding: 10px !important;
    border-radius: 5px !important;
    border: unset !important;
    top: calc(100% + 10px) !important;
}
.header .header-nav-main.nav-left>li .sub-menu>li a {
    font-size: 14px;
} */

.header .header-nav-main.nav-left > li.has-sub > .sub-menu {
    padding: 20px !important; 
    border-radius: 8px !important;
    border: 1px solid #eee !important;
    top: calc(100% + 10px) !important;
    /* left: -300%; */
    /* min-width: 992px; */
    min-width: 300px; 
    display: flex; 
    flex-wrap: wrap;
    gap: 10px; 
    background: #fff;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}
.header .header-nav-main.nav-left > li.has-sub > .sub-menu > li {
    flex: 0 0 100%;
    max-width: 100%;
    border-right: unset !important;
}
.header .header-nav-main.nav-left > li.has-sub > .sub-menu > li > a {
    font-weight: bold !important;
    text-transform: uppercase;
    /* color: #333 !important; */
    /* border-bottom: 2px solid #EB8C37; */
    /* padding-bottom: 5px; */
    margin: 0 5px !important;
    margin-bottom: 10px !important;
    display: block;
    font-size: 13px;
    /* border-radius: unset !important; */
}

.header .header-nav-main.nav-left > li.menu-tu-dong-danh-muc > .sub-menu {
    padding: 10px !important; 
    border-radius: 8px !important;
    border: 1px solid #eee !important;
    top: calc(100% + 10px) !important;
    left: -300%;
    min-width: 1180px;
    /* min-width: 600px;  */
    display: flex; 
    flex-wrap: wrap;
    gap: 10px; 
    background: #fff;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    /* transform: translateY(-600px); */
    transition: transform 0.5s ease-in-out;
}
.header .header-nav-main.nav-left > li.menu-tu-dong-danh-muc.current-dropdown > .sub-menu {
    /* transform: translateY(0); */
}
.header .header-nav-main.nav-left > li.menu-tu-dong-danh-muc > .sub-menu > li {
    /* flex: 0 0 30%;
    max-width: 30%; */
    flex: 0 0 19%;
    max-width: 19%;
    border-right: unset !important;
}
.header .header-nav-main.nav-left > li.menu-tu-dong-danh-muc > .sub-menu > li.li-cap-1:first-child 
/* .header .header-nav-main.nav-left > li.menu-tu-dong-danh-muc > .sub-menu > li.li-cap-1:nth-child(2)  */
{
    display: none !important;
}
.header .header-nav-main.nav-left > li.menu-tu-dong-danh-muc > .sub-menu > li > a {
    font-weight: bold !important;
    text-transform: uppercase;
    color: #333 !important;
    border-bottom: 2px solid #EB8C37;
    padding-bottom: 5px;
    margin: 0 5px !important;
    margin-bottom: 10px !important;
    display: block;
    font-size: 13px;
    border-radius: unset !important;
}
.header .header-nav-main.nav-left > li.menu-tu-dong-danh-muc > .sub-menu > li > a:hover {
    /* padding-left: 10px !important; */
    color: #EB8C37 !important;
}
.header .header-nav-main.nav-left > li.menu-tu-dong-danh-muc > .sub-menu >.li-cap-1 > .ul-cap-2 {
    position: relative !important; 
    top: 0 !important; 
    left: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    display: block !important; 
    visibility: visible !important;
    opacity: 1 !important;
    border: none !important;
    min-width: unset !important; 
}
.header .header-nav-main.nav-left > li.menu-tu-dong-danh-muc > .sub-menu >.li-cap-1 > .ul-cap-2 li a {
    font-weight: normal !important;
    text-transform: none;
    padding: 5px 0 !important;
    color: #666 !important;
    font-size: 14px;
    transition: all 0.3s ease;
    border-radius: unset !important;
}
.header .header-nav-main.nav-left > li.menu-tu-dong-danh-muc > .sub-menu >.li-cap-1 > .ul-cap-2 li a:hover {
    color: #EB8C37 !important;
    padding-left: 8px !important;
}
/* .header .header-nav-main.nav-left > li > .sub-menu .ul-cap-2 .ul-cap-3 {
    margin-left: 15px !important;
} */
.header .header-nav-main li.menu-tu-dong-danh-muc .nav-dropdown>li:last-child:not(.nav-dropdown-col)>a {
    border-bottom: 2px solid #EB8C37 !important;
}

.mega-menu li.menu-item-has-children {
    position: relative;
}
.mega-menu li.menu-item-has-children:hover > ul.sub-menu {
    display: block !important;
    position: absolute;
    left: 100%; /* Đẩy sang bên phải của cấp 2 */
    top: 0;
    min-width: 200px;
    background: #fff;
    box-shadow: 2px 2px 10px rgba(0,0,0,0.1);
    z-index: 999;
}

/* ========== cate cap 3 ========== */
.li-cap-2.has-child-v3 {
    position: relative !important;
}
.has-child-v3 ul.ul-cap-3 {
    display: none !important;
    visibility: visible !important;
    position: relative !important;
    left: 0 !important;
    padding-left: 15px !important;
    width: 100% !important;
    box-shadow: none !important;
    margin-top: 5px !important;
}
.toggle-cat-v3 {
    position: absolute;
    right: 0;
    top: 0px;
    width: 30px;
    height: 30px;
    text-align: center;
    line-height: 30px;
    cursor: pointer;
    z-index: 10;
}
.toggle-cat-v3.active i:before {
    transform: rotate(180deg);
    display: inline-block;
}
li.cat-cap-2 {
    position: relative !important;
}

ul.ul-cap-3 {
    display: none !important;
    visibility: visible !important; /* Phải có cái này vì Flatsome hay dùng visibility:hidden */
}

/* Khi jQuery chạy slideToggle, nó sẽ thêm style="display:block" */
/* Chúng ta cần đảm bảo style inline của JS thắng được cái !important ở trên */
ul.ul-cap-3[style*="display: block"] {
    display: block !important;
}


/* ========== */
/* .stuck .header-main {
    background: rgba(81, 149, 40, .7);
} */
.header-wrapper.stuck {
    background: rgba(81, 149, 40, .85) !important;
}
.header-wrapper.stuck .header-bg-color {
    background: unset !important;
}
.header-wrapper.stuck .header-main .nav > li.has-icon-left {
    height: 20px !important;
}
.header-wrapper.stuck .header-main .nav > li > a {
    line-height: 20px !important;
    padding: unset !important;
    color: #fff;
}
.header-wrapper.stuck .header-main .nav > li > a.more-button2 {
    padding: 5px 20px 5px 5px !important;
}

/* ========== */
.header .header-search.has-icon {
    margin: 0 20px !important;
}
.header .header-search.has-icon .header-button .button.icon{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 57px;
    height: 57px;
    border-radius: 100px;
    border: 1px solid rgba(255, 255, 255, 0.40);
    background: rgba(0, 0, 0, 0.21);
    backdrop-filter: blur(2.5px);
}
#ux-search-dropdown.nav-dropdown {
    left: -120px !important;
}
#ux-search-dropdown {
    padding: 10px 0 !important;
    border-radius: 5px;
}
#ux-search-dropdown .header-search-form {
    padding: 0 10px !important;
}
.live-search-results .autocomplete-suggestion .search-price {
    display: none !important;
}
.live-search-results .autocomplete-suggestion .search-name {
    font-size: 13px !important;
}




/* ========== */
.header .cart-item.has-icon .header-cart-title {
    display: none !important;
}
.header-wrapper .cart-item.has-icon .cart-icon {
    margin-left: 0 !important;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 57px;
    height: 57px;
    border-radius: 100px;
    border: 1px solid rgba(255, 255, 255, 0.40);
    background: rgba(81, 149, 40, 0.9);
    backdrop-filter: blur(2.5px);
}
.header-wrapper.stuck .cart-item.has-icon .cart-icon {
    background: rgba(235, 140, 55, 0.8);
}
.header-wrapper.stuck .cart-item.has-icon .cart-icon strong {
    border: 2px solid #fff;
    color: #fff;
}
.header-wrapper.stuck .cart-item.has-icon .cart-icon:hover strong {
    color: #519528 !important;
}
.header-wrapper.stuck .cart-item.has-icon .cart-icon strong::after {
    border: 2px solid #fff;
}
.header-wrapper .cart-item.current-dropdown > ul {
    border-radius: 10px !important;
    padding: 10px 0 !important;
}
.header-wrapper .cart-item.current-dropdown ul.widget_shopping_cart {
    padding: 0 10px !important;
}
.ux-mini-cart-footer .woocommerce-mini-cart__buttons .button.wc-forward {
    border-radius: 5px !important;
}




/* ========== */
.more-button {
    border-radius: 100px;
    border: 1px solid rgba(255, 255, 255, 0.40);
    background: rgba(0, 0, 0, 0.21);
    backdrop-filter: blur(7.5px);
    padding: 8px 25px 8px 8px;
    position: relative;
    overflow: hidden;
    background: #EB8C37;
}
.more-button span {
    font-size: 20px;
    font-weight: 600;
    z-index: 2;
    color: #fff;
    -webkit-transition: all .5s cubic-bezier(0.22,0.61,0.36,1);
    transition: all .5s cubic-bezier(0.22,0.61,0.36,1);
}
.more-button:after {
    position: absolute;
    background: #519528;
    width: 0;
    height: 100%;
    content: '';
    left: 0;
    top: 0;
    z-index: 1;
    -webkit-transition: all .5s cubic-bezier(0.22,0.61,0.36,1);
    transition: all .5s cubic-bezier(0.22,0.61,0.36,1);
}
.more-button:hover{
    border: 1px solid #519528;
}
.more-button:hover:after {
    width: 100%;
}
.more-button:hover span {
    color: #fff;
}

/* ========== */
.header .more-button2 {
    border-radius: 100px;
    border: 1px solid rgba(255, 255, 255, 0.40);
    background: rgba(0, 0, 0, 0.21);
    backdrop-filter: blur(7.5px);
    padding: 8px 25px 8px 8px;
    position: relative;
    overflow: hidden;
}
.header .more-button2 span {
    font-size: 20px;
    font-weight: 600;
    z-index: 2;
    color: #fff;
    -webkit-transition: all .5s cubic-bezier(0.22,0.61,0.36,1);
    transition: all .5s cubic-bezier(0.22,0.61,0.36,1);
}
.header .more-button2:after {
    position: absolute;
    background: #519528;
    width: 0;
    height: 100%;
    content: '';
    left: 0;
    top: 0;
    z-index: 1;
    -webkit-transition: all .5s cubic-bezier(0.22,0.61,0.36,1);
    transition: all .5s cubic-bezier(0.22,0.61,0.36,1);
}
.header .more-button2:hover{
    border: 1px solid #519528;
}
.header .more-button2:hover:after {
    width: 100%;
}
.header .more-button2:hover span {
    color: #fff;
}

/* =========================================
   HOME SLIDE > home-slide
   ========================================= */
.home-slide {}
.home-slide .title-box p {
    font-size: 16px;
    font-family: "Barlow", sans-serif;
}
.home-slide .title-box h2 {
    font-size: 35px;
    line-height: 1.4;
    font-family: "Barlow", sans-serif;
    font-weight: 700 !important;
}

/* =========================================
   HOME GALLERY > home-gallery
   ========================================= */
.home-gallery {}
.home-gallery .gallery-col:nth-child(1),
.home-gallery .gallery-col:nth-child(2),
.home-gallery .gallery-col:nth-child(7),
.home-gallery .gallery-col:nth-child(8) {
    margin-top: 20px;
}
.home-gallery .gallery-col:nth-child(3),
.home-gallery .gallery-col:nth-child(6) {
    margin-top: 40px;
}

/* =========================================
   HOME ABOUT > home-about
   ========================================= */
@media only screen and (min-width: 1200px) {
    .home-about {
        margin-top: -135px;
    }
}
.home-about .about-box .about-logo {
    margin-left: auto;
    margin-right: auto;
}
.home-about .about-box .brief p {
    color: #393939;
    font-family: "Roboto";
    font-size: 15px;
    font-weight: 500;
    line-height: 1.7;
    text-align: center;
}
.home-about .about-box .brief p strong {
    font-weight: 700;
}

/* =========================================
   PRODUCT CATEGORY SLIDER > home-cate
   ========================================= */
.home-cate {
    margin-top: unset !important;
    margin-bottom: unset !important;
}
.home-cate .product-category .box-text {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}
.home-cate .product-category .box-text .button {
    display: inline-block !important;
}
.home-cate .product-category .box-text-inner {
    padding-top: 20px;
    text-align: left;
}
.home-cate .product-category .box-text h5.header-title{
    color: #393939;
    font-family: "Be Vietnam Pro";
    font-size: 30px;
    text-transform: capitalize !important;
}
.home-cate .product-category .box-text h5:after {
    font-family: "Roboto", sans-serif;
    content: "Xem chi tiết \2197";
    letter-spacing: 0 !important;
    display: block;
    margin-top: 20px;
    background-color: #EB8C37;
    color: #fff;
    font-size: 13px;
    line-height: 35px;
    font-weight: 600;
    /* text-transform: uppercase; */
    padding: 1px 20px;
    border-radius: 30px;
    width: fit-content;
    transition: all 0.3s;
}
.home-cate .product-category:hover .box-text h5:after {
    background-color: #519528;
    transform: translateX(10px);
}
/* 1. Căn giữa 3 item */
.home-cate .flickity-viewport {
    /* overflow: visible !important; */
}

/* 2. Mặc định tất cả slide mờ đi và nhỏ lại một chút */
.home-cate .flickity-slider > .col {
    opacity: 0.5;
    transition: transform 0.3s, opacity 0.3s;
    transform: scale(0.95);
}
/* 3. Chỉ slide nào đang nằm chính giữa (is-selected) thì mới rõ và to lên */
.home-cate .flickity-slider > .col.is-selected {
    opacity: 1 !important;
    transform: scale(1); /* To về bình thường */
}



/* =========================================
   HOME SERVICES > home-services
   ========================================= */
.home-services {
    position: relative;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
    border-radius: 20px;
}
@media only screen and (min-width: 1400px) {
    .home-services{
        max-width: 1360px !important;
    }
}
@media only screen and (min-width: 1600px) {
    .home-services{
        max-width: 1460px !important;
    }
}
.home-services .header-box .info,
.home-services .header-box .title {
    color: #fff;
}
.home-services .serviceList {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding-bottom: 50px;
}
.home-services .serviceList >.col-dich-vu {
    cursor: pointer;
    flex: 0 0 20%;
    max-width: 20%;
    min-height: 290px;
    padding: 30px !important;
    margin-left: -30px;
    margin-right: -30px;
    background: linear-gradient(164deg, #519528 10%, #B68219 90%);
    backdrop-filter: blur(1.5px);
    border-radius: 50%;
    transition: all 0.3s;
    z-index: 1;
    opacity: 0.5;
}
.home-services .serviceList >.col-dich-vu.active,
.home-services .serviceList >.col-dich-vu:hover {
    z-index: 10 !important;
    transform: scale(1.05) translateY(-10px);
    background: linear-gradient(63deg, rgba(23, 198, 195, 0.95) 7%, rgba(23, 198, 125, 0.95) 50%, rgba(240, 149, 0, 0.95) 93%);
    opacity: 1;
}
.home-services .serviceList >.col-dich-vu .serviceItem .box-image img {
    display: flex;
    margin-left: auto;
    margin-right: auto;
    height: 70px;
    width: 70px;
    transition: transform 0.3s;
}
.home-services .serviceList >.col-dich-vu .serviceItem .box-text {
    padding: 0 !important;
}
.home-services .serviceList >.col-dich-vu .serviceItem .box-text .item-title {
    color: #fff;
    font-family: "Be Vietnam Pro";
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 1rem;
    transition: transform 0.3s;
}
.home-services .serviceList >.col-dich-vu.active .serviceItem .box-text .item-title,
.home-services .serviceList >.col-dich-vu:hover .serviceItem .box-text .item-title {
    font-size: 17px;
    font-weight: 700;
}
.home-services .serviceList >.col-dich-vu .serviceItem .box-text .brief {
    color: #fff;
    font-family: "Roboto";
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    word-wrap: break-word;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    height: inherit;
    margin-bottom: 1rem;
    transition: transform 0.3s;
    transform: translateY(-100%);
    opacity: 0;
}
.home-services .serviceList >.col-dich-vu.active .serviceItem .box-text .brief,
.home-services .serviceList >.col-dich-vu:hover .serviceItem .box-text .brief {
    transform: translateY(0);
    opacity: 1;
}
.home-services .serviceList >.col-dich-vu .serviceItem .box-text img {
    margin: 0;
    height: 0;
    width: 0;
    transition: transform 0.3s;
    opacity: 0;
}
.home-services .serviceList >.col-dich-vu.active .serviceItem .box-text img,
.home-services .serviceList >.col-dich-vu:hover .serviceItem .box-text img {
    height: 25px;
    width: 25px;
    opacity: 1;
}

/* counter box */
.home-services .counter {
    border-top: 1px solid rgba(68, 129, 48, 0.8);
}
.home-services .counter .col-counter {
    flex: 0 0 20%;
    max-width: 20%;
    padding: 30px 0px 0px 0px !important;
}
.home-services .counter .counter-item {
    border-right: 1px solid rgba(68, 129, 48, 0.8);
}
.home-services .counter .col-counter:last-child .counter-item {
    border-right: none !important;
}
.home-services .counter .counter-item .stats-item {
    color: #fff; 
    padding: 10px;
    display: flex;
    align-items: center;
    flex-direction: column;
}
.home-services .counter .counter-item .stats-item .count-wrapper {
    display: flex;
    align-items: center;
    flex-direction: row;
}
.home-services .counter .counter-item .count_to {
    font-size: 55px; 
    line-height: 1;
    font-weight: 800;
    margin-right: 10px;
}
.home-services .counter .counter-item .symbol-box {
    display: flex;
    flex-direction: column;
    line-height: 1.3;
}
.home-services .counter .counter-item .plus-sign {
    font-size: 24px;
    font-weight: bold;
    color: #FF9900; 
}
.home-services .counter .counter-item .unit-text {
    font-size: 14px;
    font-weight: 600;
    text-transform: capitalize;
}
.home-services .counter .counter-item .desc-text {
    font-size: 13px;
    margin-top: 5px;
    opacity: 0.8;
    text-transform: capitalize; 
}

/* =========================================
   HOME PROJECTS > home-projects
   ========================================= */
.home-projects .section-content {
    position: relative;
    margin-left: auto;
    margin-right: auto;
}
@media only screen and (min-width: 1400px) {
    .home-projects .section-content {
        max-width: 1360px !important;
    }
}
@media only screen and (min-width: 1600px) {
    .home-projects .section-content {
        max-width: 1460px !important;
    }
}
/* .home-projects .flickity-viewport  */
.home-projects .section-content {
    overflow: unset !important;
}
.home-projects .projecList {
    max-width: unset !important;
}
.home-projects .projecList .project-item {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.3s ease;
}
.home-projects .projecList .project-item:hover{
    transform: translateY(-10px);
}
.home-projects .projecList .project-item::after{
    content: "";
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background: linear-gradient(to bottom, rgba(33, 33, 33, 0.00) 0%, rgba(27, 27, 27, 0.86) 100%);
}
.home-projects .projecList .project-item .info-box {
    width: 75% !important;
    bottom: 0% !important;
    z-index: 2;
}
.home-projects .projecList .project-item .info-box .text-box-content h3 {
    font-family: "Be Vietnam Pro";
    font-size: 20px;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 1.5rem;
    color: #fff;
    text-transform: capitalize !important;
    transition: all 0.3s ease;
}
.home-projects .projecList .project-item:hover .info-box .text-box-content h3 {
    color: #EB8C37;
}
.home-projects .projecList .project-item .info-box .text-box-content p {
    font-family: "Roboto";
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 1.5rem;
    color: #fff;
    text-transform: capitalize !important;
}
.home-projects .projecList .project-item .info-box .text-box-content p img {
    margin: unset !important;
}
.home-projects .flickity-page-dots {
    bottom: 0 !important;
}

/* =========================================
   HOME WHY > home-why
   ========================================= */
.home-why {
    padding-top: 350px !important;
    margin-top: -275px;
}
.home-why .why-img {
    margin-left: auto;
    margin-right: auto;
}
.home-why .row-img .col-img {
    padding-bottom: unset !important;
}
.home-why .whyList {
    height: 600px;
    align-items: center;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}
.home-why .whyList .why-item {
    cursor: pointer;
    position: relative;
    /* overflow: hidden; */
    align-items: center;
    border-radius: 15px;
    border: 1px solid #D9D9D9;
    padding: 25px;
    width: 60%;
    transition: all 0.3s ease;
}
.home-why .whyList .why-item:hover {
    border-color: #519528;
    transform: translateY(-10px);
}
.home-why .whyList .why-item.why-item2,
.home-why .whyList .why-item.why-item4 {
    width: 65%;
}
.home-why .whyList .why-item.why-item2,
.home-why .whyList .why-item.why-item3 {
    margin-left: auto;
}
.home-why .whyList .why-item.why-item3 {
    margin-top: -100px;
}
.home-why .whyList .why-item.why-item2 {
    margin-bottom: -100px;
}
.home-why .whyList .why-item.why-item4 {
    margin-left: auto;
    margin-right: auto;
}
.home-why .whyList .why-item::after{
    content: "";
    position: absolute;
    border-radius: 15px;
    overflow: hidden;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(164deg, rgba(81, 149, 40, 0.10) 11.42%, rgba(182, 130, 25, 0.10) 89.08%);
}
.home-why .whyList .why-item .icon-box-img {
    margin-right: -45px;
}
.home-why .whyList .why-item.why-item2 .icon-box-img,
.home-why .whyList .why-item.why-item4 .icon-box-img {
    margin-right: 0;
    margin-left: -45px;
}
.home-why .whyList .why-item .info-box h3 {
    font-family: "Be Vietnam Pro";
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: .5rem;
    color: #333;
    text-transform: capitalize !important;
    transition: all 0.3s ease;
}
.home-why .whyList .why-item:hover .info-box h3 {
    color: #EB8C37;
}
.home-why .whyList .why-item .info-box p {
    font-family: "Roboto";
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 0;
    color: #333;
    word-wrap: break-word;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    height: inherit;
}

/* =========================================
   HOME QUESTION > home-question
   ========================================= */
.home-question {
    position: relative;
    z-index: 2;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
    border-radius: 20px;
}
@media only screen and (min-width: 1400px) {
    .home-question{
        max-width: 1360px !important;
    }
}
@media only screen and (min-width: 1600px) {
    .home-question{
        max-width: 1460px !important;
    }
}
.home-question .col-left {
    position: relative;
}
.home-question .col-left .two-image .img-box .img-inner {
    /* height: 455px; */
    height: 325px;
    width: 100%;
    object-fit: cover;
    border-radius: 20px;
    overflow: hidden;
}
.home-question .col-left .two-image .img-box.img-box1 {
    margin-bottom: 100px;
}
.home-question .col-left .two-image .img-box.img-box2 {
    margin-top: 100px;
}
@keyframes rotate-infinite {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
.home-question .col-left .phone-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    width: 150px !important;
    height: 150px !important;
    border-radius: 50%;
    overflow: hidden;
}
.home-question .col-left .phone-icon img {
    animation: rotate-infinite 10s linear infinite;
}
    
.home-question .col-right {
    position: relative;
    padding-left: 30px;
}
.home-question .col-right .accordion {
    min-height: 390px;
}
.home-question .col-right .accordion .toggle {
    left: unset !important;
    right: 0 !important;    
}
.home-question .col-right .accordion .accordion-item {
    margin-bottom: 15px;
    border: none !important;
}
.home-question .col-right .accordion .accordion-item.is-selected {
    background: #fff;
    border-radius: 15px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
}
.home-question .col-right .accordion .accordion-title {
    background-color: transparent !important;
    font-weight: bold;
    color: #333;
    padding: 15px 20px 15px 40px !important;
    transition: all 0.3s;
    background: url('https://bvcom.vn/wp-content/uploads/2026/04/check-double-fill.svg') no-repeat;
    background-position: 10px center;
    background-size: 24px;
}
.home-question .col-right .accordion .accordion-title.active {
    border: unset !important;
}
.home-question .col-right .accordion .accordion-inner {
    padding: 0 20px 20px 20px !important;
    font-size: 14px;
    color: #666;
    line-height: 1.6;
}
.home-question .col-right .accordion .accordion-title i {
    color: #EB8C37;
}

/* =========================================
   HOME PARTNER > home-partner
   ========================================= */
@keyframes marquee-logic {
    0% { transform: translateX(0); }
    100% { transform: translateX(100%); }
}
.home-partner {
    /* margin-left: 0 !important; */
}
@media only screen and (min-width: 1400px) {
    .home-partner1 .row-full-width {
        width: unset !important;
        max-width: unset !important;
        margin-left: 0 !important;
        margin-right: calc(50% - 680px) !important;
    }
    .home-partner2 .row-full-width {
        width: unset !important;
        max-width: unset !important;
        margin-left: calc(50% - 680px) !important;
        margin-right: 0 !important;
    }
}
@media only screen and (min-width: 1600px) {
    .home-partner1 .row-full-width {
        margin-right: calc(50% - 730px) !important;
    }
    .home-partner2 .row-full-width {
        margin-left: calc(50% - 730px) !important;
    }
}
.home-partner .flickity-slider {
    /* display: flex;
    animation: marquee-logic 30s linear infinite; */
}
.home-partner .flickity-slider:hover {
    animation-play-state: paused;
}
.home-partner .flickity-button {
    /* display: none !important; */
}
.home-partner .slider:hover .flickity-prev-next-button {
    transform: translateY(-45%) !important;
}
.home-partner .gallery-col {
    padding: 15px !important;
}
.home-partner .gallery-col .box-image {
    background: #fff;
    border-radius: 5px;
    height: 75px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}
.home-partner .gallery-col .box-image:hover {
    transform: translateY(-5px);
}
.home-partner .gallery-col .box-image img {
    width: auto !important;
    max-width: 90%;
    max-height: 90%;
    height: auto;
}
.home-partner .gallery-col .box-text {
    display: none !important;
}

/* =========================================
   HOME NEWS > home-news
   ========================================= */
.home-news {
    padding-top: 500px !important;
    margin-top: -400px !important;
}
.home-news .news-category-bar {
    margin-left: auto;
    margin-right: auto;
    display: inline-flex;
    justify-content: center;
    gap: 15px;
    margin-bottom: 20px;
    flex-wrap: wrap;
    padding: 5px;
    border-radius: 30px;
    background-color: #EB8C37;
}
.home-news .news-category-bar .category-btn-item {
    padding: 8px 25px;
    color: #fff;
    border-radius: 50px;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 15px;
    transition: all 0.3s ease;
}
.home-news .news-category-bar .category-btn-item:hover, 
.home-news .news-category-bar .category-btn-item.active {
    background: #f1f1f1; 
    color: #333 !important;
    text-decoration: none;
}
.home-news .list-news .post-item {
    padding-bottom: unset !important;
}
.home-news .list-news .box-blog-post .box-image .image-cover {
    padding-top: 180px !important;
}
.home-news .list-news .box-blog-post .box-text {
    padding-top: 1rem !important;
    padding-bottom: 0 !important;
}
.home-news .list-news .box-blog-post .box-text .blog-post-inner .post-title {
    font-size: 15px !important;
    text-transform: capitalize !important;
    font-family: "Roboto", sans-serif;
}
.home-news .list-news .box-blog-post .box-text .blog-post-inner .post-meta {
    font-size: 13px !important;
    text-transform: capitalize !important;
    font-family: "Roboto", sans-serif;
    position: absolute;
    bottom: 8px;
    right: 0;
}
.home-news .list-news .box-blog-post .box-text .blog-post-inner .is-divider {
    display: none !important;
}
.home-news .list-news .box-blog-post .box-text .blog-post-inner .button {
    font-size: 13px !important;
    text-transform: uppercase !important;
    font-family: "Roboto", sans-serif;
    margin-top: 10px;
    padding: 0 !important;
    color: #519528 !important;
    background: none !important;
    box-shadow: none !important;
    border: none !important;
    text-decoration: underline;
}
.home-news .list-news .box-blog-post .box-text .blog-post-inner .button:hover {
    text-decoration: none;
    color: #EB8C37 !important;
}
.home-news .row-slider .flickity-page-dots {
    bottom: -30px !important;
}


/* =========================================
   FOOTER > footer
   ========================================= */
.absolute-footer {
    display: none !important;
}
.footer-wrapper {
    background: url('https://bvcom.vn/wp-content/uploads/2026/04/footer-bg.png') no-repeat center center;
    background-size: cover;
}
/* Tạo hiệu ứng chạy vô tận */
@keyframes marquee-footer {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
.footer-marquee {
    overflow: hidden;
    white-space: nowrap;
}
.footer-marquee .footer-marquee-content {
    display: inline-flex;
    animation: marquee-footer 20s linear infinite;
}
.footer-marquee .footer-marquee-item {
    padding-bottom: unset !important;
}
.footer-marquee .footer-marquee-item .col-inner {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
.footer-marquee .footer-marquee-item .title-big {
    font-family: "Be Vietnam Pro";
    font-size: 100px;
    font-weight: 600;
    line-height: 1;
    margin-bottom: .5rem;
    color: rgba(255, 255, 255, 0.85);
    text-transform: capitalize !important;
    transition: all 0.3s ease;
    margin: unset;
}
.footer-marquee .footer-marquee-item .contact{
    background-color: #EB8C37;
    border-radius: 50%;
    width: 80px;
    height: 80px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    font-size: 15px;
    color: #fff;
    font-weight: 600;
}
/* ========== */
.footer-logo-content {
    padding: 85px 0 55px;
    border-top: 1px solid rgba(255, 255, 255, 0.35);
    border-bottom: 1px solid rgba(255, 255, 255, 0.35);
    justify-content: space-between;
}
.footer-logo-content * {
    color: #fff !important;
}
.footer-logo-content .logo-footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
.footer-logo-content .logo-footer .company-name {
    font-family: "Be Vietnam Pro";
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
}
.footer-logo-content .logo-footer .company-name span {
    font-size: 32px;
    font-weight: 700;
    display: block;
}
.footer-logo-content .logo-footer .network_social {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 10px;
}
.footer-logo-content .logo-footer .network_social img {
    height: 30px;
    width: 30px;
}
.footer-logo-content .title , 
.footer-logo-content .ux-menu-title {
    font-family: "Be Vietnam Pro";
    font-size: 20px;
    font-weight: 700;
    /* line-height: 1.4; */
    text-transform: uppercase;
    min-height: unset !important;
    padding: .3rem 0 !important;
}
.footer-logo-content .col-logo {
    padding: unset !important;
} 
.footer-logo-content .col-info {
    flex: 0 0 30% !important;
    max-width: 30% !important;
    padding-bottom: unset !important;
}
.footer-logo-content .col-menu {
    flex: 0 0 20% !important;
    max-width: 20% !important;
    padding-bottom: unset !important;
}
.footer-logo-content .col-menu2 {
    flex: 0 0 15% !important;
    max-width: 15% !important;
}
.footer-logo-content .col-info .col-inner {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: start;
    gap: 10px;
}
.footer-logo-content .col-info .col-inner .address {
    line-height: 2;
}
.footer-logo-content .col-info .col-inner .icon {
    margin-right: 10px;
}
.footer-logo-content .col-menu .ux-menu-link__link:hover .ux-menu-link__text  {
    color: #ff6600 !important;
}
.copyright-box {
    color: #fff !important;
}
.copyright-box .col {
    padding: unset !important;
}
.copyright-box .col p {
    margin: unset !important;
}

/* =========================================
   SUBPAGE > SHOP > CATEGORY
   ========================================= */
.shop-page-title.featured-title {
    /* padding-top: 290px !important; */
}
.shop-page-title.featured-title,
.shop-page-title.featured-title .page-title-bg,
.shop-page-title.featured-title .title-bg {
    height: 515px !important; 
    transform: unset !important;
}
.shop-page-title.featured-title .page-title-inner {
    padding-top: 200px !important;
}
.shop-page-title.featured-title .page-title-inner .shop-page-title {
    font-size: 65px !important;
    line-height: 1.2 !important;
    font-family: "Barlow", sans-serif;
    margin-bottom: 10px !important;
}
.woocommerce-ordering {
    display: none !important;
}

/* ========== slidebar filter ========== */
.sidebar-inner.col-inner {
    position: relative;
    overflow: hidden;
    padding: 35px 15px 15px 15px;
    border-radius: 20px;
    background: linear-gradient(164deg, rgba(81, 149, 40, .1) 11.42%, rgba(182, 130, 25, .1) 89.08%);
}
.widget {
    /* margin-bottom: 1rem !important; */
    padding-bottom: 1rem !important;
    border-bottom: 1px solid #DADADA;
}
.widget:last-child {
    border-bottom: none !important;
}
.widget_wpc_filters_widget .wpc-filters-widget-top-container {
    background: unset !important;
    border-bottom: unset !important;
    display: none !important;
}
.widget_wpc_filters_widget .wpc-filter-set-widget-title .is-divider {
    display: none !important;
}
.widget_wpc_filters_widget .wpc-filters-scroll-container .wpc-filters-section {
    /* padding: unset !important; */
    margin: unset !important;
}
.wpc-checkbox-item input[type="checkbox"] {
    display: none !important;
}
.wpc-checkbox-item {
    position: relative;
    padding-left: 30px !important;
    margin-bottom: 12px !important;
    list-style: none !important;
    cursor: pointer;
    font-size: 14px;
    line-height: 20px;
    display: block;
}
.wpc-checkbox-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 18px;
    height: 18px;
    border: 2px solid #ddd;
    border-radius: 3px;
    background: #fff;
    transition: all 0.2s ease-in-out;
}
.wpc-checkbox-item.wpc-term-selected::before {
    background-color: #F7A622 !important; 
    border-color: #F7A622 !important;
}
.wpc-checkbox-item.wpc-term-selected::after {
    content: "";
    position: absolute;
    left: 6px;
    top: 2px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.wpc-checkbox-item a, 
.wpc-checkbox-item label {
    color: #333 !important;
    text-decoration: none !important;
    cursor: pointer;
}
.wpc-checkbox-item:hover::before {
    border-color: #F7A622;
}
.wpc-checkbox-item:hover a {
    color: #F7A622 !important;
}
.wpc-checkbox-item .wpc-filter-link {
    font-size: 14px !important;
}
.wpc-checkbox-item .wpc-term-count {
    display: none !important;
}
.wpc-checkbox-item .wpc-filter-item-count {
    font-size: 11px;
    color: #999;
    margin-left: 5px;
}

/* ========== widget_layered_nav ========== */
.widget_layered_nav .is-divider {
    display: none !important;
}
.widget_layered_nav .widget-title {
    display: block !important;
    font-size: 17px;
    font-weight: 600;
    color: #393939;
    margin-bottom: 20px !important;
}
.widget_layered_nav ul {
    list-style: none;
    padding: 0;
}
.widget_layered_nav ul li {
    position: relative;
    padding-left: 30px;
    /* margin-bottom: 12px; */
    cursor: pointer;
    font-size: 14px;
    line-height: 20px;
}
.widget_layered_nav ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 7px;
    width: 18px;
    height: 18px;
    border: 2px solid #ddd;
    border-radius: 3px;
    background: #fff;
}
.widget_layered_nav ul li:hover::before,
.widget_layered_nav ul li.chosen::before {
    background-color: #F7A622;
    border-color: #F7A622;
}
.widget_layered_nav ul li:hover::after,
.widget_layered_nav ul li.chosen::after {
    content: "";
    position: absolute;
    left: 6px;
    top: 9px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.widget li.chosen a:before {
    content: unset !important;
}
.widget_layered_nav ul li a {
    color: #333;
    text-decoration: none;
}
.widget_layered_nav ul li:hover a {
    color: #F7A622;
}

/* ========== col-right: product-list ========== */
.shop-container .term-description {
    display: none !important;
}
.shop-container .wpc-filter-chips-list {
    margin-bottom: unset !important;
}
.shop-container .sorting-header-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #f2f2f2;
    padding: 10px 15px;
    margin-bottom: 25px;
    border: 1px solid #eee;
    border-radius: 5px;
}
.shop-container .product-count-display {
    font-size: 15px;
    color: #444;
}
.shop-container .product-count-display strong {
    color: #EB8C37;
    font-size: 18px;
}
.shop-container .custom-sort-tabs {
    display: flex;
    gap: 5px;
}
.shop-container .custom-sort-tabs a {
    padding: 6px 15px;
    background: #fff;
    color: #555;
    font-size: 13px;
    font-weight: 600;
    border: 1px solid #ddd;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.2s;
}
.shop-container .custom-sort-tabs a.active, 
.shop-container .custom-sort-tabs a:hover {
    background: #ff6600 !important;
    color: #fff !important;
    border-color: #ff6600;
}
@media (max-width: 600px) {
    .shop-container .sorting-header-wrapper {
        flex-direction: column;
        gap: 15px;
        align-items: flex-start;
    }
}

.related-products-wrapper .product-small.box ,
.shop-container .products .product-small.box {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
    border: 1px solid #519528;
    padding: 20px;
}
.related-products-wrapper .product-small.box .box-text-products,
.shop-container .products .product-small.box .box-text-products {
    padding: unset !important;
    margin-top: 1rem !important;
}
.related-products-wrapper .product-small.box .box-text-products .product-title,
.shop-container .products .product-small.box .box-text-products .product-title {
    margin: 0 0 .5rem 0 !important;
}
.related-products-wrapper .product-small.box .box-text-products .product-title >a,
.shop-container .products .product-small.box .box-text-products .product-title >a {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.6;
    color: #393939;
    height: 45px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.related-products-wrapper .product-small.box .box-text-products .product-title >a:hover,
.shop-container .products .product-small.box .box-text-products .product-title >a:hover {
    color: #519528 !important;
}
.related-products-wrapper .product-small.box .price-wrapper .price,
.shop-container .products .product-small.box .price-wrapper .price {
    display: flex;
    flex-direction: column;
}
.related-products-wrapper .product-small.box .price-wrapper del span.amount,
.shop-container .products .product-small.box .price-wrapper del span.amount {
    font-size: 14px;
    font-weight: 400;
    color: #949494;
    font-family: "Barlow", sans-serif;
}
.related-products-wrapper .product-small.box .price-wrapper .amount,
.shop-container .products .product-small.box .price-wrapper .amount {
    font-size: 20px;
    font-weight: 700;
    color: #519528;
    font-family: "Barlow", sans-serif;
}
.related-products-wrapper .product-small.box .add-to-cart-button a,
.shop-container .products .product-small.box .add-to-cart-button a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    background-color: #EB8C37 !important;
    color: #fff !important;
    border-radius: 25px !important;
    text-transform: none !important;
    font-weight: 500;
    font-size: 13px;
    font-family: "Roboto", sans-serif;
    line-height: 35px !important;
    display: block;
    width: 100%;
    text-align: center;
    border: none;
    transition: all 0.3s;
}
.related-products-wrapper .product-small.box .add-to-cart-button a:hover,
.shop-container .products .product-small.box .add-to-cart-button a:hover {
    background-color: #519528 !important;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}
.related-products-wrapper .product-small.box .add-to-cart-button a::before,
.shop-container .products .product-small.box .add-to-cart-button a::before {
    content: "" !important; 
    display: inline-block;
    width: 18px; 
    height: 18px;
    background-image: url('https://bvcom.vn/wp-content/uploads/2026/04/close-circle-line.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
    margin-right: 8px; 
    margin-top: -2px;
    filter: brightness(0) invert(1);
}

/* ========== category-description-box ========== */
#main .category-description-box {
    line-height: 1.6;
    color: #444;
    font-size: 15px;
}
#main .category-description-box h2 {
    font-size: 22px;
    font-weight: 700;
} 
#main .category-description-box h3 {
    color: #EB8C37; 
    margin-top: 20px;
}
#main .category-description-box ul {
    margin-left: 20px;
}
#main .category-bottom-fullwidth {
    /* border-top: 1px solid #eee; */
    z-index: 10;
    position: relative;
}
#main .category-bottom-fullwidth .bottom-banners-box .cate-banner .col {
    padding-bottom: unset !important;
}
#main .category-bottom-fullwidth .bottom-banners-box .img .img-inner {
    border-radius: 20px;
    overflow: hidden;
}
#main .category-bottom-fullwidth .bottom-policy-box {
    padding: 50px;
    border-radius: 20px;
    overflow: hidden;
    background: url('https://bvcom.vn/wp-content/uploads/2026/04/policy-bg.png') no-repeat center center/cover;
}
#main .category-bottom-fullwidth .bottom-policy-box .policy-wrap .policy-item {
    padding-bottom: unset !important;
    padding: 0 20px !important;
}
.bottom-policy-box .policy-wrap .policy-item .icon-box {
    align-items: center !important;
}
.bottom-policy-box .policy-wrap .policy-item .icon-box-text h3 {
    font-size: 19px !important;
    color: #fff;
}
.bottom-policy-box .policy-wrap .policy-item .icon-box-text p {
    font-size: 15px !important;
    color: #fff;
}

/* ========== product-page ========== */
/* ========== breadcrumbs ========== */
.subpage-banner-wrapper .breadcrumbs ,
.breadcrumbs {
    padding-left: 40px;
    background: url('https://bvcom.vn/wp-content/uploads/2026/04/building-fill.svg') no-repeat left center/cover;
    background-size: 22px;
    color: #fff !important;
}
.breadcrumbs a ,
.breadcrumbs span ,
.subpage-banner-wrapper .breadcrumbs a ,
.subpage-banner-wrapper .breadcrumbs span {
    color: #fff !important;
}
.product-page-title-container {
    height: 515px !important;
    display: flex;
    align-items: center;
    justify-content: center;
}
.product-page-title-container .is-divider {
    display: none !important;
}
.product-page-title-container .product-header-inner {
    padding-top: 200px ;
}
.product-page-title-container .product-header-text .product-title {
    font-size: 55px !important;
    line-height: 1.2 !important;
    font-family: "Barlow", sans-serif;
    margin-bottom: 10px !important;
    color: #fff !important;
}
/* ========== product-container ========== */
.message-wrapper+main .product-main {
    padding-top: 40px !important;
}
.product-container .product-main .product-gallery .product-images {
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #519528;
}
.product-container .product-main .product-gallery .product-images .flickity-viewport .woocommerce-product-gallery__image {
    background: radial-gradient(60% 335% at 105% 48%, #FFF 0%, #EFEFEF 100%);
}
.product-container .product-main .product-gallery .product-thumbnails .flickity-slider .col {
    flex-basis: 20% !important;
    max-width: 20% !important;
}
.product-container .product-main .product-gallery .product-thumbnails .flickity-slider .col a {
    border: 1px solid #519528;
    border-radius: 6px;
    overflow: hidden;
    transition: all 0.3s;
}
.product-container .product-main .product-gallery .product-thumbnails .flickity-button {
    display: none !important;
}
.product-container .product-main .product-gallery .product-thumbnails .flickity-viewport {
    height: 85px !important;
}
.product-container .product-main .product-gallery .product-thumbnails .flickity-slider .col a {
    background: radial-gradient(60% 335% at 105% 48%, #FFF 0%, #EFEFEF 100%);
}
.product-container .product-main .product-gallery .product-thumbnails .flickity-slider .col:hover a ,
.product-container .product-main .product-gallery .product-thumbnails .flickity-slider .col.is-selected a {
    border-color: #EB8C37 !important;
}
.product-container .product-main .product-info .woocommerce-breadcrumb{
    display: none !important;
}

/* ========== product-sidebar ========== */
@media screen and (min-width: 850px) {
    .product-sidebar-small {
        flex-basis: 19%;
        max-width: 19%;
    }
}
#product-sidebar .widget {
    padding: unset !important;
    margin-bottom: unset !important;
}
.product-right-sidebar {
    padding: unset !important;
}
.product-right-sidebar .section-content {
    overflow: unset !important;
}
.product-right-sidebar .policy-box .col {
    padding-bottom: 15px !important;
}
.product-right-sidebar .policy-box .col .col-inner {
    padding: 10px !important;
    border-radius: 10px !important;
    overflow: hidden !important;
}
.product-right-sidebar .policy-box .col .col-inner .icon-box {
    align-items: center !important;
}
.product-right-sidebar .policy-box .col .col-inner .icon-box .icon-box-text h4 {
    color: #fff !important;
    font-size: 14px !important;
    text-transform: uppercase !important;
    margin-bottom: 5px !important;
}
.product-right-sidebar .policy-box .col .col-inner .icon-box .icon-box-text p {
    color: #fff !important;
    font-size: 13px !important;
}
.product-right-sidebar .commit-box {
    margin-top: 20px;
}
.product-right-sidebar .commit-box .col {
    padding-bottom: 20px !important;
}
.product-right-sidebar .promo-box .col {
    padding-bottom: unset !important;
}
.product-right-sidebar .commit-box .col-inner ,
.product-right-sidebar .promo-box .col-inner {
    padding: 10px !important;
    border-radius: 10px !important;
    border: 1px solid #519528 !important;
    position: relative;
}
.product-right-sidebar .promo-box .col-inner {
    border-color: #EB8C37 !important;
}
.product-right-sidebar .commit-box .col-inner .box-ribbon-title {
    font-size: 15px !important;
    text-transform: capitalize !important;
    margin-bottom: -20px !important;
    background: #ffaa33; 
    color: #fff;
    padding: 8px 15px;
    font-weight: bold;
    display: inline-block;
    border-radius: 10px 5px 5px 0;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
    position: relative;
    left: -25px;
    top: -25px;
}
.product-right-sidebar .commit-box .col-inner .box-ribbon-title::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    border-top: 10px solid #c07b00; 
    border-left: 15px solid transparent;
}
.product-right-sidebar .commit-box .col-inner > p {
    font-size: 13px !important;
    font-weight: 600 !important;
    margin-bottom: 10px !important;
}
.product-right-sidebar .commit-box .col-inner > p img {
    margin-right: 10px !important;
    filter: drop-shadow(0 0 5px #ff66cc);
}
.product-right-sidebar .promo-box .col-inner h3 {
    font-size: 15px !important;
    color: #519528 !important;
    text-transform: uppercase !important;
    margin-bottom: 10px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid #DADADA !important;
}
.product-right-sidebar .promo-box .col-inner h3 img {
    margin-right: 10px !important;
}
.product-right-sidebar .promo-box .col-inner ol li {
    list-style: decimal !important;
    font-size: 13px !important;
    margin-bottom: 5px !important;
}


/* ========== product-info ========== */
.product-info .product-title {
    font-size: 25px !important;
    margin-bottom: 20px !important;
}
.product-info .is-divider {
    display: none !important;
}
.product-info .product-info-meta p {
    margin-bottom: 5px;
    font-size: 15px;
}
.product-info .product-info-meta strong { color: #444; }
.product-info .product-info-meta .sku-val, 
.product-info .product-info-meta .brand-val {
    color: #4a902c; 
    font-weight: 500;
}
.product-info .meta-divider {
    margin: 15px 0;
    opacity: 0.1;
}
.product-info .product-short-description * ,
.product-info .product-short-description ul li {
    list-style: disc !important;
    margin-bottom: 0px !important;
    font-size: 14px !important;
}
/* --- 2. Style Box Giá & Nút Mua --- */
.product-info .custom-price-action-box {
    border-radius: 20px;
    padding: 20px;
    margin-top: 20px;
    position: relative;
    background: linear-gradient(164deg, rgba(81, 149, 40, .1) 12%, rgba(182, 130, 25, .1) 89%);
}
.product-info .custom-price-action-box .discount-badge {
    position: absolute;
    /* top: 40%; */
    top: 94px;
    left: 40%;
    color: #EB8C37;
    font-weight: 500;
}
.product-info .custom-price-action-box .price {
    display: block;
    margin-bottom: 15px;
}
.product-info .custom-price-action-box .product-page-price {
    display: flex !important;
    flex-direction: column-reverse !important;
}
.product-info .custom-price-action-box .price ins {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid #DADADA;
}
.product-info .custom-price-action-box .woocommerce-variation-price .price ins {
    border-bottom: unset !important;
}
.product-info .custom-price-action-box .woocommerce-variation-price {
    border-bottom: 1px dashed #ddd !important;
}
.product-info .custom-price-action-box .price .woocommerce-Price-currencySymbol {
    font-family: "Roboto", sans-serif !important;
}
.product-info .custom-price-action-box .price ins .woocommerce-Price-amount {
    font-family: "Barlow", sans-serif;
    font-size: 40px; 
    color: #4a902c;
    font-weight: 800;
}
.product-info .custom-price-action-box .price del {
    font-family: "Barlow", sans-serif;
    font-size: 20px;
    color: #C5C5C5;
    margin-right: 15px;
    text-decoration: line-through;
}
.product-info .custom-price-action-box .price del span.amount {
    font-family: "Barlow", sans-serif;
    color: #C5C5C5;
}
.product-info .vat-notice {
    font-style: italic;
    font-size: 15px;
    color: #888;
    position: absolute;
    /* top: 40%; */
    top: 94px;
    right: 20px;
}
.product-info .custom-price-action-box form.cart {
    display: flex !important;
    align-items: center;
    gap: 15px;
    margin-top: 20px;
    padding: 0 20px;
    margin-bottom: -40px;
}
.ux-buy-now-button.button {
    display: none !important;
}
.custom-price-action-box button.single_add_to_cart_button {
    background-color: #ffaa33 !important;
    border-radius: 30px !important;
    padding: 0px 30px !important;
    font-weight: bold;
    text-transform: none !important;
    flex-grow: 1;
    transition: all 0.3s ease;
    line-height: 45px !important;
}
.custom-price-action-box button.single_add_to_cart_button::before {
    content: "" !important; 
    display: inline-block;
    width: 18px; 
    height: 18px;
    background-image: url('https://bvcom.vn/wp-content/uploads/2026/04/close-circle-line.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
    margin-right: 8px; 
    margin-top: -2px;
    filter: brightness(0) invert(1);
}
.custom-price-action-box button.single_add_to_cart_button:hover {
    background-color: #519528 !important;
    color: #fff !important;
}
.product-info .custom-price-action-box .quantity {
    flex: 0 0 135px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.10);
    background: #fff;
    border-radius: 30px;
    justify-content: space-around;
    line-height: 45px !important;
}
.product-info .custom-price-action-box .quantity input {
    height: 45px !important;
    line-height: 45px !important;
    border-radius: 30px !important;
    background: #fff !important;
    border: unset !important;
}
.product-info .custom-price-action-box .quantity .ux-quantity__button {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    border: unset !important;
    background: #fff !important;
    transition: all 0.3s ease;
}
.product-info .custom-price-action-box .quantity .ux-quantity__button:hover {
    background-color: #fff !important;
    color: #EB8C37 !important;
}

/* --- Ô thuộc tính sản phẩm --- */
.variations .reset_variations {
    bottom: unset !important;
    top: 5px;
}
.variations {
    border-collapse: collapse;
}
.variations td, .variations th {
    padding: .5rem 0 !important;
}
.variations th.label {
    padding-right: 20px;
    vertical-align: middle;
    font-size: 1rem;
    color: #333;
    text-transform: uppercase;
}
.variations span.woo-selected-variation-item-name {
    color: #5d9d45; 
    font-weight: 700;
    margin-left: 5px;
}
ul.variable-items-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 0px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
li.variable-item {
    border: 2px solid #eee !important; 
    margin: 2px !important;
    padding: 5px 5px !important;
    border-radius: 5px !important; 
    min-width: 35px;
    text-align: center;
    background-color: #fff !important;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: none !important;
}
li.variable-item:hover {
    border-color: #5d9d45 !important;
    color: #5d9d45 !important;
    background-color: #f4faf2 !important; 
}
li.variable-item.selected {
    border-color: #5d9d45 !important; 
    background-color: #5d9d45 !important; 
    color: #fff !important; 
    box-shadow: 0 4px 10px rgba(93, 157, 69, 0.3) !important; 
    transform: translateY(-2px); 
}
li.variable-item.out-of-stock {
    opacity: 0.5;
    position: relative;
    cursor: not-allowed;
    background-color: #f5f5f5 !important;
    border-color: #ddd !important;
}
li.variable-item.out-of-stock::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    background: #999;
    transform: rotate(-25deg);  
}
li.variable-item .variable-item-contents {
    font-weight: 600;
    font-size: 0.95rem;
}



/* ========== product-footer ========== */
.product-footer {
    background: url('https://bvcom.vn/wp-content/uploads/2026/04/project-bg.png') no-repeat center center;
    background-size: cover;
}
.product-footer .woocommerce-tabs .product-tabs > li a {
    font-size: 20px;
    text-transform: capitalize !important;
} 
.product-footer .woocommerce-tabs .woocommerce-Tabs-panel h3 {
    color: #519528 !important;
    text-transform: uppercase !important;
}
.product-footer .woocommerce-tabs .woocommerce-Tabs-panel {
    position: relative;
    overflow: hidden;
    max-height: none; 
    transition: max-height 0.5s ease-in-out;
}
.product-footer .woocommerce-tabs .woocommerce-Tabs-panel.limit-height {
    max-height: 1000px !important;
}
.product-footer .woocommerce-tabs .woocommerce-Tabs-panel .tab-panel-overlay {
    display: none; 
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 150px;
    background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1));
    z-index: 10;
    text-align: center;
    padding-top: 80px;
}
.product-footer .woocommerce-tabs .woocommerce-Tabs-panel .btn-read-more-tab {
    display: inline-block;
    padding: 10px 25px;
    background: #fff;
    color: #519528; 
    border: 1px solid #519528;
    border-radius: 30px;
    cursor: pointer;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 14px;
    transition: 0.3s;
}
.product-footer .woocommerce-tabs .woocommerce-Tabs-panel .btn-read-more-tab:hover {
    background: #519528;
    color: #fff;
}

/* ========== muc-luc ========== */
html {
    scroll-behavior: smooth;
}
[id] {
    scroll-margin-top: 100px; 
}
.product-toc {
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}
.product-toc ul {
    list-style: none;
    padding-left: 0;
}
.product-toc li.toc-level-3 {
    margin-left: 20px; 
    font-size: 0.9em;
}

/* ========== related-products ========== */
.product-footer .related-products-wrapper {
    padding-top: 30px !important;
}

/* =========================================
   SUBPAGE > gio-hang, thanh-toan
   ========================================= */
.checkout-steps {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 40px;
    font-weight: bold;
    text-transform: uppercase;
}
.step-item { color: #ccc; display: flex; align-items: center; }
.step-item span {
    width: 25px; height: 25px;
    border: 2px solid; border-radius: 50%;
    display: inline-flex; align-items: center; justify-content: center;
    margin-right: 8px; font-size: 12px;
}
/* Nếu Body có class is-step-1 (Trang giỏ hàng) */
.is-step-1 .step-1 { color: #EB8C37 !important; font-weight: bold; }
.is-step-1 .step-1 span { border-color: #EB8C37 !important; }
/* Nếu Body có class is-step-2 (Trang thanh toán) */
.is-step-2 .step-2 { color: #EB8C37 !important; font-weight: bold; }
.is-step-2 .step-2 span { border-color: #EB8C37 !important; }
/* Nếu Body có class is-step-3 (Trang cảm ơn/xác nhận) */
.is-step-3 .step-3 { color: #EB8C37 !important; font-weight: bold; }
.is-step-3 .step-3 span { border-color: #EB8C37 !important; }
.step-line {
    height: 2px; background: #eee;
    width: 50px; margin: 0 15px;
}
.woocommerce-cart-form {
    background: #fff;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.1);
}
.cart-sidebar {
    background: #fdfdfd;
    padding: 25px !important;
    border: 1px solid #eee;
    border-radius: 10px;
}
.checkout-button {
    background-color: #519528 !important;
    border-radius: 5px !important;
    padding: 5px !important;
    font-size: 1em !important;
    transition: 0.3s;
}
.checkout-button:hover {
    background-color: #EB8C37 !important;
}
.is-step-2 .step-item:nth-child(3) { color: #EB8C37 !important; }
.is-step-2 .step-item:nth-child(3) span { border-color: #EB8C37 !important; }
.shop_table_headings { display: none; }
.cart-item-name { font-weight: bold; color: #333; }
.row-divided > .col:first-child ,
.row-divided>.col+.col:not(.large-12) {
    border-right: none !important;
    border-left: none !important;
}
/* ========== thanh-toan ========== */
.woocommerce-checkout .col-inner.has-border {
    border-radius: 10px !important;
}
.woocommerce-checkout input[type="text"], 
.woocommerce-checkout input[type="email"], 
.woocommerce-checkout input[type="tel"], 
.woocommerce-checkout textarea, 
.woocommerce-checkout select,
.select2-container--default .select2-selection--single {
    border-radius: 5px !important; 
    border: 1px solid #ddd !important;
    padding: 10px 15px !important;
    height: 45px !important;
    background-color: #fff !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.05); 
    transition: all 0.3s ease;
}
.woocommerce-checkout input:focus, 
.woocommerce-checkout textarea:focus {
    border-color: #519528 !important; 
    outline: none;
    box-shadow: 0 0 5px rgba(255,0,0,0.2) !important;
}
#place_order {
    border-radius: 5px !important;
    padding: 15px !important;
    font-size: 1.1em !important;
}

/* ========== hoan-thanh ========== */
.woocommerce-order-overview {
    background: #f9f9f9 !important;
    border: 1px dashed #EB8C37 !important; 
    border-radius: 12px !important;
    padding: 20px !important;
    list-style: none !important;
}
.woocommerce-order-overview li {
    border-bottom: 1px solid #eee;
    padding: 10px 0;
    margin-right: 0 !important;
    font-size: 0.95em;
}
.woocommerce-order-overview li:last-child {
    border-bottom: none;
}
.woocommerce-customer-details address {
    border: 1px solid #eee;
    padding: 20px !important;
    border-radius: 10px;
    background: #fff;
    line-height: 1.8;
    font-style: normal;
}
.woocommerce-column__title {
    font-size: 1.3em;
    text-transform: uppercase;
    color: #333;
    margin-bottom: 15px;
}
.woocommerce-order-overview li strong {
    color: #EB8C37;
}
.woocommerce-customer-details {
    margin-top: 20px;
}
.woocommerce-column--billing-address .contact-info-box {
    background: #fff5f5;
    border: 2px solid #EB8C37;
    padding: 20px;
    border-radius: 10px;
}
.contact-name {
    font-size: 1.2em;
    margin-bottom: 10px;
    color: #333;
}
.contact-item {
    font-size: 1.1em;
    margin-bottom: 5px;
    color: #EB8C37;
}
.woocommerce-column--shipping-address address {
    background: #f9f9f9;
    border: 1px solid #eee;
    padding: 20px;
    border-radius: 10px;
    min-height: 145px;
}
@media (max-width: 600px) {
    .woocommerce-column {
        width: 100% !important;
        margin-bottom: 20px;
    }
}
.woocommerce-customer-details--phone {
    font-size: 1.4em !important;
    font-weight: bold !important;
    color: #EB8C37 !important;
    margin: 10px 0 5px 0 !important;
    display: flex !important; 
    align-items: center;
}
.woocommerce-customer-details--phone::before {
    content: ""; 
    display: inline-block;
    width: 24px;  
    height: 24px; 
    margin-right: 10px;
    background-image: url('/wp-content/uploads/2026/04/icon_phone.png'); 
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.woocommerce-customer-details--email {
    font-size: 1em !important;
    color: #666 !important;
    display: flex !important;
    align-items: center;
}
.woocommerce-customer-details--email::before {
    content: ""; 
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    background-image: url('/wp-content/uploads/2026/04/mail-fill.svg'); 
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.woocommerce-column--billing-address address {
    background: #fff5f5 !important; 
    border: 2px solid #EB8C37 !important; 
    padding: 20px !important;
    border-radius: 10px !important;
    font-style: normal !important;
}
/* .woocommerce-customer-details--phone {
    font-size: 1.4em !important;
    font-weight: bold !important;
    color: #EB8C37 !important;
    margin-bottom: 10px !important;
}
.woocommerce-customer-details--phone::before {
    content: "📱 "; 
}
.woocommerce-customer-details--email {
    font-size: 1.1em !important;
    color: #333 !important;
}
.woocommerce-customer-details--email::before {
    content: "✉️ "; 
} */
.woocommerce-column--shipping-address address {
    background: #f9f9f9 !important;
    border: 1px solid #eee !important;
    padding: 20px !important;
    border-radius: 10px !important;
    font-style: normal !important;
    line-height: 1.6 !important;
    min-height: 115px; 
}
.woocommerce-column__title {
    font-family: sans-serif;
    font-size: 1.2em !important;
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 10px !important;
}



/* =========================================
   SUBPAGE > news,contact,service,project
   ========================================= */
.subpage-banner-wrapper {
    position: relative;
    height: 500px; 
    overflow: hidden;
}
.subpage-banner-inner {
    height: 100%;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    color: #fff;
    position: relative;
}
.overlay-dark {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0, 0, 0, 0.4);
}
.banner-content {
    position: relative;
    z-index: 2;
    padding-top: 200px !important;
}

/* ========== subpage-banner-wrapper ========== */
.subpage-banner-wrapper {
    position: relative;
    background-color: #519528; 
    background-size: cover;
    background-position: center;
    text-align: left; 
    display: flex;
    align-items: center;
}
.subpage-banner-wrapper .subpage-banner-inner {
    width: 100% !important;
}
.subpage-banner-wrapper::before {
    content: "";
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0, 0, 0, 0.25); 
    z-index: 1;
}
.subpage-banner-wrapper .page-title {
    font-family: "Barlow", sans-serif;
    position: relative;
    z-index: 2;
    color: #ffffff !important;
    font-size: 45px !important;
    font-weight: 700 !important;
    text-transform: capitalize;
    margin-bottom: 15px;
    letter-spacing: 1px;
    line-height: 1.2;
}
/* ========== news-page ========== */
.archive-page-header ,
.entry-header .entry-header-text {
    display: none !important;
}
.entry-header .entry-header-text .entry-title {
    font-size: 25px !important;
    color: #519528;
}
.entry-header .entry-header-text .entry-title+.is-divider {
    display: none !important;
}
.entry-header .entry-image a {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    height: 450px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
}
.entry-header .entry-image a img {
    width: auto !important;
    object-fit: cover !important;
    min-width: 100% !important;
    height: 100% !important;
}
.page-wrapper .row-large>.col {
    padding: 0 15px 15px !important;
}

/* ========== post-sidebar ========== */
#secondary .widget {
    background: #fff;
    padding: 20px;
    margin-bottom: 15px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    border: 1px solid #eee;
    background: linear-gradient(164deg, rgba(81, 149, 40, 0.1) 11.42%, rgba(182, 130, 25, 0.1) 89.08%);
}
#secondary .widget .is-divider {
    display: none !important;
}
#secondary .widget-title {
    font-size: 1.2em;
    font-weight: 700;
    text-transform: uppercase;
    color: #333;
    border-bottom: 2px solid #519528; 
    padding-bottom: 10px;
    margin-bottom: 20px;
    display: block;
}
#secondary .widget ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
#secondary .widget ul li {
    /* padding: 10px 0; */
    border-bottom: 1px dashed #eee;
    font-size: 0.95em;
}
#secondary .widget ul li:last-child {
    border-bottom: none;
}
#secondary .widget ul li a {
    color: #444;
    transition: color 0.3s;
    font-weight: 500;
}
#secondary .widget ul li a:hover {
    color: #519528;
}
#secondary .widget_recent_entries ul li a {
    text-align: justify !important;
}
/* Tùy chỉnh ô Tìm kiếm cho hiện đại */
.widget_search .search-form {
    display: flex;
    border-radius: 25px;
    overflow: hidden;
    border: 1px solid #ddd;
}
.widget_search .search-field {
    border: none !important;
    padding: 10px 15px !important;
    margin: 0 !important;
}
.widget_search .search-submit {
    background-color: #519528 !important;
    color: #fff !important;
    border: none !important;
    padding: 0 20px !important;
    text-transform: uppercase;
    font-weight: bold;
}
/* product_list_widget */
.product_list_widget li {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #f1f1f1;
}
.product_list_widget li img {
    width: 60px !important; 
    height: 60px !important;
    object-fit: cover;
    margin-right: 15px !important; 
    margin-bottom: 0 !important;
    float: none !important; 
}
.product_list_widget li a {
    margin-bottom: 0 !important;
}
.product_list_widget li a span.product-title {
    display: block;
    font-weight: 500;
    color: #333;
    line-height: 1.3;
    font-size: 13px;
}
.product_list_widget li a:hover span.product-title {
    color: #519528;
}
.product_list_widget li .amount {
    font-weight: bold;
    color: #EB8C37;
    font-size: 13px;
}
.product_list_widget li del .amount {
    font-weight: normal;
    color: #999;
    font-size: 13px;
}
/* ========== newsList-page ========== */
.blog-archive .col-inner {
    background-color: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    border: 1px solid #f1f1f1;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.blog-archive .col-inner:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 30px rgba(0,0,0,0.12);
    border-color: #519528;
}
.blog-archive .box-image {
    padding-top: unset !important; 
    position: relative;
    overflow: hidden;
}
.blog-archive .box-image img {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}
.blog-archive .col-inner:hover .box-image img {
    transform: scale(1.1);
}
.blog-archive .box-text {
    padding: 20px 20px !important;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}
.blog-archive h5.post-title {
    font-size: 1.15rem !important;
    line-height: 1.4 !important;
    margin-bottom: 12px !important;
    min-height: 3.2em; 
    word-wrap: break-word;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    height: inherit;
}
.blog-archive h5.post-title a {
    color: #222 !important;
    font-weight: 700 !important;
}
.blog-archive h5.post-title a:hover {
    color: #EB8C37 !important;
}
.blog-archive .is-divider {
    background-color: #519528 !important;
    height: 3px !important;
    width: 40px !important;
    margin: 10px 0 !important;
}
.blog-archive .from_the_blog_excerpt {
    color: #666;
    font-size: 0.95rem;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 0;
}
.blog-archive .badge {
    background-color: #519528 !important;
    border: 2px solid #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    border-radius: 8px !important; 
}
/* ========== related-posts-wrapper ========== */
.related-posts-wrapper {
    margin: unset !important;
}
.related-posts-wrapper .blog-archive .box-image {
    padding-top: 56% !important;
}
.related-posts-wrapper .blog-archive .box-text .box-text-inner {
    padding: unset !important;
}
.related-posts-wrapper .blog-archive h5.post-title {
    margin-bottom: unset !important;
}
.related-posts-wrapper .related-title {
    font-size: 25px !important;
}

/* ========== search-results ========== */
.search-results .type-page ,
.search-results article.page {
    display: none !important;
}
/* Tìm đến h4 chứa chữ Trang và cái Row Slider ngay sau nó để ẩn */
.search-results .shop-container ~ h4.uppercase:nth-of-type(2),
.search-results .shop-container ~ h4.uppercase:nth-of-type(2) + div.row {
    display: none !important;
}
/* Nếu nó vẫn hiện, ta dùng cách "quét" theo thứ tự (Trang thường nằm cuối) */
.search-results .col.large-9 > h4.uppercase:last-of-type,
.search-results .col.large-9 > h4.uppercase:last-of-type + div.row {
    display: none !important;
}

/* Tiêu đề "Bài viết đã tìm thấy" */
.search-results .shop-container ~ h4.uppercase:first-of-type {
    font-size: 1.2rem;
    color: #5d9d45;
    border-bottom: 1px solid #C5C5C5;
    padding-bottom: 10px;
    margin-top: 30px;
    letter-spacing: 0 !important;
}
.search-results .shop-container ~ .row .col-inner {
    background: #fff;
    border-radius: 10px;
    border: 1px solid #eee;
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
    transition: all 0.3s;
    margin-bottom: 20px;
}
.search-results .shop-container ~ .row .col-inner:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.1);
}
.search-results .shop-container ~ .row .box-image {
    padding-top: unset !important;
}
.search-results .shop-container ~ .row .post-title {
    font-size: 1rem !important;
    padding: 10px 15px !important;
    font-weight: 700;
}
.search-results .shop-container ~ .row .from_the_blog_excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 0;
}
.search-results .shop-container ~ .row .flickity-button {
    display: none !important;
}

/* ========== contact-form ========== */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea {
    border-radius: 4px !important;
    border: 1px solid #ddd !important;
    padding: 12px 15px !important;
    background-color: #f9f9f9 !important;
    transition: all 0.3s ease;
}
.wpcf7-form input:focus, 
.wpcf7-form textarea:focus {
    border-color: #5d9d45 !important; /* Màu xanh thương hiệu */
    background-color: #fff !important;
    box-shadow: 0 0 10px rgba(93, 157, 69, 0.1);
}
.wpcf7-form .wpcf7-submit {
    display: flex;
    margin-left: auto !important;
    margin-right: auto !important;
    background-color: #5d9d45 !important;
    color: #fff !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    border-radius: 30px !important;
    padding: 10px 40px !important;
    border: none !important;
    cursor: pointer;
    transition: 0.3s;
}
.wpcf7-form .wpcf7-submit:hover {
    background-color: #4a7e37 !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}
.wpcf7-response-output {
    border-radius: 8px !important;
    margin-top: 20px !important;
    font-size: 0.9rem;
    border-radius: 10px !important;
    border: 2px solid #519528 !important;
    padding: 15px !important;
    font-family: 'Montserrat', sans-serif;
}
.wpcf7 .wpcf7-spinner {
    background-color: #519528; 
    opacity: 0.8;
}


/* ========== call-now ========== */
.fab-wrapper {
    position: fixed;
    bottom: 80px;
    right: 20px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.fab-item {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
}
.fab-item:hover { transform: scale(1.1); }
.zalo { background: #0084ff; }
.messenger { background: #fff; }
.phone { background: #5d9d45; color: #fff; font-size: 24px; animation: ring 2s infinite; }
@keyframes ring {
    0% { transform: scale(1); }
    10% { transform: scale(1.1) rotate(5deg); }
    20% { transform: scale(1.1) rotate(-5deg); }
    30% { transform: scale(1.1) rotate(5deg); }
    40% { transform: scale(1) rotate(0); }
}
.fab-item.quote {
    background-color: #EB8C37; 
    color: #fff;
    overflow: visible; 
}
.fab-item.quote i {
    font-size: 20px;
}
.fab-label {
    position: absolute;
    right: 100%; 
    margin-right: 15px;
    background-color: #EB8C37;
    color: white;
    padding: 6px 15px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: bold;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transform: translateX(20px); 
    transition: all 0.3s ease;
}
.fab-item.quote:hover {
    border-radius: 25px; 
}
.fab-item.quote:hover .fab-label {
    opacity: 1;
    visibility: visible;
    transform: translateX(0); 
}
.fab-item.quote {
    animation: pulse-orange 2s infinite;
}
@keyframes pulse-orange {
    0% { box-shadow: 0 0 0 0 rgba(235, 140, 55, 0.7); }
    70% { box-shadow: 0 0 0 10px rgba(235, 140, 55, 0); }
    100% { box-shadow: 0 0 0 0 rgba(235, 140, 55, 0); }
}
@media (max-width: 768px) {
    .fab-wrapper { bottom: 90px; right: 10px; }
    .fab-item { width: 45px; height: 45px; }
}

/* ========== portfolio ========== */
.portfolio-element-wrapper > .container {
    margin-bottom: 30px !important;
}
.portfolio-box .portfolio-box-title {
    font-size: 20px !important;
    font-weight: 600 !important;
}



@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/
/* ========== general ========== */
.flickity-prev-next-button:hover {
    background-color: unset !important;
}
/* ========== menu mobile ========== */
.off-canvas:not(.off-canvas-center) .nav-vertical .children > li > a {
    font-weight: 600 !important;
    color: #519528 !important;
}
.off-canvas:not(.off-canvas-center) .nav-vertical .children > li > ul > li > a {
    font-weight: 500 !important;
    color: #EB8C37 !important;
}
.nav-slide-header .toggle {
    font-size: 20px !important;
}
/* ========== cate cap 3 ========== */
.toggle-cat-v3 {
    position: absolute;
    right: 10px;
    top: 0px;
    width: 36px;
    height: 36px;
    line-height: 36px;
    font-size: 20px;
}


/* ========== header ========== */
.header {
    padding-top: unset !important;
}
.header-wrapper .cart-item.has-icon .cart-icon {
    height: 45px !important;
    width: 45px !important;
}
.header-wrapper .cart-item.has-icon .cart-icon strong {
    height: 1.5em !important;
    width: 1.5em !important;
    line-height: 1.2em !important;
}
.header-wrapper .cart-item.has-icon .cart-icon strong::after {
    width: 10px;
    margin-left: -5px !important;
}
.header-search-form.search-form {
    padding: 10px !important;
}
.header-search-form.search-form .searchform-wrapper .searchform {
    padding: 8px !important;
    background: rgba(81, 149, 40, .3) !important;
    border-radius: 3px !important;
}
.off-canvas .sidebar-menu {
    padding: unset !important;
}
.nav:not(.nav-slide) .active>.children {
    padding-bottom: 15px !important;
}
.header-box .title {
    font-size: 22px !important;
}

/* ========== slide ========== */
.home-slide .text-box.banner-layer{
    width: 90% !important;
}
.home-slide .title-box h2 {
    font-size: 25px !important;
}

/* ========== home-about ========== */
.home-about {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}
.home-about .about-mobile .col {
    padding: 0 0 15px 0 !important;
}
.home-about .about-box .about-logo {
    width: 100% !important;
}
.home-about .about-box .about-logo .image-cover img {
    width: unset !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* ========== home-services ========== */
.home-services {
    padding: 50px 15px !important;
}
.home-services .serviceList {
    display: grid !important;
    grid-template-columns: repeat(1, 1fr) !important;
    gap: 10px !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}
.home-services .serviceList >.col-dich-vu {
    max-width: unset !important;
    min-height: unset !important;
    margin-left: unset !important;
    margin-right: unset !important;
    width: 300px !important;
    margin: 0 auto !important
}
.home-services .counter {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}
.home-services .counter .col-counter {
    flex: 0 0 100% !important;
    max-width: 100% !important;
}
.home-services .counter .counter-item {
    border-right: unset !important;
}

/* ========== home-why ========== */
.home-why .row-img .why-img {
    width: 100% !important;
}
.home-why .row-img .why-img .image-cover {
    padding-top: 400px !important;
}
.home-why .whyList {
    position: relative !important;
    height: auto !important;
}
.home-why .whyList .why-item {
    width: 100% !important;
}
.home-why .whyList .why-item.why-item2 {
    margin-bottom: unset !important;
}
.home-why .whyList .why-item.why-item3 {
    margin-top: unset !important;
}

/* ========== home-projects ========== */
.section-content .col.about-box {
    padding-bottom: unset !important;
}
.home-projects {
    padding: 30px 0 15px 0 !important;
}
.home-projects .projecList > .col {
    padding-bottom: 15px !important;
}
.home-projects .projecList .project-item {
    padding-top: 500px !important;
}
.home-projects .projecList .project-item .info-box {
    width: 90% !important;
}
.home-projects .projecList .project-item .info-box .text-box-content h3 {
    font-size: 16px !important;
    margin-bottom: 1rem !important;
}
.home-projects .projecList .project-item .info-box .text-box-content p {
    font-size: 13px !important;
    margin-bottom: 1rem !important;
}

/* ========== home-question ========== */
.home-question {
    padding: 30px 0 !important;
}
.home-question .col-left .two-image .img-box.img-box1 {
    margin-bottom: unset !important;
}
.home-question .col-left .two-image .img-box.img-box2 {
    margin-top: unset !important;
}
.home-question .col-left .two-image .img-box .img-inner {
    height: 190px !important;
}
.home-question .col-left {
    padding-bottom: unset !important;
}
.home-question .col-right {
    padding-left: 15px !important;
    padding-bottom: unset !important;
}

/* ========== home-partner ========== */
.home-partner {
    position: relative;
    z-index: 2;
    padding-left: 15px !important;
    padding-right: 15px !important;
}
.home-partner.home-partner1 {
    padding-top: 15px !important;
}
/* ========== home-news ========== */
.home-news {
    margin-top: -450px !important;
    padding-bottom: 30px !important;
}
.home-news .row-slider .flickity-page-dots {
    bottom: -30px !important;
}
.home-news .catNews >.col {
    padding-bottom: unset !important;
}
.home-news .news-category-bar {
    display: flex !important;
    flex-wrap: nowrap !important; 
    overflow-x: auto !important;   
    overflow-y: hidden;
    padding: 10px 15px !important;
    justify-content: flex-start !important; 
    -webkit-overflow-scrolling: touch; 
    gap: 10px;
    scrollbar-width: none;
}
.home-news .news-category-bar .category-btn-item {
    flex: 0 0 auto; 
    white-space: nowrap; 
    padding: 8px 20px;
    font-size: 13px;
}
.home-news .news-category-bar::-webkit-scrollbar {
    display: none; 
}
.home-news .list-news .box-blog-post .box-image .image-cover {
    padding-top: 275px !important;
}

/* ========== footer ========== */
.footer-marquee {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}
.footer-marquee .footer-marquee-content {
    flex-flow: row nowrap !important;
}
.footer-marquee .footer-marquee-item .title-big {
    font-size: 70px !important;
}
.footer-marquee .footer-marquee-item .contact {
    height: 60px !important;
    width: 60px !important;
    line-height: 1;
}
.footer-marquee .footer-marquee-item .contact img {
    width: 20px;
    height: 20px;
}
.footer-logo-content {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}
.footer-logo-content >.col-logo,
.footer-logo-content >.col-info {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding-bottom: 30px !important;
}
.footer-logo-content >.col-menu {
    flex: 0 0 50% !important;
    max-width: 50% !important;
}
.footer-logo-content * {
    font-size: 14px !important;
}
.footer-logo-content .logo-footer .company-name span {
    font-size: 22px !important;
}
.footer-logo-content .title, 
.footer-logo-content .ux-menu-title {
    font-size: 19px !important;
}
.copyright-wrap {
    padding: 30px 0 !important;
}
.copyright-box .col {
    padding: 0 15px !important;
}

/* =========================================
   SUBPAGE > SHOP > CATEGORY
   ========================================= */
   
.shop-page-title.featured-title .page-title-inner .shop-page-title {
    font-size: 30px !important;
}
.shop-page-title.featured-title .page-title-inner .flex-col {
    text-align: start !important;
}
.related-products-wrapper .product-small.box ,
.shop-container .products .product-small.box {
    padding: 8px !important;
}
.related-products-wrapper .product-small.box .add-to-cart-button a,
.shop-container .products .product-small.box .add-to-cart-button a {
    border-radius: 20px !important;
    padding: unset !important;
}
.related-products-wrapper .product-small.box .add-to-cart-button a::before,
.shop-container .products .product-small.box .add-to-cart-button a::before {
    content: none !important;
}
#main .category-description-box ,
#main .bottom-banners-box {
    margin-bottom: 20px !important;
}
#main .category-bottom-fullwidth .bottom-policy-box {
    padding: 15px !important;
}
.bottom-policy-box .policy-wrap .policy-item .icon-box-text h3 {
    margin-bottom: unset !important;
    font-size: 17px !important;
}
.bottom-policy-box .policy-wrap .policy-item .icon-box-text p {
    font-size: 14px !important;
}
.category-bottom-fullwidth {
    padding: 0 0 30px 0 !important;
}

/* ========== product-page ========== */
.product-page-title-container .product-header-text .product-title {
    font-size: 30px !important;
}
.product-info .custom-price-action-box .discount-badge {
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
}
.product-info .vat-notice {
    /* top: 48% !important; */
    top: 20px !important;
}
.product-footer .woocommerce-tabs .nav-tabs+.tab-panels {
    padding: 15px !important;
}

/* ========== news-page ========== */
.subpage-banner-wrapper .page-title {
    font-size: 25px !important;
}
.entry-header .entry-image a {
    height: 250px !important;
}






}