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

/* --- Global Background --- */
#wrapper, #main {
    background: #010219 !important;
}

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

.entry-content {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* ==========================================================================
   CSS CLONE TỪ XONGHOIBEBOI.COM
   ========================================================================== */

/* --- Container & General --- */
.container { max-width: 1250px; }
form { margin-bottom: 0; }
.is-divider { display: none; }

/* --- Fonts & Headings --- */
.heading-font { 
    color: #333333; 
    font-family: 'Montserrat', sans-serif; 
    font-weight: 700; 
    font-style: normal; 
}

/* --- Header Main & Background --- */
.header-main { 
    height: 78px; 
}
.header-bg-color { background-color: #fbfbfb; }

/* --- Logo Sizing --- */
#logo { width: 141px; }
#logo img { 
    max-height: 78px; 
    padding: 6px 0; 
}

@media (max-width: 549px) {
    .header-main { height: 70px; }
    #logo img { max-height: 70px; }
}

/* --- Search Box Styling --- */
.search-form { width: 60%; }
input[type='search'] { border-radius: 10px; height: 40px; }
.header-search-form-wrapper input[type='search'] { 
    box-shadow: none; 
    border-color: #fc8706; 
    border-right: none; 
}

/* --- Cart Button & Spacing --- */
.header-nav.nav-right .cart-item {
    margin-left: 20px; /* Tạo khoảng cách giữa tìm kiếm và giỏ hàng */
}

/* --- Main Navigation Styling --- */
.header-main .nav > li { margin: 0; }
.header-main .nav > li > a { 
    line-height: 53px; 
    padding: 10px 12px; 
    font-size: 16px; 
    font-family: 'Montserrat', sans-serif; 
    font-weight: 700; 
    font-style: normal; 
}
.header:not(.transparent) .header-nav-main.nav > li > a { color: #2f2f2f; }



.has-dropdown .icon-angle-down { margin-left: 5px; opacity: 1; }

/* --- Dropdown Menu Styling --- */
.nav-dropdown { 
    font-size: 100%; 
    padding: 0; 
    background-color: #333333; 
}
.flex-right .nav-dropdown { background-color: #ffffff; }

.nav-dropdown.nav-dropdown-default li a { 
    font-size: 14px; 
    color: #ffffff; 
    border-bottom: none; 
}
.nav-dropdown.nav-dropdown-default > li > a { border-bottom: 1px solid #333333; }
.nav-dropdown.nav-dropdown-default > li:hover > a { border-bottom-color: #a36f3f; }
.nav-dropdown li:not(.woocommerce-mini-cart-item) { 
    border-left: 3px solid #333333; 
    margin-left: 0 !important; /* Bỏ margin left bị ảnh hưởng từ flatsome */
}



/* --- Image Box & Shine Effect --- */
.box-cat .box-text {
    background: #f2f2f2;
    padding: 10px;
}
.box-cat .box-text h4 {
    color: #333333;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-style: normal;
}
.box-cat a.button {
    margin-bottom: 0;
}

/* Shine effect on hover */
.box-image::before {
    position: absolute;
    top: 0;
    left: -75%;
    z-index: 2;
    display: block;
    content: '';
    width: 50%;
    height: 100%;
    background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0, rgba(255,255,255,.3) 100%);
    background: linear-gradient(to right, rgba(255,255,255,0) 0, rgba(255,255,255,.3) 100%);
    -webkit-transform: skewX(-25deg);
    transform: skewX(-25deg);
}
.box-image:hover::before {
    -webkit-animation: shine .75s;
    animation: shine .75s;
}
@-webkit-keyframes shine {
    100% { left: 125%; }
}
@keyframes shine {
    100% { left: 125%; }
}

/* --- Global Section Title --- */
.xc-section-title b {
    background-color: transparent !important;
    border: none !important;
    /* Xóa vạch gạch 2 bên nhưng không ẩn hoàn toàn thẻ b (display: none sẽ làm hỏng Flex căn lề của UX Builder) */
}

/* --- Box Why (Lý do chọn An Bình) --- */
.xc-home.why .box-why {
    padding: 20px;
    background: #ffffff;
    border-radius: 10px;
    border-bottom: 5px solid #2859a3;
    min-height: 345px;
    overflow: hidden;
    transition: all .3s;
}
.xc-home.why .box-why:hover {
    cursor: pointer;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.15);
    transform: translateY(-10px);
}

.xc-home.why .box-why .icon-box-text h3 {
    font-weight: bold;
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
.xc-home.why .box-why .icon-box-text h3:before {
    content: '';
    width: 28px;
    height: 3px;
    background-color: #2859a3;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

/* --- Products Section Tabs --- */
.xc-home.products .row .tabbed-content ul {
    justify-content: center;
}
.xc-home.products .row .tabbed-content ul li {
    margin: 0;
}
.xc-home.products .row .tabbed-content ul li a {
    text-align: center;
    font-size: 14px;
    text-transform: uppercase;
    color: #fff !important;
    background-color: #2858a2 !important;
    border-radius: 5px !important;
    border: none !important;
    padding: 0 30px;
    height: 45px;
    line-height: 45px;
    margin: 0 5px 10px;
    transition: all 500ms ease;
    position: relative;
    z-index: 1;
}
.xc-home.products .row .tabbed-content ul li.active a,
.xc-home.products .row .tabbed-content ul li a:hover {
    transition: all 500ms ease;
    background: #e5b936 !important; /* primary color */
    color: #ffffff !important;
}
.xc-home.products .row .tabbed-content ul li a:after {
    content: "";
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 10px solid #e5b936;
    position: absolute;
    bottom: -5px;
    left: 0;
    right: 0;
    margin: 0 auto;
    visibility: hidden;
    opacity: 0;
    transition: all 500ms ease;
    z-index: -1;
}
.xc-home.products .row .tabbed-content ul li.active a:after {
    opacity: 1;
    bottom: -10px;
    visibility: visible;
}

/* --- Shop Container & Product Layout --- */
.category-page-row > .col:first-child {
    padding-left: 0;
}
.category-page-row > .col:last-child {
    padding-right: 0;
}

.category-page-row .shop-container {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
}

.star-rating span:before {
    color: #f89406 !important;
}

/* --- Product Small Box Global --- */
.product-small.box .box-text {
    background: #f2f2f2;
    padding: 12px 15px;
}
.product-small.box .box-text p.product-title {
    margin-top: 0 !important;
    margin-bottom: 6px !important;
}
.product-small.box .box-text p.product-title a {
    font-weight: bold !important;
    font-size: 15px;
    color: #333333;
}
.product-small.box:hover p.product-title a {
    color: #ff8400 !important;
}
.product-small.box .box-text .price-wrapper {
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}
.product-small.box .box-text .price-wrapper span.price {
    order: 1 !important;
    text-align: center !important;
}
.product-small.box .box-text .price-wrapper .star-rating {
    order: 2 !important;
    margin-top: 4px !important;
    margin-bottom: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.product-small.box .box-text .price-wrapper span.price del,
.product-small.box .box-text .price-wrapper span.price ins {
    display: block; /* Ép mỗi giá 1 dòng */
    text-decoration: none; /* Bỏ gạch chân nếu có của thẻ ins */
}
.product-small.box .box-text .price-wrapper span.price del {
    text-decoration: line-through; /* Giữ gạch ngang cho giá cũ */
    font-size: 13px; /* Thu nhỏ giá cũ một chút */
    color: #999;
}
.product-small.box .box-text .price-wrapper span.price ins span.amount,
.product-small.box .box-text .price-wrapper span.price > span.amount {
    color: red !important;
    font-size: 16px;
    font-weight: bold;
}
.product-small.box .box-text .price-wrapper span.price del span.amount {
    color: #999 !important; /* Giá cũ phải màu xám, không bị đè bởi màu đỏ */
    font-size: 14px;
    font-weight: normal;
}



@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


    /* Box Why Mobile */
    .xc-home.why .row .col.large-3 { max-width: 100%; flex-basis: 100%; }
    .xc-home.why .box-why { min-height: auto; }

    /* Single Post Mobile */
    .blog-single .article-inner { padding: 15px; }
}

/* --- Dấu ấn An Bình (Gallery Slider) --- */
.xc-home.impression .box-image {
    border: 3px solid #fff;
    overflow: hidden;
}
.xc-home.impression .flickity-page-dots .dot.is-selected {
    background-color: #fc8706 !important; /* Secondary color */
}
/* Kèm màu cho cả nút prev/next cho đồng bộ nếu slider hiển thị mũi tên */
.xc-home.impression .flickity-prev-next-button .arrow {
    fill: #fc8706 !important;
}

/* --- Sidebar Widgets --- */
.is-divider {
    display: none;
}
.widget-title, .widgettitle {
    margin-bottom: 0;
    background: #e5b936;
    padding: 15px 25px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    color: white;
    display: block;
}
.widget ul {
    margin: 0;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    background: #e5b9364a; /* Vàng trong suốt */
    padding: 10px;
    border-radius: 14px;
}
.recent-blog-posts-li .mr-half {
    margin-right: 10px;
}
.recent-blog-posts a {
    line-height: 1.1;
    font-size: 15px;
}

/* Sidebar: Border bottom dashed cho danh mục */
.widget_product_categories > ul > li {
    border-bottom: 1px dashed #ccc;
    border-top: none !important;
}
.widget_product_categories > ul > li:last-child {
    border-bottom: none;
}

/* Sidebar: Ảnh bài viết tròn */
.flatsome_recent_posts .badge,
.flatsome_recent_posts .badge-outline,
.flatsome_recent_posts .badge-inner {
    border-radius: 50% !important;
    overflow: hidden;
}

/* --- Tin tức (Blog Post Box Loop) --- */
/* Ẩn ngày tháng nổi góc hình */
.box-blog-post .badge.post-date {
    display: none !important;
}

/* Khung tin tức (Card trắng, bóng mờ, bo góc) */
.box-blog-post {
    background: #ffffff !important;
    border: 1px solid #f0f0f0;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.box-blog-post:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
}

/* Zoom nhẹ ảnh khi hover */
.box-blog-post .box-image {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    overflow: hidden;
}
.box-blog-post .box-image img {
    transition: transform 0.5s ease;
}
.box-blog-post:hover .box-image img {
    transform: scale(1.05);
}

/* Khung chữ bên dưới ảnh */
.box-blog-post .box-text {
    background: #ffffff !important;
    padding: 8px 18px 10px !important;
    text-align: left !important;
}

.box-blog-post .is-divider {
    display: none !important;
}

/* Tiêu đề in đậm, giới hạn 2 dòng và có gạch đứt mờ bên dưới */
.box-blog-post .post-title {
    font-weight: 700 !important;
    font-size: 15px;
    line-height: 1.4;
    margin-bottom: 10px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 2.8em;
    position: relative;
    padding-bottom: 10px;
    border-bottom: 1px dashed #e0e0e0;
}
.box-blog-post .post-title a {
    color: #111111;
    transition: color 0.2s ease;
}
.box-blog-post:hover .post-title a {
    color: #ff8400 !important;
}

/* Ngày đăng dạng dd/mm/yyyy hiển thị dưới đường kẻ và trên mô tả */
.box-blog-post .post-date-text {
    display: block;
    color: #888888;
    font-size: 13px;
    font-weight: 500;
    margin-top: 8px;
    margin-bottom: 6px;
}

/* Mô tả ngắn giới hạn 2 dòng */
.box-blog-post .from_the_blog_excerpt {
    color: #555555;
    font-size: 13.5px;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-top: 0;
    margin-bottom: 0;
}

/* Bình luận / Thông tin phụ */
.box-blog-post .from_the_blog_comments {
    color: #999999;
    font-size: 12px;
    margin-top: 8px;
    margin-bottom: 0;
}

/* --- Contact Form 7 (.xc-contact-form) --- */
.xc-contact-form {
    display: block;
    width: 100%;
}
.xc-contact-form__group {
    background: white;
    display: inline-block;
    width: 100%;
    clear: both;
    border: 1px solid #006f81;
    border-radius: 5px;
    margin-bottom: 10px; /* Thêm khoảng cách nhẹ giữa các input do đã bỏ thẻ p */
}
.xc-contact-form__submit-group {
    padding-bottom: 15px;
}
.xc-contact-form__icon {
    display: inline-block;
    width: 10%;
    float: left;
    padding: 10px 7px;
    text-align: center;
}
.xc-contact-form__group .wpcf7-form-control-wrap {
    display: inline-block;
    float: right;
    width: 90%;
}
.xc-contact-form input:not([type='submit']), 
.xc-contact-form select {
    height: 40px;
    line-height: 40px;
    box-shadow: none;
    font-size: 14px;
    margin-bottom: 0;
    border: none;
    border-left: 1px solid #dcdcdc;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    background: transparent;
    width: 100%; /* Giữ cho input đầy khuôn */
}
.xc-contact-form input[type='submit'] {
    width: 100%;
    font-weight: bold;
    font-size: 17px;
    border-radius: 5px;
    display: block;
    min-width: 200px;
    margin: 0 auto;
    box-shadow: none;
    border: none;
    background: #052968;
    color: white;
    padding: 10px 0;
}
.xc-contact-form__header {
    display: none;
}
.xc-contact-form__header h3 {
    text-align: center;
    color: #ffee00;
    text-transform: uppercase;
    font-weight: 900;
    line-height: 22px;
    margin-bottom: 5px;
}
.xc-contact-form__header h4 {
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 10px;
}

/* --- Single Post (Trang chi tiết bài viết) --- */
.blog-single .article-inner,
.single-post #comments,
.single-post .comments-area,
#comments.comments-area {
    background-color: #fff;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

.single-post #comments,
.single-post .comments-area,
#comments.comments-area {
    margin-top: 15px;
}

.single-post .post-sidebar,
.single-post #secondary,
.single-post .post-sidebar .widget:first-child,
.single-post #secondary .widget:first-child,
.single-post .post-sidebar .is-sticky-column {
    padding-top: 0 !important;
    margin-top: 0 !important;
}


.single-product .product-page-row > .large-9 {
    padding-left: 15px !important;
}

.single-product #product-sidebar {
    margin-top: 15px !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
}
.single-product #product-sidebar .widget:first-child,
.single-product #product-sidebar .is-sticky-column,
.single-product #product-sidebar .sidebar-inner {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* --- Single Product (Trang chi tiết sản phẩm) --- */
/* Dòng đánh giá sao + số lượt đánh giá | lượt đã bán dưới Tiêu đề */
.product-info .woocommerce-product-rating.custom-single-rating,
.single-product .woocommerce-product-rating.custom-single-rating {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap;
    gap: 6px !important;
    margin-top: 6px !important;
    margin-bottom: 12px !important;
    font-size: 14px !important;
}
.single-product .custom-single-rating .star-rating {
    margin: 0 !important;
    float: none !important;
    font-size: 15px !important;
    display: inline-block !important;
}
.single-product .custom-single-rating .rating-text-review,
.single-product .custom-single-rating .rating-text-sold {
    color: #4caf50 !important;
    font-weight: 500;
    font-size: 14px;
}
.single-product .custom-single-rating .rating-divider {
    color: #4caf50 !important;
    opacity: 0.6;
    margin: 0 2px;
}

/* Ẩn thanh tìm kiếm đánh giá trong Customer Reviews */
.cr-ajax-search {
    display: none !important;
}

/* --- Biến thể sản phẩm (Variation Swatches Attributes) --- */
.variations_form .ux-swatch,
.variations .ux-swatch {
    background-color: #946d3b !important;
    border-color: #946d3b !important;
    color: #ffffff !important;
    transition: all 0.2s ease;
}

.variations_form .ux-swatch .ux-swatch__text,
.variations .ux-swatch .ux-swatch__text {
    color: #ffffff !important;
}

/* Trạng thái di chuột vào nút thuộc tính */
.variations_form .ux-swatch:hover,
.variations .ux-swatch:hover {
    background-color: #7d5a2f !important;
    border-color: #7d5a2f !important;
    color: #ffffff !important;
}

/* Trạng thái thuộc tính đang được chọn */
.variations_form .ux-swatch[aria-checked="true"],
.variations_form .ux-swatch.selected,
.variations .ux-swatch[aria-checked="true"],
.variations .ux-swatch.selected {
    background-color: #946d3b !important;
    border-color: #111111 !important;
    box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #946d3b !important;
    color: #ffffff !important;
}

/* Gallery và Info tạo thành 1 khối nền trắng */
.product-main {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.product-main .product-gallery,
.product-main .product-info {
    background-color: #fff;
    padding: 20px !important;
}
.product-main .product-info .social-icons,
.product-main .product-info .product_meta {
    margin-bottom: 0 !important;
}
.product_meta > span {
    border-top: none !important;
}
.product-main .product-gallery {
    border-radius: 8px 0 0 8px;
}
.product-main .product-info {
    border-radius: 0 8px 8px 0;
}
@media (max-width: 849px) {
    .product-main .product-gallery {
        border-radius: 8px 8px 0 0;
    }
    .product-main .product-info {
        border-radius: 0 0 8px 8px;
    }
}

/* Khoảng cách giữa các khối trong trang chi tiết sản phẩm (thu gọn khoảnh cách xám về 10px) */
.single-product .product-footer {
    margin-left: -15px !important;
    margin-right: -15px !important;
    margin-top: 10px !important;
    margin-bottom: 20px !important;
    padding-top: 0 !important;
}

.single-product .product-footer > .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.single-product .product-footer .custom-product-section,
.single-product .product-footer .related-products-wrapper,
.single-product .product-footer .upsells,
.single-product .product-footer .product-section {
    background-color: #fff;
    padding: 18px 22px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    margin-top: 10px !important;
    margin-bottom: 0 !important;
}

.single-product .product-footer .custom-product-section:first-child,
.single-product .product-footer .product-page-sections > div:first-child {
    margin-top: 0 !important;
}

.custom-product-section .section-title,
.product-footer .related-products-wrapper .product-section-title,
.product-footer .upsells .product-section-title {
    margin-top: 0;
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px dashed #ccc;
}

/* --- Breadcrumb (Thanh điều hướng trang Shop/Danh mục/Bài viết) --- */
.single-post #main,
.single-post #content,
.single-post .blog-wrapper,
.single-post .blog-single {
    padding-top: 0 !important;
}

.shop-page-title .page-title-inner,
.category-page-title .page-title-inner,
.single-post-breadcrumb-wrapper .page-title-inner {
    background-color: #fff;
    padding: 12px 25px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    margin-top: 15px !important;
    display: flex !important;
    align-items: center !important;
    min-height: 48px;
}

.single-post-breadcrumb-wrapper {
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 15px !important;
}

.single-post-breadcrumb-wrapper .breadcrumbs,
.single-post-breadcrumb-wrapper .breadcrumbs p,
.single-post-breadcrumb-wrapper .breadcrumbs nav,
.single-post-breadcrumb-wrapper nav.woocommerce-breadcrumb,
.single-post-breadcrumb-wrapper .rank-math-breadcrumb,
.single-post-breadcrumb-wrapper .rank-math-breadcrumb p {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px;
    line-height: 1.4 !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap;
}

.single-post-breadcrumb-wrapper .rank-math-breadcrumb a,
.single-post-breadcrumb-wrapper nav.woocommerce-breadcrumb a {
    color: #334862 !important;
    text-decoration: none;
    font-weight: 500;
}

.single-post-breadcrumb-wrapper .rank-math-breadcrumb a:hover,
.single-post-breadcrumb-wrapper nav.woocommerce-breadcrumb a:hover {
    color: #e5b936 !important;
    text-decoration: underline;
}

.single-post-breadcrumb-wrapper .rank-math-breadcrumb .separator {
    margin: 0 8px;
    color: #888;
}

/* Khoảng cách dưới cùng của trang sản phẩm */
.product-footer {
    margin-bottom: 40px;
}

/* --- Responsive Mobile: Tạo khoảng cách 5px với mép màn hình --- */
@media (max-width: 849px) {
    /* Breadcrumb, Gallery và Info */
    .shop-page-title .page-title-inner,
    .category-page-title .page-title-inner,
    .product-main .product-gallery,
    .product-main .product-info {
        margin-left: 5px !important;
        margin-right: 5px !important;
        width: auto !important;
        max-width: calc(100% - 10px) !important;
        flex-basis: calc(100% - 10px) !important;
    }
    
    /* Các section trong Footer (đang nằm trong .container có padding 15px) 
       Ta dùng margin -10px để lùi ra ngoài, giữ lại đúng 5px khoảng trống */
    .product-footer .custom-product-section,
    .product-footer .related-products-wrapper,
    .product-footer .upsells {
        margin-left: -10px !important;
        margin-right: -10px !important;
    }
}

/* --- Shortcode [top_info] / [top-info] --- */
.header-main .html_nav_position_text,
.top-info-wrapper {
    width: 100% !important;
    max-width: 100% !important;
}
.top-info-wrapper .contact-header {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.contact-header .icon-box-left {
    align-items: center !important;
}
.contact-header .icon-box-text {
    align-self: center !important;
    padding-left: 10px !important;
}
.contact-header .icon-box-text p {
    font-size: 14px;
    margin-bottom: 0;
    line-height: 1.3;
}
.top-info-wrapper .row > .col {
    padding-bottom: 0;
}

/* --- Navigation Sub-menu Dropdown Custom Styling (Chỉ áp dụng cho Header Nav Menu, KHÔNG ảnh hưởng Giỏ hàng) --- */
/* 1. Viền ngoài cụm dropdown trong Header đổi thành màu xám và KHÔNG bo góc */
header .header-nav li:not(.cart-item) .nav-dropdown,
#header .header-nav li:not(.cart-item) .nav-dropdown,
header ul.sub-menu.nav-dropdown,
#header ul.sub-menu.nav-dropdown,
header .menu-item-has-children .nav-dropdown-bold,
#header .menu-item-has-children .nav-dropdown-bold {
    border: 1px solid #ddd !important;
    border-color: #ddd !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.12) !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden;
    border-radius: 0 !important; /* Không bo góc */
}

/* Viền mũi tên tam giác phía trên dropdown đổi sang màu xám */
header .menu-item-has-children .nav-dropdown:before,
#header .menu-item-has-children .nav-dropdown:before,
header .menu-item-has-children .nav-dropdown:after,
#header .menu-item-has-children .nav-dropdown:after {
    border-bottom-color: #ddd !important;
}

/* 2. Item & Hover: Dính sát viền trái (left 0), full width, màu vàng cam, chữ trắng & không bo góc */
header .header-nav li:not(.cart-item) .nav-dropdown li,
#header .header-nav li:not(.cart-item) .nav-dropdown li,
header ul.sub-menu > li,
#header ul.sub-menu > li {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    display: block !important;
    border-left: none !important;
    border-top: none !important;
    border-bottom: none !important;
    border-right: none !important;
    border: none !important;
    border-radius: 0 !important;
}

header .header-nav li:not(.cart-item) .nav-dropdown > li > a,
#header .header-nav li:not(.cart-item) .nav-dropdown > li > a,
header ul.sub-menu > li > a,
#header ul.sub-menu > li > a {
    display: block !important;
    width: 100% !important;
    padding: 10px 18px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
    transition: background-color 0.2s ease, color 0.2s ease;
}

/* Hiệu ứng di chuột (Hover) full chiều rộng item - Màu vàng cam, chữ trắng & dính sát lề trái 0px */
header .header-nav li:not(.cart-item) .nav-dropdown > li:hover > a,
header .header-nav li:not(.cart-item) .nav-dropdown > li > a:hover,
#header .header-nav li:not(.cart-item) .nav-dropdown > li:hover > a,
#header .header-nav li:not(.cart-item) .nav-dropdown > li > a:hover,
header ul.sub-menu > li:hover > a,
header ul.sub-menu > li > a:hover,
#header ul.sub-menu > li:hover > a,
header ul.sub-menu.nav-dropdown > li > a:hover,
#header ul.sub-menu.nav-dropdown > li:hover > a,
#header ul.sub-menu.nav-dropdown > li > a:hover {
    background-color: #e59b2c !important;
    color: #ffffff !important;
    border-radius: 0 !important;
}

/* --- Tùy chỉnh chữ "Liên hệ" màu đỏ có liên kết cho sản phẩm không giá / 0đ --- */
.custom-contact-price {
    color: #e00000 !important;
    font-weight: bold !important;
    transition: color 0.2s ease;
}
.custom-contact-price:hover {
    color: #b70000 !important;
    text-decoration: underline !important;
}

/* --- Tùy chỉnh Icon Search trong Header cùng chiều cao & border-radius với Nút Giỏ hàng --- */
header .header-search-lightbox,
#header .header-search-lightbox,
/* --- Fix Nút Search trùng khớp 100% với Nút Giỏ Hàng --- */
header .header-search .header-button a.button,
#header .header-search .header-button a.button,
header .header-search-lightbox a.button,
#header .header-search-lightbox a.button,
header .header-search a.button,
#header .header-search a.button,
header li.header-search a.button,
#header li.header-search a.button {
    height: 40px !important;
    line-height: 40px !important;
    min-height: 40px !important;
    width: 40px !important;
    min-width: 40px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 5px !important;       /* Ghi đè class .circle (999px) -> bo góc 5px chữ nhật bo nhẹ của nút Giỏ hàng .round */
    background: linear-gradient(145deg, #ffd700, #DAA520, #B8860B) !important;
    color: #ffffff !important;
    border: none !important;
    box-shadow: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

header .header-search .header-button a.button i,
#header .header-search .header-button a.button i,
header .header-search-lightbox a.button i,
#header .header-search-lightbox a.button i {
    top: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 16px !important;
    color: #ffffff !important;
}

/* --- Fix Bố cục và Che chữ trong Mini Cart Dropdown --- */
header .cart-item .widget_shopping_cart_content .cart_list,
#header .cart-item .widget_shopping_cart_content .cart_list {
    margin-bottom: 15px !important;
    padding: 0 !important;
    list-style: none !important;
}

header .cart-item .widget_shopping_cart_content .cart_list li,
#header .cart-item .widget_shopping_cart_content .cart_list li,
header .widget_shopping_cart ul.product_list_widget li,
#header .widget_shopping_cart ul.product_list_widget li {
    position: relative !important;
    padding: 10px 30px 10px 75px !important; /* Thụ lùi 75px bên trái cho ảnh, 30px bên phải cho nút X */
    margin: 0 !important;
    border-bottom: 1px dashed #eee !important;
    border-left: none !important;
    background: transparent !important;
    width: 100% !important;
    display: block !important;
    box-sizing: border-box !important;
    min-height: 75px !important;
}

/* Ảnh sản phẩm nằm cố định ở khoảng trống 75px bên trái */
header .cart-item .widget_shopping_cart_content .cart_list li img,
#header .cart-item .widget_shopping_cart_content .cart_list li img,
header .widget_shopping_cart ul.product_list_widget li img,
#header .widget_shopping_cart ul.product_list_widget li img {
    position: absolute !important;
    left: 0 !important;
    top: 10px !important;
    width: 60px !important;
    height: 60px !important;
    object-fit: cover !important;
    border-radius: 4px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

/* Tên sản phẩm hiển thị đầy đủ, không bị đè hay cắt chữ */
header .cart-item .widget_shopping_cart_content .cart_list li a:not(.remove),
#header .cart-item .widget_shopping_cart_content .cart_list li a:not(.remove),
header .widget_shopping_cart ul.product_list_widget li a:not(.remove),
#header .widget_shopping_cart ul.product_list_widget li a:not(.remove) {
    display: block !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    color: #333333 !important;
    margin: 0 0 4px 0 !important;
    padding: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    word-break: break-word !important;
    background: transparent !important;
}

/* Nút xóa X nằm cố định góc phải trên cùng */
header .cart-item .widget_shopping_cart_content .cart_list li a.remove,
#header .cart-item .widget_shopping_cart_content .cart_list li a.remove,
header .widget_shopping_cart ul.product_list_widget li a.remove,
#header .widget_shopping_cart ul.product_list_widget li a.remove {
    position: absolute !important;
    right: 0 !important;
    top: 10px !important;
    width: 22px !important;
    height: 22px !important;
    line-height: 20px !important;
    text-align: center !important;
    border-radius: 50% !important;
    border: 1px solid #ddd !important;
    color: #888888 !important;
    font-size: 14px !important;
    background: #f9f9f9 !important;
    z-index: 10 !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-block !important;
}

/* Khung giá tiền & số lượng bên dưới tên - thẳng hàng ảnh đại diện */
header .cart-item .widget_shopping_cart_content .ux-mini-cart-qty,
#header .cart-item .widget_shopping_cart_content .ux-mini-cart-qty,
header .cart-item .widget_shopping_cart_content .quantity,
#header .cart-item .widget_shopping_cart_content .quantity,
header .cart-item .widget_shopping_cart_content .ux-mini-cart-qty span,
#header .cart-item .widget_shopping_cart_content .ux-mini-cart-qty span {
    display: block !important;
    margin: 8px 0 0 -75px !important; /* margin-left âm để thẳng hàng ảnh */
    padding: 0 !important;
    font-size: 14px !important;
    color: #333333 !important;
    clear: both !important;
    white-space: nowrap !important;
}

header .cart-item .widget_shopping_cart_content .quantity .amount,
#header .cart-item .widget_shopping_cart_content .quantity .amount,
header .cart-item .widget_shopping_cart_content .cart_list li .quantity .amount,
#header .cart-item .widget_shopping_cart_content .cart_list li .quantity .amount {
    color: #e59b2c !important;
    font-weight: bold !important;
}


/* Tổng số phụ (Dòng chữ xếp ngang 100% width, ghi đè tuyệt đối .dark p.total của Flatsome) */
.dark .widget_shopping_cart p.total,
.dark .widget_shopping_cart p.woocommerce-mini-cart__total,
header .dark .widget_shopping_cart p.total,
#header .dark .widget_shopping_cart p.total,
header .cart-item .dark p.total,
#header .cart-item .dark p.total,
header .cart-item .nav-dropdown.dark p.total,
#header .cart-item .nav-dropdown.dark p.total,
header .cart-item .nav-dropdown.dark p.total strong,
#header .cart-item .nav-dropdown.dark p.total strong,
header .cart-item .nav-dropdown.dark .woocommerce-mini-cart__total,
#header .cart-item .nav-dropdown.dark .woocommerce-mini-cart__total,
header .cart-item .widget_shopping_cart_content p.total,
#header .cart-item .widget_shopping_cart_content p.total,
header .cart-item .widget_shopping_cart_content p.woocommerce-mini-cart__total,
#header .cart-item .widget_shopping_cart_content p.woocommerce-mini-cart__total,
header .cart-item .widget_shopping_cart_content .total,
#header .cart-item .widget_shopping_cart_content .total {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    padding: 10px 0 !important;
    font-size: 15px !important;
    font-weight: bold !important;
    color: #333333 !important;
    border-top: 1px dashed #eee !important;
    border-bottom: 1px dashed #eee !important;
    margin-bottom: 15px !important;
}

.dark .widget_shopping_cart p.total *,
header .cart-item .nav-dropdown.dark p.total *,
header .cart-item .widget_shopping_cart_content p.total *,
#header .cart-item .widget_shopping_cart_content p.total *,
header .cart-item .widget_shopping_cart_content p.woocommerce-mini-cart__total *,
#header .cart-item .widget_shopping_cart_content p.woocommerce-mini-cart__total * {
    color: #333333;
}

.dark .widget_shopping_cart p.total .amount,
.dark .widget_shopping_cart p.total .amount bdi,
header .cart-item .widget_shopping_cart_content p.total .amount,
#header .cart-item .widget_shopping_cart_content p.total .amount,
header .cart-item .widget_shopping_cart_content p.total .amount bdi,
#header .cart-item .widget_shopping_cart_content p.total .amount bdi,
header .cart-item .widget_shopping_cart_content p.woocommerce-mini-cart__total .amount bdi,
#header .cart-item .widget_shopping_cart_content p.woocommerce-mini-cart__total .amount bdi {
    color: #e59b2c !important;
    font-weight: bold !important;
}

/* Nút XEM GIỎ HÀNG và THANH TOÁN bo tròn capsule xếp dọc 100% width */
header .cart-item .widget_shopping_cart_content .buttons,
#header .cart-item .widget_shopping_cart_content .buttons,
header .cart-item .widget_shopping_cart_content p.buttons,
#header .cart-item .widget_shopping_cart_content p.buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    width: 100% !important;
    margin-top: 12px !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
}

header .cart-item .widget_shopping_cart_content .button,
#header .cart-item .widget_shopping_cart_content .button,
header .cart-item .widget_shopping_cart_content a.button,
#header .cart-item .widget_shopping_cart_content a.button {
    margin: 0 !important;
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    padding: 10px 18px !important;
    height: auto !important;
    line-height: 1.4 !important;
    border-radius: 99px !important;
    color: #ffffff !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
}

header .cart-item .widget_shopping_cart_content a.button.wc-forward:not(.checkout),
#header .cart-item .widget_shopping_cart_content a.button.wc-forward:not(.checkout) {
    background: linear-gradient(180deg, #f5ba24 0%, #d48b06 100%) !important;
    border: none !important;
    color: #ffffff !important;
}

header .cart-item .widget_shopping_cart_content a.button.checkout,
#header .cart-item .widget_shopping_cart_content a.button.checkout {
    background: linear-gradient(180deg, #ff7700 0%, #e65c00 100%) !important;
    border: none !important;
    color: #ffffff !important;
}

header .cart-item .widget_shopping_cart_content a.button:hover,
#header .cart-item .widget_shopping_cart_content a.button:hover {
    opacity: 0.9 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 8px rgba(0,0,0,0.15) !important;
}

/* === GHI ĐÈ CUỐI CÙNG: .ux-mini-cart-footer PHẢI là block (không phải flex) === */
header .cart-item .widget_shopping_cart_content .ux-mini-cart-footer,
#header .cart-item .widget_shopping_cart_content .ux-mini-cart-footer,
header .cart-item .nav-dropdown .ux-mini-cart-footer,
#header .cart-item .nav-dropdown .ux-mini-cart-footer,
.widget_shopping_cart_content .ux-mini-cart-footer {
    display: block !important;
    width: 100% !important;
    clear: both !important;
    margin-top: 10px !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    color: #333333 !important;
    flex-direction: unset !important;
    justify-content: unset !important;
    align-items: unset !important;
}

/* ===== TRANG GIỎ HÀNG: Bảng sản phẩm ===== */
.woocommerce-cart .woocommerce-cart-form {
    background: #ffffff !important;
    border-radius: 8px !important;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08) !important;
    padding: 25px 30px !important;
    overflow: hidden !important;
}

.woocommerce-cart .cart-wrapper {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
}

.woocommerce-cart .cart-wrapper .shop_table {
    border: none !important;
    border-collapse: collapse !important;
    margin-bottom: 0 !important;
}

.woocommerce-cart .cart-wrapper .shop_table thead th {
    background: #f8f8f8 !important;
    color: #333333 !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    text-transform: uppercase !important;
    padding: 12px 15px !important;
    border-bottom: 2px solid #eee !important;
}

.woocommerce-cart .cart-wrapper .shop_table tbody td {
    padding: 15px !important;
    vertical-align: middle !important;
    border-bottom: 1px solid #f0f0f0 !important;
    color: #333333 !important;
}

.woocommerce-cart .cart-wrapper .shop_table tbody tr:last-child td {
    border-bottom: none !important;
}

.woocommerce-cart .cart-wrapper .shop_table .product-thumbnail img {
    border-radius: 6px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
}

.woocommerce-cart .cart-wrapper .shop_table .product-name a {
    color: #333333 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.woocommerce-cart .cart-wrapper .shop_table .product-name a:hover {
    color: #e59b2c !important;
}

.woocommerce-cart .cart-wrapper .shop_table .product-subtotal .amount {
    color: #e59b2c !important;
    font-weight: bold !important;
    font-size: 15px !important;
}

.woocommerce-cart .cart-wrapper .shop_table .actions {
    padding: 20px 15px !important;
    border-top: 1px dashed #eee !important;
}

/* Nút Tiếp tục xem sản phẩm */
.woocommerce-cart .button-continue-shopping,
.woocommerce-cart .button-continue-shopping.button {
    background: linear-gradient(145deg, #ffd700, #DAA520, #B8860B) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 99px !important;
    padding: 10px 25px !important;
    font-weight: bold !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    transition: all 0.3s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1.4 !important;
}

.woocommerce-cart .button-continue-shopping:hover {
    background: linear-gradient(145deg, #B8860B, #DAA520, #FFD700) !important;
    box-shadow: 0 4px 12px rgba(218, 165, 32, 0.3) !important;
}

/* Nút Cập nhật giỏ hàng */
.woocommerce-cart .actions button[name="update_cart"],
.woocommerce-cart .actions .button[name="update_cart"] {
    background: linear-gradient(145deg, #ffd700, #DAA520, #B8860B) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 99px !important;
    padding: 10px 25px !important;
    font-weight: bold !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    transition: all 0.3s ease !important;
}

.woocommerce-cart .actions button[name="update_cart"]:hover {
    background: linear-gradient(145deg, #B8860B, #DAA520, #FFD700) !important;
    box-shadow: 0 4px 12px rgba(218, 165, 32, 0.3) !important;
}

.woocommerce-cart .actions button[name="update_cart"]:disabled {
    opacity: 1 !important;
}

/* ===== TRANG GIỎ HÀNG: Sidebar (Tổng cộng giỏ hàng + Mã ưu đãi) ===== */
.woocommerce-cart .cart-sidebar .cart_totals {
    background: #ffffff !important;
    border-radius: 8px !important;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08) !important;
    padding: 25px 30px !important;
    margin-bottom: 20px !important;
}

.woocommerce-cart .cart-sidebar .cart_totals h2 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #333333 !important;
    margin-bottom: 15px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid #eee !important;
}

.woocommerce-cart .cart-sidebar .cart_totals .shop_table {
    border: none !important;
    margin-bottom: 15px !important;
}

.woocommerce-cart .cart-sidebar .cart_totals .shop_table th {
    color: #555555 !important;
    font-weight: 600 !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #f0f0f0 !important;
}

.woocommerce-cart .cart-sidebar .cart_totals .shop_table td {
    text-align: right !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #f0f0f0 !important;
    color: #333333 !important;
}

.woocommerce-cart .cart-sidebar .cart_totals .order-total th {
    font-weight: 700 !important;
    color: #333333 !important;
    font-size: 16px !important;
    border-bottom: none !important;
}

.woocommerce-cart .cart-sidebar .cart_totals .order-total td {
    border-bottom: none !important;
}

.woocommerce-cart .cart-sidebar .cart_totals .order-total .amount {
    color: #e59b2c !important;
    font-size: 18px !important;
    font-weight: bold !important;
}

.woocommerce-cart .cart-sidebar .cart_totals .checkout-button {
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    padding: 12px 20px !important;
    border-radius: 99px !important;
    background: linear-gradient(180deg, #ff7700 0%, #e65c00 100%) !important;
    color: #ffffff !important;
    font-weight: bold !important;
    font-size: 16px !important;
    text-transform: uppercase !important;
    border: none !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12) !important;
    transition: all 0.3s ease !important;
}

.woocommerce-cart .cart-sidebar .cart_totals .checkout-button:hover {
    background: linear-gradient(180deg, #e65c00 0%, #cc4d00 100%) !important;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.18) !important;
}

/* Mã ưu đãi (Coupon) */
.woocommerce-cart .cart-sidebar .ux-cart-coupon {
    background: #ffffff !important;
    border-radius: 8px !important;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08) !important;
    padding: 25px 30px !important;
}

.woocommerce-cart .cart-sidebar .ux-cart-coupon .widget-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #333333 !important;
    margin-bottom: 12px !important;
}

.woocommerce-cart .cart-sidebar .ux-cart-coupon .input-text {
    border: 1px solid #ddd !important;
    border-radius: 6px !important;
    padding: 10px 15px !important;
    font-size: 14px !important;
    width: 100% !important;
    margin-bottom: 10px !important;
}

.woocommerce-cart .cart-sidebar .ux-cart-coupon .button {
    width: 100% !important;
    border-radius: 99px !important;
    background: linear-gradient(145deg, #ffd700, #DAA520, #B8860B) !important;
    color: #ffffff !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    padding: 10px 20px !important;
    border: none !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    transition: all 0.3s ease !important;
}

.woocommerce-cart .cart-sidebar .ux-cart-coupon .button:hover {
    background: linear-gradient(145deg, #B8860B, #DAA520, #FFD700) !important;
    box-shadow: 0 4px 12px rgba(218, 165, 32, 0.3) !important;
}

/* ===== TRANG THANH TOÁN ===== */

/* Khung Thông tin thanh toán (cột trái) */
.woocommerce-checkout #customer_details {
    background: #ffffff !important;
    border-radius: 8px !important;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08) !important;
    padding: 25px 30px !important;
}

.woocommerce-checkout #customer_details h3 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #333333 !important;
    margin-bottom: 15px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid #eee !important;
}

.woocommerce-checkout #customer_details .form-row label {
    color: #555555 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
}

.woocommerce-checkout #customer_details .input-text,
.woocommerce-checkout #customer_details textarea {
    border: 1px solid #ddd !important;
    border-radius: 6px !important;
    padding: 10px 15px !important;
    font-size: 14px !important;
    transition: border-color 0.3s ease !important;
}

.woocommerce-checkout #customer_details .input-text:focus,
.woocommerce-checkout #customer_details textarea:focus {
    border-color: #e59b2c !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(229, 155, 44, 0.15) !important;
}

/* Khung Đơn hàng của bạn (cột phải) - chỉ áp dụng cho .col-inner */
.woocommerce-checkout .large-5 > .col-inner {
    background: #ffffff !important;
    border-radius: 8px !important;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08) !important;
    padding: 25px 30px !important;
    border: none !important;
}

.woocommerce-checkout .checkout-sidebar {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
}

.woocommerce-checkout #order_review_heading {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #333333 !important;
    margin-bottom: 15px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid #eee !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table {
    border: none !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
    background: #f8f8f8 !important;
    color: #333333 !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    padding: 10px 12px !important;
    border-bottom: 2px solid #eee !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table td,
.woocommerce-checkout .woocommerce-checkout-review-order-table th {
    padding: 10px 12px !important;
    border-bottom: 1px solid #f0f0f0 !important;
    color: #333333 !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th {
    font-weight: 700 !important;
    font-size: 16px !important;
    color: #333333 !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount {
    color: #e59b2c !important;
    font-size: 18px !important;
    font-weight: bold !important;
}

/* Nút Đặt hàng */
.woocommerce-checkout #place_order {
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    padding: 14px 20px !important;
    border-radius: 99px !important;
    background: linear-gradient(180deg, #ff7700 0%, #e65c00 100%) !important;
    color: #ffffff !important;
    font-weight: bold !important;
    font-size: 18px !important;
    text-transform: uppercase !important;
    border: none !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12) !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}

.woocommerce-checkout #place_order:hover {
    background: linear-gradient(180deg, #e65c00 0%, #cc4d00 100%) !important;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.18) !important;
}

/* Khung Mã ưu đãi checkout */
.woocommerce-checkout .checkout_coupon {
    background: #ffffff !important;
    border-radius: 8px !important;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08) !important;
    padding: 20px 25px !important;
    border: 1px dashed #ddd !important;
}

.woocommerce-checkout .checkout_coupon .button {
    background: linear-gradient(145deg, #ffd700, #DAA520, #B8860B) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 99px !important;
    font-weight: bold !important;
    padding: 10px 25px !important;
    transition: all 0.3s ease !important;
}

.woocommerce-checkout .checkout_coupon .button:hover {
    background: linear-gradient(145deg, #B8860B, #DAA520, #FFD700) !important;
}

/* Thông báo mã ưu đãi */
.woocommerce-checkout .woocommerce-info {
    background: #ffffff !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
    border-top-color: #e59b2c !important;
    color: #333333 !important;
    padding: 15px 20px !important;
    margin-bottom: 20px !important;
}

.woocommerce-checkout .woocommerce-info a {
    color: #e59b2c !important;
    font-weight: 600 !important;
}

/* Privacy text */
.woocommerce-checkout .woocommerce-privacy-policy-text {
    font-size: 13px !important;
    color: #888888 !important;
    margin-top: 15px !important;
}

/* ==========================================================================
   XC Contact Bar – BEM
   ========================================================================== */
.xc-contact-bar {
    position: fixed;
    right: 0;
    bottom: 0;
    z-index: 990;
    pointer-events: none;
}

/* __menu */
.xc-contact-bar__menu {
    width: 300px;
    position: fixed;
    right: 80px;
    bottom: 80px;
    z-index: 991;
    background-color: #f5f6fa;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.2);
    transform-origin: 100% bottom;
    transform: scale(0);
    opacity: 0;
    visibility: hidden;
    transition: transform 0.3s cubic-bezier(0.645,0.045,0.355,1), opacity 0.25s ease, visibility 0.25s ease;
    pointer-events: auto;
}
.xc-contact-bar__menu--active {
    transform: scale(1);
    opacity: 1;
    visibility: visible;
    transition-delay: 0.1s;
}

/* __list */
.xc-contact-bar__list {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* __item */
.xc-contact-bar__item {
    margin: 0;
    padding: 10px 15px;
    list-style: none;
}
.xc-contact-bar__item:not(:last-child) {
    border-bottom: 1px solid #ecedf1;
    box-shadow: 0 1px 0 0 #fff;
}

/* __link */
.xc-contact-bar__link {
    display: flex;
    align-items: center;
    width: 100%;
    text-decoration: none;
    color: inherit;
    border-radius: 0;
    box-shadow: none;
}
.xc-contact-bar__link:hover { text-decoration: none; }

/* __icon */
.xc-contact-bar__icon {
    flex-shrink: 0;
    display: block;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    box-shadow: 0 2px 5px 0 rgba(0,0,0,0.11);
    object-fit: cover;
}

/* __label */
.xc-contact-bar__label {
    width: calc(100% - 55px);
    padding-left: 15px;
    text-align: left;
    font-size: 13px;
    font-weight: 400;
    color: #1d243e;
    transition: color 0.2s ease;
}
.xc-contact-bar__link:hover .xc-contact-bar__label { color: #fd7d21; }

/* __toggle */
.xc-contact-bar__toggle {
    position: fixed;
    bottom: 50px;
    right: 17px;
    z-index: 992;
    cursor: pointer;
    pointer-events: auto;
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    outline: none;
    -webkit-appearance: none;
}
.xc-contact-bar__toggle-inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 1px solid #fff;
    background: #194fdb;
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
    z-index: 4;
    animation: xc-contact-bar-pulse 2s infinite;
}
.xc-contact-bar__toggle-inner::before,
.xc-contact-bar__toggle-inner::after {
    content: '';
    position: absolute;
    width: 60px;
    height: 60px;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%) scale(0);
    background: #194fdb;
    border-radius: 50%;
    z-index: -1;
}
.xc-contact-bar__toggle-inner::before { animation: xc-contact-bar-beacon 2s infinite ease-out; }
.xc-contact-bar__toggle-inner::after  { animation: xc-contact-bar-beacon 2s infinite ease-out 0.4s; }

.xc-contact-bar__toggle-open {
    display: block;
    transition: opacity 0.25s ease, transform 0.25s ease;
}
.xc-contact-bar__toggle-open img { width: 35px; height: 35px; display: block; }

.xc-contact-bar__toggle-close {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s ease, visibility 0.25s ease;
}
.xc-contact-bar__toggle-close img { width: 19px; height: 19px; display: block; }

/* --open */
.xc-contact-bar__toggle--open .xc-contact-bar__toggle-open {
    opacity: 0; visibility: hidden; transform: scale(0.3);
}
.xc-contact-bar__toggle--open .xc-contact-bar__toggle-close {
    opacity: 1; visibility: visible;
}

/* __quote */
.xc-contact-bar__quote {
    position: fixed;
    right: 15px;
    bottom: 150px;
    z-index: 999;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #38a3fd;
    border: 2px solid #38a3fd;
    box-shadow: 0 8px 10px rgba(56,163,253,0.3);
    cursor: pointer;
    text-decoration: none;
    animation: xc-contact-bar-wave 1s linear infinite;
    pointer-events: auto;
}
.xc-contact-bar__quote:hover,
.xc-contact-bar__quote:focus { text-decoration: none; }
.xc-contact-bar__quote-icon {
    display: flex;
    justify-content: center;
    align-items: center;
}
.xc-contact-bar__quote-icon img { width: 45px; height: 45px; display: block; }

/* Animations */
@keyframes xc-contact-bar-pulse {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.1); }
    100% { transform: scale(1); }
}
@keyframes xc-contact-bar-beacon {
    0%   { transform: translate(-50%,-50%) scale(0); opacity: 1; }
    50%  { opacity: 0.6; }
    100% { transform: translate(-50%,-50%) scale(1.4); opacity: 0; }
}
@keyframes xc-contact-bar-wave {
    0%   { box-shadow: 0 8px 10px rgba(56,163,253,0.3), 0 0 0 0 rgba(56,163,253,0.2), 0 0 0 0 rgba(56,163,253,0.2); }
    40%  { box-shadow: 0 8px 10px rgba(56,163,253,0.3), 0 0 0 15px rgba(56,163,253,0.2), 0 0 0 0 rgba(56,163,253,0.2); }
    80%  { box-shadow: 0 8px 10px rgba(56,163,253,0.3), 0 0 0 30px rgba(56,163,253,0), 0 0 0 26.7px rgba(56,163,253,0.067); }
    100% { box-shadow: 0 8px 10px rgba(56,163,253,0.3), 0 0 0 30px rgba(56,163,253,0), 0 0 0 40px rgba(56,163,253,0); }
}

/* Responsive */
@media (max-width: 991px) {
    .xc-contact-bar__menu { right: 14px; bottom: 100px; max-width: calc(100vw - 28px); width: 275px; }
    .xc-contact-bar__icon { width: 28px; height: 28px; }
    .xc-contact-bar__toggle { right: 10px; bottom: 90px; }
    .xc-contact-bar__quote { right: 10px; bottom: 165px; }
}

/* ==========================================================================
   XC Contact Form – BEM (CF7 trong Flatsome lightbox)
   ========================================================================== */
.xc-contact-form,
.xc-contact-form *,
.lightbox-content .xc-contact-form {
    text-align: left !important;
}
.xc-contact-form {
    padding: 20px;
}

/* __group */
.xc-contact-form__group {
    margin-bottom: 8px;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: block;
    width: 100%;
}
.xc-contact-form__group p { margin: 0; padding: 0; }

/* Reset fieldset */
.xc-contact-form fieldset,
.xc-contact-form .wpcf7 fieldset {
    border: none !important;
    padding: 0;
    margin: 0;
}

/* __label */
.xc-contact-form__label,
.xc-contact-form .wpcf7 label {
    display: block;
    width: 100%;
    font-size: 17px;
    font-weight: 700;
    color: #222;
    margin-bottom: 6px;
    text-align: left;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    float: none !important;
}

/* __input */
.xc-contact-form .wpcf7 input[type="text"],
.xc-contact-form .wpcf7 input[type="tel"],
.xc-contact-form .wpcf7 input[type="email"],
.xc-contact-form .wpcf7 input[type="url"],
.xc-contact-form .wpcf7 textarea,
.xc-contact-form .wpcf7 select {
    width: 100%;
    height: 45px;
    line-height: 45px;
    padding: 0 14px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fff;
    box-shadow: none !important;
    font-size: 15px;
    color: #333;
    box-sizing: border-box;
    transition: border-color 0.2s ease;
    -webkit-appearance: none;
    appearance: none;
    margin-bottom: 0;
}
.xc-contact-form .wpcf7 textarea {
    height: auto;
    line-height: 1.5;
    padding: 10px 14px;
    min-height: 100px;
    resize: vertical;
}
.xc-contact-form .wpcf7 input[type="text"]:focus,
.xc-contact-form .wpcf7 input[type="tel"]:focus,
.xc-contact-form .wpcf7 input[type="email"]:focus,
.xc-contact-form .wpcf7 input[type="url"]:focus,
.xc-contact-form .wpcf7 textarea:focus,
.xc-contact-form .wpcf7 select:focus {
    border-color: #194fdb;
    outline: none;
    box-shadow: none !important;
}

/* __submit */
.xc-contact-form__submit { margin-top: 16px; margin-bottom: 12px; }
.xc-contact-form__submit p { margin: 0; padding: 0; }
.xc-contact-form .wpcf7 input[type="submit"] {
    width: auto;
    height: 45px;
    line-height: 45px;
    margin: 0;
    padding: 0 28px;
    border: none;
    border-radius: 8px;
    background: #194fdb;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    cursor: pointer;
    transition: background 0.2s ease;
}
.xc-contact-form .wpcf7 input[type="submit"]:hover {
    background: #1340b5;
    box-shadow: none;
    color: #fff;
    opacity: 1;
}

/* __note */
.xc-contact-form__note {
    font-size: 15px;
    font-style: italic;
    line-height: 20px;
    color: #006cf0;
    font-weight: 500;
    margin: 0;
    padding: 0;
    text-align: left;
}

/* CF7 overrides */
.xc-contact-form .wpcf7 { margin: 0; color: #333; }
.xc-contact-form .wpcf7 p { margin: 0; padding: 0; }
.xc-contact-form .wpcf7 form { margin: 0; }
.xc-contact-form .wpcf7 .wpcf7-form-control-wrap,
.xc-contact-form__group .wpcf7-form-control-wrap {
    display: block !important;
    float: none !important;
    width: 100% !important;
    margin-bottom: 0;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}
.xc-contact-form .wpcf7 .wpcf7-response-output { border-radius: 8px; margin: 8px 0 0; font-size: 14px; }
.xc-contact-form .wpcf7-spinner { display: none !important; }

/* Ẩn lightbox form mặc định, chỉ hiện khi Magnific Popup mở */
#xc-cb-quote-form { display: none; }
.mfp-content #xc-cb-quote-form { display: block; }

/* ==========================================================================
   XC Landing Page Table & Row Border
   ========================================================================== */
.xc-landing-page-table {
    max-width: 100%;
}

.xc-row-border {
    border: 1px solid #333;
    border-left: 5px solid #d4af37;
    border-radius: 8px;
    padding: 15px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

/* ==========================================================================
   XC Slider Thumbs V2
   ========================================================================== */
.xc-slider-thumbs {
    max-width: var(--xc-max-width, 100%);
}
.xc-slider-thumbs__main { margin-bottom: 10px; }
.xc-slider-thumbs__item--main { width: 100%; display: block; }
.xc-slider-thumbs__item--main img {
    width: 100%;
    display: block;
    border-radius: 8px;
    aspect-ratio: 4/3;
    object-fit: cover;
}
.xc-slider-thumbs .flickity-prev-next-button {
    width: 40px !important;
    height: 40px !important;
    background: transparent !important;
    box-shadow: none !important;
    opacity: 1 !important;
}
.xc-slider-thumbs .flickity-prev-next-button svg {
    background: white !important;
    border-radius: 99% !important;
    box-shadow: 2px 6px 10px #0000001c !important;
    padding: 9px !important;
    fill: #333 !important;
    transition: all 0.3s !important;
    width: 100% !important;
    height: 100% !important;
}
.lux-preview-box .lux-slide {
    background: white !important;
    border-radius: 99% !important;
    box-shadow: 2px 6px 10px #0000001c !important;
    color: #333 !important;
    font-size: 20px !important;
    width: 40px !important;
    height: 40px !important;
    transition: all 0.3s !important;
}
.lux-preview-box .lux-slide:hover,
.xc-slider-thumbs .flickity-prev-next-button:hover svg {
    background: #dfb823 !important;
    color: #fff !important;
    fill: #fff !important;
}

.xc-slider-thumbs__thumb-list {
    display: flex;
    gap: var(--xc-slide-gap);
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.xc-slider-thumbs__thumb-list::-webkit-scrollbar {
    display: none;
}
.xc-slider-thumbs__item--thumb {
    flex: 0 0 calc(100% / var(--xc-thumb-count) - (var(--xc-slide-gap) * (var(--xc-thumb-count) - 1) / var(--xc-thumb-count)));
    cursor: pointer;
    display: block;
}
.xc-slider-thumbs__item--thumb img {
    opacity: 0.5;
    transition: opacity 0.3s, border 0.3s;
    border-radius: 5px;
    border: 2px solid transparent;
    width: 100%;
    display: block;
    aspect-ratio: 1/1;
    object-fit: cover;
}
.xc-slider-thumbs__item--thumb.is-active img,
.xc-slider-thumbs__item--thumb:hover img {
    opacity: 1;
    border-color: #d4af37;
}
@media (max-width: 768px) {
    .xc-slider-thumbs { max-width: 100% !important; }
    .xc-slider-thumbs__item--thumb { flex: 0 0 calc(20% - (var(--xc-slide-gap) * 0.8)); }
}

/* ==========================================================================
   XC Landing Page Table (xc-lpt)
   ========================================================================== */
.xc-lpt__title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 12px;
    text-align: center;
}
.xc-lpt__subtitle {
    font-size: 20px;
    font-weight: 700;
    margin-top: 20px;
    margin-bottom: 10px;
}
.xc-lpt__specs {
    padding-left: 20px;
    margin-bottom: 16px;
}
.xc-lpt__specs li {
    margin-bottom: 4px;
    color: #000;
}
.xc-lpt__highlight {
    color: #d00;
    font-weight: 700;
}
.xc-row-border,
.xc-row-border .col-inner {
    color: #000;
    font-size: 17px;
}

/* Bảng giá */
.xc-lpt__price-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 16px;
}
.xc-lpt__price-table th,
.xc-lpt__price-table td {
    text-align: center;
    padding: 8px 12px;
    border: 1px solid #ddd;
    color: #000;
}
.xc-lpt__price-table thead th {
    background: #f5f5f5;
    font-weight: 700;
    color: #000;
}
.xc-lpt__price-table-caption {
    text-align: center !important;
    color: #e00 !important;
    font-weight: 700 !important;
    font-size: 16px;
    background: #fff8f8 !important;
}
.xc-lpt__price-table tbody td:last-child {
    color: #e00;
    font-weight: 700;
    font-size: 18px;
}
.xc-lpt__price-table tbody td:nth-child(2) {
    text-align: left;
}

/* Ẩn comment count + date + comments trên trang category */
.category .from_the_blog_comments,
.archive .from_the_blog_comments,
.post-date-text,
.category .post_comments,
.archive .post_comments {
    display: none !important;
}

/* Ẩn archive page header */
.archive .archive-page-header,
.category .archive-page-header {
    display: none !important;
}

/* Breadcrumb archive – khoảng cách giống trang shop */
.archive .single-post-breadcrumb-wrapper,
.category .single-post-breadcrumb-wrapper {
    padding-top: 10px;
    padding-bottom: 0;
    margin-bottom: 15px !important;
}
.archive #main,
.archive #content,
.category #main,
.category #content {
    padding-top: 0 !important;
}

/* Post list archive – background/radius/shadow giống trang shop */
.archive #post-list,
.category #post-list {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    padding: 15px;
}

/* Bỏ border-radius/shadow của từng item post */
.archive .post-item .box,
.category .post-item .box,
.archive .post-item .col-inner,
.category .post-item .col-inner,
.archive .post-item .box-image,
.category .post-item .box-image,
.archive .post-item .box-text,
.category .post-item .box-text,
.archive .post-item .image-cover,
.category .post-item .image-cover,
.archive .post-item .image-cover img,
.category .post-item .image-cover img {
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* box-text nền xám giống loop sản phẩm */
.archive .post-item .box-text,
.category .post-item .box-text {
    background: #f5f5f5 !important;
}

/* Lượt xem bài viết */
.xc-post-views {
    font-size: 13px;
    color: #000;
    font-weight: 400;
    margin: 5px 0 0;
    display: flex;
    align-items: center;
    gap: 5px;
}
.xc-post-views svg {
    color: #000;
}
.xc-post-views--sidebar {
    display: block;
    font-size: 12px;
    margin-top: 3px;
}

/* Giảm padding box-text */
.archive .post-item .box-text-inner,
.category .post-item .box-text-inner {
    padding-top: 8px !important;
    padding-bottom: 5px !important;
}

/* ===== FIX MINI CART DROPDOWN: Border, Padding, Nút, Giá ===== */

/* 1. Bỏ border-left đen trong cart dropdown */
header .cart-item .nav-dropdown li,
#header .cart-item .nav-dropdown li,
header .cart-item .widget_shopping_cart_content li,
#header .cart-item .widget_shopping_cart_content li {
    border-left: none !important;
}

/* 2. Thêm padding left/right cho cart dropdown container */
header .cart-item .nav-dropdown,
#header .cart-item .nav-dropdown,
header .cart-item .widget_shopping_cart_content,
#header .cart-item .widget_shopping_cart_content {
    padding: 15px !important;
    box-sizing: border-box !important;
}

/* 3. Thu nhỏ nút QUAY TRỞ LẠI CỬA HÀNG khi giỏ hàng trống */
header .cart-item .widget_shopping_cart_content .return-to-shop a.button,
#header .cart-item .widget_shopping_cart_content .return-to-shop a.button,
header .cart-item .widget_shopping_cart_content a.button.wc-backward,
#header .cart-item .widget_shopping_cart_content a.button.wc-backward,
header .cart-item .nav-dropdown .return-to-shop .button,
#header .cart-item .nav-dropdown .return-to-shop .button {
    font-size: 12px !important;
    padding: 8px 18px !important;
    border-radius: 99px !important;
    background: linear-gradient(180deg, #f5ba24 0%, #d48b06 100%) !important;
    color: #ffffff !important;
    border: none !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    display: inline-block !important;
    width: auto !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
}

header .cart-item .widget_shopping_cart_content .return-to-shop,
#header .cart-item .widget_shopping_cart_content .return-to-shop,
header .cart-item .nav-dropdown .return-to-shop,
#header .cart-item .nav-dropdown .return-to-shop {
    text-align: center !important;
    margin-top: 10px !important;
}

/* 4. Fix giá bị nhảy hàng - giữ toàn bộ giá trên 1 dòng */
header .cart-item .widget_shopping_cart_content .quantity,
#header .cart-item .widget_shopping_cart_content .quantity,
header .cart-item .widget_shopping_cart_content .ux-mini-cart-qty,
#header .cart-item .widget_shopping_cart_content .ux-mini-cart-qty {
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow: visible !important;
}

header .cart-item .widget_shopping_cart_content .quantity .amount,
#header .cart-item .widget_shopping_cart_content .quantity .amount,
header .cart-item .widget_shopping_cart_content .quantity .amount bdi,
#header .cart-item .widget_shopping_cart_content .quantity .amount bdi,
header .cart-item .widget_shopping_cart_content .ux-mini-cart-qty .amount,
#header .cart-item .widget_shopping_cart_content .ux-mini-cart-qty .amount,
header .cart-item .widget_shopping_cart_content .woocommerce-Price-currencySymbol,
#header .cart-item .widget_shopping_cart_content .woocommerce-Price-currencySymbol {
    display: inline !important;
    white-space: nowrap !important;
}

/* ===== FIX MOBILE OFF-CANVAS CART: Buttons padding ===== */
/* Mobile sidebar cart - footer buttons cần padding */
.widget_shopping_cart_content .ux-mini-cart-footer,
.widget_shopping_cart .ux-mini-cart-footer {
    padding: 0 15px 15px 15px !important;
    box-sizing: border-box !important;
}

.widget_shopping_cart_content .ux-mini-cart-footer .buttons,
.widget_shopping_cart_content .ux-mini-cart-footer p.buttons,
.widget_shopping_cart .ux-mini-cart-footer .buttons,
.widget_shopping_cart .ux-mini-cart-footer p.buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
}

.widget_shopping_cart_content .ux-mini-cart-footer .button,
.widget_shopping_cart_content .ux-mini-cart-footer a.button,
.widget_shopping_cart .ux-mini-cart-footer .button,
.widget_shopping_cart .ux-mini-cart-footer a.button {
    margin: 0 !important;
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    padding: 10px 18px !important;
    height: auto !important;
    line-height: 1.4 !important;
    border-radius: 99px !important;
    color: #ffffff !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
    box-sizing: border-box !important;
}

.widget_shopping_cart_content .ux-mini-cart-footer a.button.wc-forward:not(.checkout),
.widget_shopping_cart .ux-mini-cart-footer a.button.wc-forward:not(.checkout) {
    background: linear-gradient(180deg, #f5ba24 0%, #d48b06 100%) !important;
    border: none !important;
    color: #ffffff !important;
}

.widget_shopping_cart_content .ux-mini-cart-footer a.button.checkout,
.widget_shopping_cart .ux-mini-cart-footer a.button.checkout {
    background: linear-gradient(180deg, #ff7700 0%, #e65c00 100%) !important;
    border: none !important;
    color: #ffffff !important;
}

/* Mobile sidebar tổng số phụ cũng cần padding */
.widget_shopping_cart_content .ux-mini-cart-footer .total,
.widget_shopping_cart_content .ux-mini-cart-footer p.total,
.widget_shopping_cart_content .ux-mini-cart-footer .woocommerce-mini-cart__total,
.widget_shopping_cart .ux-mini-cart-footer .total,
.widget_shopping_cart .ux-mini-cart-footer p.total {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 10px 0 !important;
    margin-bottom: 10px !important;
    border-top: 1px dashed #eee !important;
    border-bottom: 1px dashed #eee !important;
    font-weight: bold !important;
    font-size: 15px !important;
}

/* ===== Section: Dịch vụ 696 Design ===== */
.vp-home-services {
    min-height: 800px;
    padding-top: 30px;
    padding-bottom: 30px;
}

.vp-home-services .section-bg img {
    object-fit: cover;
    object-position: 50% 50%;
}

.vp-home-services .row {
    align-items: center;
}

.vp-home-services .col {
    max-width: 50%;
    flex-basis: 50%;
}

.vp-home-services .col-inner {
    margin-top: -100px;
}

.vp-home-services h2 {
    font-size: 1.7em;
    color: #edb054;
    font-family: 'Times New Roman', Times, serif;
    font-weight: 700;
}

.vp-home-services p {
    color: #edb054;
    font-size: 1em;
}

@media (max-width: 849px) {
    .vp-home-services .col {
        max-width: 100%;
        flex-basis: 100%;
    }
    .vp-home-services .col-inner {
        margin-top: 0;
    }
    .vp-home-services {
        min-height: 500px;
    }
}

@media (max-width: 549px) {
    .vp-home-services h2 {
        font-size: 1.4em;
    }
}

/* ===== Section: Quy trình - Sáng tạo - Tận tâm ===== */
.vp-home-process {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
    overflow: hidden;
    transform: translateZ(0px);
    -webkit-clip-path: polygon(0 calc(0% + 30px), 100% 0, 100% 100%, 0 100%);
    clip-path: polygon(0 calc(0% + 30px), 100% 0, 100% 100%, 0 100%);
    margin-top: -30px;
}

.vp-home-process .box-process .icon-box-img {
    width: 92px !important;
}

.vp-home-process .box-process h3 {
    color: #ffcb70;
    font-weight: 700;
}

.vp-home-process .box-process p {
    color: #ffcb70;
}

/* Animation cho 3 cột */
.vp-home-process .col {
    opacity: 0;
    animation: vpFadeIn 0.7s ease-in forwards;
}

.vp-home-process .col:nth-child(1) {
    transform: translate3d(-70px, 0, 0);
    animation-name: vpFadeInLeft;
    animation-delay: 0.1s;
}

.vp-home-process .col:nth-child(2) {
    transform: translate3d(0, 70px, 0);
    animation-name: vpFadeInUp;
    animation-delay: 0.3s;
}

.vp-home-process .col:nth-child(3) {
    transform: translate3d(70px, 0, 0);
    animation-name: vpFadeInRight;
    animation-delay: 0.5s;
}

@keyframes vpFadeInLeft {
    from { opacity: 0; transform: translate3d(-70px, 0, 0); }
    to   { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes vpFadeInUp {
    from { opacity: 0; transform: translate3d(0, 70px, 0); }
    to   { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes vpFadeInRight {
    from { opacity: 0; transform: translate3d(70px, 0, 0); }
    to   { opacity: 1; transform: translate3d(0, 0, 0); }
}

/* ===== Section: Thiết kế nội thất + Giới thiệu ===== */
.xc-home-about {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
    background-color: rgb(0, 0, 0);
    overflow: hidden;
    transform: translateZ(0px);
    -webkit-clip-path: polygon(0 calc(0% + 30px), 100% 0, 100% 100%, 0 100%);
    clip-path: polygon(0 calc(0% + 30px), 100% 0, 100% 100%, 0 100%);
    margin-top: -30px;
}

/* --- Cột trái: Thiết kế nội thất (border double) --- */
.xc-home-about .col-vp-thiet-ke > .col-inner {
    padding: 8px;
    border: 6px double #a5a8a7;
    background: #010219;
}

/* Section title */
.xc-home-about .section-title {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-right: 15px;
    padding-bottom: 7.5px;
    border-bottom: 2px solid #ffcb70;
    margin-bottom: -2px;
}

.xc-home-about .section-title-main {
    color: rgb(255, 203, 112);
    text-transform: uppercase;
    margin: 0 15px;
    text-align: center;
}

.xc-home-about .section-title i {
    opacity: 0.6;
    margin-right: 0.5em;
}

.xc-home-about .section-title b {
    display: block;
    flex: 1;
    height: 2px;
    opacity: 0.1;
    background-color: currentColor;
}

.xc-home-about .section-title-container {
    margin-bottom: 1.5em;
}

/* row-dashed: viền trắng */
.xc-home-about .row-dashed {
    overflow: hidden;
}

.xc-home-about .row-dashed .col {
    position: relative;
    padding: 0;
}

.xc-home-about .row-dashed .col-inner {
    padding: 15px;
}

.xc-home-about .row-dashed .col::before {
    position: absolute;
    content: " ";
    height: 100%;
    top: 0;
    left: -1px;
    border-left: 1px dashed #fff;
}

.xc-home-about .row-dashed .col::after {
    position: absolute;
    content: " ";
    width: 100%;
    height: 0;
    top: auto;
    left: 0;
    bottom: -1px;
    border-bottom: 1px dashed #fff;
}

/* --- Box dự án (box-noi-that) --- */
.xc-home-about .box-noi-that {
    position: relative;
    overflow: hidden;
}

.xc-home-about .box-noi-that .box-image {
    position: relative;
    overflow: hidden;
}

.xc-home-about .box-noi-that .box-image img {
    width: 100%;
    display: block;
    transition: transform 0.6s ease;
}

.xc-home-about .box-noi-that:hover .box-image img {
    transform: scale(1.1);
}

.xc-home-about .box-noi-that .box-text {
    color: #f1f1f1;
}

.xc-home-about .box-noi-that h4 {
    color: #ffcb70;
    font-size: 1em;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

.xc-home-about .box-noi-that .button.primary {
    background-color: transparent;
    border: 2px solid #ffcb70;
    color: #ffcb70;
    border-radius: 99px;
    font-size: 0.8em;
    text-transform: none;
}

.xc-home-about .box-noi-that .button.primary:hover {
    background-color: #ffcb70;
    border-color: #ffcb70;
    color: #fff;
}

/* --- Cột phải: Giới thiệu (border dashed) --- */
.xc-home-about .col-vp-gioi-thieu > .col-inner {
    padding: 8px;
    border: 1px dashed #1e73be;
    background: #010219;
}

.xc-home-about .col-vp-gioi-thieu h3 {
    color: #ffcb70;
}

.xc-home-about .col-vp-gioi-thieu p {
    color: #ffcb70;
}

.xc-home-about .col-vp-gioi-thieu a {
    color: #ffcb70;
}

.xc-home-about .col-vp-gioi-thieu a:hover {
    color: #025caa;
}

/* GIF vuông */
.xc-home-about .col-vp-gioi-thieu .img-inner {
    position: relative;
    overflow: hidden;
    padding-top: 100%;
    margin-top: -13px;
}

.xc-home-about .col-vp-gioi-thieu .img-inner img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}

/* ===== Section: Vì sao chọn chúng tôi ===== */
.vp-home-why {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
    min-height: 400px;
}

.vp-home-why .section-bg img {
    object-fit: cover;
    object-position: 50% 50%;
}

.vp-home-why > .section-content > .row {
    align-items: center;
}

/* Logo */
.vp-home-why .img .img-inner.image-zoom img {
    transition: transform 5s !important;
}

.vp-home-why .img:hover .img-inner.image-zoom img {
    transform: scale(1.3);
}

/* Section title */
.vp-home-why .section-title {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-right: 15px;
    padding-bottom: 7.5px;
    border-bottom: 2px solid #ffcb70;
    margin-bottom: -2px;
}

.vp-home-why .section-title-main {
    color: rgb(255, 203, 112);
    text-transform: none;
    margin: 0 15px;
    text-align: center;
}

.vp-home-why .section-title i {
    opacity: 0.6;
    margin-right: 0.5em;
}

.vp-home-why .section-title b {
    display: block;
    flex: 1;
    height: 2px;
    opacity: 0.1;
    background-color: currentColor;
}

.vp-home-why .section-title-container {
    margin-bottom: 1.5em;
}

/* Intro text - font-size nhỏ hơn */
.vp-home-why .text p {
    font-size: 85%;
}

/* --- Box Why: badge gradient pill + mô tả --- */
.vp-home-why .box-why h3 {
    background-image: linear-gradient(90deg, #dbc199, #444444);
    border-bottom-left-radius: 60px;
    border-bottom-right-radius: 35px;
    border-top-left-radius: 60px;
    border-top-right-radius: 35px;
    height: 82px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #f1f1f1;
    font-size: 1em;
    font-weight: 700;
    padding: 10px 20px;
    margin-bottom: 0.5em;
}

.vp-home-why .box-why p {
    color: #ffffff;
    font-size: 80%;
}

@media (max-width: 849px) {
    .vp-home-why .box-why h3 {
        height: auto;
        padding: 14px 20px;
    }
}

/* ===== Section: Đối tác ===== */
.vp-home-partner .section-title {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-right: 15px;
    padding-bottom: 7.5px;
    border-bottom: 2px solid #ffcb70;
    margin-bottom: -2px;
}

.vp-home-partner .section-title-main {
    color: #ffcb70;
    text-transform: none;
    margin: 0 15px;
    text-align: center;
}

.vp-home-partner .section-title b {
    display: block;
    flex: 1;
    height: 2px;
    opacity: 0.1;
    background-color: currentColor;
}

.vp-home-partner .section-title-container {
    margin-bottom: 1.5em;
}

/* ===== Section: VP Footer ===== */
.vp-footer {
    background-color: #010219 !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
    color: #d1b08a;
}

.vp-footer .footer-widget-title {
    font-size: 1em;
    font-weight: 600;
    text-transform: none;
    color: #ffffff;
    line-height: 1.05;
    letter-spacing: 0.05em;
    margin-bottom: 0;
    position: relative;
}

.vp-footer .footer-widget-title::after {
    content: "";
    display: block;
    height: 3px;
    background-color: #ffcb70;
    margin: 0.66em 0 1em;
    width: 30px;
}

.vp-footer p {
    color: #d1b08a;
    font-size: 14px;
    line-height: 1.6;
}

.vp-footer a {
    color: #ffcb70 !important;
    text-decoration: none;
    transition: color 0.3s;
}

.vp-footer a:hover {
    color: #025caa !important;
}

.vp-footer img.emoji {
    display: inline !important;
    border: none !important;
    box-shadow: none !important;
    height: 1em !important;
    width: 1em !important;
    margin: 0 0.07em !important;
    vertical-align: -0.1em !important;
    background: none !important;
    padding: 0 !important;
}

/* ===== Header Top Bar ===== */
#top-bar {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

#top-bar .flex-row {
    justify-content: center !important;
}

#top-bar .flex-col {
    margin: 0 auto !important;
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
    flex: 1 1 auto !important;
}

#top-bar .nav {
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    margin: 0 auto !important;
}

#top-bar .nav > li {
    float: none !important;
    display: inline-block !important;
    text-align: center !important;
}

#top-bar .html_topbar_left {
    text-align: center !important;
    margin: 0 auto !important;
}

/* Mobile: An top bar */
@media (max-width: 849px) {
    #top-bar {
        display: none !important;
    }
}

/* ===== Sidebar (Cột bên bài viết) - Chữ trắng ===== */
.post-sidebar,
#secondary,
.post-sidebar .widget,
#secondary .widget {
    color: #ffffff !important;
}

.post-sidebar .widget-title,
.post-sidebar .widget-title span,
#secondary .widget-title,
#secondary .widget-title span {
    color: #ffffff !important;
}

.post-sidebar a,
#secondary a,
.post-sidebar .recent-blog-posts a,
#secondary .recent-blog-posts a {
    color: #ffffff !important;
    transition: color 0.3s;
}

.post-sidebar a:hover,
#secondary a:hover,
.post-sidebar .recent-blog-posts a:hover,
#secondary .recent-blog-posts a:hover {
    color: #ffcb70 !important;
}

.post-sidebar .xc-post-views,
#secondary .xc-post-views,
.post-sidebar .xc-post-views--sidebar,
#secondary .xc-post-views--sidebar {
    color: rgba(255, 255, 255, 0.7) !important;
}

/* ===== Bỏ border-left giữa các cột ===== */
.row-divided > .col + .col:not(.large-12),
.row-divided > .col + .col {
    border-left: none !important;
}