/* ========================================================
   SOGA UI KIT - HỆ THỐNG CSS DÙNG CHUNG (TÁI SỬ DỤNG)
======================================================== */

/* 1. Bao bọc tổng thể & Reset */
.soga-ui-wrapper {
    font-family: 'philosopher', sans-serif !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.soga-ui-wrapper * {
    box-sizing: border-box !important;
}

/* 2. Màu nền khu vực (Sections) */
.soga-ui-bg-dark {
    background: #2a1e10 !important;
    padding: 56px 48px !important;
    overflow: hidden !important;
}
.soga-ui-bg-transparent {
    background: transparent !important;
    padding: 40px 20px !important;
}

/* 3. Khung lưới (Grid 4 cột) */
.soga-ui-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 0 !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    position: relative !important;
    z-index: 1 !important;
}

/* 4. Khung nội dung (Cards) */
.soga-ui-card {
    display: flex !important;
    padding: 24px 28px !important;
    border-right: 1px solid rgba(193,140,83,0.22) !important;
    gap: 20px !important;
}
.soga-ui-card:last-child {
    border-right: none !important;
}

/* Biến thể thẻ: Dọc (Dùng cho Features) */
.soga-ui-card-vertical {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}

/* Biến thể thẻ: Ngang (Dùng cho Contact) */
.soga-ui-card-horizontal {
    flex-direction: row !important;
    align-items: center !important;
    text-align: left !important;
}

/* 5. Vòng tròn Icon */
.soga-ui-icon {
    width: 70px !important;
    height: 70px !important;
    border-radius: 50% !important;
    border: 2px solid #c18c53 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    background: transparent !important;
}
.soga-ui-icon i {
    font-size: 32px !important;
    color: #c18c53 !important;
    line-height: 1 !important;
}

/* Tinh chỉnh size icon cho thẻ dọc (để giống thiết kế gốc) */
.soga-ui-card-vertical .soga-ui-icon {
    width: 80px !important;
    height: 80px !important;
    margin-bottom: 5px !important;
}
.soga-ui-card-vertical .soga-ui-icon i {
    font-size: 34px !important;
}

/* 6. Typography (Chữ) */
.soga-ui-title {
    font-weight: 700 !important;
    font-size: 13.5px !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    color: #d4a96a !important;
    margin-bottom: 8px !important;
    line-height: 1.4 !important;
}
.soga-ui-desc {
    font-size: 13.5px !important;
    font-weight: 300 !important;
    color: #b89870 !important;
    line-height: 1.75 !important;
    margin: 0 !important;
}
.soga-ui-link {
    font-size: 14px !important;
    color: #e2cdad !important;
    text-decoration: none !important;
    line-height: 1.6 !important;
    display: inline-block !important;
}

/* 7. Responsive (Tự động thích ứng cho cả 2 khu vực) */
@media (max-width: 992px) {
    .soga-ui-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .soga-ui-card { border-bottom: 1px solid rgba(193, 140, 83, 0.22) !important; }
    .soga-ui-card:nth-child(odd) { border-right: 1px solid rgba(193, 140, 83, 0.22) !important; }
    .soga-ui-card:nth-child(even) { border-right: none !important; }
    .soga-ui-card:nth-child(3), .soga-ui-card:nth-child(4) { border-bottom: none !important; }
}

@media (max-width: 540px) {
    .soga-ui-grid { grid-template-columns: 1fr !important; }
    .soga-ui-card { border-right: none !important; border-bottom: 1px solid rgba(193, 140, 83, 0.22) !important; }
    .soga-ui-card:last-child { border-bottom: none !important; }
}

/* Class tạo viền xung quanh phần tử */
.vien-xung-quanh {
    border: 2px solid #c18c53 !important; /* Độ dày 1px, nét liền (solid), màu xám (#cccccc) */
    
    border-radius: 8px !important; /* Bo cong 4 góc (xóa dòng này nếu bạn muốn góc vuông) */
}

@media (min-width: 550px) {
  .ep-nam-ngang .box {
    display: flex !important;
    flex-direction: row !important;
    align-items: center; /* Căn giữa chiều dọc, bạn có thể đổi thành flex-start nếu muốn chữ dính mép trên */
  }
  .ep-nam-ngang .box-image {
    width: 40% !important; /* Độ rộng ảnh */
    margin-right: 20px; /* Khoảng cách giữa ảnh và chữ */
  }
  .ep-nam-ngang .box-text {
    width: 60% !important; /* Độ rộng chữ */
  }
}

/* ========================================================
   SOGA tokens – dùng chung shop + chi tiết SP
======================================================== */
.soga-shop-page,
.soga-product-page {
    --soga-shop-gold: #c18c53;
    --soga-shop-gold-light: #e6bd65;
    --soga-shop-text: #f5efe6;
    --soga-shop-muted: #9a8470;
    --soga-shop-border: #c18c53;
    --soga-shop-divider: rgba(168, 135, 90, 0.549);
    /* Chi tiết SP: cỡ chữ breadcrumb (class soga-breadcrumb-fs-* trên col) */
    --soga-breadcrumb-font-size: 18px;
}

/* ========================================================
   SOGA SHOP – Trang sản phẩm (WooCommerce archive)
======================================================== */

.soga-shop-page {
    /* Lớp nền đen mỏng (transparent) */
    --soga-sidebar-overlay: rgba(34, 34, 34, 1);
    --soga-cat-text: #c5b398;
    --soga-divider-inset: 16px;
    font-family: 'philosopher', sans-serif !important;
}

/* Chỉ bỏ nền thẻ SP / nút – KHÔNG chạm #main #content .widget (CSS global trong WP) */
.soga-shop-page .product-small .box,
.soga-shop-page .product-small .box-text,
.soga-shop-page .woocommerce-ordering select,
.soga-shop-page .woocommerce-pagination a,
.soga-shop-page .ctis-load-more button {
    background: transparent !important;
    background-color: transparent !important;
}

.soga-shop-page .shop-page-title.category-page-title {
    background: #1d150d !important;
    border: none !important;
}

/* Trang shop: ẩn tiêu đề lớn "SẢN PHẨM" */
.soga-shop-page.woocommerce-shop .shop-page-title h1,
.soga-shop-page.woocommerce-shop .shop-page-title .shop-page-title.is-xlarge {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

.soga-shop-page:not(.woocommerce-shop) .shop-page-title h1,
.soga-shop-page:not(.woocommerce-shop) .shop-page-title .shop-page-title.is-xlarge {
    font-size: clamp(28px, 4vw, 42px) !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    color: var(--soga-shop-text) !important;
    margin: 0 !important;
}

/* Toolbar shop – chỉ màu/chữ; layout hàng: tự chỉnh (Flatsome .page-title-inner) */
.soga-shop-page .is-large.breadcrumbs,
.soga-shop-page .breadcrumbs {
    color: var(--soga-shop-gold-light) !important;
    font-size: 18px !important;
}

.soga-shop-page .breadcrumbs a,
.soga-shop-page .breadcrumbs strong {
    color: var(--soga-shop-gold-light) !important;
    font-weight: 400 !important;
}

.soga-shop-page .breadcrumbs .divider {
    color: var(--soga-shop-gold) !important;
    opacity: 0.85;
}

.soga-shop-page .shop-page-title .page-title-inner {
    padding-bottom: 20px;
}

/* Ordering + nút lưới – cùng một hàng */
.soga-shop-page .shop-page-title .flex-col.medium-text-center {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 10px;
}

.soga-shop-page .shop-page-title .woocommerce-ordering {
    margin: 0;
    float: none;
}

.soga-shop-page .soga-shop-view-controls {
    display: inline-flex;
    flex-shrink: 0;
    gap: 8px;
}

.soga-shop-page .woocommerce-ordering select,
.soga-shop-page .orderby {
    border: 1px solid var(--soga-shop-border) !important;
    color: var(--soga-shop-gold-light) !important;
    background: transparent !important;
    border-radius: 6px !important;
    padding: 8px 36px 8px 14px !important;
    font-size: 13px !important;
    min-height: 40px;
}

.soga-shop-page .soga-view-btn {
    width: 40px;
    height: 40px;
    border: 1px solid var(--soga-shop-border);
    background: transparent;
    color: rgba(193, 140, 83, 0.45);
    border-radius: 6px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: border-color 0.2s, color 0.2s;
}

.soga-shop-page .soga-cols-icon {
    display: inline-flex;
    gap: 4px;
    align-items: flex-end;
    justify-content: center;
    height: 14px;
}

.soga-shop-page .soga-cols-icon i {
    display: block;
    width: 3px;
    height: 14px;
    background: currentColor;
    border-radius: 1px;
}

.soga-shop-page .soga-view-btn:hover {
    color: var(--soga-shop-gold);
    border-color: var(--soga-shop-gold-light);
}

.soga-shop-page .soga-view-btn.active {
    color: var(--soga-shop-gold-light);
    border-color: var(--soga-shop-gold);
    background: transparent;
}

/* Sidebar – kế thừa nền widget global, panel đậm hơn 60% */
.soga-shop-page #shop-sidebar {
    padding-right: 20px;
}

.soga-shop-page #shop-sidebar .col-inner,
.soga-shop-page .category-page-row > .col.large-3,
.soga-shop-page .category-page-row > .col.large-9,
.soga-shop-page .category-page-row > .col.large-9 > .col-inner {
    background: transparent !important;
    background-color: transparent !important;
}

.soga-shop-page #shop-sidebar .widget {
    border: 1px solid var(--soga-shop-border) !important;
    border-radius: 8px !important;
    padding: 2px !important;
    margin-bottom: 22px !important;
    box-shadow: inset 0 0 0 1px rgba(168, 135, 90, 0.25) !important;
    overflow: hidden;
}

.soga-shop-page #shop-sidebar span.widget-title,
.soga-shop-page #shop-sidebar .widget-title,
.soga-shop-page #shop-sidebar .widget-title.shop-sidebar {
    display: block !important;
    width: 100% !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    text-align: center !important;
    color: #dcaf32 !important;
    background-color: var(--soga-sidebar-overlay) !important;
    background-image: none !important;
    border: none !important;
    padding: 12px 12px 10px !important;
    margin: 0 !important;
}

/* is-divider small: dưới tiêu đề widget – cách đều 2 bên */
.soga-shop-page #shop-sidebar .widget > .is-divider,
.soga-shop-page #shop-sidebar .widget > .is-divider.small {
    display: block !important;
    visibility: visible !important;
    opacity: 0.65 !important;
    clear: both !important;
    width: calc(100% - (var(--soga-divider-inset) * 2)) !important;
    max-width: calc(100% - (var(--soga-divider-inset) * 2)) !important;
    height: 1px !important;
    min-height: 1px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: var(--soga-shop-gold) !important;
    background-color: var(--soga-shop-gold) !important;
    background-image: none !important;
}

/* Ẩn divider lỗi nếu còn sót trong li (từ JS cũ) */
.soga-shop-page #shop-sidebar li .is-divider,
.soga-shop-page #shop-sidebar li .soga-li-divider {
    display: none !important;
}

.soga-shop-page #shop-sidebar .widget > ul,
.soga-shop-page #shop-sidebar .widget .product_list_widget,
.soga-shop-page #shop-sidebar .widget .woocommerce-widget-layered-nav-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 4px 20px 12px !important;
    background-color: var(--soga-sidebar-overlay) !important;
    background-image: none !important;
}

/* Bỏ nền trên chữ / link – chỉ giữ nền khối ul & tiêu đề */
.soga-shop-page #shop-sidebar .widget li,
.soga-shop-page #shop-sidebar .widget li a,
.soga-shop-page #shop-sidebar .widget a:not(.soga-btn-contact),
.soga-shop-page #shop-sidebar .widget label,
.soga-shop-page #shop-sidebar .soga-widget-product-title,
.soga-shop-page #shop-sidebar .soga-widget-product-sku,
.soga-shop-page #shop-sidebar .soga-widget-product-price,
.soga-shop-page #shop-sidebar .soga-widget-product-price * {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

.soga-shop-page #shop-sidebar .widget > ul > li,
.soga-shop-page #shop-sidebar .woocommerce-widget-layered-nav-list > li,
.soga-shop-page #shop-sidebar .product_list_widget > li {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    position: relative;
}

/* Lọc giá / SP mới: không divider giữa từng dòng (chỉ 1 divider dưới tiêu đề widget) */
.soga-shop-page #shop-sidebar .woocommerce-widget-layered-nav-list > li::after,
.soga-shop-page #shop-sidebar .product_list_widget > li::after,
.soga-shop-page #shop-sidebar .wpc_smart_price_filter li::after {
    display: none !important;
    content: none !important;
}

/* ========== Danh mục sản phẩm (giống mockup) ========== */
.soga-shop-page #shop-sidebar .widget_product_categories > ul.product-categories {
    padding: 0 !important;
    margin: 0 !important;
}

.soga-shop-page #shop-sidebar .widget_product_categories > ul.product-categories > li {
    margin: 0 !important;
    padding: 0 !important;
}

/* Divider giữa mục cấp 1 – cách đều 2 bên */
.soga-shop-page #shop-sidebar .widget_product_categories > ul.product-categories > li:not(:last-child)::after {
    content: "" !important;
    display: block !important;
    width: calc(100% - (var(--soga-divider-inset) * 2)) !important;
    height: 1px !important;
    margin: 0 auto !important;
    background: var(--soga-shop-divider) !important;
}

.soga-shop-page #shop-sidebar .widget_product_categories ul.children li::after {
    display: none !important;
    content: none !important;
}

.soga-shop-page .widget_product_categories li a::before {
    display: none !important;
    content: none !important;
}

/* Danh mục có con: ẩn button.toggle Flatsome (chỉ giữ icon trong link) */
.soga-shop-page .widget_product_categories li.cat-parent > button.toggle {
    display: none !important;
}

.soga-shop-page .widget_product_categories .soga-cat-chevron,
.soga-shop-page .widget_product_categories .soga-cat-toggle,
.soga-shop-page .widget_product_categories .soga-cat-row {
    display: none !important;
}

.soga-shop-page .widget_product_categories li.cat-parent > a::before,
.soga-shop-page .widget_product_categories li.cat-parent > a::after,
.soga-shop-page .widget_product_categories .soga-cat-parent-link::before,
.soga-shop-page .widget_product_categories .soga-cat-parent-link::after {
    display: none !important;
    content: none !important;
}

.soga-shop-page .widget_product_categories > ul.product-categories > li > a,
.soga-shop-page .widget_product_categories li.cat-parent > a,
.soga-shop-page .widget_product_categories .soga-cat-parent-link {
    color: var(--soga-cat-text) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    padding: 12px 16px !important;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    text-decoration: none !important;
    transition: color 0.2s;
    background: transparent !important;
}

.soga-shop-page .widget_product_categories > ul.product-categories > li > a:hover,
.soga-shop-page .widget_product_categories li.cat-parent > a:hover,
.soga-shop-page .widget_product_categories .current-cat > a,
.soga-shop-page .widget_product_categories .current-cat-parent > a {
    color: #fff !important;
}

.soga-shop-page .widget_product_categories li.cat-parent > a i.icon-angle-down {
    display: inline-block !important;
    flex-shrink: 0;
    font-size: 15px;
    line-height: 1;
    opacity: 0.9;
    margin: 0 0 0 8px !important;
    transition: transform 0.2s ease;
    cursor: pointer;
}

.soga-shop-page .widget_product_categories li.soga-cat-open > a i.icon-angle-down,
.soga-shop-page .widget_product_categories li.current-cat-parent > a i.icon-angle-down {
    transform: rotate(180deg);
}

.soga-shop-page .widget_product_categories .count {
    display: none !important;
}

/* Submenu – cùng nền với danh mục cha (trong suốt, kế thừa overlay widget) */
.soga-shop-page #shop-sidebar .widget_product_categories ul.children {
    display: none;
    list-style: none !important;
    margin: 0 !important;
    padding: 6px 16px 10px 28px !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

.soga-shop-page #shop-sidebar .widget_product_categories li.soga-cat-open > ul.children,
.soga-shop-page #shop-sidebar .widget_product_categories li.current-cat-parent > ul.children,
.soga-shop-page #shop-sidebar .widget_product_categories li.current-cat-ancestor > ul.children {
    display: block !important;
}

.soga-shop-page #shop-sidebar .widget_product_categories ul.children li a {
    padding: 8px 0 !important;
    font-size: 13px !important;
    color: rgba(255, 255, 255, 0.88) !important;
    display: block !important;
}

.soga-shop-page #shop-sidebar .widget_product_categories ul.children li a:hover,
.soga-shop-page #shop-sidebar .widget_product_categories ul.children li.current-cat > a {
    color: var(--soga-shop-gold-light) !important;
}

/* Lọc giá – ô vuông, không divider giữa các dòng */
.soga-shop-page #shop-sidebar .wpc_smart_price_filter .woocommerce-widget-layered-nav-list,
.soga-shop-page #shop-sidebar .widget_wpc_smart_price_filter .woocommerce-widget-layered-nav-list {
    padding: 10px 16px 14px !important;
}

.soga-shop-page .wpc_smart_price_filter .woocommerce-widget-layered-nav-list li a,
.soga-shop-page .widget_wpc_smart_price_filter .woocommerce-widget-layered-nav-list li a {
    color: var(--soga-shop-text) !important;
    font-size: 13px !important;
    padding: 9px 0 9px 26px !important;
    position: relative;
    display: block;
    text-decoration: none !important;
}

.soga-shop-page .wpc_smart_price_filter .woocommerce-widget-layered-nav-list li a::before,
.soga-shop-page .widget_wpc_smart_price_filter .woocommerce-widget-layered-nav-list li a::before {
    content: "" !important;
    font-family: none !important;
    width: 14px !important;
    height: 14px !important;
    border: 1px solid var(--soga-shop-gold) !important;
    border-radius: 2px !important;
    background: transparent !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    opacity: 1 !important;
}

.soga-shop-page .wpc_smart_price_filter .woocommerce-widget-layered-nav-list li.chosen a::before,
.soga-shop-page .wpc_smart_price_filter .woocommerce-widget-layered-nav-list li.active a::before,
.soga-shop-page .widget_wpc_smart_price_filter .woocommerce-widget-layered-nav-list li.chosen a::before {
    background: var(--soga-shop-gold) !important;
    box-shadow: inset 0 0 0 2px #12100e;
}

/* Sản phẩm mới – layout chuẩn (ảnh + chữ căn giữa dọc) */
.soga-shop-page #shop-sidebar .widget_products .product_list_widget,
.soga-shop-page #shop-sidebar .widget_recently_viewed_products .product_list_widget {
    padding: 10px 16px 14px !important;
}

.soga-shop-page .soga-widget-product-item {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px 0 !important;
    margin: 0 !important;
}

.soga-shop-page .soga-widget-product-thumb {
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    display: block;
    line-height: 0;
    overflow: hidden;
    border-radius: 4px;
    border: 1px solid var(--soga-shop-divider);
}

.soga-shop-page .soga-widget-product-thumb img {
    width: 52px !important;
    height: 52px !important;
    object-fit: cover;
    display: block;
}

.soga-shop-page .soga-widget-product-body {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
}

.soga-shop-page .soga-widget-product-title {
    display: block;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
    margin: 0;
    word-wrap: break-word;
}

.soga-shop-page .soga-widget-product-title:hover {
    color: var(--soga-shop-gold-light) !important;
}

.soga-shop-page .soga-widget-product-sku {
    display: block;
    font-size: 11px;
    line-height: 1.3;
    color: var(--soga-shop-muted);
    margin: 0;
    letter-spacing: 0.02em;
}

.soga-shop-page .soga-widget-product-price {
    margin: 0;
    line-height: 1.35;
    font-size: 13px;
}

.soga-shop-page .soga-widget-product-price .amount {
    color: var(--soga-shop-gold) !important;
    font-weight: 600 !important;
}

.soga-shop-page .soga-widget-product-price del {
    color: var(--soga-shop-muted) !important;
    font-size: 12px;
    font-weight: 400;
    margin-right: 6px;
    opacity: 0.85;
}

.soga-shop-page .soga-widget-product-price del .amount {
    color: var(--soga-shop-muted) !important;
    font-weight: 400 !important;
}

.soga-shop-page .soga-widget-product-price ins {
    text-decoration: none !important;
    background: none !important;
}

.soga-shop-page .soga-widget-product-price ins .amount {
    color: var(--soga-shop-gold) !important;
    font-weight: 600 !important;
}

/* Hộp tư vấn */
.soga-shop-page .soga-sidebar-consult {
    border: 1px solid var(--soga-shop-border) !important;
    border-radius: 6px !important;
    padding: 2px !important;
    margin-bottom: 22px !important;
    overflow: hidden;
}

.soga-shop-page .soga-sidebar-consult .soga-consult-title {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #fff;
    background-color: var(--soga-sidebar-overlay);
    padding: 12px 12px 10px;
    margin: 0;
}

.soga-shop-page .soga-sidebar-consult .soga-consult-box {
    background-color: var(--soga-sidebar-overlay) !important;
    padding: 16px 18px 18px !important;
}

.soga-shop-page .soga-consult-box {
    text-align: center;
    padding: 8px 4px 4px;
}

.soga-shop-page .soga-consult-icon {
    font-size: 32px;
    color: var(--soga-shop-gold);
    display: block;
    margin-bottom: 10px;
}

.soga-shop-page .soga-consult-label {
    font-weight: 600;
    color: var(--soga-shop-text);
    font-size: 15px;
    margin-bottom: 6px;
}

.soga-shop-page .soga-consult-sublabel {
    font-size: 13px;
    color: var(--soga-shop-muted);
    line-height: 1.6;
    margin-bottom: 16px;
}

.soga-shop-page .soga-btn-contact {
    display: block;
    width: 100%;
    padding: 12px 16px;
    border-radius: 6px;
    background: linear-gradient(135deg, #8b5e2a 0%, #c18c53 55%, #d4a96a 100%);
    color: #1a1008 !important;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none !important;
    transition: filter 0.2s, transform 0.15s;
}

.soga-shop-page .soga-btn-contact:hover {
    filter: brightness(1.08);
    transform: translateY(-1px);
    color: #1a1008 !important;
}

/* Lưới sản phẩm 3 / 4 cột */
.soga-shop-page.soga-shop-grid-3 .products.row,
.soga-shop-page.soga-shop-grid-4 .products.row {
    display: flex !important;
    flex-wrap: wrap !important;
    margin-left: -10px !important;
    margin-right: -10px !important;
}

.soga-shop-page.soga-shop-grid-3 .products.row .product-small.col {
    flex: 0 0 33.333% !important;
    max-width: 33.333% !important;
    padding: 0 10px 20px !important;
    border-bottom: none !important;
    margin-bottom: 0 !important;
}

.soga-shop-page.soga-shop-grid-4 .products.row .product-small.col {
    flex: 0 0 25% !important;
    max-width: 25% !important;
    padding: 0 10px 20px !important;
    border-bottom: none !important;
    margin-bottom: 0 !important;
}

@media (max-width: 849px) {
    .soga-shop-page.soga-shop-grid-3 .products.row .product-small.col,
    .soga-shop-page.soga-shop-grid-4 .products.row .product-small.col {
        flex: 0 0 33.333% !important;
        max-width: 33.333% !important;
    }
}

@media (max-width: 549px) {
    .soga-shop-page.soga-shop-grid-3 .products.row .product-small.col,
    .soga-shop-page.soga-shop-grid-4 .products.row .product-small.col {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }
}

.soga-shop-page .product-small .box {
    border: 1px solid var(--soga-shop-divider) !important;
    border-radius: 6px !important;
    overflow: hidden;
    box-shadow: none !important;
    transition: border-color 0.2s;
}

.soga-shop-page .product-small .box:hover {
    border-color: var(--soga-shop-border) !important;
}

.soga-shop-page .product-small .box-image {
    position: relative;
    background: transparent !important;
    border-radius: 6px 6px 0 0;
    border-bottom: 1px solid var(--soga-shop-divider);
}

.soga-shop-page .product-small .box-image img {
    border-radius: 0;
}

.soga-shop-page .product-small .box-text {
    padding: 14px 14px 16px !important;
    text-align: left !important;
    border-top: none;
}

.soga-shop-page .product-small .product-title a {
    color: var(--soga-shop-text) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    text-decoration: none !important;
}

.soga-shop-page .product-small .product-title a:hover {
    color: var(--soga-shop-gold-light) !important;
}

.soga-shop-page .soga-product-sku {
    margin: 4px 0 8px !important;
    font-size: 12px !important;
    color: var(--soga-shop-muted) !important;
    letter-spacing: 0.02em;
}

.soga-shop-page .product-small .price {
    color: var(--soga-shop-text) !important;
    font-weight: 700 !important;
    font-size: 15px !important;
}

.soga-shop-page .product-small .price del {
    color: var(--soga-shop-muted) !important;
    opacity: 0.75;
    font-size: 13px;
    margin-right: 6px;
}

.soga-shop-page .product-small .price ins {
    text-decoration: none !important;
    color: var(--soga-shop-gold) !important;
}

.soga-shop-page .soga-sale-badge,
.soga-shop-page .product-small .badge-container,
.soga-shop-page .product-small .onsale,
.soga-shop-page .product-small .badge-inner.on-sale {
    display: none !important;
}

/* Divider vùng sản phẩm / toolbar */
.soga-shop-page .shop-page-title.category-page-title {
    border-bottom: 1px solid var(--soga-shop-divider) !important;
}

.soga-shop-page .woocommerce-before-shop-loop,
.soga-shop-page .category-filter-row {
    border-bottom: 1px solid var(--soga-shop-divider);
    padding-bottom: 12px;
    margin-bottom: 16px;
}

/* Phân trang / Load more */
.soga-shop-page .woocommerce-pagination,
.soga-shop-page .ctis-load-more-container {
    text-align: center;
    margin-top: 28px !important;
    padding-bottom: 40px;
}

.soga-shop-page .woocommerce-pagination ul {
    border: none !important;
}

.soga-shop-page .woocommerce-pagination a,
.soga-shop-page .woocommerce-pagination span,
.soga-shop-page .ctis-load-more button {
    border: 1px solid var(--soga-shop-gold) !important;
    color: var(--soga-shop-gold-light) !important;
    border-radius: 6px !important;
    padding: 14px 48px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    min-width: 280px;
    transition: border-color 0.2s, color 0.2s;
}

.soga-shop-page .woocommerce-pagination a:hover,
.soga-shop-page .ctis-load-more button:hover {
    border-color: var(--soga-shop-gold-light) !important;
    color: var(--soga-shop-text) !important;
}

/* Ghi đè icon tròn từ CSS custom cũ – chỉ áp dụng lọc giá */
.soga-shop-page #shop-sidebar .wpc_smart_price_filter ul.woocommerce-widget-layered-nav-list li a::before {
    border-radius: 2px !important;
    font-family: none !important;
    content: "" !important;
}

.soga-shop-page .category-filter-row {
    margin-bottom: 12px;
}

.soga-shop-page .category-filter-row .filter-button {
    color: var(--soga-shop-gold-light) !important;
    border-color: var(--soga-shop-border) !important;
}

/* ========================================================
   SOGA – Trang chi tiết sản phẩm (UX Builder)
======================================================== */

.soga-product-page,
.soga-product-layout {
    font-family: 'philosopher', sans-serif !important;
    color: var(--soga-shop-text);
}

/* Kế thừa nền site (#main / bg-body) – không đè màu section UX Builder */
.soga-product-page .soga-product-hero,
.soga-product-page .soga-product-tabs-wrap,
.soga-product-page .soga-product-related-wrap,
.soga-product-layout.soga-product-hero,
.soga-product-layout.soga-product-tabs-wrap,
.soga-product-layout.soga-product-related-wrap,
.soga-product-page .soga-product-hero .section-bg,
.soga-product-page .soga-product-tabs-wrap .section-bg,
.soga-product-page .soga-product-related-wrap .section-bg {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

.soga-product-page .soga-product-hero,
.soga-product-layout.soga-product-hero {
    border: 1px solid var(--soga-shop-border) !important;
    border-radius: 8px !important;
    max-width: 1280px;
    margin-left: auto !important;
    margin-right: auto !important;
}

.soga-product-page .soga-product-tabs-wrap,
.soga-product-page .soga-product-related-wrap,
.soga-product-layout.soga-product-tabs-wrap,
.soga-product-layout.soga-product-related-wrap {
    max-width: 1280px;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Breadcrumb – cỡ chữ: --soga-breadcrumb-font-size hoặc class soga-breadcrumb-fs-11 … 16 */
.soga-product-page .product-breadcrumb-container,
.soga-product-page .product-breadcrumb-container .woocommerce-breadcrumb,
.soga-product-page .woocommerce-breadcrumb {
    color: var(--soga-shop-muted) !important;
    font-size: var(--soga-breadcrumb-font-size) !important;
    line-height: 1.5 !important;
    margin-bottom: 24px !important;
}

.soga-product-page .woocommerce-breadcrumb a:hover {
    color: var(--soga-shop-gold-light) !important;
}

/* Gallery – trong suốt */
.soga-product-page .woocommerce-product-gallery,
.soga-product-page .product-gallery {
    background: transparent !important;
}

.soga-product-page .product-thumbnails img,
.soga-product-page .flex-control-thumbs li img {
    border: 1px solid var(--soga-shop-divider) !important;
    border-radius: 4px;
}

/* Tiêu đề – vàng mockup */
.soga-product-page .product-title-container h1.product-title {
    color: var(--soga-shop-gold-light) !important;
    font-size: clamp(20px, 2.8vw, 30px) !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    line-height: 1.3 !important;
    margin: 0 0 14px !important;
    text-transform: uppercase !important;
}

.soga-product-page .product-title-container .is-divider {
    display: none !important;
}

/* Giá chính (Giá từ / giá biến thể) */
.soga-product-page .soga-product-summary-col .product-price-container {
    margin-bottom: 20px !important;
}

.soga-product-page .soga-product-summary-col .product-price-container .price,
.soga-product-page .soga-product-summary-col .product-price-container .amount,
.soga-product-page .soga-product-summary-col .sago-gia {
    color: #fff !important;
    font-size: clamp(24px, 3.2vw, 34px) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.soga-product-page .soga-product-summary-col .product-price-container del,
.soga-product-page .soga-product-summary-col .product-price-container del .amount {
    color: var(--soga-shop-muted) !important;
    font-size: 18px !important;
}

.soga-product-page .soga-product-summary-col .product-price-container ins {
    text-decoration: none !important;
}

/* Ẩn giá trùng trong form biến thể (chỉ hiện ở khối giá trên) */
.soga-product-page .single_variation_wrap .woocommerce-variation-price {
    display: none !important;
}

/* Mô tả ngắn */
.soga-product-page .woocommerce-product-details__short-description {
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 14px !important;
    line-height: 1.75 !important;
    margin-bottom: 20px !important;
}

/* Bảng biến thể */
.soga-product-page table.variations {
    margin-bottom: 16px !important;
    border: none !important;
}

.soga-product-page table.variations th.label {
    display: block !important;
    padding: 0 0 10px !important;
    text-align: left !important;
}

.soga-product-page table.variations th.label label {
    color: var(--soga-shop-gold-light) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
}

.soga-product-page table.variations td.value {
    display: block !important;
    padding: 0 0 16px !important;
}

/* Ẩn dropdown – dùng khối isures / swatch */
.soga-product-page table.variations td.value > select,
.soga-product-page .variation-selector select {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
    clip: rect(0, 0, 0, 0) !important;
}

.soga-product-page .reset_variations {
    display: none !important;
}

/* Khối chữ nhật – isures radio (functions.php) */
.soga-product-page .isures-radio-variable {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.soga-product-page .isures-radio-variable.slider {
    display: block !important;
}

.soga-product-page .isures-option {
    position: relative;
    display: inline-flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    min-width: 0;
    min-height: 0;
    padding: 7px 12px !important;
    margin: 0 !important;
    border: 1px solid var(--soga-shop-border) !important;
    border-radius: 4px !important;
    background: transparent !important;
    color: var(--soga-shop-text) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    text-align: center;
    cursor: pointer;
    transition: border-color 0.2s, background 0.2s, color 0.2s;
}

.soga-product-page .isures-option input[type="radio"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    pointer-events: none;
}

.soga-product-page .isures-option .option-child {
    color: var(--soga-shop-text) !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em;
}

.soga-product-page .isures-option .amount,
.soga-product-page .isures-option .woocommerce-Price-amount {
    color: var(--soga-shop-gold-light) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
}

.soga-product-page .isures-option:hover {
    border-color: var(--soga-shop-gold-light) !important;
}

.soga-product-page .isures-option.soga-var-active,
.soga-product-page .isures-option:has(input:checked) {
    border: 2px solid var(--soga-shop-gold-light) !important;
    background: rgba(230, 189, 101, 0.12) !important;
    color: var(--soga-shop-gold-light) !important;
}

.soga-product-page .isures-option.soga-var-active .option-child,
.soga-product-page .isures-option:has(input:checked) .option-child {
    color: var(--soga-shop-gold-light) !important;
}

/* Flatsome swatches – cùng kiểu khối */
.soga-product-page .ux-swatches {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}

.soga-product-page .ux-swatches .ux-swatch--label {
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 7px 12px !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    border: 1px solid var(--soga-shop-border) !important;
    border-radius: 4px !important;
    background: transparent !important;
    color: var(--soga-shop-text) !important;
    box-shadow: none !important;
}

.soga-product-page .ux-swatches .ux-swatch__text {
    font-size: 12px !important;
    line-height: 1.25 !important;
}

.soga-product-page .ux-swatches .ux-swatch--label.selected {
    border: 2px solid var(--soga-shop-gold-light) !important;
    background: rgba(230, 189, 101, 0.12) !important;
    box-shadow: none !important;
}

/* Form mua hàng */
.soga-product-page form.variations_form.cart,
.soga-product-page form.cart {
    margin-top: 4px !important;
    padding-top: 18px;
    border-top: 1px solid var(--soga-shop-divider);
}

.soga-product-page form.cart .variations {
    border-top: none !important;
    padding-top: 0 !important;
}

.soga-product-page .single_variation_wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    width: 100%;
    margin-top: 8px !important;
}

/* Số lượng: một khung liền, không bóng nút +/- */
.soga-product-page form.cart .ux-quantity.quantity,
.soga-product-page form.cart .quantity.buttons_added {
    display: inline-flex !important;
    align-items: stretch !important;
    flex: 0 0 auto;
    width: auto !important;
    max-width: none !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--soga-shop-border) !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    background: transparent !important;
    box-shadow: none !important;
}

.soga-product-page form.cart .ux-quantity__button,
.soga-product-page form.cart .quantity .plus,
.soga-product-page form.cart .quantity .minus,
.soga-product-page form.cart .quantity .button.plus,
.soga-product-page form.cart .quantity .button.minus {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    min-width: 40px !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    color: var(--soga-shop-gold-light) !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
    -webkit-appearance: none;
    appearance: none;
}

.soga-product-page form.cart .ux-quantity__button--minus,
.soga-product-page form.cart .quantity .minus {
    border-right: 1px solid var(--soga-shop-border) !important;
}

.soga-product-page form.cart .ux-quantity__button--plus,
.soga-product-page form.cart .quantity .plus {
    border-left: 1px solid var(--soga-shop-border) !important;
}

.soga-product-page form.cart .ux-quantity__button:hover,
.soga-product-page form.cart .quantity .plus:hover,
.soga-product-page form.cart .quantity .minus:hover {
    background: rgba(230, 189, 101, 0.1) !important;
    box-shadow: none !important;
    color: var(--soga-shop-gold-light) !important;
}

.soga-product-page form.cart .quantity input.qty,
.soga-product-page form.cart .ux-quantity input[type="number"] {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--soga-shop-text) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-align: center !important;
    box-shadow: none !important;
    -moz-appearance: textfield;
    appearance: textfield;
}

.soga-product-page form.cart .quantity input.qty::-webkit-outer-spin-button,
.soga-product-page form.cart .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.soga-product-page .single_add_to_cart_button {
    flex: 1 1 auto;
    min-width: 200px;
    min-height: 40px !important;
    border: none !important;
    border-radius: 4px !important;
    background: var(--soga-shop-gold-light) !important;
    color: #1a1008 !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

.soga-product-page .single_add_to_cart_button:hover {
    filter: brightness(1.08);
    color: #1a1008 !important;
}

/* Meta */
.soga-product-page .product_meta {
    margin-top: 20px !important;
    padding-top: 18px;
    border-top: 1px solid var(--soga-shop-divider);
    font-size: 13px !important;
    color: var(--soga-shop-muted) !important;
}

.soga-product-page .product_meta a {
    color: var(--soga-shop-gold-light) !important;
}

/* Tabs */
.soga-product-page .product-tabs,
.soga-product-page .woocommerce-tabs .tabs {
    border-bottom: 1px solid var(--soga-shop-border) !important;
    text-align: center;
}

.soga-product-page .product-tabs li a,
.soga-product-page .woocommerce-tabs .tabs li a {
    color: var(--soga-shop-muted) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    border: none !important;
    background: transparent !important;
}

.soga-product-page .product-tabs li.active > a,
.soga-product-page .woocommerce-tabs .tabs li.active a {
    color: var(--soga-shop-gold-light) !important;
}

.soga-product-page .woocommerce-Tabs-panel,
.soga-product-page .panel.entry-content {
    color: rgba(255, 255, 255, 0.9) !important;
}

.soga-product-page .woocommerce-Tabs-panel h2,
.soga-product-page .woocommerce-Tabs-panel h3 {
    color: var(--soga-shop-gold-light) !important;
}

/* SP liên quan */
.soga-product-page .soga-product-related-title {
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--soga-shop-gold-light) !important;
    margin: 0 0 28px !important;
}

.soga-product-page h3.product-section-title-related {
    display: none !important;
}

.soga-product-page .related .product-small .box {
    border: 1px solid var(--soga-shop-divider) !important;
    border-radius: 6px !important;
    background: transparent !important;
}

.soga-product-page .related .product-small .box-image {
    background: #fff !important;
}

.soga-product-page .related .product-small .product-title a {
    color: var(--soga-shop-text) !important;
}

.soga-product-page .related .product-small .price,
.soga-product-page .related .product-small .price .amount {
    color: var(--soga-shop-gold-light) !important;
}

@media (max-width: 849px) {
    .soga-product-page .soga-product-summary-col {
        padding-top: 24px !important;
    }

    .soga-product-page .single_variation_wrap {
        flex-direction: column;
        align-items: stretch;
    }

    .soga-product-page .single_add_to_cart_button {
        width: 100%;
    }
}

/* ========================================================
   Blog single – banner + nền trong suốt
======================================================== */

.sago-single-banner {
    position: relative;
    width: 100%;
    min-height: 280px;
    margin-bottom: 24px;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    background: #1d150d;
}

.sago-single-banner--has-image {
    min-height: 320px;
}

.sago-single-banner__bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.sago-single-banner__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(24, 18, 11, 0.35) 0%,
        rgba(24, 18, 11, 0.75) 55%,
        rgba(24, 18, 11, 0.92) 100%
    );
}

.sago-single-banner__inner {
    position: relative;
    z-index: 1;
    width: 100%;
    padding: 48px 15px 32px;
}

.sago-single-banner__title {
    margin: 0;
    max-width: 900px;
    color: #e6bd65 !important;
    font-size: clamp(22px, 3.2vw, 32px);
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0.02em;
}

@media (max-width: 849px) {
    .sago-single-banner {
        min-height: 220px;
        margin-bottom: 16px;
    }

    .sago-single-banner--has-image {
        min-height: 260px;
    }

    .sago-single-banner__inner {
        padding: 36px 15px 24px;
    }
}

.blog-single .sago-blog-single-inner,
.blog-single .sago-blog-single-inner.has-shadow,
.blog-single .article-inner,
.blog-single .article-inner.has-shadow,
.blog-single .entry-content.single-page,
.blog-single .entry-header,
.blog-single .entry-header-text,
.blog-single article .col-inner {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

.blog-single .row.row-large > .col.large-8,
.blog-single .row.row-large > .col.large-9 {
    background: transparent !important;
}

.blog-single .post-title.lg {
    color: #e6bd65 !important;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: 0.45px;
}

.blog-single .entry-content,
.blog-single .entry-content p,
.blog-single .entry-content li {
    color: rgba(255, 255, 255, 0.9) !important;
}

.blog-single .entry-content a {
    color: #e6bd65;
}

.blog-single .entry-content a:hover {
    color: #efd050;
}

.blog-single .entry-header-text-top {
    padding-bottom: 0;
}

.blog-single .entry-meta {
    border-top: 1px solid #e6bd65;
    border-bottom: 1px solid #e6bd65;
    color: #9a8470;
    padding: 10px 0;
}

.blog-single .sago-blog-sidebar .col-inner,
.blog-single .post-sidebar .col-inner {
    background: transparent !important;
}

.blog-single .sago-blog-sidebar .widget,
.blog-single .post-sidebar .widget {
    background: transparent !important;
    box-shadow: none !important;
}

ul.sago-bv-lg li {
    margin-left: 0 !important;
    list-style: none;
}

ul.sago-bv-lg li a {
    color: #e6bd65;
    font-size: 90%;
}

ul.sago-bv-lg li a:hover {
    color: #efd050;
    text-decoration: underline;
}

.chuyen-muc-sago a,
.the-sago a {
    margin-bottom: 10px !important;
    line-height: 30px;
    padding: 4px 10px;
    background: #e6bd65;
    color: #333 !important;
}

.chuyen-muc-sago .title,
.the-sago .title {
    background: #0f61a7;
    padding: 4px 10px;
    color: #fff;
    margin-right: 5px;
}
