@charset "UTF-8";

/*
Theme Name: DHD Welding
Description:
Author: Ha Nguyen
Template: flatsome
Version: 1.0
*/

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

body{
    font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Roboto,
    "Helvetica Neue",
    Arial,
    sans-serif,
    "Apple Color Emoji",
    "Segoe UI Emoji";
    font-size:16px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    text-rendering:optimizeLegibility;
}

.container,.full-width .ubermenu-nav,.row{max-width:1200px!important}

.noscroll{overflow:hidden;margin-right:17px}

.row.row-full-width{max-width:100%!important}

.container .row-small:not(.row-collapse),.row .row-small:not(.row-collapse){margin-left:0;margin-right:0}

.container .row-large:not(.row-collapse), .row .row-large:not(.row-collapse) {
    margin-left:0;margin-right:0
}

.row-small>.col {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 10px
}

.is-divider {display: none;}

#main-menu{display:none}

.phu-kien a.plain .icon-inner,.category-page-row .term-description {-webkit-box-shadow: rgba(60, 64, 67, 0.1) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
    box-shadow: rgba(60, 64, 67, 0.1) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;}

.select-resize-ghost, .select2-container .select2-choice, .select2-container .select2-selection, input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
    border-radius: 4px;}

/* ─── Header overlay ─── */
.header-overlay {
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 22;
    background: rgb(0 0 0 / 0.6);
    display: block;
    transition: 0.5s;
    visibility: hidden;
    opacity: 0;
}
 
.header-overlay.active {
    visibility: visible;
    opacity: 1;
}

.sec-404 p > a:not(.button):not(:hover) {
    color: var(--primary-color);
}

/* css header */
.header,.header-wrapper {
    transition: none;
    -webkit-transition: none;
}

#header .header-wrapper .header-bg-color {
    background: #f53d2d;
    background: linear-gradient(180deg, #f53d2d, #f63);
}

#header #masthead .container,#header #wide-nav .container {
    padding-left: 0;
    padding-right: 0;
}

#header .ux-search-box input:not([type=submit]) {
    border-radius: 5px;
    height: 40px;
    border: none;
    background-color: #fff !important;
    color: #333 !important;
}

#header form.searchform button[type=submit] {
    color: #333 !important;
}

#header .live-search-results{background-color:#fff;border-radius: 5px;top: 50px;box-shadow: 0 1px 8px rgba(0, 0, 0, .3);}

#header .live-search-results .autocomplete-suggestion img{border-radius:0}

#header .live-search-results span.search-price{font-size:1em}

#header .live-search-results span.search-price .amount{display:block}

#header .live-search-results span.search-price ins span.amount{color:#e03232}

#header form.searchform input[type=search]::-webkit-input-placeholder{color:#333;font-size:14px}

#header form.searchform input[type=search]:-ms-input-placeholder{color:#333;font-size:14px}

#header form.searchform input[type=search]::-ms-input-placeholder{color:#333;font-size:14px}

#header form.searchform input[type=search]::placeholder{color:#333;font-size:14px}

#header .live-search-results .autocomplete-suggestions:before, #header .live-search-results .autocomplete-suggestions:after {
    content: '';
    width: 0;
    height: 0;
    position: absolute;
    bottom: 100%;
    left: 30%;
    border-bottom: 10px solid #eee;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
}

#header .live-search-results .autocomplete-suggestions:before, #header .live-search-results .autocomplete-suggestions:after {
    left: 3%;
}

#header .live-search-results .autocomplete-suggestions:after {
    border-width: 8px;
    border-bottom-color: #f5f5f5;
    margin-left: 2px;
}

/* header-vertical-menu */
.home .header-wrapper:not(.stuck) .header-vertical-menu__fly-out {
    border-radius: 8px;
}
.home .header-wrapper:not(.stuck) .header-vertical-menu__fly-out:hover{border-radius:0}
.header-vertical-menu__opener {
    padding-left: 0;
    padding-right: 0;
}

.header-vertical-menu__opener span.header-vertical-menu__title {
    letter-spacing: 0;
    text-transform: uppercase;
}

.home .header-wrapper:not(.stuck) .header-vertical-menu__fly-out {
    margin-top: 6px;
}

ul#menu-vertical-menu > li > a {
    font-size: 14px;
    padding: 0 6px;
    height: 30px;
}

ul.sub-menu.nav-dropdown li a {
    font-size: 14px;
    color: #000000;
    font-weight: 400;
    border: unset;
    padding: 5px 0;
    line-height: normal;
}

ul.sub-menu.nav-dropdown ul.nav-dropdown-default li a:hover {
    color: #288ad6;
}

ul#menu-vertical-menu > li > ul.sub-menu {
    box-shadow: 2px 0 4px 0 rgb(0 0 0 / 20%);
    border: 0;
    overflow: hidden;
}

.nav-dropdown-default {
    padding: 0 15px;
}

#menu-vertical-menu .nav-dropdown>li.nav-dropdown-col {
    min-width: 200px;
}

ul#menu-vertical-menu > li > ul > li.menu-item-has-children > a {
    font-weight: 700;
    text-transform: none;
}

ul.sub-menu.nav-dropdown ul.nav-dropdown-default li a:before {
    content: "";
    width: 0;
    height: 0;
    border: 4px solid;
    border-color: #288ad6;
    border-top-color: transparent;
    border-bottom-color: transparent;
    border-right-color: transparent;
    display: inline-block;
    position: relative;
    top: -1px;
    margin-right: 2px;
}

/* =========================
   Chính sách header box
========================= */
.header-block .chinh-sach{
    display:flex;
    align-items:center;
    max-height: 40px;
}

.chinh_sach_box{
    display:flex;
    align-items:center;
    justify-content: center;
    gap:10px;
    height: 40px;
    padding:0 14px;
    color:#fff;
    text-decoration:none;
    white-space:nowrap;
    transition:all .25s ease;
}

/* Left icon */
.chinh_sach_l{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
}

.chinh_sach_l svg{
    width:24px;
    height:24px;
    fill:#fff;
    transition:
        transform .35s ease,
        fill .25s ease;
    animation:policy-shake 6s ease-in-out infinite;
}

/* Right text */
.chinh_sach_r{
    display:flex;
    align-items:center;
    overflow:hidden;

    color:#fff;
    font-size:13px;
    font-weight:600;
    line-height:1;

    text-transform:uppercase;
    letter-spacing:.3px;
}

/* Hover */
.chinh_sach_box:hover{
    opacity:.95;
}

.chinh_sach_box:hover .chinh_sach_l svg{
    fill:#ffd54a;
    transform:translateY(-1px) scale(1.05);
}

/* Animation */
@keyframes policy-shake{
    0%,100%{
        transform:translateX(0);
    }

    2%{
        transform:translateX(-2px);
    }

    4%{
        transform:translateX(2px);
    }

    6%{
        transform:translateX(-2px);
    }

    8%{
        transform:translateX(0);
    }
}

/* Optional badge */
.header-block .show-pro span{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-height:24px;
    padding:0 8px;

    border:1px solid rgba(255,255,255,.45);
    border-radius:999px;

    color:#fff;
    font-size:11px;
    font-weight:600;
    line-height:1;
    text-transform:uppercase;

    background:rgba(255,255,255,.08);
    backdrop-filter:blur(2px);

    transition:all .25s ease;
}

.header-block .show-pro span:hover{
    background:rgba(255,255,255,.16);
    border-color:rgba(255,255,255,.7);
}

/* CSS Dot Ping - Tối ưu cho header gradient đỏ-cam */
#header a.liveevent {
    position: relative;
    display: inline-flex;
    align-items: center;
    color: #fff;
    text-decoration: none;
    padding: 8px 12px 8px 42px;     /* padding trái để chứa dot */
    margin-right: 12px;
    font-weight: normal;
    border-radius: 4px;
    transition: all 0.3s ease;
}

#header a.liveevent:hover {
    background: rgba(255, 255, 255, 0.12);
    color: #ffe66b;
}

/* Dot container */
#header a.liveevent #dot {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 13px;
    height: 13px;
}

/* Dot chính */
#dot {
    width: 13px;
    height: 13px;
    background-color: #ffe66b;
    border-radius: 50%;
    display: block;
    box-shadow: 0 0 4px rgba(255, 230, 107, 0.6);
}

/* Vòng ping lan tỏa */
#dot .ping {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 2px solid #ffe66b;
    border-radius: 50%;
    background: rgba(255, 230, 107, 0.25);
    animation: sonar 1.6s linear infinite;
    opacity: 0.9;
}

/* Animation */
@keyframes sonar {
    0% {
        transform: scale(0.8);
        opacity: 0.9;
    }
    100% {
        transform: scale(3.2);
        opacity: 0;
    }
}

/* Text */
#header a.liveevent .text {
    line-height: 1.4;
    max-width: 280px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Hover effect cho dot */
#header a.liveevent:hover #dot {
    background-color: #fff;
}

#header a.liveevent:hover #dot .ping {
    border-color: #fff;
    background: rgba(255, 255, 255, 0.3);
}
/* END CSS Dot Ping */


/* css breadcrumbs */
#dhd_breadcrumbs .container {
    padding: 12px 0;
}
.breadcrumbs {
    font-weight: normal;
    font-size: 13px;
}

/* css lightbox */
.mfp-ready .mfp-container {
    padding: 0;
}

.mfp-ready .lightbox-content {
    border-radius: 4px
}

.mfp-ready .mfp-close{
    position: absolute;
    top: 5px;
    right: 5px;
    width: 36px;
    height: 36px;
    line-height: 34px;
    background: #fff;
    border: 1px solid #333;
    border-radius: 50%;
    color: #333;
    font-size: 40px;
    text-align: center;
    mix-blend-mode: normal;
    transition:
        transform .25s ease,
        background-color .25s ease,
        color .25s ease;
}

.mfp-ready .mfp-close:hover{
    transform: rotate(90deg);

    background: #333;
    color: #fff;
}

html.mfp-helper {
    scrollbar-gutter: stable;
}


/* css single product page */
.single-product .product-main {
    padding: 0;
    margin-bottom: 15px;
}

.single-product .product-main>.mb-0 {
    background-color: #fff;
    border-radius: 10px;
}

.single-product .product-main .mb-0>.col {
    padding: 15px;
}

.product-summary h1.product-title {
    font-size: 24px;
    line-height: 1.4;
    margin-bottom: 5px;
}

.product-summary p.stock {
    display: none !important;
}

.single-product .label-stock {
    font-size: 12px;
    color: #000;
    font-weight: 600;
    background: #ffe66b;
    border-radius: 4px;
    padding: 5px;
    display: inline-block;
    vertical-align: middle;
}

/* PRODUCT BOX - SINGLE PRODUCT */
.product_box {
    display: grid;
    grid-template-columns: minmax(0, 11fr) minmax(0, 9fr);
    column-gap: 15px;
    row-gap: 15px;
    align-items: start;
    max-width: 1200px !important;
    margin: auto;
}

.product_box > .product-gallery,
.product_box > .product-info,
.product_box > .product-extra {
    box-sizing: border-box;
    min-width: 0;
}

.product_box > .product-gallery {
    grid-column: 1;
    grid-row: 1;
    background-color: #fff;
    padding: 15px !important;
    border-radius: 10px;
    max-width: 100%;
}

.product_box > .product-info {
    grid-column: 2;
    grid-row: 1;
    position: sticky;
    top: 15px;
    height: fit-content;
    max-height: calc(100svh - 30px);
    overflow-y: auto;
    scrollbar-width: thin;
    background-color: #fff;
    padding: 15px;
    border-radius: 10px;
    box-shadow:
        0 0 0 1px #EAECEF,
        0 10px 30px rgba(0, 0, 0, .06);
}

.product_box > .product-extra {
    grid-column: 1;
    grid-row: 2;
    background-color: #fff;
    padding: 15px;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.product_box > .product-info::-webkit-scrollbar { width: 6px; }
.product_box > .product-info::-webkit-scrollbar-thumb { background: #ddd; border-radius: 3px; }


@media (max-width: 849px) {

    .product_box {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

    .product_box > .product-gallery {
        width: 100%;
        margin-right: 0;
    }

    .product_box > .product-info {
        position: static;
        width: 100%;
        height: auto;
        max-height: none;
        overflow: visible;
    }

    .product_box > .product-extra {
        width: 100%;
    }
}

/* PRODUCT BOX - recently viewed */


/* css product meta */
.single-product .product-summary .product_meta {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 10px 0;
    padding-bottom: 10px;
    font-size: 13px;
    border-bottom: 1px solid #f0f0f0;
}

.single-product .product-summary .product_meta > * {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

.single-product .product-summary .info_meta > *:not(:first-child),
.single-product .product-summary .stock_sku > *:not(:first-child) {
    position: relative;
    padding-left: 8px;
}

.single-product .product-summary .info_meta > *:not(:first-child)::before,
.single-product .product-summary .stock_sku > *:not(:first-child)::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 1px;
    height: 1em;
    background: #646464;
    transform: translateY(-50%);
}

.custom-rating {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: inherit;
    font-size: 100%;
    text-decoration: none;
}

.custom-rating:hover {
    text-decoration: underline;
}

.custom-rating .icon-star {
    font-size: 14px;
    color: #f5a623;
}

.custom-rating-score {
    font-weight: 600;
    color: #333;
}

.custom-rating-count {
    color: #888;
}

.luot-xem,
.luot-xem span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.luot-xem .icon-eye::before {
    content: "\f108";
    display: inline-block;
    font-size: inherit;
    color: var(--fs-experimental-link-color-hover);
    vertical-align: middle;
}

.luot-xem .icon-eye.rung {
    animation: code-pro-rung-lac 2s ease infinite;
}

@keyframes code-pro-rung-lac {
    0%,50%,100% {
        transform: rotate(0deg);
    }

    10%,30% {
        transform: rotate(-25deg);
    }

    20%,40% {
        transform: rotate(25deg);
    }
}

.single-product .product-summary .social-share-box {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.single-product .product-summary .social-share-box a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    text-decoration: none;
    background: transparent;
    transition:
        background-color .2s ease,
        transform .2s ease;
}

.single-product .product-summary .social-share-box a:hover {
    transform: translateY(-1px);
}

.single-product .product-summary .icon-facebook,
.single-product .product-summary .icon-zalo {
    display: inline-block;
    width: 20px;
    height: 20px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.single-product .product-summary .icon-facebook {
    background-image: url("images/23_Facebook_icon.svg");
}

.single-product .product-summary .icon-zalo {
    background-image: url("images/add-zalo.svg");
}

.single-product .product-summary .icon-facebook::before {
    display: none;
}

.single-product .product-summary .share-facebook:hover {
    background-color: #1877f2;
}

.single-product .product-summary .share-zalo:hover {
    background-color: #0068ff;
}

.single-product .product-summary .product_meta .sku, .single-product .product-summary .product_meta .stock.in-stock {
    color: var(--fs-experimental-link-color-hover);
}

.single-product .product-summary .product_meta .stock.out-of-stock {
    color: #d63638;
}
/* end css product meta */


/* css custom price */
.info_single_price .box_price {
    display: flex;
    flex-wrap: nowrap;
    margin-bottom: 10px;
    min-height: 106px;
    align-items: center;
    overflow: hidden;
} 

.info_single_price p {
    margin-bottom: 0 !important;
}

.info_single_price .box_price>* {
    flex: 1;
    position: relative;
}

.info_price span.amount {
    font-size: 30px;
    color: var(--fs-color-base);
    font-weight: 700;
}

.sale_price_label {
    display: block;
    font-size: 16px;
    font-weight: 600;
}

.label_percent {
    display: inline-block;
    color: #fff;
    font-weight: normal;
    top: -2px;
    position: relative;
    font-style: italic;
    left: 5px;
    font-size: 14px;
    padding: 3px 6px;
    line-height: 16px;
    background-color: var(--primary-color);
    text-align: center;
    border-radius: 4px;
}

.sale_price_shock {
    display: block;
    line-height: normal;
}

.sale_price_shock span.amount {
    font-size: 30px;
    color: var(--primary-color);
    font-weight: 700;
}

.info_regular_price {
    display: block;
    font-size: 16px;
    color: #555;
}

.info_regular_price del span.amount {
    font-size: 16px;
    color: #555;
    font-weight: 600;
    margin-left: 0;
    opacity: 1;
}
.custom-unit {
    padding-left: 2px;
}

.promo_coupon {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    background: linear-gradient(270deg, #ff3447, #ff773f);
    height: auto;
    padding: 4px;
    margin: 0 auto;
    border-radius: 2px;
    max-width: 180px;
}
.coupon_l {
    flex: 1;
    padding: 2px;
    display: flex;
    align-items: center;
}

.coupon_l img {
    width: 24px !important;
    margin: 0 auto !important;
}
.coupon_r {
    padding: 0;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    flex: 4;
}
.coupon_r p {
    color: #fff;
    font-size: 12px;
    line-height: 1.4 !important;
    background-color: transparent;
    margin: 0;
}
.coupon_r a:not(hover) {
    color: #fff;
}
.coupon_r a:hover {
    font-weight: 600;
}
.box_r {
    border-left: 1px solid #ececec;
}

.woocommerce-variation-dimension-data{
    display: inline-block;
    margin: 0;
}

/* Responsive cho di động */
@media (max-width: 767px) {
    .sale_price_shock span.amount, .info_price span.amount {
        font-size: 24px;
    }
}


/* Container chính của countdown */
.ux-timer.is-counting {
    background: transparent;
    padding: 0;
    text-align: right;
    margin: 0 auto;
    max-width: 350px;
}

/* Nhãn "Kết thúc sau" */
.ux-timer-label {
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: #333;
    margin-bottom: 5px;
}

.ux-timer-label::before {
    content: "\e01a";
    font-family: 'fl-icons';
    padding-right: 5px;
    color: var(--primary-color);
    font-weight: 400;
}

/* Container các block thời gian */
.ux-timer-inner {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

/* Mỗi block thời gian (ngày, giờ, phút, giây) */
.ux-timer-block {
    background: var(--primary-color);
    color: #fff;
    padding: 5px;
    border-radius: 5px;
    min-width: 50px;
    text-align: center;
    transition: all 0.3s ease;
}

.ux-timer-block:has(.days) {
    display: none;
}

/* Giá trị thời gian (00) */
.ux-timer-block span {
    display: block;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
}

/* Nhãn nhỏ (Ngày, Giờ, Phút, Giây) */
.ux-timer-block small {
    display: block;
    border-top-style: dashed;
    border-top-width: 1px;
    font-size: 12px;
    opacity: 0.9;
}

.ux-timer-inner .is-zero:first-child {
    display: none;
}

/* Khi countdown hết hạn */
.ux-timer.is-ended {
    display: none; /* Ẩn hoàn toàn */
}

/* Responsive cho di động */
@media (max-width: 767px) {
    .ux-timer.is-counting {
        padding: 10px;
        max-width: 100%;
    }
    .ux-timer-block {
        min-width: 40px;
        padding: 5px;
    }
    .ux-timer-block span {
        font-size: 18px;
    }
    .ux-timer-block small {
        font-size: 10px;
    }
    .ux-timer-inner {
        gap: 5px;
    }
    .ux-timer-label,.sale_price_label {
        font-size: 14px;
    }
}

/* end css custom price */


/* CSS GIÁ BIẾN THỂ */
.product-summary .variations .ux-swatches-attribute-ux_label:has(img),
.product-summary .variations .ux-swatches-attribute-ux_color:has(img) {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

@media (max-width: 549px), (min-width: 850px) and (max-width: 1024px) {
    .product-summary .variations .ux-swatches-attribute-ux_label:has(img),
    .product-summary .variations .ux-swatches-attribute-ux_color:has(img) {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

.product-summary .variations .ux-swatches .ux-swatch {
    border: 1px solid #ddd;
    box-shadow: none;
}

.product-summary .variations .ux-swatches-attribute-ux_label:has(img) .ux-swatch,
.product-summary .variations .ux-swatches-attribute-ux_color:has(img) .ux-swatch {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    height: 100%;
    width: 100%;
    padding: 2px 4px;
    border-radius: 8px;
    box-shadow: none;
    overflow: hidden;
    position: relative;
}

.product-summary .variations .ux-swatches-attribute-ux_label:has(img) .ux-swatch > img,
.product-summary .variations .ux-swatches-attribute-ux_color:has(img) .ux-swatch > img {
    flex: 0 0 50px;
    width: 50px;
    height: 50px;
    object-fit: cover;
}

.product-summary .variations .ux-swatches-attribute-ux_label:has(img) .ux-swatch>.ux-swatch__text,
.product-summary .variations .ux-swatches-attribute-ux_color:has(img) .ux-swatch>.ux-swatch__text {
    flex: 1;
}

.product-summary .variations .ux-swatches-attribute-ux_label .ux-swatch>.ux-swatch__text,
.product-summary .variations .ux-swatches-attribute-ux_color:has(img) .ux-swatch>.ux-swatch__text {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 14px;
    color: #333;
    min-width: 0;
}

.product-summary .variations .ux-swatch .item-variation-name,
.product-summary .variations .ux-swatch .item-variation-price {
    overflow: hidden;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.product-summary .variations .ux-swatches-attribute-ux_label:has(img) .ux-swatch.selected::before,
.product-summary .variations .ux-swatches-attribute-ux_color:has(img) .ux-swatch.selected::before {
    content: "\e00a";
    font-family: "fl-icons" !important;
    position: absolute;
    color: #fff;
    bottom: 0;
    right: 0;
    font-size: 10px;
    z-index: 1;
}

.product-summary .variations .ux-swatches-attribute-ux_label:has(img) .ux-swatch.selected::after,
.product-summary .variations .ux-swatches-attribute-ux_color:has(img) .ux-swatch.selected::after {
    content: '';
    position: absolute;
    width: 28px;
    height: 28px;
    background: var(--fs-color-primary, #e03232);
    transform: rotate(45deg);
    bottom: -14px;
    right: -14px;
}

.product-summary .variations .ux-swatch:hover,
.product-summary .variations .ux-swatch.selected {
    border-color: var(--primary-color);
    box-shadow: none;
}

.product-summary .variations .ux-swatch.selected {
    background-color: color-mix(in srgb, var(--primary-color) 6%, white);
}

.product-summary .variations .ux-swatch.selected .ux-swatch__text {
    color: var(--primary-color);
}

.product-summary .woocommerce-variation-price {
  display: none;
}
.product-summary table.variations {
    border-collapse: unset;
}
.product-summary .variations_button {
  padding: 0;
}

.single-product .variations .reset_variations {
  display: none !important;
}
/* End css ux variations */

/* btn add to cart */
.product-info.summary .ux-quantity.quantity.buttons_added {
    display: none !important;
}

.single-product .product-summary .single_add_to_cart_button {
    background: rgba(255, 87, 34, .1) !important;
    color: var(--primary-color);
    outline: 0;
    line-height: unset;
}   
.single-product .product-summary .single_add_to_cart_button:hover {
    box-shadow: none;
    background: #fff !important;
}

.single_add_to_cart_button {
    display: inline-flex;
    align-items: center;
    flex-direction: column;
}

.single_add_to_cart_button::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url('images/icon-add-to-cart-single-product.svg') no-repeat center / contain;
}

.woocommerce-variation-add-to-cart :where(.single_add_to_cart_button,.ux-buy-now-button), form.cart :where(.single_add_to_cart_button,.ux-buy-now-button) {
    width: calc((100% / 2) - 8px);
    font-weight: 500;
    padding: 5px 10px;
    border-radius: 4px !important;
    border: 1px solid var(--primary-color);
    font-size: 16px;
}

/* btn báo giá */
a.bao-gia-btn {
    background-color: var(--primary-color);
    border-radius: 4px;
    color: #fff;
    display: block;
    padding: 8px 15px;
    margin-bottom: 15px;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2em;
    text-transform: uppercase;
    text-decoration: none;
    text-align: center;
    vertical-align: middle;
    width: 100%;
}
a.bao-gia-btn span {
    font-size: 14px;
    text-transform: none;
    display: block;
    font-weight: 400;
}

.single-product form.cart {
    margin-bottom: 1em;
}


/* ẢNH XOAY image 360 */
.picture360-wrap {
    --p360-desktop-w: 500px;
    --p360-mobile-w: 400px;
    --p360-ratio: 1/1;
    padding-top: 15px;
    margin-bottom: 15px;
}
 
.slider3d-class {
    position: relative;
    overflow: hidden;
    width: var(--p360-desktop-w);
    max-width: 100%;
    aspect-ratio: var(--p360-ratio);
    margin: 0 auto;
    background-color: #f7f7f7;
    cursor: grab;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}
 
.slider3d-class.dragging { cursor: grabbing; }
 
.slider3d-class .p360-picture {
    display: block;
    position: absolute;
    inset: 0;
}
 
.slider3d-class .p360-sprite {
    display: block;
    width: 100%;
    height: auto;
    max-width: none;
    pointer-events: none;
    user-select: none;
    -webkit-user-select: none;
    -webkit-user-drag: none;
}
 
.slider3d-class .p360-poster {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 2;
    opacity: 1;
    transition: opacity .35s ease;
    pointer-events: none;
}
 
.slider3d-class.is-ready .p360-poster {
    opacity: 0;
    visibility: hidden;
}
 
@media (max-width: 849px) {
    .slider3d-class { width: var(--p360-mobile-w); }
}
 
/* ---- nút điều khiển ---- */
.picture360-wrap .controls {
    text-align: center;
    padding: 10px 0;
}
.picture360-wrap .controls button {
    background: #333;
    color: #fff;
    border: none;
    padding: 8px 16px;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color .2s;
    margin: 0 5px;
    line-height: unset;
    letter-spacing: unset;
}
.picture360-wrap .controls button:hover { background: #555; }
.picture360-wrap .controls button.active {
    background: var(--fs-experimental-link-color-hover);
    color: #fff;
    pointer-events: none;
}
 
@media (prefers-reduced-motion: reduce) {
    .slider3d-class .p360-poster { transition: none; }
}
/* End css image 360 */

/* sp tương thích */
.sptt h3, .product-recently-box h3 {
    padding: 10px 15px;
    margin-bottom: 0;
}
.nopro {
    text-align: center;
}
.nopro img {
    max-width: 20%;
    height: auto;
}

/* css box khuyến mãi */
.single-product .product-summary .promotion-box {
    position: relative;
    border: 0.5px solid var(--primary-color);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 8px;
    -webkit-box-shadow: 0 2px 2px 0 #0c175f1a, 0 -1px 0 0 #f0f1f5, 0 1px 0 0 #f0f1f5;
    box-shadow: 0 2px 2px 0 #0c175f1a, 0 -1px 0 0 #f0f1f5, 0 1px 0 0 #f0f1f5;
}
.single-product .product-summary .promotion-box .promotion-box-header {
    display: block;
    position: relative;
    background: var(--primary-color);
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    line-height: 16px;
    text-transform: uppercase;
    font-weight: 700;
    margin: 10px 20px 0 -12px;
    padding: 10px 30px 10px 30px;
    width: fit-content;
}

.promotion-box-header h4{
    display:flex;
    align-items:center;
    gap:8px;
    color: #fff;
    font-size: 16px;
    overflow: hidden;
    margin-bottom: 0;
    line-height: normal;
}

.promotion-box-header h4::before{
    content:'';
    width:20px;
    height:20px;
    flex:none;
    background:url('images/coupon-2x.png') no-repeat center;
    background-size:contain;
}

.single-product .product-summary .promotion-box .promotion-box-header::before {
    content: "";
    width: 0;
    height: auto;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -16px;
    border-color: var(--primary-color) transparent;
    border-style: solid;
    border-width: 20px 16px;
}

.single-product .product-summary .promotion-box .promotion-box-header::after {
    content: "";
    height: 0;
    width: 0;
    display: block;
    position: absolute;
    bottom: -12px;
    left: 0;
    border-top: 12px solid #aa2d2d;
    border-left: 12px solid transparent;
}
.single-product .product-summary .promotion-box .promotion-box-body {
    text-align: justify;
    padding: .5em;
}
.single-product .product-summary .promotion-box .promotion-box-body ol, .devvn_compare_result_content ol {
    list-style: none;
    counter-reset: my-awesome-counter;
    margin-bottom: 0;
}
.single-product .product-summary .promotion-box .promotion-box-body ol li, .devvn_compare_result_content ol li {
    margin: 0 0 0.5rem 2rem;
    counter-increment: my-awesome-counter;
    position: relative;
    font-size: 14px;
}
.single-product .product-summary .promotion-box .promotion-box-body ol li a, .devvn_compare_result_content ol li a ,.single-product .dich-vu-vip ul li a,.single-product .product-summary .promotion-box .promotion-box-body ul li a {color: #288ad6;}

.single-product .product-summary .promotion-box .promotion-box-body ol li::before, .devvn_compare_result_content ol li::before {
    content: counter(my-awesome-counter);
    color: #fff;
    font-size: 14px;
    position: absolute;
    left: calc(-1 * var(--size) - 10px);
    line-height: var(--size);
    width: var(--size);
    height: var(--size);
    top: 2px;
    --size: 18px;
    background: var(--primary-color);
    border-radius: 50%;
    text-align: center;
}
.single-product .product-summary .promotion-box .promotion-box-body ul {
    list-style: none;
    margin-bottom: 0;
}
.single-product .product-summary .promotion-box .promotion-box-body ul li {
    display: block;
    overflow: hidden;
    font-size: 14px;
    padding: 0 0 5px 25px;
    margin-left: 0;
    margin-bottom: 0;
}

.single-product .product-summary .promotion-box .promotion-box-body ul li:before {
    content: '';
    margin-left: -20px;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAAA2pJREFUSA29VltIVFEUXeeOo/jKykrIB75IMws1k4keTpCaUVHUT9Ljo6+IECVDwlLSCskIkqDHR0H0gDICIxs1MiQyDfXDIsvSMjW0SLEstZnb2de5lzMzjo9RunA55+y99lpzzpx992aYwrOxKj1+VLZsh4x1/A1kTF5MYbLMusHQxd9aPZMeVKdUNE1GxyYCGE3puyBbimTIURPhVB8DawWT8mrSKu6pNvtxXMFU09awEQzfkmUY7AOmsmYMde7wyKhMK2+3xzsIbqhMT5ZlcxkX87cHT2fNRb8zptv5NLXimRhnI0hiFtlcxf8nvQhyec4wKjFdiiiqCVqPsWGmO7P/cbRTfryr1OOVVID1P5vRMapc4kgbIG7VpgjSbXT1gqhE4nggcj/KjLcR6KVkD08fGJQbz0FjO+RXXwyYyXxP+G7sjciAr97HlsaqwZSkNpsbbb2urbYEbcaRZZkwy2YUNJ9Cbe9zGyK9TpcgKV8QG7Nri+SAtciOOawEn39T6iBGDtKSlM+VaxpaVML8OOStyIXEJFx9dw0Pv1RoPpsJ/zSSYKCNcZqLqDlLUBRfAL2kx92O+7jZfsc5A9eS1A+xc5RzT7BXEIpXFsHLzROV3U9wsfWyczD3kJaWhyIy2i8KnjpP0eQwX+Dhj5LEM5jr7oe6vnoUt5Q4YOwNvLrIklJiBE+M31JcMlzA9TVXQMLjPT5uPjibeBoBnovQ8uM18puL+M20jAe1t/VISj0TzG2DHxQSIitNOocdIdsEL+AhefBjLESYTyg+DnYgt/EEhi3DNhinC147daH7IsP5xUlWQZRDpu5qePEjXT4vFoaFSQjxDkb9t1ccZkFhfD4S/OPQ8/srshpyMDA6oIZOPkrsxoSJT7l1NDYb3m7e+PyrEx0/P2E9t/WP9OPQyyx0DXVPLiIgKPGVamF8nPbWWVWn7+HJuOOI8A1XQof+DiGzPgfvB9sEqsmn1A3UbDJFj91S3hY4C6FdHKzLRHnnI/T+6cOxpoJpiyncVg2tHhpNqS9ms2KIG6CWoyatcjXZtDykHoSKpQicjbm1AGeoXJogVWTqQXiajKrOGY+cizjVak98miAtqPegHmQ2dkoc9v2Mg6AqSj0ID6ijtSsPxRKH2DypPNqlUQ3i+N8aYVGU5rPZ6v8DM8FB6Mp4ZBcAAAAASUVORK5CYII=);
    width: 14px;
    height: 14px;
    background-size: 14px 14px;
    margin-right: 0;
    float: left;
    margin-top: 4px;
}


/* Quà tặng vip */
.wsgr-custom-field-wrapper {display: none;}
.single-product .dich-vu-vip {
    border: 1px solid var(--primary-color);
    border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    position: relative;
    padding: 30px 10px 10px;
    margin-top: 20px;
    font-size: 14px;
}

.single-product .dvv_title {
    font-weight: normal;
    font-size: 16px;
    background: var(--primary-color);
    padding: 5px 16px;
    border-radius: 20px;
    display: inline-block;
    position: absolute;
    top: -18px;
    left: 10px;
}

.dvv_title span {
    color: #fff;
    text-transform: uppercase;
}

.dvv_title span::before {
    font-family: 'fl-icons';
    content: "\e604";
    padding-right: 5px;
    /* color: var(--primary-color); */
}

.single-product .dich-vu-vip ul {
    list-style: none;
    margin-bottom: 0;
}
.single-product .dich-vu-vip ul li {
    margin-left: 0;
    cursor: pointer;
    margin-bottom:6px;
}
.single-product .dich-vu-vip li:before {
    content: '';
    display: inline-block;
    color: currentColor;
    margin-right: 10px;
    width: 16px;
    height: 16px;
    border: 1px solid #d2d2d2;
    border-radius: 50%;
    vertical-align: middle;
    margin-bottom: 3px;
}
.single-product .dich-vu-vip li.chosen:before {
    content: '' !important;
    background-image: url(data:image/png;base64,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);
    background-color: #288ad6;
    border: none;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    opacity: 1 !important;
    background-position: center center;
    background-size: 12px;
    background-repeat: no-repeat;
}

/* css sàn tmdt */
.btn-mua-hang{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
}

.btn-san{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:90px;
    padding:14px 10px;
    border-radius:8px;
    background:#fff;
    text-decoration:none;
    transition:.25s ease;
    overflow:hidden;
    border:1px solid #eee;
    box-shadow:
        0 2px 8px rgba(0,0,0,.04),
        0 8px 20px rgba(0,0,0,.03);
}

.btn-san img{
    width:34px;
    height:34px;
    object-fit:contain;
    transition:transform .25s ease;
}

.btn-san span{
    font-size:13px;
    font-weight:600;
    line-height:1.4;
    text-align:center;
}

.btn-san:hover{
    transform:translateY(-3px);
    box-shadow:
        0 6px 16px rgba(0,0,0,.08),
        0 12px 28px rgba(0,0,0,.06);
}

.btn-san:hover img{
    transform:scale(1.08);
}

/* Lazada */
.lazada-san{
    background:linear-gradient(135deg,#fff,#fff4f8);
    border-color:#ffd7e7;
}

.lazada-san span{
    color:#d6006e;
}

/* Shopee */
.shopee-san{
    background:linear-gradient(135deg,#fff,#fff5f1);
    border-color:#ffd7ca;
}

.shopee-san span{
    color:#ee4d2d;
}

/* Tiki */
.tiki-san{
    background:linear-gradient(135deg,#fff,#f3f8ff);
    border-color:#d7e7ff;
}

.tiki-san span{
    color:#1677ff;
}

/* mobile */
@media (max-width:549px){

    .btn-mua-hang{
        gap:8px;
    }

    .btn-san{
        gap: 6px;
        min-height:82px;
        padding:12px 8px;
    }

    .btn-san img{
        width:30px;
        height:30px;
    }

    .btn-san span{
        font-size:12px;
    }
}

/* Phiên bản khác */
.single-product .product-summary .slider-phien-ban-khac {
    margin-bottom: .5em;
}

.single-product .product-summary .phien-ban-khac {
    background: #fff;
    border: 1px solid #ddd;
    box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .15);
    border-radius: 8px;
    text-align: center;
    padding: .1em;
    margin: .3em;
    width: 25% !important;
    max-width: 25% !important;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.single-product .product-summary .phien-ban-khac a {
    display: block;
    padding: .4em .2em;
    text-decoration: none !important;
}

.single-product .product-summary .phien-ban-khac:not(.active):hover {
    border-color: #bbb;
    box-shadow: 0 3px 8px 0 rgba(0, 0, 0, .18);
}

.single-product .product-summary .phien-ban-khac h4 {
    margin-bottom: 0;
    font-weight: 400;
    font-size: 14px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    width: calc(100% - 28px);
    margin: auto;
    color: #333;
    transition: color .2s ease;
}

.single-product .product-summary .phien-ban-khac p {
    margin-bottom: 0;
}

.single-product .product-summary .phien-ban-khac span.amount {
    font-weight: 400;
    font-size: 14px;
    color: var(--fs-color-base);
    transition: color .2s ease;
}

.single-product .product-summary .phien-ban-khac ins {
    text-decoration: none;
}

.single-product .product-summary .phien-ban-khac del span.amount {
    font-size: 12px;
    color: #bbb;
}

.single-product .product-summary .phien-ban-khac.active {
    border-color: var(--primary-color, #222);
    pointer-events: none;
}

.single-product .product-summary .phien-ban-khac.active h4 {
    font-weight: 600;
    color: #111;
}

.single-product .product-summary .phien-ban-khac.active span.amount {
    font-weight: 600;
    color: var(--primary-color);
}

.single-product .product-summary .slider-phien-ban-khac button.flickity-button.flickity-prev-next-button {
    background: #e1e1e1 !important;
    border: 1px solid #e6e7eb;
    border-radius: 15px;
    width: 25px !important;
    height: 25px;
    min-height: 25px;
    transform: translate(0);
    box-shadow: none;
    top: -30px;
    transition: background .2s ease;
}

.single-product .product-summary .slider-phien-ban-khac button.flickity-button.flickity-prev-next-button:hover {
    background: #d0d0d0 !important;
}

.single-product .product-summary .slider-phien-ban-khac button.flickity-button.flickity-prev-next-button.previous {
    left: calc(100% - 65px) !important;
}

.single-product .product-summary .slider-phien-ban-khac button.flickity-button.flickity-prev-next-button.next {
    right: 0 !important;
    left: auto;
}

.single-product .product-summary .slider-phien-ban-khac button.flickity-button.flickity-prev-next-button svg.flickity-button-icon {
    top: 0;
    left: 0;
    transform: translate(0);
    margin: 0;
    padding: 5px !important;
    width: 28px;
    height: auto;
}

.single-product .product-summary .slider-phien-ban-khac .flickity-prev-next-button .arrow,
.single-product .product-summary .slider-phien-ban-khac .flickity-prev-next-button svg {
    fill: #999;
    transition: fill .2s ease;
}

.single-product .product-summary .slider-phien-ban-khac button.flickity-button.flickity-prev-next-button:hover svg {
    fill: #666;
}

/* Tablet (≤ 849px) */
@media only screen and (max-width: 849px) {
    .slider-phien-ban-khac .flickity-prev-next-button {
        display: block;
    }

    .single-product .product-summary .phien-ban-khac {
        width: 33% !important;
        max-width: 33% !important;
    }
    .row-slider .flickity-prev-next-button {
        background-color: transparent !important;
        box-shadow: none !important;
        opacity: .8;
        transform: translateX(0) !important;
        width: 20px !important;
    }

}

/* ≥ 550px giữ đúng 3 cột */
@media only screen and (min-width: 550px) {
    .single-product .product-summary .phien-ban-khac.cot-2 { width: 50% !important; max-width: 50% !important; }
    .single-product .product-summary .phien-ban-khac.cot-3 {
        width: 33% !important;
        max-width: 33% !important;
    }
}

/* Mobile (≤ 549px) — tất cả về 2 cột */
@media only screen and (max-width: 549px) {
    .single-product .product-summary .phien-ban-khac {
        width: 50% !important;
        max-width: 50% !important;
    }
}
/* end css Phiên bản khác */

/* css mô tả ngắn sản phẩm */
.single-product .product-short-description {
    margin-bottom: 15px;
    position: relative;
}

.single-product .product-short-description ul {
    list-style: none;
    margin-bottom: 0;
}

.single-product .product-short-description ul li {
    display: block;
    overflow: hidden;
    margin-left: 0;
    margin-bottom: .5rem
}

.single-product .product-short-description ul li::before {
    content: "•";
    color: #288ad6;
    margin-right: 5px;
    font-size: 24px;
    font-weight: 700;
    display: inline-block;
    vertical-align: middle;
    line-height: 1rem;
    margin-bottom: 6px
}

/* css product gallery */
.single-product .product-gallery .product-video-popup i[class^=icon-play]{top:0}
.single-product .product-gallery .product-video-popup i:hover[class^=icon-play]{
    color: var(--primary-color);
}

.single-product .product-gallery .image-tools a.zoom-button { display:none; }

.single-product .product-gallery .image-tools a.button.is-outline {
    color: unset !important;
    border: 1px solid #cccccc;
    text-transform: unset !important;
    font-weight: unset !important;
    letter-spacing: unset !important;
    padding: unset;
    margin-right: unset;
    margin-left: unset;
}

.single-product .product-gallery .image-tools img {
    padding: 2px;
    width: 34px;
    height: 34px;
    transition: unset;
}

.product-gallery-slider img, .product-thumbnails img {
    border-radius: 6px;
}

.single-product .product-gallery .image-tools a.button.is-outline:hover {
    background-color: #fff;
}

.single-product .product-gallery .product-thumbnails>.flickity-viewport>.flickity-slider>.col a {
    border: 1px solid #dfdfdf;
    border-radius: 4px;
    padding: 10px;
}

.single-product .product-gallery .product-thumbnails {
    margin-bottom: 15px;
}

.single-product .product-gallery .product-thumbnails>.flickity-viewport>.flickity-slider>.col.is-selected a {
    border: 1px solid var(--primary-color);
}

.single-product .product-gallery .product-thumbnails>.flickity-viewport>.flickity-slider>.col a img {
    display: block;
    -webkit-transform: unset;
    transform: unset;
    margin-bottom: 0;
}

.single-product .product-gallery .product-thumbnails>.flickity-viewport>.flickity-slider>.col a:hover img {
    -webkit-transform: unset;
    transform: unset;
}

@media only screen and (max-width: 849px) {
    .single-product .product-gallery .product-thumbnails>.flickity-viewport>.flickity-slider>.col a {padding: 5px}
    
    .single-product .product-gallery .product-thumbnails .flickity-prev-next-button {
        opacity: .6;
        top: 30%;
        bottom: 30%;
    }
    .single-product .product-short-description {
        display: none;
    }
}

/* CSS - COMBO MUA KÈM */
.fxct-combo {
    margin: 20px 0;
    padding: 15px;
    background: #fff;
    border-radius: 20px;
    border: 2px solid #f5f5f5;
    box-shadow: 0 8px 25px rgba(0,0,0,0.06);
    overflow: hidden;
}

.fxct-combo .combo-title {
    margin: 0 0 24px;
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    color: #ee4d2d;
    position: relative;
}

.fxct-combo .combo-title::after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 5px;
    background: #ee4d2d;
    border-radius: 3px;
}

.fxct-combo .combo-title::before {
    content:'';
    width:34px;
    height:34px;
    flex:none;
    background:url('images/fire-icon-combo.gif') no-repeat center;
    background-size:contain;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
}

/* Danh sách sản phẩm */
#fxct-combo-form {
    margin-bottom: 0;
}
.fxct-item {
    display: flex;
    align-items: center;
    padding: 16px 0;
    border-bottom: 1px dashed #eee;
    position: relative;
}

.fxct-item:last-child { border-bottom: none; }
.fxct-item.main { order: -1; padding-top: 0; }
.fxct-item.main:before {
    content: "\e00c";
    font-family: 'fl-icons';
    position: absolute;
    left: 45%;
    margin: 0;
    bottom: -8px;
    padding: 0 20px;
    font-size: 16px;
    color: #ee4d2d;
    font-weight: bold;
    background-color: #fff;
    text-align: center;
    line-height: normal;
}

/* Checkbox */
.fxct-checkbox {
    position: relative;
    display: inline-block;
    width: 52px;
    height: 30px;
    margin-right: 16px;
    flex-shrink: 0;
}

.fxct-checkbox input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.fxct-checkbox-custom {
    position: absolute;
    cursor: pointer;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: #ccc;
    transition: background-color .25s ease;
    border-radius: 30px;
}

.fxct-checkbox-custom:before {
    position: absolute;
    content: "";
    height: 24px;
    width: 24px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: transform .25s ease;
    border-radius: 50%;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.fxct-check:checked + .fxct-checkbox-custom {
    background-color: #ee4d2d;
}

.fxct-check:checked + .fxct-checkbox-custom:before {
    transform: translateX(22px);
}

.fxct-check:focus-visible + .fxct-checkbox-custom {
    outline: 2px solid #ee4d2d;
    outline-offset: 2px;
}

/* Disabled item */
.fxct-item:not(.main) :is(.fxct-info, .fxct-thumb-wrap) {
    transition: opacity .25s ease;
}

.fxct-item:not(.main):has(.fxct-check:not(:checked)) :is(.fxct-info, .fxct-thumb-wrap) {
    opacity: .55;
    pointer-events: none;
}

/* Ảnh sản phẩm */
.fxct-thumb-wrap {
    position: relative;
    width: 80px;
    height: 80px;
    border-radius: 12px;
    overflow: hidden;
    margin-right: 16px;
    flex-shrink: 0;
    border: 1px solid #eee;
}

.fxct-thumb-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s;
}

.fxct-thumb-wrap:hover img {
    transform: scale(1.1);
}

/* Badge giảm giá */
.fxct-badge {
    position: absolute;
    bottom: 0;
    left: 0;
    background: #ee4d2d;
    color: #fff;
    font-size: 11px;
    font-weight: bold;
    padding: 3px 8px;
    border-radius: 12px;
    z-index: 2;
    box-shadow: 0 2px 6px rgba(238,77,45,0.4);
}

/* Thông tin + giá */
.fxct-info {
    flex: 1;
    min-width: 0;
}

.fxct-info b {
    color: #ee4d2d;
    font-size: 14px;
    display: block;
    margin-bottom: 4px;
}

.fxct-label-deal {
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
    border: 1px solid #ee4d2d;
    color: #ee4d2d;
    background-color: #fff;
    height: 18px;
    line-height: 16px !important;
    padding: 0 6px;
    margin: 0 8px 0 0;
    font-size: 11px;
    font-weight: 600;
    border-radius: 4px;
    box-sizing: border-box;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    max-width: 80px;
}

.fxct-info .price {
    font-size: 19px !important;
    font-weight: 700;
    color: #ee4d2d;
}

.fxct-info del {
    color: #999;
    font-size: 14px;
    margin-left: 8px;
}

/* Variation */
.fxct-variation-wrap {
    margin-top: 8px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.fxct-variation-option {
    padding: 6px 14px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 13px;
    cursor: pointer;
    transition: all .2s;
}

.fxct-variation-option.active,
.fxct-variation-option:hover {
    background: #ee4d2d;
    color: #fff;
    border-color: #ee4d2d;
}

/* Tổng tiền */
.fxct-total {
    text-align: center;
    margin: 20px 0 20px;
    padding: 10px;
    background: linear-gradient(135deg, #fff8f5, #fff0eb);
    border-radius: 8px;
    font-size: 22px;
    font-weight: bold;
    color: #ee4d2d;
    border: 2px dashed #ee4d2d;
}

.fxct-orig-total-price del { color: #aaa; margin: 0 8px; }

/* Nút mua combo */
.fxct-add {
    display: block;
    width: 100%;
    padding: 18px;
    margin-top: 12px;
    background: linear-gradient(135deg, #ee4d2d, #ff6b35);
    color: white !important;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    line-height: normal;
    border: none;
    border-radius: 16px;
    box-shadow: 0 8px 20px rgba(238,77,45,0.4);
    transition: all .3s;
    cursor: pointer;
}

.fxct-add {
    transition: all 0.3s ease;
}

.fxct-add:hover:not(:disabled) {
    transform: translateY(-3px);
    box-shadow: 0 15px 30px rgba(238, 77, 45, 0.5);
}

.fxct-add p { margin: 0 0 6px 0; font-size: 22px; }
.fxct-add i { font-style: normal; font-size: 17px; opacity: 0.95; }

/* fxct msg error */
.fxct-msg {
    margin-top: 10px;
    text-align: center;
    min-height: 18px;
}

.fxct-msg .error {
    color: #e74c3c;
    font-size: 13px;
    font-weight: 500;
}

/* fxct add loading */
.fxct-add.loading {
    opacity: .7;
    pointer-events: none;
}

.fxct-add:disabled,
.fxct-add.disabled {
    opacity: .55;
    cursor: not-allowed;
    box-shadow: none;
    transform: none !important;
}


/* Label cho sản phẩm chính combo trang shop */
.fxct-combo-badge-shop {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-direction: column;
}

.fxct-combo-badge-percent {
    background: #ee4d2d;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 6px;
    border-radius: 10px;
    line-height: 1.4;
    white-space: nowrap;
    box-shadow: 0 2px 6px rgba(238,77,45,.35);
}

.fxct-combo-badge-shop {
    position: absolute;
    top: 50px;
    left: 0;
    z-index: 1;
    pointer-events: none;
}

.fxct-combo-badge-shop img {
    width:34px;
    height:auto;
}

/* Label cho sản phẩm chính trong combo trang cart/ checkout */
.fxct-combo-label-main {
    display: block;
    color: var(--primary-color);
    font-size: 13px;
    font-weight: 600;
}

/* Label cho addon trang cart/ checkout */
.fxct-combo-label-addon {
    font-weight: 600;
    font-size: 13px;
    display: block;
}

.fxct-combo-label-main::before, .fxct-combo-label-addon::before, .woocommerce-order-received .woocommerce-table--order-details td.product-name small::before {
    content: '';
    width: 26px;
    height: 26px;
    background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAMAAADypuvZAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAFTUExURUdwTOz98u398+/69Or67+r69Oz98+v78+z+8+398u//7+3+9O399Oz+8u399O3+8u3+8+z88+f37+//9+/39+f/7+z98u398+z89O//8+399O///+z989//7+398uz88uz89O/98+v98+398+v98uz98ur89O/89Oz99Or88uz989H63wOYVRykZh2kZrfuzrftzdL64Nj75OT87eP87dT64d/86d776d376NP64NP74EO2gIPVq4TVq8T01tf65NX74uj88On98dn75eX87uv98hCeXcT018Tz1jawd3fPojexeCmqb+L87OH86uD869n65eD76tz76N/76tf749b74+H769X649r75er98ur88h2lZrjuzjaweKrnxUO3gGrJmWnImWrJmtX74eP77db64tT64tb646roxTexd6roxrftzoTWq0O3gZ7ivZ3hvZ3hvKF0uEcAAAAqdFJOUwDfbzAwMO9Av48Q39/fj9/PvyAgICDv718/nxCQEN9gn2/Pz4+fYF+fYLEo/qIAAALYSURBVEjHlZbXQyIxEIcDKoK9nHq2s1/5kqWrKKiAvetZzt6u9/v/n+5hdyFZqr83Jvsxk8lMMkKUqmnibVcnQGewY6JJ1KHmjgEMtQ3V4pqDlFHXm2cjAG0vKiDDI84XV4nU0WxMytjXlVTiyjF2tJRjelvt1bWVmNR1lKjsrMHe/6dZWaLZcwACJQl5DUBuRZbV5xwALz1+ADiJyQpaOAbA8NU7ADAvq2geIKDta7i1JuNQbcUcjtTBOFRHITiAE1lTxwDNDtQK5GK1oYUcELSZMYAPsg7Fi666gHNzdWsnbSm1cbsUNe0J11UDgFEHW48bylF42awN19UQkNRXopZSu79upPyWud+VUkatcGFtDQg5aVg1mfAfz29jVwE7ukvdkaX2Nj1MpJjAdaBR+D3RPapwZcZOhV+EgPfaR0pFqjAyBYyLIKA1REb9rsbIC2BSdJonu62WqjHyC+ATADE9DT+klNIKR4vMdlorJQABoP2TUg4bjhb8ODZbVaCIpcKF2MpDRng3LuUyd9rhOuF1mpWXdhMRsdwcZNRucf0U8Ikus4p21K23IdJ6QuNAtxgyD3d5Q/01GfO4U0CopIwePO2wZamnkjJqAC61TCxbak+jtvb0NEhpF6wIAHHNHLFUuNCw/zw1cQH4hBAhYE2alEov3Un5M7OtPHWUAGaEEM0AWWPvD263q40nvU9kFjs6IYLefpcykvl+rdT1/c6mad8HJu33D8+uKupUezqCQL6Oy3Ix76Sh4OqwNnQA0ONe5iGAuVrMHM79ZaulvQ5qDsA3Wnyg+gI1qTmA/h5jsgHgsGI2Fg8oHFFRYwDkzyo8F/lyD7UQTQEA9rOlSNaeJPobSweJvnZ7yEiumoHF12y7r6fcyNISciaa9WQqfrYo5eLH1VRy3TGGRitMR66zUnUPVpnD3k09GxFCiMYZj7v+6cF6hstG/3T3K4BXU+P+MikT/wHeIHSkkfRw5wAAAABJRU5ErkJggg==) no-repeat center top;
    background-size: 100% auto;
    display: inline-block;
    vertical-align: middle;
    margin-right: 2px;
}

.woocommerce-mini-cart li>.fxct-combo-label-addon::before {
    display: none;
}

.woocommerce-mini-cart li>.fxct-combo-label-addon a {
    display: inline-block !important;
}

/* Link trong label addon trang cart/ checkout */
.fxct-combo-label-link {
    color: var(--primary-color);
    text-decoration: underline;
}

.fxct-combo-label-link:hover {
    color: #c9302c !important;
}

/* Label trong order received */
.fxct-order-saving-banner {
    margin: 0 0 20px;
    padding: 14px 18px;
    background: #f8fff0;
    border-left: 4px solid #4caf50;
    border-radius: 6px;
    font-size: 15px;
    color: #2e7d32;
}

/* fxct all combor */
.fxct-combo-all-wrapper {
    margin: 20px 0;
}

.fxct-combo-all-title {
    text-align: center;
    margin-bottom: 20px;
}

.fxct-combo-all-title h3 {
    font-size: 1.6rem;
    text-transform: uppercase;
    color: #ee4d2d;
    margin: 0;
}

.fxct-combo-empty {
    text-align: center;
    padding: 40px 20px;
    color: #999;
    font-size: 15px;
}

/* fxct combo slider */
.fxct-combo-slider-wrapper {
    margin: 0 0 20px;
}

.fxct-combo-slider-wrapper>.equalize-box {
    border-radius: 0 0 10px 10px;
    background: linear-gradient(180deg, #f53d2d, #f63);
}

@media (min-width: 850px) {

    .fxct-combo-slider-wrapper {
        position: relative;
        padding-top: calc(100% * 320 / 1920);
    }

    .fxct-combo-slider-wrapper::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        aspect-ratio: 1920 / 320;
        background: url("images/banner-combo-deal-hot-desktop.webp") center/cover no-repeat;
        border-radius: 10px 10px 0 0;
    }

    .fxct-combo-slider-title {
        display: none !important;
    }
}

/* css fxct combo slider button */
.fxct-combo-slider-wrapper .slider-nav-simple .button,
.fxct-combo-slider-wrapper button,
.fxct-combo-slider-wrapper input[type=button],
.fxct-combo-slider-wrapper input[type=reset],
.fxct-combo-slider-wrapper input[type=submit] {
    min-height:auto
}

.fxct-combo-slider-wrapper .flickity-prev-next-button {
    position: absolute;
    margin: 0;
    height: 60px;
    width: 30px;
    padding: 10px;
    border: none;
    left: -20px;
    background: rgba(255, 255, 255, .8);
    box-shadow: 0 4px 4px rgba(0, 0, 0, .25);
    border-radius: 4px 0 0 4px!important;
    z-index: 1;
    cursor: pointer;
    -webkit-transform: translateX(0) !important;
    transform: translateX(0) !important;
}

.fxct-combo-slider-wrapper .flickity-prev-next-button.previous {
    left: 0;
    border-radius: 0 4px 4px 0 !important;
}

.fxct-combo-slider-wrapper .flickity-prev-next-button.next {
    right: 0;
    left: unset;
}

.fxct-combo-slider-wrapper .flickity-prev-next-button svg {
    display: none;
}

.fxct-combo-slider-wrapper .flickity-prev-next-button::after {
    content: '';
    border-top: 3px solid #666;
    border-right: 3px solid #666;
    height: 20px;
    width: 20px;
    position: absolute;
    top: 20px;
    left: 10px;
    z-index: 1;
    transform: rotate(-135deg);
}
.fxct-combo-slider-wrapper .button.disabled,
.fxct-combo-slider-wrapper .button[disabled],
.fxct-combo-slider-wrapper button.disabled,
.fxct-combo-slider-wrapper button[disabled] {
    pointer-events: none;
    opacity: .5;
}

.fxct-combo-slider-wrapper .flickity-prev-next-button.next::after {
    transform: rotate(45deg);
    right: 10px;
    left: unset;
}

.fxct-combo-slider-wrapper .flickity-prev-next-button {
    top: auto;
    bottom: 50%;
}

@media (max-width: 849px) {
    .fxct-item {
        flex-direction: column;
        text-align: center;
        padding: 20px 0;
    }
    .fxct-checkbox { margin: 0 auto 12px; }
    .fxct-thumb-wrap { margin: 0 auto 12px; }
    .fxct-info { text-align: center; }
}

/* FXCT Timer — Bộ đếm ngược combo */

.fxct-timer-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 14px;
    background: #fff5f0;
    border: 1px dashed #f07050;
    border-radius: 8px;
    margin-bottom: 20px;
    flex-wrap: wrap;
    justify-content: center;
}

.fxct-timer-label {
    font-size: 13px;
    color: #c0392b;
    font-weight: 500;
    white-space: nowrap;
}

.fxct-timer-clock {
    display: flex;
    align-items: center;
    gap: 4px;
}

.fxct-timer-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #e74c3c;
    border-radius: 6px;
    padding: 4px 8px;
    min-width: 42px;
    line-height: 1;
}

.fxct-timer-hh,
.fxct-timer-mm,
.fxct-timer-ss {
    font-size: 20px;
    font-weight: 600;
    color: #fff;
    letter-spacing: .02em;
    font-variant-numeric: tabular-nums; /* giữ width cố định, không nhảy */
    min-width: 28px;
    text-align: center;
}

.fxct-timer-unit {
    font-size: 9px;
    color: rgba(255, 255, 255, .75);
    text-transform: uppercase;
    letter-spacing: .04em;
    margin-top: 2px;
}

.fxct-timer-sep {
    font-size: 20px;
    font-weight: 600;
    color: #e74c3c;
    margin: 0 1px;
    line-height: 1;
    align-self: flex-start;
    padding-top: 4px;
}

/* Khi combo expired */
.fxct-combo--expired .fxct-timer-wrap {
    background: #f5f5f5;
    border-color: #ddd;
}

.fxct-combo--expired .fxct-timer-block {
    background: #aaa;
}

/* Responsive */
@media (max-width: 549px) {
    .fxct-timer-wrap {
        padding: 8px 10px;
        gap: 8px;
    }

    .fxct-timer-hh,
    .fxct-timer-mm,
    .fxct-timer-ss {
        font-size: 17px;
    }

    .fxct-timer-block {
        min-width: 36px;
        padding: 4px 6px;
    }
}

/* Dưới 5 phút — cảnh báo */
.fxct-timer--urgent .fxct-timer-block {
    background: #e67e22;
    transition: background 0.5s ease;
}

.fxct-timer--urgent .fxct-timer-label {
    color: #d35400;
}

/* Dưới 1 phút — khẩn cấp */
.fxct-timer--critical .fxct-timer-block {
    background: #c0392b;
}

@media (prefers-reduced-motion: no-preference) {
    .fxct-timer--critical .fxct-timer-wrap {
        animation: fxct-shake 0.4s ease infinite;
    }
}

@keyframes fxct-shake {
    0%, 100% {
        transform: translateX(0);
    }

    25% {
        transform: translateX(-3px);
    }

    75% {
        transform: translateX(3px);
    }
}

/* END CSS - COMBO MUA KÈM */

/* css product footer */
.woocommerce-tabs {
    padding-left: 0;
    padding-right: 0;
}

.product-extra .product-section {
    border-top: 0;
}

.woocommerce-tabs .section-title, h3.product-section-title, h3.dhd-rv-title {
    display: block;
    font-size: 20px;
    font-weight: 600;
    margin: 0 0 15px;
    padding: 15px;
    line-height: 1.3;
    border-bottom: 1px solid #ececec;
    letter-spacing: 0.3px;
    text-transform: uppercase;
}

.product-extra h3.dhd-rv-title {
    padding-left: 0;
    padding-right: 0;
}

.woocommerce-tabs .section-title span {
    text-transform: uppercase;
}

@media only screen and (min-width: 850px) {
    .product-footer .product-right-content {
        padding-left: 15px !important;
    }
}

/* CSS box thông số kỹ thuật */
.product-footer .info-product-spec {
    background-color: #fff;
    border-radius: 10px;
    margin-bottom: 15px;
}

h2.tskt-title {
    display: block;
    font-size: 20px;
    font-weight: 600;
    margin: 0 0 15px;
    padding: 15px 0;
    border-bottom: 1px solid #ececec;
    letter-spacing: 0.3px;
    text-transform: uppercase;
}


.single-product .product_table {
    padding: 15px;
}

.info-product-spec .spec_loop h3 {
    font-size: 18px;
    display: inline-block;
    text-align: center;
    /* text-transform: uppercase; */
    font-weight: normal;
    margin-bottom: 0;
    border-bottom: 1px solid #ececec;
    padding-bottom: 15px;
}

.info-product-spec .spec_loop h3::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 5px;
    position: relative;
    bottom: 2px;
    vertical-align: middle;
    background: url(images/icon-product-specifications.svg) no-repeat center center / contain;
}

.single-product .product_table tr:nth-child(even), .entry-content table tr:nth-child(even) {
    background-color: #f9f9f9;
}

.single-product .product_table td:first-child, .single-product .product_table th:first-child {
    width: 40%;
    padding-left: .5em;
}

.single-product .product_table td, .single-product .product_table th {
    text-transform: none;
    font-weight: normal;
    letter-spacing: 0;
    padding: 10px 0;
    font-size: 16px;
}

.single-product .product_table td p {
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0;
}

.single-product .product_table tr:hover, .entry-content table tr:hover {
    background-color: #eaeaea;
    transition: background-color 0.3s ease;
}

.single-product .product_table .woocommerce-product-attributes {
    margin-bottom: 10px;
}

a.see-more {
    color: var(--fs-color-base);
    text-shadow: none;
    font-weight: 400;
    position: relative;
    width: calc(100% - 30px);
    font-size: 14px;
    padding: 5px 10px;
    border: 1px solid var(--primary-color) !important;
    border-radius: 4px;
    -webkit-transition: unset;
    transition: unset;
    margin: auto;
    margin-bottom: 15px;
}

a.see-more i {
    top: 0;
}

span.title-popup {
    display: block;
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    padding: 10px 30px;
}

.spec_popup_more {
    margin-top: 10px;
    background: #fffbea;
    border-left: 4px solid #288ad6;
    border-radius: 5px;
}

span.title-popup-more {
    display: block;
    font-weight: bold;
    margin-bottom: 0.5rem;
}

.hinh-anh-chi-tiet picture, #tskt_viewFull picture { display: block; }

.product-specs-image { 
    margin: 0 auto;
    max-width: 100%;
    height: auto;
    
}

#tskt_viewFull { max-width: 650px; width: 100%; padding: 15px; }

.spec_loop tbody tr:nth-child(n+9) { display: none; }
.spec_popup tbody tr { display: table-row !important; }

.info-product-spec .see-more { display: none; }

.info-product-spec:has(.spec_loop tbody tr:nth-child(9)) .see-more,
.info-product-spec.has-chct .see-more { display: block; }

/* Xem thêm nội dung */
/* ── Danh mục sản phẩm ──────────────────────────────── */
.category-page-row .term-description {
    background-color: #fff;
    padding: 15px;
    margin-bottom: 15px;
    transition: .3s;
    border-radius: 10px;
}

.category-page-row .term-description {
    overflow: hidden;
    position: relative;
    padding-bottom: 40px;
}

.category-page-row .term-description ul {
    list-style: none;
}

/* ── Trang sản phẩm — selector mới khớp tabs.php ───── */
.single-product .woocommerce-tabs .section-content {
    overflow: hidden;
    position: relative;
    padding-bottom: 40px;
    padding-top: 0;
}

/* ── Nút xem thêm / thu gọn chung ───────────────────── */
.add_readmore_taxonomy_flatsome,
.add_readmore_flatsome {
    text-align: center;
    cursor: pointer;
    position: absolute;
    z-index: 10;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    background: #fff;
}

.add_readmore_taxonomy_flatsome:before,
.add_readmore_flatsome:before {
    height: 55px;
    margin-top: -45px;
    content: '';
    background: linear-gradient(to top, #fff 20%, rgba(255,255,255,0));
    display: block;
}

.add_readmore_taxonomy_flatsome a,
.add_readmore_flatsome a {
    display: inline-block;
    box-shadow: none;
    font-size: 14px;
    border: 1px solid #666;
    border-radius: 5px;
    padding: 5px 10px;
    width: auto;
    margin-bottom: 10px;
}

.add_readmore_taxonomy_flatsome a:after,
.add_readmore_flatsome a:after {
    content: '';
    width: 0;
    border-top: 6px solid #666;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    display: inline-block;
    vertical-align: middle;
    margin: -2px 0 0 5px;
}

.add_readmore_taxonomy_flatsome:last-child a:after,
.add_readmore_flatsome:last-child a:after {
    transform: rotate(180deg);
}

.add_readmore_flatsome a:hover::after {
    border-top-color: var(--fs-experimental-link-color-hover);
}

.add_readmore_taxonomy_flatsome_less a,
.add_readmore_taxonomy_flatsome_show a:hover,
.add_readmore_flatsome_less a,
.add_readmore_flatsome_more a:hover {
    color: #288ad6;
    border-color: #288ad6;
}

.add_readmore_taxonomy_flatsome_show a:hover:after,
.add_readmore_flatsome_more a:hover:after {
    border-top-color: #288ad6;
}

.add_readmore_taxonomy_flatsome_less a:after,
.add_readmore_flatsome_less a:after {
    border-top: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #288ad6;
}

.add_readmore_taxonomy_flatsome_less:before,
.add_readmore_flatsome_less:before {
    display: none;
}

/* CSS Product sidebar */
#product-sidebar a{color: #333}
#product-sidebar a:hover{color: var(--fs-experimental-link-color-hover);}
.tintuc_lienquan, #product-sidebar .widget {
    background-color: #fff;
    padding: 15px;
    margin-bottom: 15px;
    border-radius: 10px;
}
.tintuc_lienquan .title_margin, #product-sidebar .widget-title,.blog-archive .widget-title {
    display: block;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    text-transform: uppercase;
    text-align: center;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px solid #ececec;
    letter-spacing: 0.3px;
}

/* ===== Danh sách ===== */

.news_list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0; /* Dùng border-top thay gap để có divider */
}

.news_list li {
    margin-bottom: 0;
}

.news_list li + li, #product-sidebar .widget ul li+li {
    border-top: 1px solid #ececec;
    padding-top: 12px;
    margin-top: 12px;
}

/* ===== Item link ===== */

.news_list li a {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    text-decoration: none;
}

.news_list li a:hover span {
    color: var(--fs-experimental-link-color-hover);
}

/* ===== Thumbnail ===== */

.news_list li.has-thumbnail a img,
.news_list li.has-thumbnail a .wp-post-image {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 6px;
    flex-shrink: 0;
}

/* ===== Tiêu đề bài viết ===== */

.news_list li span {
    font-size: 16px;
    line-height: 1.5;
    color: var(--fs-color-base);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    padding-top: 2px;
    transition: color 0.2s ease;
}


/* =============================================================================
   CSS Product Review — WooCommerce custom
   ============================================================================= */
 
#comments,
#review_form_wrapper {
    padding-bottom: 15px;
}
 
#comments .woocommerce-Reviews-title, #comments .comments-title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 20px;
    text-transform: unset;
}
 
 
/* =============================================================================
   BẢNG THỐNG KÊ RATING
   ============================================================================= */
 
.rating-table {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 8px;
    padding: 10px;
    margin: 0 0 30px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}
 
.rating-table > * {
    padding-bottom: 0 !important;
}
 
.rating-table__total {
    text-align: center;
}
 
.rating-table__total .title-rating {
    font-size: 16px;
    font-weight: 600;
    color: #333;
    margin-bottom: 8px;
}
 
.rating_total {
    font-size: 38px;
    font-weight: 700;
    color: #ffb400;
    line-height: 1.2;
}
 
.star-rating-custom {
    margin: 8px 0;
}
 
.star-rating-custom .star-rating {
    margin: 0 auto;
    text-align: center;
}
 
.review-count {
    font-size: 13px;
    color: #777;
}
 
/* Thanh bar sao — viền trái/phải ngăn cách các cột */
.bar-star {
    padding: 0 15px;
    border-right: 1px solid #f0f0f0;
    border-left: 1px solid #f0f0f0;
}
 
/* Rating bar rows */
.ptt-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0;
    cursor: pointer;
    border-radius: 6px;
    transition: background 0.2s ease;
}
 
.ptt-row:hover {
    background: #f9f9f9;
}
 
.ptt-row.active {
    background: #fff3e0;
}
 
/* Rows không có review: không cho click, không hover */
.ptt-row[data-count="0"] {
    cursor: not-allowed;
    pointer-events: none;
}
 
.ptt-row[data-count="0"] i.icon-star {
    color: #e0e0e0;
}
 
.ptt-col-1 {
    display: flex;
    align-items: center;
    gap: 4px;
    width: 40px;
    font-size: 14px;
}
 
.ptt-col-1 i.icon-star {
    font-size: 14px;
    color: #f5a623;
}
 
.ptt-col-2 {
    flex: 1;
    padding: 0 10px;
}
 
.ptt-meter-bar {
    height: 8px;
    background: #eee;
    border-radius: 10px;
    overflow: hidden;
}
 
.ptt-bar-temperature {
    height: 100%;
    background: linear-gradient(90deg, #ffc107 0%, #ff9800 100%);
    transition: width 0.4s ease;
}
 
.ptt-col-3 {
    width: 60px;
    text-align: right;
    font-size: 13px;
    color: #555;
    white-space: nowrap;
}
 
/* Nút CTA "Để lại đánh giá" */
.rating-table__cmt {
    display: flex;
    justify-content: center;
    align-items: center;
}
 
.rating-table__cmt .btn-ptt-c.button {
    background: var(--primary-color);
    border: none;
    color: #fff;
    font-weight: 600;
    border-radius: 6px;
    padding: 10px 20px;
    cursor: pointer;
    line-height: unset;
    margin: 0;
    transition: background 0.2s ease;
}
 
.rating-table__cmt .btn-ptt-c.button:hover {
    background: #0073aa;
}
 
.rating-table__cmt .btn-ptt-c.button:focus-visible {
    outline: 2px solid #0073aa;
    outline-offset: 2px;
}
 
 
/* =============================================================================
   THANH THÔNG BÁO LỌC (ptt-filter-wrap)
   ============================================================================= */
 
.ptt-filter-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #f8f8f8;
    padding: 10px 15px;
    margin-bottom: 15px;
    border-radius: 8px;
    font-size: 15px;
}
 
.ptt-filter-info .star-text i {
    font-size: 14px;
    color: #ffb400;
    margin-left: 4px;
}
 
.ptt-reset-inline .reset-filter-link {
    font-size: 13px;
    color: var(--fs-experimental-link-color);
    text-decoration: underline;
    cursor: pointer;
    transition: color 0.2s ease;
    font-weight: 500;
}
 
.ptt-reset-inline .reset-filter-link:hover {
    color: var(--fs-experimental-link-color-hover);
}
 
 
/* =============================================================================
   DANH SÁCH BÌNH LUẬN (commentlist)
   ============================================================================= */
 
.commentlist, .comment-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
 
.woocommerce-Reviews .commentlist li {
    padding: 0;
    margin-left: 0;
}
 
.woocommerce-Reviews .commentlist > li:not(:first-child) {
    border-top: 1px solid #ebf0f9;
    padding-top: 10px;
}
 
/* Avatar */
.comment-list li .avatar,
.commentlist li .avatar {
    width: 25px;
    padding: 0 !important;
    margin: 0 !important;
    height: auto !important;
}
 
/* Meta (tên, phone) */
.commentlist li .meta {
    font-size: 14px;
}
 
.commentlist li .meta .woocommerce-review__author-phone {
    padding: 0 10px;
}
 
/* Badge xác minh đã mua */
.woocommerce-review__verified {
    color: #28a745;
    font-weight: 500;
    font-style: normal;
    margin-left: 6px;
    font-size: 90%;
}
 
/* Badge quản trị viên */
.review_qtv {
    color: #d9534f;
    font-weight: 600;
    font-style: normal;
    font-size: 90%;
}
 
/* Ẩn tên tác giả khi là bypostauthor (đã hiện "Quản trị viên" thay thế) */
li.bypostauthor .woocommerce-review__author {
    display: none;
}
 
/* Star rating trong danh sách */
.woocommerce-Reviews .commentlist li .star-rating {
    float: none;
    display: inline-block;
    margin: 0 8px 0 0 !important;
    font-size: 12px;
}
 
/* Nội dung review inline */
.woocommerce-Reviews .commentlist li .description {
    display: inline;
    font-style: normal;
}
 
.woocommerce-Reviews .commentlist li .description p {
    margin-bottom: 0;
    display: inline;
}
 
/* Reply (children) */
.woocommerce-Reviews .commentlist li ul.children {
    margin: 15px 0 0 30px;
    padding-left: 0;
    border-left: 1px solid #e0e0e0;
}
 
.woocommerce-Reviews .commentlist li ul.children li:last-child {
    margin-bottom: 0;
}
 
 
/* =============================================================================
   THANH DƯỚI MỖI REVIEW (Like + Thời gian)
   ============================================================================= */
 
.review-comment__user-info {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    padding-top: 5px;
    flex-wrap: wrap;
}
 
/* Nút Like */
.review-comment__thank {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 2px 10px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    cursor: pointer;
    user-select: none;
    transition: border-color 0.2s ease;
}
 
.review-comment__thank:hover,
.review-comment__thank.liked {
    border-color: #0071a1;
}
 
.review-comment__thank:focus-visible {
    outline: 2px solid #0071a1;
    outline-offset: 2px;
}
 
.review-comment__thank svg {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    transition: fill 0.2s ease;
}
 
.review-comment__thank svg path[fill-rule="nonzero"] {
    fill: #666 !important;
    transition: fill 0.2s ease;
}
 
.review-comment__thank.liked svg path[fill-rule="nonzero"] {
    fill: #ff6b35 !important;
}
 
.review-comment__thank.liked span {
    color: #0071a1;
}
 
.rc-like-total {
    color: #666;
}
 
/* Ẩn số like khi = 0 */
.rc-like-count--hidden {
    display: none;
}
 
 
/* =============================================================================
   FORM ĐÁNH GIÁ (lightbox)
   ============================================================================= */
 
#review_form_wrapper .review-form-inner {
    border: none;
    padding: 0;
    overflow: hidden;
}
 
.comment-respond {
    margin-top: 15px !important;
    background: #fff !important;
    padding: 15px 15px 0 !important;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    position: relative;
}
 
.comment-reply-title {
    font-size: 18px !important;
    color: #333;
    margin-bottom: 10px;
}
 
/* Nút "×" cancel reply trong lightbox */
.comment-respond .comment-reply-title a {
    color: #fff;
    background: red;
    width: 30px;
    border-radius: 50%;
    height: 30px;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    line-height: 30px;
    position: absolute;
    top: 15px;
    right: 15px;
}
 
.comment-form {
    margin-bottom: 0;
}
 
/* Suggestions emoji */
.add-text-comment-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}
 
.add-text-comment-item {
    padding: 3px 6px;
    font-size: 14px;
    border: 1px solid #ddd;
    border-radius: 6px;
    cursor: pointer;
    user-select: none;
    transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}
 
.add-text-comment-item:focus-visible {
    outline: 2px solid #0073aa;
    outline-offset: 2px;
}
 
.add-text-comment-item.active {
    border-color: #0073aa;
    background-color: #0073aa;
    color: #fff;
}
 
/* Fields */
.comment-form .required {
    color: #f53d2d;
}
 
.comment-form-comment textarea {
    border: 1px solid #ddd;
    border-radius: 4px;
    resize: vertical;
}
 
textarea {
    min-height: 80px;
}
 
.comment-form-author,
.comment-form-email,
.comment-form-url {
    flex: 1 1 30%;
    min-width: 200px;
}
 
.comment-form input[type="text"],
.comment-form input[type="tel"],
.comment-form input[type="email"],
.comment-form input[type="url"] {
    width: 100%;
    padding: 8px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 14px;
}
 
.comment-form-cookies-consent {
    display: flex;
    align-items: center;
    gap: 10px;
}
 
.comment-form-cookies-consent input[type="checkbox"] {
    margin-bottom: 0.4em;
}
 
/* Submit */
.comment-form .form-submit {
    text-align: center;
}
 
.comment-form .submit {
    background-color: #0073aa;
    color: #fff;
    padding: 5px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
    transition: background-color 0.3s ease;
}
 
.comment-form .submit:hover {
    background-color: #005177;
}
 
.comment-form .submit:focus-visible {
    outline: 2px solid #005177;
    outline-offset: 2px;
}
 
 
/* =============================================================================
   RESPONSIVE
   ============================================================================= */
 
/* Desktop: 2 cột Họ tên + SĐT */
@media only screen and (min-width: 850px) {
    .comment-list ul.children {
        margin: 15px 0 0 30px;
        padding-left: 10px;
        border-left: 1px solid #e0e0e0;
    }
 
    .comment-form .comment-form-author,
    .comment-form .comment-form-phone {
        width: 50%;
    }
 
    .comment-form .comment-form-author {
        padding-right: 10px;
    }
 
    .comment-form .comment-form-phone {
        padding-left: 10px;
    }
}
 
/* Mobile */
@media (max-width: 849px) {
    .rating-table {
        flex-direction: column;
    }
 
    .rating-table .rating-table__total {
        border-bottom: 1px solid #f0f0f0;
        margin-bottom: 10px;
        padding-bottom: 10px !important;
    }
 
    .bar-star {
        padding: 10px 0;
        border: none;
    }
 
    .rating-table__cmt {
        margin: 5px 0 10px;
    }
 
    .ptt-col-3 {
        font-size: 12px;
        width: 52px;
    }
}


/* related-products */
.product-slider .related-products-wrapper {
    background: linear-gradient(0deg, #f53d2d, #f63);
    border-radius: 8px;
    border-top: unset;
    margin-bottom: 15px;
}

.product-slider .related h3.product-section-title {
    font-size: 1.5rem;
    color: #fff;
    background: transparent;
    padding: 15px 15px 0;
    max-width: 100%;
    margin-bottom: 0;
}

/* recently products */
.dhd-rv-container {
    position: relative;
    background: #fff;
    margin: 0 auto 20px;
    width: 100%;
}

/* home slider banner img */
.slider-banner .product-slider .flickity-prev-next-button {
    opacity: 1;
}
.slider-banner .product-slider .flickity-prev-next-button {
    bottom: auto;
    top: calc(50% - 30px);
}

/* slider banner shop page */
.banner-cate-box > .col {padding-left:0!important;padding-right:0!important}
.banner-cate-box .flickity-prev-next-button.previous {
    left: 0;
}
.banner-cate-box .flickity-prev-next-button.next {
    right: 0;
}

.banner-cate-box .slider-wrapper:hover .slider-nav-light .flickity-prev-next-button{opacity:1}

.banner-cate-box .slider-nav-light .flickity-prev-next-button{border-radius:5px;background:rgba(0,0,0,.3);width:48px;height:48px;color:#fff;opacity:0;top:calc(50% - 24px)}
.banner-cate-box .flickity-prev-next-button.next svg,.banner-cate-box .flickity-prev-next-button.previous svg{display:none}

.banner-cate-box .flickity-prev-next-button.previous::after{content:"‹";position:absolute;font-size:46px;display:inline-block;top:0;right:0;left:0;color:#fff;font-family:initial}

.banner-cate-box .flickity-prev-next-button.next::after{content:"›";position:absolute;font-size:46px;display:inline-block;top:0;right:0;left:0;color:#fff;font-family:initial}

.banner-cate-box .flickity-page-dots .dot{width:4px;height:4px;border:none}

.banner-cate-box .flickity-page-dots .dot.is-selected{background-color:#ef8a32!important}

.banner-cate-box .img .img-inner img {
    right: 0;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    top: 0;
    border-radius: 8px;
    position: relative;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
}


/* css slider button */
.product-slider .slider-nav-simple .button,
.product-slider button,
.product-slider input[type=button],
.product-slider input[type=reset],
.product-slider input[type=submit] {
    min-height:auto
}
.product-slider .flickity-prev-next-button,
.big-banner .flickity-prev-next-button {
    position: absolute;
    margin: 0;
    height: 60px;
    width: 30px;
    padding: 10px;
    border: none;
    left: -20px;
    background: rgba(255, 255, 255, .8);
    box-shadow: 0 4px 4px rgba(0, 0, 0, .25);
    border-radius: 4px 0 0 4px!important;
    z-index: 1;
    cursor: pointer;
    -webkit-transform: translateX(0) !important;
    transform: translateX(0) !important;
}
.product-slider .flickity-prev-next-button.previous,
.big-banner .flickity-prev-next-button.previous {
    left: 0;
    border-radius: 0 4px 4px 0 !important;
}
.product-slider .flickity-prev-next-button.next,
.big-banner .flickity-prev-next-button.next {
    right: 0;
    left: unset;
}
.product-slider .flickity-prev-next-button.next svg, 
.product-slider .flickity-prev-next-button.previous svg,
.big-banner .flickity-prev-next-button.next svg, 
.big-banner .flickity-prev-next-button.previous svg {
    display: none;
}
.product-slider .flickity-prev-next-button::after,
.big-banner .flickity-prev-next-button::after {
    content: '';
    border-top: 3px solid #666;
    border-right: 3px solid #666;
    height: 20px;
    width: 20px;
    position: absolute;
    top: 20px;
    left: 10px;
    z-index: 1;
    transform: rotate(-135deg);
}
.product-slider .button.disabled,
.product-slider .button[disabled],
.big-banner .button.disabled,
.big-banner .button[disabled],
.big-banner button.disabled,
.big-banner button[disabled] {
    pointer-events: none;
    opacity: .5;
}
.product-slider .flickity-prev-next-button.next::after,
.big-banner .flickity-prev-next-button.next::after {
    transform: rotate(45deg);
    right: 10px;
    left: unset;
}
.product-slider .flickity-prev-next-button {
    top: auto;
    bottom: 50%;
}


/* css category page */
.category-page-row {
    padding-top: 0;
}

.category-page-row>.col {
    padding: 0;
}

.category-page-row>.col.text-center {
    margin-bottom: 15px;
}

/* products category */
.category-page-row>.col .equalize-box {
    background: rgb(255 255 255);
    margin-bottom: 15px;
    border-radius: 0 0 10px 10px;
}

/* product small box */
.product-small.box .box-image {
    border-radius: 6px;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
}

.product-small .box-text {
    padding: 10px 0;
}

.product-small .box-text .title-wrapper {
    margin-bottom: 8px;
}

.product-small .woocommerce-loop-product__title a {
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 16px;
    max-height: 46px !important;
}

/* product box price */
span.amount {
    color: #e03232;
}

.price span.amount {
    font-size: 18px;
}

del span.amount {
    margin-right: 0;
    color: currentColor;
}

.price del span.amount {
    font-size: inherit;
    font-weight: 600;
}

.woocommerce-Price-currencySymbol {
    display: inline-block;
    vertical-align: top;
    font-size: .75em;
}

.price-prefix {
    display: none;
}

span.sale-percent {
    color: var(--primary-color);
    font-weight: 600;
    background: #fff0f0;
    padding: 1px 3px;
    border-radius: 3px;
}

.price-wrapper .price {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    line-height: 1.6;
}

.price-wrapper .price ins {
    order: 1;
}

.price-wrapper .price del {
    order: 2;
}

.price-wrapper .price .sale-percent {
    order: 3;
}

.custom-rating-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 13px;
    color: var(--fs-experimental-link-color);
}

.note_ship {
    display: flex;
    align-items: center;
    gap: 6px;
}

.note_ship .icon-ship {
    width: 24px;
    height: 24px;
    background: url(images/icon-free-shipping.png) no-repeat center center / contain;
}

.note_ship .content_ship {
    font-size: 13px;
    color: var(--fs-experimental-link-color);
}

@media only screen and (max-width: 549px) {
   .price-wrapper .price ins {
        flex-basis: 100%;
    }
}


/* category page title */
.shop-page-title, .category-page-title, .error404 #dhd_breadcrumbs {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.shop-cate-wap {
    position: sticky;
    top: 0;
    z-index: 2;
    
}

.shop-cate-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    padding: 15px;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    background: #fff;
    border-bottom: 1px solid #ddd;
}

.title-sort-total {
    width: auto;
    font-size: 22px;
    text-transform: uppercase;
    margin: 0;
    font-weight: 600;
    letter-spacing: 0.5px;
    order: 1;
}

/* css woocommerce-ordering */

.woocommerce-ordering {
    display:flex;
    gap:10px;
    align-items: center;
    order: 3;
}

.orderby-heading {
    font-size: 14px;
}

/* Desktop */
@media (min-width: 850px){

    .woocommerce-ordering select.orderby{
        position:absolute;
        left:-9999px;
        width:1px;
        height:1px;
        opacity:0;
        pointer-events:none;
    }
    
    .orderby-list{
        display:flex;
        gap:10px;
        list-style: none;
        margin-bottom: 0;
        align-items: center;
    }
    
    .orderby-list li {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 6px 12px;
        margin: 0;
        font-size: 14px;
        color: #333;
        text-transform: capitalize;
        font-weight: normal;
        border: 1px solid #ddd;
        border-radius: 5px;
        background: #fff;
        line-height: unset;
        letter-spacing: unset;
        cursor: pointer;
        transition: all 0.3s ease;
        margin-bottom: 0;
    }
    
    .orderby-list li.active {
        color: #fff;
        background: #1a73e8;
        border-color: #1a73e8;
        cursor: not-allowed;
        pointer-events: none;
    }
    
    .orderby-list li:hover, a.filter-button:hover {
        border-color: #1a73e8;
    }
}

/* Mobile */
@media (max-width: 849px){

    .woocommerce-ordering select.orderby{
        position:static;
        width: auto;
        height:auto;
        opacity:1;
        pointer-events:auto;
    }

    .woocommerce-ordering .orderby-list {
        display:none;
    }
}


/* Danh mục con archive */

.category-page-row .subcat-archive-wrap {
    background: #fff;
    padding: 15px;
    border-radius: 10px 10px 0 0;
}

.add-subcat-list{
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.add-subcat-list li{
    width: calc(12.5% - 14px);
    margin: 0;
}

.add-subcat-list a{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    text-decoration: none;
    color: #333;
    transition: all .25s ease;
}

.add-subcat-thumb{
    width: 72px;
    height: 72px;
    border-radius: 50%;
    object-fit: cover;
    border: 1px solid #eee;
    background: #fff;
    transition: all .25s ease;
}

.add-subcat-title{
    margin-top: 8px;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 500;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;

    overflow: hidden;
}

.add-subcat-list a:hover{
    color: #ee4d2d;
}

.add-subcat-list a:hover .add-subcat-thumb{
    transform: translateY(-2px);
    border-color: #ee4d2d;
    box-shadow: 0 4px 12px rgba(0,0,0,.08);
}

.add-subcat-thumb{
    width:70px;
    height:70px;
    border-radius:12px;
    padding: 5px;
}

@media (max-width: 849px){

    .add_subcat_archive_wrap{
        padding: 10px;
        overflow: hidden;
    }

    .add-subcat-list{
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 12px;
        padding-bottom: 5px;

        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }

    .add-subcat-list li{
        flex: 0 0 80px;
        width: auto;
    }

    .add-subcat-thumb{
        width: 60px;
        height: 60px;
    }

    .add-subcat-title{
        font-size: 12px;
    }
}

/* ─── Bộ lọc thuộc tính ─── */
.woocommerce-page .mfp-bg.off-canvas-center:not(.dark) {
    background-color: rgba(0 0 0 / .4);
}

.woocommerce-page .off-canvas-center .mfp-content {
    border: 1px solid #eee;
    background-color: #fff;
    box-shadow: 0 10px 10px 0 rgba(0, 0, 0, 0.1);
    border-radius: 4px;
    padding-top: 0;
}

#shop-sidebar .sidebar-inner {
    display: flex;
    flex-direction: column;
	gap: 20px;
    padding: 15px;
}

#shop-sidebar .sidebar-inner aside.widget {
    border-bottom: 1px solid #ececec;
    padding-bottom: 10px;
    margin-bottom: 0;
}

#shop-sidebar .sidebar-inner span.widget-title {
    font-size: 14px;
    display: block;
    margin-bottom: 5px;
}

#shop-sidebar .sidebar-inner .widget>ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

#shop-sidebar .sidebar-inner .widget>ul>li {
    border: 1px solid #ececec;
    border-radius: 8px;
    color: #333;
    font-size: 14px;
    line-height: 17px;
    margin: 0;
    padding: 6px 12px;
    text-align: center;
    line-height: 1.6;
}

#shop-sidebar .sidebar-inner .widget>ul>li> a {
    padding: 0;
}

#shop-sidebar .sidebar-inner .widget>ul>li.chosen a:before {
    display: none;
}

#shop-sidebar .sidebar-inner .widget ul li:hover, #shop-sidebar .sidebar-inner .widget ul li.chosen {
    border-color: #1a73e8;
}

.dhd-term-selected a {border: 1px solid #288ad6 !important;}
.btn-filter-cancel, .btn-filter-readmore {width: 1%;
    display: none;}

#shop-sidebar .sidebar-inner .woocommerce-widget-layered-nav-list__item span.count {
    display: none;
}

#shop-sidebar .sidebar-inner .ux-swatch-widget-layered-nav-list__graphic {
    width: 28px;
	height: 28px;
}

#shop-sidebar .sidebar-inner .ux-swatch__color ,#shop-sidebar .sidebar-inner .ux-swatch__img {
    border-radius: 99px;
}

#shop-sidebar .sidebar-inner li:hover .ux-swatch-widget-layered-nav-list__graphic:before,
#shop-sidebar .sidebar-inner li.chosen .ux-swatch-widget-layered-nav-list__graphic::before {
    display: none;
}

#shop-sidebar .sidebar-inner:has(.filter-show-all) aside.widget:first-child {
    width: 100%;
    text-align: center;
    padding: 15px 0;
}

.filter-show-all {
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.5px;
}

.category-filter-row {
     order: 2;
}

.category-filter-row:has(li.chosen) {
    flex: 0 0 100%;
    order: 4;
}

a.filter-button  {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    margin: 0;
    font-size: 14px;
    text-transform: capitalize;
    font-weight: normal;
    border: 1px solid #ddd;
    border-radius: 5px;
    background: #fff;
    line-height: unset;
    letter-spacing: unset;
    cursor: pointer;
    transition: all 0.3s ease;
}

.category-filter-row:has(li.chosen) a.filter-button {
    margin-bottom: 10px;
    background: var(--primary-color);
    color: #fff;
    border-color: var(--primary-color);
}

.category-filter-row:has(li.chosen) a.filter-button:hover {
    background: #1a73e8;
    border-color: #1a73e8;
}

.category-filter-row .widget {
    margin-bottom: 0;
}

.widget_layered_nav_filters ul>li {
    margin-bottom: 10px;
}

.widget_layered_nav_filters ul li.chosen a, .widget_layered_nav_filters #btn-close-all a {
    font-size: 14px;
    color: #fff;
    background: #1a73e8;
    border-radius: 4px;
    width: auto;
    border: none;
    padding: 6px 12px;
    opacity: 1;
}
 
.widget_layered_nav_filters ul li.chosen a:before, .widget_layered_nav_filters #btn-close-all a:before {
    float: right;
    right: -4px;
    margin-left: 5px;
    margin-right: 5px;
}

#btn-close-all, #btn-result-label {
    border-top: 0;
    display: inline-block;
}

.widget_layered_nav_filters #btn-close-all a {
    background: var(--primary-color);
}

.widget_layered_nav_filters #btn-close-all a:before {
    content: 'x';
    opacity: .4;
    position: relative;
}

.widget_layered_nav_filters #btn-close-all a:hover:before {
    opacity: 1;
}

#btn-result-label {
    padding-right: 10px;
    font-size: 14px;
}

@media(min-width: 850px) {
    
    .woocommerce-page .off-canvas-center .mfp-content {
        width: 1200px;
        max-width: 1200px;
    }
    
    #shop-sidebar .sidebar-inner {
        max-height: 65vh;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
    }
    
    #shop-sidebar .sidebar-inner aside.widget {
        width: 100%;
    }
}

@media(max-width: 849px) {
    
    #shop-sidebar .sidebar-inner aside.widget {
        width: 100%;
    }
    
    .category-filter-row {
        padding: 0;
        text-align: left;
    }
}


/* ─── Css home page ─── */
/* Big banner home big-banner */
.big-banner {
    margin-bottom: 10px;
}

.big-banner .img .img-inner img {
    border-radius: 8px;
}

.big-banner > .col .img {
    margin-bottom: 6px;
}

.big-banner .flickity-page-dots .dot {
    border-color: white;
}
.big-banner .flickity-page-dots .dot.is-selected {
    background-color: var(--primary-color);
    opacity: 1 !important;
    width: 30px;
    border-radius: 50px;
}

@media only screen and (min-width: 850px) {
    .big-banner {padding-left: 232px;}
    .big-banner .slider .img .img-inner {padding-top: 360px;}
    .big-banner .img .img-inner {position: relative;height: auto;overflow: hidden;padding-top: 116px;background-position: 50% 50%;background-size: cover;}
    .big-banner .img .img-inner img {right: 0;width: 100%;height: 100%;bottom: 0;left: 0;top: 0;position: absolute;-o-object-position: 50% 50%;object-position: 50% 50%;-o-object-fit: cover;object-fit: cover;font-family: "object-fit: cover;";}
    .big-banner-right>.col-inner {padding-right: 0 !important;}
}

@media only screen and (max-width: 849px) {
    .big-banner .col{flex-basis: 100%;max-width: 100%;}
    .big-banner > .col > .col-inner {padding-bottom: unset !important;}
    
    .big-banner-right > .col-inner {
        display: block !important;
        padding-top: unset !important;
        overflow-x: auto;
        overflow-y: hidden;
        white-space: nowrap;
        scrollbar-width: thin;
        scrollbar-color: #ccc transparent;
        -webkit-overflow-scrolling: touch;
    }
    
    .big-banner-right>.col-inner > .img {
        display: inline-block;
        width: calc(100% / 2 - 3px) !important;
    }
}

@media (min-width: 550px) and (max-width: 849px) {
    .big-banner-right>.col-inner > .img {
       
    }
}

/* top ads selling baner */
.top-ads-home .col-inner > .img {
    margin: 0 0 20px;
}
.top-ads-home .img-inner img {
    border-radius: 8px;
}


/* Home product tabs */
.is-border{z-index:1}
.home-product-tabs{
    display: flex;
    flex-flow: row wrap;
    position: relative;
}
.home-product-tabs h4 {
    margin:0;
    padding:15px 20px;
    min-height:60px;
    display:flex;
    align-items:center;
    color:#fff;
    font-size:1.5rem;
    line-height:1.3;
    text-transform:uppercase;
    background:linear-gradient(360deg,#f53d2d,#f63);
}

.home-product-tabs .nav > li > a {
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    color: var(--fs-color-base);
    padding: 8px 12px;
    background: #ffe4c4;
    border-radius: 99px;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
}

.home-product-tabs .nav > li {
    margin: 0;
}

.home-product-tabs .nav > li > a:hover,
.home-product-tabs .nav > li > a[aria-selected="true"] {
    color: #f53d2d;
    font-weight: 500;
    background: #fff;
}

.home-product-tabs .nav li.active a {
    cursor: default;
    pointer-events: none;
}

.home-product-tabs .tab-panels {
    padding-top: 0;
}

.home-product-tabs .nav {
    scrollbar-width: thin;
    scrollbar-color: #ccc transparent;
    gap: 10px;
}

.home-product-tabs .nav::-webkit-scrollbar {
    height: 4px;
}

.home-product-tabs .nav::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 4px;
}

.home-product-tabs .nav::-webkit-scrollbar-track {
    background: transparent;
}

@media (min-width:850px){

    .home-product-tabs{
        align-items:stretch;
    }

    .home-product-tabs h4{
        flex:0 0 auto;
        border-radius:10px 0 0 0;
        width: auto;
    }

    .home-product-tabs .nav{
        flex:1;
        display:flex;
        flex-wrap:nowrap;
        align-items:center;
        overflow-x:auto;
        overflow-y:hidden;
        white-space:nowrap;
        background:linear-gradient(360deg,#f53d2d,#f63);
        border-radius:0 10px 0 0;
    }

    .home-product-tabs .nav > li{
        flex:0 0 auto;
    }
    .wsgr-cats-list {
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 6px;
    }
}

/* Mobile */

@media (max-width:849px){

    .home-product-tabs h4{
        width:100%;
        font-size: 1.25rem;
        border-radius:10px 10px 0 0;
        justify-content: center;
    }

    .home-product-tabs .nav{
        width:100%;
        padding: 15px 10px;
        display:flex;
        flex-wrap:nowrap;
        justify-content:flex-start;
        overflow-x:auto;
        overflow-y:hidden;
        white-space:nowrap;
        scrollbar-width:thin;
        -ms-overflow-style:none;
    }

    .home-product-tabs .nav > li{
        flex:0 0 auto;
    }

    .home-product-tabs .tab-panels{
        width:100%;
    }
}


/* ts-div header: title trái - link phải */
.ts-div__header, .fxct-combo-slider-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 20px;
    min-height: 60px;
    line-height: 1.3;
    border-radius: 10px 10px 0 0;
    background: linear-gradient(360deg, #f53d2d, #f63);
}

.ts-div__title, .fxct-combo-slider-title h3 {
    margin: 0;
    color: #fff;
    font-size: 1.5rem;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.ts-div__more, .fxct-view-all {
    font-size: 14px;
    color: #fff;
    text-decoration: none;
    white-space: nowrap;
    transition: color 0.2s ease;
}

@media (max-width: 849px) {
    
    .fxct-combo-slider-wrapper>.equalize-box {
        padding-top: 0;
    }
    .ts-div__title, .fxct-combo-slider-title h3 {
        font-size: 1.25rem;
    }
    
}

@media (min-width: 550px) {
    .ts-div__more::after, .fxct-view-all::after {
        display: inline-block;
        padding-left: 5px;
        font-family: 'fl-icons';
        content: "\f105";
        vertical-align: middle;
        transition: transform .3s ease;
    }
    
    .ts-div__more:hover, .fxct-view-all:hover {
        color: #ffe4c4;
        opacity: .9;
    }
    .ts-div__more:hover::after, .fxct-view-all:hover:after {
        transform: translateX(4px);
    }
}

@media (max-width: 549px) {
    .ts-div__more, .fxct-view-all {
        display: none;
    }
    
    .ts-div__title, .fxct-combo-slider-title h3 {
        text-align: center;
    }
}


/* ─── Title Subcate: Category tabs ─── */
.wsgr-cats-block {
    margin-bottom: 0;
}

.wsgr-cats-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.wsgr-cats-item {
    display: flex;
    flex-direction: column;
    flex: 1 0 16%;
    justify-content: center;
    align-items: center;
    min-height: 40px;
    margin: 0 !important;
    padding: 2px 4px;
    background: #d8d8d8;
    box-sizing: border-box;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    color: var(--fs-color-base);
    text-align: center;
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .08);
    transition: background-color .2s ease, color .2s ease, box-shadow .2s ease;
}

.wsgr-cats-item.active {
    background: #fff;
    color: #f53d2d;
    pointer-events: none;
}

/* ─── Có thumbnail: layout dọc ─── */
.has-thumbnails .wsgr-cats-item {
    flex: 1 0 14%;
    gap: 4px;
    padding: 6px 4px;
    border-radius: 6px;
    height: auto;
}

.wsgr-cats-thumb {
    width: 48px;
    height: 48px;
    object-fit: contain;
    border-radius: 4px;
    flex-shrink: 0;
}

/* ─── button xem thêm ─── */
.view-more-button {
    padding-top: 10px;
    padding-bottom: 10px;
}
.view-more-button a {
    margin-bottom: 0;
    border-radius: 5px;
}

/* ─── Desktop hover ─── */
@media (min-width: 550px) {
    .wsgr-cats-item:hover {
        background: #fff;
        box-shadow: 0 4px 10px rgba(0, 0, 0, .10);
    }
}

/* ─── Mobile ─── */
@media only screen and (max-width: 849px) {
    .wsgr-cats-list {
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 6px;
        scrollbar-width: thin;
        scrollbar-color: #ccc transparent;
    }

    .wsgr-cats-list::-webkit-scrollbar {
        height: 4px;
    }

    .wsgr-cats-list::-webkit-scrollbar-thumb {
        background: #ccc;
        border-radius: 4px;
    }

    .wsgr-cats-item {
        flex: 0 0 auto;
        min-width: 20%;
    }

    .has-thumbnails .wsgr-cats-item {
        min-width: 25%;
    }
}

/* ─── Css product box ─── */

.equalize-box {
    padding: 15px 0 10px;
}

.equalize-box>.col, .equalize-box>.flickity-viewport>.flickity-slider>.col {
    padding: 0 3px 6px;
}

.equalize-box>.col>.col-inner, .equalize-box>.flickity-viewport>.flickity-slider>.col>.col-inner {
    border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    background-color: rgb(255, 255, 255);
    padding: 10px;
    box-shadow: rgba(0, 0, 0, 0.05) 0px 4px 24px, rgba(0, 0, 0, 0.05) 0px 1px 5px;
    height: 100%;
}

@media only screen and (min-width: 850px) {
    
    .equalize-box>:not(.product-first).col>.col-inner,
    .equalize-box>.flickity-viewport>.flickity-slider>.col>.col-inner {
        transition: box-shadow 0.3s ease;
    }
    
    .equalize-box>:not(.product-first).col>.col-inner:hover, 
    .equalize-box>.flickity-viewport>.flickity-slider>.col>.col-inner:hover {
        box-shadow: 0 1px 2px 0 rgba(60, 64, 67, .18823529411764706), 0 2px 6px 2px rgba(60, 64, 67, .32941176470588235);
    }
    .slider-banner .product-slider .flickity-slider>div.img{
        width: 33% !important;
        margin-right: 6px;
    }
    
    /* slider banner shop page */
    .banner-cate-box .flickity-slider>div.img{
        width: 50% !important;
        margin-right: 8px;
    }
}

@media screen and (max-width: 849px) {
    
    .equalize-box>.col,
    .equalize-box>.flickity-viewport>.flickity-slider>.col {
        padding: 0 2px 4px;
    }
    
    .equalize-box>.product-first.col {
        padding-bottom: 4px;
    }
    
    .equalize-box>:not(.product-first).col>.col-inner,
    .equalize-box>.flickity-viewport>.flickity-slider>.col>.col-inner {
        transition: transform 0.2s ease;
    }
    
    .equalize-box>:not(.product-first).col>.col-inner:active,
    .equalize-box>.flickity-viewport>.flickity-slider>.col>.col-inner:active {
        transform: scale(0.97);
    }
    
    .block-flashsale>.col,
    .block-combo>.col,
    .block-product-home>.col,
    .phu-kien-home>.col,
    .home .slider-banner>.col,
    .block-product-home>.col>.flickity-viewport>.flickity-slider>.col {
        padding-left: 3px !important;
        padding-right: 3px !important;
    }
}


/* ─── Css: Product box custom ─── */
.product-first {
    max-width: 40% !important;
    -ms-flex-preferred-size: 40%!important;
    flex-basis: 40% !important;
    display: flex;
}
.product-first .col-inner{width:50%;position: relative;box-shadow:unset !important}

.product-first .col-inner:nth-child(2) {border-radius: 0 8px 8px 0 !important}

.product-first .col-inner:nth-child(1) {border-radius: 8px 0 0 8px !important}

.product-first .img-custom {
    position: absolute;
    max-width: 34%;
    height: auto;
    top: 0;
    right: 0;
}
.content_main>* {
    padding: 5px;
}
.content_main, .content_note_more {
    font-size: 13px;
}
.content_main {
    margin-bottom: 10px;
    background: #e03232;
    border-radius: 5px;
    color: #fff;
}
.title_note {
    text-align: center;
    text-transform: uppercase;
    font-weight: bold;
}

.price_note {
    background-color: #ffff00;
    text-align: center;
}

.price_note span.amount {
    font-size: 16px;
}

.content_note ul, .content_note_more ul{margin-bottom: 10px}
.content_note li, .content_note_more li {
    list-style: none;
    margin-left: 5px !important;
    margin-bottom: 3px;
}
.content_note li::before {
    content: "\e005";
    speak: none !important;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-family: 'fl-icons';
    font-weight: bold;
    margin-right: 5px;
    font-size: 12px;
    color: #ffff00;
}

.content_note_more li::before {
    content: '';
    display: inline-block;
    background-image: url(data:image/png;base64,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);
    background-color: #288ad6;
    border: none;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    margin-right: 5px;
    opacity: 1 !important;
    background-position: center center;
    background-size: 12px;
    background-repeat: no-repeat;
}

.price_note del,
.price_note span.sale-percent {
    display: none;
}

@media screen and (max-width: 849px) {
    /* ─── Css: Product box custom ─── */
    .product-first {
        max-width: 100% !important;
        -ms-flex-preferred-size: 100%!important;
        flex-basis: 100% !important;
        display: flex;
    }
    .product-first .col-inner:nth-child(2) {
        padding-left: 0 !important;
    }
}

/* Home - Title Block */
.title-block-home {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    min-height: 3.75rem;
    padding: 15px;
    background: linear-gradient(360deg, #f53d2d, #f63);
}

.title-block-home h3 {
    flex: 1;
    min-width: 0;
    margin: 0;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.3;
    text-transform: uppercase;
}

.title-block-home a {
    padding: 8px 0 8px 12px;
    color: #fff;
    font-size: 14px;
    font-weight: 400;
    text-decoration: none;
    white-space: nowrap;
    transition: opacity .3s ease;
}

.title-block-home a::after {
    display: inline-block;
    padding-left: 6px;
    font-family: 'fl-icons';
    content: "\f105";
    vertical-align: middle;
    transition: transform .3s ease;
}

.home .wsgr-cats-block {
    flex: 0 0 100%;
    padding-top: 10px;
}

@media (min-width: 550px) {
    .title-block-home a:hover {
        opacity: .9;
    }

    .title-block-home a:hover::after {
        transform: translateX(4px);
    }
    
}

@media (max-width: 549px) {
    .title-block-home {
        min-height: 3rem;
        padding: 10px;
    }

    .title-block-home h3 {
        font-size: 1.2rem;
    }

    .title-block-home a {
        padding: 6px 0 6px 10px;
        font-size: 13.5px;
    }
}

/* ─── Phụ kiện home ─── */
.phu-kien > .col-inner {
	background: linear-gradient(180deg, #f53d2d, #f63);
	border-radius: 0 0 10px 10px;
	display: grid;
	grid-template-columns: repeat(10, 1fr);
}

.phu-kien a.plain {
	padding: 7px 5px 0;
	text-align: center;
	min-width: 0; /* chống grid item tràn khi text dài */
}
.phu-kien a.plain:hover {
	color: #fab200;
	filter: drop-shadow(0 4px 4px rgba(0, 0, 0, .15));
}

.phu-kien .icon-box { position: relative; }
.phu-kien .icon-box .icon-box-img {
	width: 100% !important; /* ghi đè inline style width:110px của Flatsome */
	margin: 0 0 5px;
}
.phu-kien .icon-box .icon-inner {
	height: 126px;
	border-radius: 10px;
	overflow: hidden;
}
.phu-kien .icon-box-img img { padding-top: 0; }

.phu-kien .icon-box .icon-box-text {
	position: absolute;
	top: 10px;
	left: 0;
	right: 0;
	padding: 0 8px;
	color: #000;
	text-align: left;
	font-weight: 600;
	line-height: 18px;
}
.phu-kien p {
	font-size: 14px;
	margin-bottom: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Màu nền từng ô */
.phu-kien .icon-box .icon-inner { background: var(--tile-bg); }
.phu-kien .icon-box .icon-box-text { color: var(--tile-fg); }

.phu-kien a:nth-child(10n + 1) { --tile-bg: #FECACA; --tile-fg: #7F1D1D; }
.phu-kien a:nth-child(10n + 2) { --tile-bg: #FED7AA; --tile-fg: #7C2D12; }
.phu-kien a:nth-child(10n + 3) { --tile-bg: #FDE68A; --tile-fg: #78350F; }
.phu-kien a:nth-child(10n + 4) { --tile-bg: #D9F99D; --tile-fg: #365314; }
.phu-kien a:nth-child(10n + 5) { --tile-bg: #A7F3D0; --tile-fg: #064E3B; }
.phu-kien a:nth-child(10n + 6) { --tile-bg: #A5F3FC; --tile-fg: #164E63; }
.phu-kien a:nth-child(10n + 7) { --tile-bg: #BAE6FD; --tile-fg: #075985; }
.phu-kien a:nth-child(10n + 8) { --tile-bg: #C7D2FE; --tile-fg: #312E81; }
.phu-kien a:nth-child(10n + 9) { --tile-bg: #DDD6FE; --tile-fg: #4C1D95; }
.phu-kien a:nth-child(10n)     { --tile-bg: #FBCFE8; --tile-fg: #831843; }

/* ─── Mobile: scroll ngang 2 hàng ─── */
@media screen and (max-width: 849px) {

	.phu-kien { overflow: visible; }

	.phu-kien > .col-inner {
		grid-template-columns: none;
		grid-template-rows: repeat(2, auto);
		grid-auto-flow: column;
		grid-auto-columns: 80px;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x proximity;
		scrollbar-width: thin;
		scrollbar-color: rgba(255, 255, 255, .7) transparent;
		padding-bottom: 10px;
	}
	.phu-kien > .col-inner::-webkit-scrollbar { height: 4px; }
	.phu-kien > .col-inner::-webkit-scrollbar-track {
		background: rgba(0, 0, 0, .12);
		border-radius: 2px;
		margin: 0 30%;
	}
	.phu-kien > .col-inner::-webkit-scrollbar-thumb {
		background: rgba(255, 255, 255, .85);
		border-radius: 2px;
	}

	.phu-kien a.plain { scroll-snap-align: start; }
	.phu-kien .icon-box .icon-inner { height: 80px; }
	.phu-kien p { font-size: 11px; line-height: 1; }
}

/* footer */
#footer{font-size:14px;color: var(--fs-experimental-link-color);}

#footer h2,#footer h3,#footer h4{font-size:16px}

#footer p{margin-bottom:0}

#footer .footer-top .social-icons a{margin-bottom:0;margin-right:20px;border-color:#fff;border:1px solid;width:32px;height:32px}

#footer .footer-top .social-icons a>i{top:1px}

#footer .footer-top .col>.col-inner{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}

#footer .footer-top form{margin-bottom:0}

#footer .footer-top form input[type=email]{border:none;border-radius:4px}

#footer .footer-top form input[type=submit]{border:none;border-radius:4px;background-color: var(--primary-color);font-weight:400;text-transform:initial;margin-right:0}


.icon-500px:before{content:"";background-image:url("images/icon-zalo.svg");width:20px;height:10px;background-size:contain;display:block;background-position:center;position:relative;background-repeat:no-repeat}

.icon-envelop:before{content:"";background-image:url("images/icon-mail.svg");width:20px;height:20px;background-size:contain;display:block;background-position:center;position:relative;background-repeat:no-repeat}

.footer-top .wpcf7-spinner {
    display: none;
}
.fl-lightbox-content .wpcf7-form { overflow-y: auto; max-height: 70vh; } /* Đảm bảo lightbox có thể cuộn */

#footer ul{list-style:none;margin-bottom:0}

#footer ul li{margin-left:0;margin-bottom:5px}

#footer .footer-body-2 {
    border-top: 1px solid #e7e7e7;
    border-bottom: 1px solid #e7e7e7
}

#footer .footer-key .col > .col-inner {
    padding-bottom: 0;
}

#footer .footer-key .col > .col-inner h3 {
    margin-bottom: 0;
}

.absolute-footer {
    display: none;
}

/* Footer cate product */
.footer-cate-product {
    margin-top: 10px;
    border-top: 1px solid #d0dfd2;
    border-bottom: 1px solid #d0dfd2;
}

.footer-cate-product .col-inner {
    display: flex;
}

.footer-cate-product .icon-box {
    display: flex;
    flex: 1 1 0;
    align-items: center;
    min-width: 0;
    margin: 0;
    padding: 12px 10px;
}

.footer-cate-product .icon-box:not(:last-child) {
    border-right: 1px solid #d0dfd2;
}

.footer-cate-product .icon-box-img {
    flex-shrink: 0;
    margin-right: 12px;
}

.footer-cate-product .icon-box-img img {
    display: block;
    max-width: 100%;
    height: auto;
}

.footer-cate-product .icon-box-text {
    line-height: 18px;
}

.footer-cate-product .icon-box-text p {
    margin: 0;
}

@media only screen and (max-width: 849px) {

    .footer-cate-product .col-inner {
        overflow-x: auto;
        overflow-y: hidden;
        padding: 10px;
        gap: 10px;
        scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch;

        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .footer-cate-product .col-inner::-webkit-scrollbar {
        display: none;
    }

    .footer-cate-product .icon-box {
        flex: 0 0 clamp(220px, 60%, 300px);
        padding: 10px;
        margin: 0;
        scroll-snap-align: start;
    }
    
    #footer .footer-top .social-icons a {
        margin-right: 4px;
    }
    .dang-ky-nhan-tin {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row;
        flex-flow: row;
    }
    #footer .footer-top form input[type=submit] {
        margin-right: 5px;
    }
}


/* CSS home banner event */
:root {
    --banner-width: 120px;
    --banner-gap: 30px;
    
    --banner-offset: calc(
        (100vw - 1200px) / 2 
        - var(--banner-width) 
        - var(--banner-gap)
    );
}

@media screen and (min-width: 1440px) {
    :root {
        --banner-width: clamp(100px, 12.5vw - 80px, 120px);
        --banner-gap: clamp(10px, 12.5vw - 170px, 30px);
    }
}

@media screen and (max-width: 1439px) {
    .banner-event {
        display: none;
    }
}

.banner-event {
    position: fixed;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}

.banner-event > .banner-img {
    position: absolute;
    top: 110px;
    width: var(--banner-width);

    pointer-events: auto;
    transition: transform .3s ease;
}

.banner-event > .event-top-left,
.banner-event > .event-bottom-left {
    left: var(--banner-offset);
}

.banner-event > .event-top-right,
.banner-event > .event-bottom-right {
    right: var(--banner-offset);
}

.banner-event > .event-bottom-left,
.banner-event > .event-bottom-right {
    top: auto;
    bottom: 40px
}

.banner-event img {
    display: block;
    width: 100%;
    height: auto;

    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, .12);
}

.banner-event > .banner-img:hover {
    transform: scale(1.02);
}

.banner-event > .event-top-left:hover,
.banner-event > .event-bottom-left:hover {
    transform-origin: left center;
}

.banner-event > .event-top-right:hover,
.banner-event > .event-bottom-right:hover {
    transform-origin: right center;
}


/* Contact block */
@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
@keyframes pulse {
  0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(40, 138, 214, 0.7); }
  70% { transform: scale(1.1); box-shadow: 0 0 0 15px rgba(40, 138, 214, 0); }
  100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(40, 138, 214, 0); }
}

.contact_custom {
  position: fixed;
  bottom: 0;
  right: calc(var(--banner-offset) + var(--banner-width) / 2 - 25px);
  width: 50px;
  z-index: 999;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.contact_custom > * {
  margin-bottom: 20px !important;
  width: 80% !important;
}

.contact_custom .img {
  position: relative;
}

.contact_custom .img-inner {
  border-radius: 50%;
  background: var(--primary-color);
  display: flex;
  align-items: center;
  justify-content: center;
}

.contact_custom .img:before {
  content: '';
  position: absolute;
  inset: -5px;
  border: 2px dashed var(--primary-color);
  border-radius: 50%;
  animation: spin 5s linear infinite;
  animation-play-state: paused;
}

.contact_custom .img:hover:before {
  animation-play-state: running;
  border-color: #288ad6;
}

.contact_custom img {
  padding: 8px;
  display: block;
  max-width: 100%;
  height: auto;
}

/* Contact block – collapse/expand on hover (desktop only) */
@media (min-width: 1440px) {
    .contact_custom .call img {
        transform: rotateZ(260deg);
    }
    
    .contact_custom .call .img-inner {
        animation: pulse 2s infinite;
    }
    
  .contact_custom .contact-collapse-item {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    margin-bottom: 0 !important;
    transform: translateY(-8px);
    pointer-events: none;
    transition: max-height .35s ease, opacity .25s ease,
                transform .3s ease, margin-bottom .35s ease;
  }

  .contact_custom:hover .contact-collapse-item {
    max-height: 80px;
    opacity: 1;
    overflow: visible;
    margin-bottom: 20px !important;
    transform: translateY(0);
    pointer-events: auto;
  }

  /* Xổ ra lần lượt cho mượt, thay vì cùng lúc */
  .contact_custom:hover .contact-collapse-item:nth-of-type(2) { transition-delay: .03s; }
  .contact_custom:hover .contact-collapse-item:nth-of-type(3) { transition-delay: .06s; }
  .contact_custom:hover .contact-collapse-item:nth-of-type(4),
  .contact_custom:hover .contact-collapse-item:nth-of-type(5) { transition-delay: .09s; }
}

/* Desktop */
@media (min-width: 850px) and (max-width: 1439px) {
  .contact_custom {
    display: none;
  }
}

/* Mobile (<850px) */
@media (max-width: 849px) {
  .contact_custom {
    flex-direction: row;
    justify-content: space-around;
    right: 0;
    left: 0;
    width: 100%;
    background: #f0f0f0;
    padding: 2px 0;
  }
  .contact_custom > * {
    width: 100% !important;
    margin-bottom: 0 !important;
  }
  .contact_custom > *:not(:last-child) {
    border-right: 1px solid #ddd;
  }
  .contact_custom .img:before {
    display: none;
  }
  .contact_custom .img-inner {
    border-radius: 0;
  }
  .contact_custom img {
    padding: 10px 15px;
    width: 50px;
    height: auto;
  }
  .absolute-footer {
    padding-bottom: 75px;
  }
  .contact_custom .img:active .img-inner {
    animation: pulse 0.5s;
  }
}

/* css icon label */
/* CSS Badge icons */
.badge_is_featured, .badge_is_on_sale {
    position: absolute;
    top: 0;
    z-index: 1;
    aspect-ratio: 1 / 1;
    pointer-events: none;
}

.badge_is_featured {
    right: 0;
}

.badge_is_on_sale {
    left: 0;
}

.badge_is_featured img,
.badge_is_on_sale img {
    display: block;
    width: 45px;
    height: auto;
    object-fit: contain;
}

span.label-style {
    position: absolute;
    color: #fff;
    font-size: 11px;
    font-weight: 500;
    background: #3fb846;
    border-radius: 4px;
    padding: 2px 4px;
    margin: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: nowrap;
    -webkit-line-clamp: 2;
    overflow: hidden;
    bottom: 2px;
    left: 2px;
    line-height: 18px;
    height: 22px;
}

span.installment {
    background: #fbda03;
    color: #333;
}

span.discount {
    background-image: -webkit-gradient(linear, right top, left top, from(#ec1f1f), to(#ff9c00));
    background-image: linear-gradient(-90deg, #ec1f1f 0, #ff9c00 100%);
    border-radius: 10px;
    padding-left: 0;
    padding-right: 10px;
}

span.discount::before {
    content: ' ';
    display: inline-block;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAaCAYAAAC+aNwHAAAABGdBTUEAALGPC/xhBQAAAVpJREFUOBGVki1LBFEUhueuH0FQTAuimxVE2KZBgxj8AxaLglj8AYLJZLOYtFpFwWQ2iMUkiyBqNCloEFEQYXzuzl7mzP0Y7z3w7j0f73PuDDtZFhl5njfRI5qJREobUB+6RL9otJxEZkD7SMd1JFLagFa6aPGzW04iMpgp9CEWzEZghQVoGN0L+I28kbLgVMA6PUmBty1YlxtRCzAuIv132THx7wKIcfRik9R3IbjfDDANkp+hpumJ8535pqhN+mySDMMhSo1OdwHUWiqJ/wu19c3tXsGRFOvm9k4SVpiPzLsr6mWKlmmIc568uEU0SW/QglLqp9q2KhYfe57slZ7vsiqNqYHs70F/XEtVZ6DCOIfs2AnY3TbknkWfUyvXGehgvhULHshHAla3jbkl4E/yaddV0wHYEgtWa6z+EfBFb8GB31HTBRxC3+gKDdRY/SOgSfSExvwOt/sHwv9i4NYIgYYAAAAASUVORK5CYII=) center center / 50% 50% no-repeat #f13500;
    background-position: center center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    vertical-align: middle;
    position: relative;
    top: -1px;
    margin-right: 5px;
}

span.giam-soc {
    background: linear-gradient(270deg, #c60004 4.6%, #ef3006 94.58%);
    border-radius: 10px;
    padding-left: 0;
    padding-right: 10px;
}

span.giam-soc::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 5px;
    vertical-align: middle;
    position: relative;
    top: -2px;
    border-radius: 50%;
    background: url(images/icon-label-giamsoc.png) no-repeat center center / contain;
}

span.label-style, .label-image-right-top {
    z-index: 22;
}

.label-image-right-top {
    display: block;
    position: absolute;
    width: auto;
    max-height: 45px;
    bottom: 0;
    right: 0;
}

.product-gallery .label-image-right-top{
    position: absolute;
    width: auto;
    max-height: 60px;
    top: 0;
    left: 0;
}
/*end css icon label */


/* WooCommerce Notices */

/* Base */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info{
    position: relative;

    margin: 0 0 16px;
    padding: 14px 18px;

    border: 0;
    border-radius: 14px;

    font-size: 14px;
    line-height: 1.6;

    box-shadow:
        0 1px 2px rgba(0,0,0,.04),
        0 6px 18px rgba(0,0,0,.05);

    overflow: hidden;
}

/* Remove default Woo icons */
.woocommerce-error::before,
.woocommerce-message::before,
.woocommerce-info::before{
    display: none !important;
}

/* Left accent */
.woocommerce-error::after,
.woocommerce-message::after,
.woocommerce-info::after{
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;

    width: 4px;
}

/* Error */
.woocommerce-error{
    background: #fff5f5;
    color: #991b1b;
    list-style: none;
    padding-left: 52px;
    margin: auto;
    max-width: 1200px;
}

.woocommerce-error::after{
    background: #ef4444;
}

.woocommerce-error li{
    position: relative;
}

.woocommerce-error li:not(:last-child){
    margin-bottom: 6px;
}

.woocommerce-error li::before{
    content: "\ea0f";
    font-family: 'fl-icons';

    position: absolute;
    left: -32px;
    top: 2px;
    font-size: 16px;
    line-height: 1;
    color: #ef4444;
}

/* Success */
.woocommerce-message{
    background: #f0fdf4;
    color: #166534;
}

.woocommerce-message::after{
    background: #22c55e;
}

/* Flatsome success layout */
.woocommerce-message .message-container{
    display: flex;
    align-items: center;
    gap: 8px;
}

.woocommerce-message .icon-checkmark{
    flex: 0 0 auto;
    font-size: 16px;
}

/* Info */
.woocommerce-info{
    background: #eff6ff;
    color: #1d4ed8;
    padding-left: 52px;
}

.woocommerce-info::after{
    background: #3b82f6;
}

.woocommerce-info::before{
    content: "i";
    position: absolute;
    left: 20px;
    top: 14px;
    display: block !important;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    color: #3b82f6;
}

/* Links */

.woocommerce-error a,
.woocommerce-message a,
.woocommerce-info a{
    color: inherit;
    font-weight: 600;
    text-decoration: underline;
}

/* Buttons inside notice */

.woocommerce-message .button{
    margin-left: 10px;
    border-radius: 10px;
}

/* Mobile */

@media (max-width: 549px){

    .woocommerce-error,
    .woocommerce-message,
    .woocommerce-info{
        padding-top: 12px;
        padding-bottom: 12px;
        font-size: 13px;
        border-radius: 12px;
    }

}


/* css nút xóa sản phẩm giỏ hàng */
.woocommerce a.remove,
.woocommerce-mini-cart a.remove{
    width: 30px;
    height: 22px;
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;

    font-size: 0;
    line-height: 0;

    transition: opacity .2s ease;
}

.woocommerce a.remove::before,
.woocommerce a.remove::after,
.woocommerce-mini-cart a.remove::before,
.woocommerce-mini-cart a.remove::after{
    content: '';
    position: absolute;
    left: 8px;
    right: 8px;
    top: 2px;
    display: block;

    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAQCAQAAACMnYaxAAAAXUlEQVR4XsWQQQrAQAgD84Pti/JSoaftN1MCdgXxXgYvGfUQyABE4DEIUJmeuKgVlJI5em0RGTesFXXZuLwCzvL2pYbHmfCTNSXxpyyajLGClFy7K1dgaaho7YYovIpO3rju6hYFAAAAAElFTkSuQmCC) no-repeat 0 0;
}

.woocommerce a.remove::before,
.woocommerce-mini-cart a.remove::before{
    width: 14px;
    height: 6px;

    transform-origin: -7% 100%;
    transition: transform .15s ease;
}

.woocommerce a.remove::after,
.woocommerce-mini-cart a.remove::after{
    width: 11px;
    height: 12px;

    margin: 4px 2px 0 1px;
    background-position: -1px -4px;
}

.woocommerce a.remove:hover::before,
.woocommerce-mini-cart a.remove:hover::before{
    transform: rotate(-45deg);
}

.woocommerce a.remove:focus-visible,
.woocommerce-mini-cart a.remove:focus-visible{
    outline: 2px solid currentColor;
    outline-offset: 2px;
}



/* css form cart/checkout */
.woocommerce-cart #main-content, .woocommerce-checkout #main-content {
    max-width: 800px !important;
    margin: 15px auto !important;
}

.woocommerce-cart #main, .woocommerce-checkout #main {
    background-color: #fff;
    border-radius: 10px;
}

.woocommerce-cart .focused-checkout-logo, .woocommerce-checkout .focused-checkout-logo {
    padding: 0 !important;
    margin-bottom: 15px;
}

.woocommerce-cart .page-title-inner,.woocommerce-checkout .page-title-inner {
    padding: 0;
}

.woocommerce-cart .pb,.woocommerce-checkout .pb {
    padding-bottom: 0;
}

.woocommerce-cart .breadcrumbs, .woocommerce-checkout .breadcrumbs {
    font-size: 24px;
    text-transform: uppercase;
    padding: 20px 0;
}

.woocommerce-cart .breadcrumbs .hide-for-small ,.woocommerce-checkout .breadcrumbs .hide-for-small {
        display: none;
    }

.woocommerce-cart .large-12, .woocommerce-checkout .large-12 {padding: 0;}

.woocommerce-cart .row>.pb-0, .woocommerce-checkout .pt-0>.col, .woocommerce-checkout .woocommerce-order.row>.col {
    padding: 0;
}

.woocommerce-cart .row-divided>.col+.col:not(.large-12), .woocommerce-checkout .row-divided>.col+.col:not(.large-12) {
    border-left: 0;
}

.woocommerce-cart .woocommerce-cart-form__cart-item .product-name {
    display: flex;
    flex-direction: column;
    gap: 4px;
    line-height: 1.4;
}

.woocommerce-cart .woocommerce-cart-form__cart-item .product-name>a {
    font-weight: 600;
    font-size: 16px;
}

.woocommerce-cart .woocommerce-cart-form__cart-item .product-name dl.variation {
    font-size: 13px;
    opacity: 1;
    margin: 0;
}

.woocommerce-cart .woocommerce-cart-form__cart-item .product-thumbnail img {
    border-radius: 6px;
}

.woocommerce-cart .woocommerce-billing-fields .customer-gender label, .woocommerce-checkout .woocommerce-billing-fields .customer-gender label {
    font-weight: 400;
    display: inline-block;
}
.woocommerce-cart .page-checkout input, .woocommerce-checkout .page-checkout input, .woocommerce-checkout .woocommerce-billing-fields .customer-gender input {
    border: 1px solid #d1d1d1;
    border-radius: 4px;
    color: #333;
}
.woocommerce-cart-form .shop_table thead th {
    text-transform: none;
}

.woocommerce-cart-form .continue-shopping {
    display: none;
}
.woocommerce-cart-form .coupon {
    margin-bottom: 0;
}

.woocommerce-cart-form .shop_table .actions {
    padding: 15px 0;
}

.woocommerce-cart .cart_totals th.product-name {
    border-width: 1px;
}

.shop_table .order-total td, .shop_table .order-total th, .shop_table thead th {
    border-width: 1px;
}
.woocommerce-cart .cart_totals .button, .woocommerce-checkout .button.alt {
    background-color: var(--fs-color-primary);
    border-radius: 5px;
}


/* Checkout product */
.woocommerce-checkout h3,
.woocommerce-checkout.woocommerce-order-received h2 {
    text-decoration: underline;
}

.woocommerce-checkout.woocommerce-order-received h2 {
    font-size: 1.1em;
    text-transform: uppercase;
}

.woocommerce-checkout .row .pt-0, .woocommerce-checkout .woocommerce-order.row {
    margin-left: 0;
    margin-right: 0;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name {
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
    gap:12px;
    position:relative;
    padding:12px 0;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .checkout-image-thumb {
    width:70px;
    height:70px;
    flex:0 0 70px;
    object-fit:cover;
    border-radius:6px;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .checkout-product-name {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.4;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity{
    margin-left:auto;
    font-weight:700;
    white-space:nowrap;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{
    flex-basis:100%;
    margin: 0 0 0 82px;
    font-size:13px;
    display:grid;
    grid-template-columns:auto 1fr;
    gap:4px 8px;
    opacity: 1;
    color: #555;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dt{
    margin:0;
    font-weight:600;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd{
    margin:0;
    color:#333;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd p{
    margin:0;
}

.woocommerce-checkout h1.order-success-title {
    display: block;
    overflow: hidden;
    text-align: center;
    padding: 10px 0;
    display: inline-block;
    color: var(--primary-color);
    font-size: 16px;
    text-transform: uppercase;
    margin-left: -30px;
    width: calc(100% + 60px);
    margin-top: 0;
}

.shipping-custom-notice small {
    font-style: italic;
    font-size: 13px;
}

.cart-note {
    display:block;
    font-size: 13px;
    color: #555;
    font-weight: 400;
}

.kmv-label {
    display: block;
    margin: 0;
    font-size: 14px;
    color: var(--fs-color-primary);
    font-weight: 600;
}

.woocommerce-mini-cart .selected-list>li {
    padding: 0 !important;
    min-height: auto;
}

.selected-list {
    color: #555;
    font-size: 13px;
    display: block;
    float: left;
    text-align: justify;
    margin: 0;
}

.selected-list>li:before {
    content: '' !important;
    background-image: url(data:image/png;base64,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);
    background-color: #288ad6;
    border: none;
    width: 16px;
    height: 16px;
    border-radius: 4px;
    opacity: 1 !important;
    background-position: center center;
    background-size: 12px;
    background-repeat: no-repeat;
    display: inline-block;
    text-align: center;
    margin-right: 5px;
    vertical-align: middle;
}

.woocommerce-cart .page-checkout .is-well ul, .woocommerce-checkout .page-checkout .is-well ul {
    list-style: none;
    margin-bottom: 0;
}

.woocommerce-cart .page-checkout .is-well ul li:before, .woocommerce-checkout .page-checkout .is-well ul li:before {
    content: '';
    margin-left: -20px;
    background: url(/wp-content/themes/dhd/images/icon-check.png);
    width: 14px;
    height: 14px;
    background-size: 14px 14px;
    margin-right: 0;
    float: left;
    margin-top: 6px;
}

.woocommerce-order-received .woocommerce-table--order-details td.product-name {
    line-height: 1.33;
    margin-bottom: 0;
    min-height: 80px;
    overflow: hidden;
    padding: 10px 0 5px 75px;
    position: relative;
    vertical-align: top;
}

.woocommerce-order-received .woocommerce-table--order-details .order-product-wrapper {
    display: block;
    line-height: 1.3;
    margin-bottom: 5px;
    overflow: hidden;
    padding: 0;
    text-overflow: ellipsis;
}

.woocommerce-order-received .order-product-wrapper .order-product-name {
    font-weight: 600;
    font-size: 16px;
}

.woocommerce-order-received .woocommerce-table--order-details .order-image-thumb {
    height: 60px;
    left: 0;
    margin-bottom: 5px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    position: absolute;
    top: 10px;
    width: 60px;
}

.woocommerce-order-received .woocommerce-table--order-details .product-quantity {
    float: right;
}

.woocommerce-order-received .woocommerce-table--order-details ul.wc-item-meta {
    margin: 5px 0;
}

.woocommerce-order-received .woocommerce-table--order-details ul.wc-item-meta li {
    display: block;
}

.woocommerce-order-received .woocommerce-table--order-details ul.wc-item-meta li p {
    display: inline-block;
    margin: 0 0 5px;
}

.woocommerce-order-received .selected-list {
    float: none;
}

.woocommerce-order-received .woocommerce-table--order-details td.product-name small {
    font-size: 14px;
}

.woocommerce-order-received .woocommerce-table--order-details td.product-name small {
    font-size: 13px !important;
    margin: 0 0 4px !important;
}


@media only screen and (min-width: 850px) {
    /* css form cart/checkout */
    .woocommerce-cart .row .pb-0, .woocommerce-checkout .pt-0>.col, .woocommerce-checkout .woocommerce-order.row>.col {
        flex-basis: 100%;
        max-width: 100%;
    }
}

@media screen and (max-width: 849px) {
    .woocommerce-cart #main, .woocommerce-checkout #main {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}


/* css block news */
.blog-news {
    border-bottom: 1px solid #ececec;
    padding-top: 30px;
    background-color: rgb(255, 255, 255);
}

.blog-news >* {
    padding-bottom: 0;
}

.blog-news-1 .box-text {
    vertical-align: top;
}

.blog-news-2 .box-text a {
    ext-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 16px;
    max-height: 46px !important;
    font-weight: 500;
    color: #333;
    
}

@media screen and (min-width: 550px) {
    .blog-news-1 .box-text {
        padding-right: 0;
    }
}


/* ============== MENU BLOG - DESKTOP ============== */
.blog-menu {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #fff;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    box-shadow: rgba(0, 0, 0, 0.05) 0px 4px 24px,
                rgba(0, 0, 0, 0.05) 0px 1px 5px;
    padding: 15px;
    text-align: center;
    width: 100%;
    border-bottom: 1px solid var(--fs-color-primary);
}

/* Single post: container là large-10 (83.33%), width:100% tự co theo */
/* Không cần rule riêng cho .blog-single .blog-menu */

.has-sticky-header .blog-menu {
    top: 60px;
}

/* Menu danh sách */
.blog-menu .menu-list {
    display: inline-flex;
    flex-wrap: nowrap;
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: center;
}

.blog-menu .menu-list li {
    margin-bottom: 0;
}

/* Link mặc định */
.blog-menu .menu-list li a {
    display: inline-block;
    padding: 8px 14px;
    text-decoration: none;
    font-weight: 500;
    background-color: rgba(0, 0, 0, 0.05);
    border-radius: 4px;
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* Hover */
.blog-menu .menu-list li a:hover {
    background-color: rgba(0, 0, 0, 0.1);
}

/* Active states */
.blog-menu .menu-list li.current-menu-item a,
.blog-menu .menu-list li.current-menu-parent a,
.blog-menu .menu-list li.current-post-ancestor a,
.blog-menu .menu-list li.current-post-parent a {
    background-color: var(--primary-color);
    color: #fff;
}

@media (min-width: 850px) {
    #header #masthead .flex-right .nav>li.has-icon>a>span {
        order: 2;
    }
    
    #header #masthead .flex-right .nav>li.has-icon>a>i {
        margin-left: 0;
        margin-right: 5px;
    }
    
    .single-post .blog-menu, .archive .blog-menu, .blog .blog-menu, .blog .blog-news, .archive-page-header>.row, .single-post #dhd_breadcrumbs .container, .category #dhd_breadcrumbs .container, .blog #dhd_breadcrumbs .container {
        max-width: 1000px !important;
        margin-left: auto;
        margin-right: auto;
    }
}

/* ============== MOBILE: CUỘN NGANG ============== */
@media (max-width: 849px) {
    .blog-menu {
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        text-align: left;
        padding: 10px;
    }

    .blog-menu .menu-list {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        min-width: max-content;
        gap: 16px;
    }

    .blog-menu .menu-list li {
        flex: 0 0 auto;
    }
    .blog-menu li.current-menu-item {
        order: -1;
    }
}

/* css blog post */
.page-wrapper {
    padding-top: 0;
}

.archive-page-header>.row>.col {
    padding: 15px 0;
}
.archive-page-header .page-title {
    text-decoration: underline;
    text-align: left;
}

.page-wrapper>.row>.col {
    background: #fff;
    padding: 15px;
}

#post-list>.row {
    margin-left: 0;
    margin-right: 0;
}

#post-list .post-item {
    padding: 0;
}

#post-list .post-item:first-child .col-inner {
    padding-bottom:15px;
}

#post-list .post-item:not(:first-child) .col-inner {
    border-top: 1px solid #e0e0e0;
    padding:15px 0;
}

#post-list .post-item:last-child .col-inner {
    padding-bottom:0;
}

#post-list .post-item .box-image img , .blog-news .box-image img {
    border-radius: 8px;
}

.archive-page-header >.row > .col {
    padding-top: 30px;
}
.archive-page-header .page-title {
    text-decoration: underline;
    text-align: left;
}

/* Blog single post */

.blog-single .post {
    margin-bottom: 20px;
}

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

.blog-single .entry-content {
    padding-bottom: 15px;
    padding-top: 15px;
}

.blog-single .entry-meta.uppercase {
    text-transform: none;
}

.blog-single .entry-meta.is-xsmall {
    font-size: .8em;
}

.posted-on, span.byline, .blog-single .luot-xem {
    margin-right: 10px;
    border-right: 1px solid #ccc;
    padding-right: 10px;
}
.entry-meta .luot-xem { 
    display: inline-block;
    margin-bottom: 0;
}

.comments_blog_status:hover {
    cursor: pointer;
    color: #288ad6;
}

.single-post .san-pham-lien-quan {
    padding: 20px 0;
    border-bottom: 1px solid #f0f0f0;
    margin-bottom: 20px;
}

.single-post .san-pham-lien-quan h3{text-decoration:underline;text-transform:uppercase;letter-spacing: 0.3px;}
span.comments_blog_status::before{margin-right: 3px;}
.entry-meta .rung{padding-left: 3px}
.entry-meta i {
    margin-right: 3px;
}
.share-single-post {
    border-bottom: 1px solid #ececec;
    display: block;
    padding-bottom: 10px;
}
.dhd-news-content .entry-header-text {
    padding-bottom: 0;
}
.share-single-post .share-icons-title {
    color: #444;
    border: 1px solid #e9e9e9;
    border-radius: 4px;
    padding-left: 10px;
    line-height: 28px;
    height: 30px;
    display: inline-block;
    margin-right: 10px;
    position: relative;
    font-size: 1em;
    font-weight: 400;
    -webkit-box-shadow: 0 2px 2px #00000014;
    box-shadow: 0 2px 2px #00000014;
}
.share-single-post .share-icons-title::before {
    border-width: 6px;
    border-color: transparent transparent transparent #e9e9e9;
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    left: 100%;
    width: 0;
    height: 0;
    border-style: solid;
}
.share-single-post .share-icons-title::after {
    border-width: 5px;
    border-color: transparent transparent transparent #fff;
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    left: 100%;
    width: 0;
    height: 0;
    border-style: solid;
}
.share-single-post a.icon {
    margin: 0 4px 4px 0;
    height: 30px;
    min-width: 40px;
    line-height: 30px;
    border: 1px solid #e9e9e9;
    padding: 0 10px;
    border-radius: 4px;
    display: inline-block;
    font-size: 1em;
    -webkit-box-shadow: 0 2px 2px #00000014;
    box-shadow: 0 2px 2px #00000014;
}
.share-single-post a.whatsapp::after {
    content: " Whatsapp";
}
.share-single-post a.facebook::after {
    content: " Facebook";
}
.share-single-post a.twitter::after {
    content: " Twitter";
}
.share-single-post a.pinterest::after {
    content: " Pinterest";
}
.share-single-post a.tumblr::after {
    content: " Tumblr";
}
.share-single-post a.telegram::after {
    content: " Telegram";
}

.blog-single footer.entry-meta {
    border-bottom: unset;
    padding-top: 10px;
}

.blog-single .danh-muc, .blog-single .the-tim-kiem {
    margin-bottom: 5px;
}
.blog-single .section-title-normal {
    border-bottom: unset;
    margin-bottom: 15px;
}

.blog-single .section-title-main {
    border-bottom: none;
    letter-spacing: 0.3px;
    text-transform: uppercase;
    text-decoration: underline;
    margin: 0;
    padding: 0;
}

.blog-single .row.bai-cung-chuyen-muc {
    padding: 15px;
}

.blog-single .bai-cung-chuyen-muc .post-item {
    padding: 0 5px 10px;
}

.blog-single .bai-cung-chuyen-muc .post-item>.col-inner {
    border-radius: 8px;
    padding: 15px;
    height: 100%;
    box-shadow: rgba(0, 0, 0, 0.05) 0px 4px 24px, rgba(0, 0, 0, 0.05) 0px 1px 5px;
}

.blog-single .bai-cung-chuyen-muc .post-item>.col-inner .box-image img {
    border-radius: 8px;
}


.blog-single .bai-cung-chuyen-muc .post-title a {
    line-height: 1.3;
    font-size: 16px;
    margin: 10px 0;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-weight: 500;
}

@media (max-width: 849px) {
    
    .archive-page-header>.row>.col {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    .blog-single .row.bai-cung-chuyen-muc {
        padding: 10px;
    }
}

/* css commnet blog */
#comments .comment-list .fn {
    font-style: normal;
}
.blog-single #comments .says {
    display: none;
}

.blog-single .comment-list li {
    padding: 0;
}

/* General styling for comments area */
.comments-area {
    margin: 0 auto;
    padding: 15px;
    background-color: #f9f9f9;
    background-color: rgba(0, 0, 0, .05);
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.comment-inner {
    background: #fff;
    padding: 15px 10px;
    margin-bottom: 15px;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    transition: box-shadow 0.3s ease;
}

.comment-inner:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.comment-inner:target {
    background: #fff;
}

/* Comment author avatar */
.comment-author .avatar {
    border-radius: 50%;
    border: 2px solid #ddd;
}

/* Comment content */
.comment-content {
    font-size: 16px;
    line-height: 1.6;
    color: #444;
    margin: 10px 0;
}

.comment-content p {
    margin: 0;
}

.comment-list .comment-content p {
    margin: 0 0 0.5rem;
}

/* Comment meta (date and reply link) */
.comment-meta {
    font-size: 12px;
    color: #777;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.comment-meta time {
    color: #555;
}

.comment-reply-link {
    color: #0073aa;
    text-decoration: none;
    font-weight: 600;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    padding: 6px 10px;
    background: transparent;
    transition: color 0.3s ease;
}

.comment-reply-link:hover {
    color: #005177;
    border-color: #005177;
}

/* end css commnet blog */


@media screen and (max-width: 849px) {
    .container,.full-width .ubermenu-nav,.row{max-width:640px!important}
    
    html.noscroll {
        overflow: hidden;
        margin-right:0
    }
    
    #header #masthead #logo {
        width: auto;
    }
    
    #header #masthead #logo img {
        max-height: 40px;
    }
    
    #header #masthead .flex-right ul li:last-child {
        padding-right: 6px;
    }
    
    #dhd_breadcrumbs .container {
        padding: 10px;
    }
    
    #header #wide-nav .searchform-wrapper {
        margin: auto;
        width: calc(100% - 12px);
    }
    
    
    /* Menu mobile */
    #header a#btnMainMenu {
        width: 50px;
        height: 50px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
    }
    
    i.icon-menu {
        display: inline-block;
        width: 30px;
        height: 30px;
        vertical-align: middle;
        background: url("images/icon-open-mobile-menu.png") center center / contain no-repeat;
    }
    
    i.icon-menu::before{display:none}
    
    i.icon-close {
        display: inline-block;
        width: 30px;
        height: 30px;
        vertical-align: middle;
        background: url("images/icon-close-mobile-menu.svg") center center / contain no-repeat;
    }

    #main-menu {
        display: none;
        position: fixed;
        top: 100px;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 99;
        background-color: rgba(0, 0, 0, 0.5);
        overflow: hidden;
        padding-bottom: 44px;
    }
    
    #main-menu .sidebar-menu {
        max-width: 640px;
        height: 100%;
        margin: 0 auto;
        padding: 0;

        background: linear-gradient(0deg, #f53d2d, #ff6633);

        overflow-x: hidden;
        overflow-y: auto;

        -webkit-overflow-scrolling: touch;
    }
    
    #main-menu .sidebar-menu .nav-sidebar {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 6px;
        margin: 0;
        padding: 6px;
    }
    
    #main-menu .sidebar-menu .nav-sidebar > li {
        float: none;
        width: auto;
        margin: 0;
        padding: 0;
    }
    
    #main-menu .sidebar-menu .nav-sidebar > li:not(.html):not(.header-block) > a {
        display: flex;
        flex-flow: column;
        align-items: center;
        justify-content: center;
        gap: 4px;
        width: 100%;
        height: 100%;
        min-height: 88px;
        margin: 0;
        padding: 8px 4px;
        border: 1px solid #bbb;
        border-radius: 3px;
        background: linear-gradient(to bottom, #ffffff, #e5e5e5);
        color: #333;
        font-size: 13px;
        font-weight: 400;
        line-height: 1.2;
        text-align: center;
        overflow: hidden;
    }
    
    #main-menu .sidebar-menu .nav-sidebar > li > a img.ux-sidebar-menu-icon {
        flex: 0 0 auto;
        width: 48px;
        height: 48px;
        margin: 0;
        object-fit: contain;
    }

    #main-menu .sidebar-menu .nav-sidebar li.html, #main-menu .sidebar-menu .nav-sidebar > li.header-block {
        grid-column: 1 / -1;
    }
    
    #main-menu .sidebar-menu .nav-sidebar .buycall {
        display: block;
        clear: both;
        padding: 10px 7px;
        background: #fff;
        border-radius: 3px;
        color: #333;
        font-size: 16px;
        text-transform: uppercase;
        overflow: hidden;
    }
    
    #main-menu .sidebar-menu .nav-sidebar .buycall a::before{
        content:'';
        display: inline-block;
        width: 20px;
        height: 20px;
        margin-right: 5px;
        vertical-align: text-bottom;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        background-image:url(data:image/png;base64,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);
    }
    
    #main-menu .sidebar-menu .nav-sidebar::after {
        content: '';
        display: block;
        clear: both;
    }
    .chinh_sach_box {
        flex-wrap: wrap;
        white-space: normal;
    }
    .header-block .show-pro span {
        border: unset;
        min-height: fit-content;
    }
}

@media screen and (max-width: 549px) {
    #main-menu .sidebar-menu .nav-sidebar {
        grid-template-columns: repeat(3, 1fr);
    }
}
/* End css Menu mobile */

.wc-empty-cart-message::before{
    content:"";
    display:block;
    width:80px;
    height:80px;
    margin:0 auto 20px;
    background:url("images/icon-empty-cart.svg") center/contain no-repeat;
}

/* Form đăng ký My Account */
.woocommerce-account .woocommerce-form-register.register {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

/* Mặc định các field chiếm 100% */
.woocommerce-account .woocommerce-form-register.register .form-row {
    width: 100%;
    margin: 0;
    float: none;
    clear: none;
}

/* Họ tên + Điện thoại */
.woocommerce-account .woocommerce-form-register.register
p:has(#reg_billing_last_name),
.woocommerce-account .woocommerce-form-register.register
p:has(#reg_billing_phone),

/* Username + Email */
.woocommerce-account .woocommerce-form-register.register
p:has(#reg_username),
.woocommerce-account .woocommerce-form-register.register
p:has(#reg_email){
    width: calc(50% - 6px);
}

/* Bỏ div clear của Woo */
.woocommerce-account .woocommerce-form-register.register .clear{
    display:none;
}

@media (max-width: 768px){
    .woocommerce-account .woocommerce-form-register.register
    p:has(input){
        width: 100% !important;;
    }
}


/* Login reminder lightbox */
#login-reminder-footer .login-reminder-content {
    text-align: center;
    padding: 10px 5px;
}

#login-reminder-footer .login-reminder-content::before {
    content: "\e005 \e604 \e005";
    font-family: 'fl-icons';
    display: block;
    font-size: 36px;
    color: #ff0000;
    margin-bottom: 12px;
}

#login-reminder-footer .login-reminder-content strong {
    display: block;
    font-size: 22px;
    font-weight: 700;
    color: #222;
    margin-bottom: 10px;
}

#login-reminder-footer .login-reminder-content span {
    display: block;
    font-size: 15px;
    line-height: 1.5;
    color: #777;
    margin-bottom: 22px;
}

#login-reminder-footer .login-reminder-content a {
    display: inline-block;
    padding: 12px 32px;
    background: #f53d2d;
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    letter-spacing: 0.3px;
    transition: background 0.2s ease, transform 0.15s ease;
}

#login-reminder-footer .login-reminder-content a:hover {
    background: #d8331f;
    color: #fff;
    transform: translateY(-1px);
}

#login-reminder-footer.mfp-hide,
.mfp-content #login-reminder-footer {
    border-radius: 10px;
}

#login-reminder-footer button.mfp-close {
    top: 10px !important;
    right: 10px !important;
}

@media (max-width: 549px) {
    #login-reminder-footer .login-reminder-content strong {
        font-size: 19px;
    }
    #login-reminder-footer .login-reminder-content a {
        display: block;
        width: 100%;
    }
}


.woocommerce-account .my-account-header {
    display: none;
}
.woocommerce-account .my-account .container {
    padding-left: 0;
    padding-right: 0;
}
.my-account .row > .col {
    background: #fff;
    padding: 30px;
}

body .nsm7Bb-HzV7m-LgbsSe {
    width: fit-content;
}

@media (max-width: 849px) {
    .my-account .row>.col {
        padding: 15px;
        border: 0 !important;
    }
}

.DTlWb.flash-sale-campaign {
    position: relative;
    margin-top: 10px;
    margin-bottom: 30px;
    padding-top: calc(100% * 390 / 1920);
    background: linear-gradient(180deg, #f53d2d, #f63);
    border: 0;
    border-radius: 10px;
}

.DTlWb.flash-sale-campaign::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    aspect-ratio: 1920 / 390;
    background: url(images/Banner-flash-sale-week-campaign.webp) center / cover no-repeat;
    border-radius: 10px 10px 0 0;
}

.DTlWb .deals__item {
    background: #fff;
    border-radius: 8px;
}

.DTlWb .shopee-header-section__header {
    background: transparent;
    border-bottom: 0;
}

.DTlWb .flash-sale-header-with-countdown-timer__wrapper {
    align-items: center;
}

.DTlWb .shopee-header-section__header .flash-sale-logo {
    fill: #fff;
}

.DTlWb .shopee-header-section__header .shopee-button-no-outline {
    color: #fff;
}

.DTlWb.flash-sale-campaign .countdown-timer span:after {
    color: #fff;
}

.DTlWb .flickity-prev-next-button {
    border-radius: 50% !important;
}

@media (min-width: 850px) {
    .DTlWb .shopee-header-section__header .flash-sale-logo {
        height: 28px;
        width: auto;
    }
    
    .DTlWb .countdown-timer::before {
        content: "Kết thúc sau:";
        font-size: 14px;
        font-weight: 600;
        color: #fff;
        padding: 0 10px;
        text-transform: uppercase;
    }
    
    .DTlWb.flash-sale-campaign .countdown-timer span {
        font-size: 18px;
        width: 36px;
        background: #fff;
        color: var(--primary-color);
    }
}

@media (max-width: 849px) {
    .DTlWb .fsmh-slider, .flash-sale-item.col {
        padding-left: 2px;
        padding-right: 2px;
    }
    .DTlWb .flash_sale_price {
        flex-wrap: wrap;
    }
}


/* =========================================================
   TRANG GIỚI THIỆU – DHD (Flatsome UX Builder)
   Breakpoint theo Flatsome: <=549 / <=849 / >=850
   ========================================================= */

/* ---------- Banner ---------- */
.ab__banner .banner-bg::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(10, 13, 18, 0.88) 0%, rgba(10, 13, 18, 0.68) 42%, rgba(10, 13, 18, 0.15) 78%, rgba(10, 13, 18, 0) 100%);
}

/* Mobile: chữ chiếm 100% chiều ngang nên lớp phủ phải đều, không để phần phải bị sáng */
@media (max-width: 849px) {
    .ab__banner .banner-bg::after {
        background: linear-gradient(90deg, rgba(10, 13, 18, 0.85) 0%, rgba(10, 13, 18, 0.6) 100%);
    }
	.ab__banner-stack-btn .button {
		font-size: 15px;
	}
}

.ab__banner-box-text {
    color: rgba(255, 255, 255, 0.86);
    font-size: clamp(0.95rem, 0.9rem + 0.25vw, 1.05rem);
    line-height: 1.65;
}

.ab__banner-box-text h1 {
    margin: 0 0 12px;
    color: #fff;
    font-size: clamp(1.6rem, 1.05rem + 2.6vw, 3rem);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.015em;
    text-transform: none;
    text-wrap: balance;
}

.ab__banner-box-text h1::before {
    content: "";
    display: block;
    width: 56px;
    height: 3px;
    margin-bottom: 18px;
    background: var(--primary-color);
}

.ab__banner-box-text p {
    margin: 12px 0;
    color: inherit;
}

/* ---------- Khung chung của section ---------- */
.ab__sec .section-content {
    padding: clamp(28px, 4vw, 56px) 0;
}

.ab__sec p {
    margin-bottom: 14px;
    font-size: 1rem;
    line-height: 1.6;
}

.ab__sec p:last-child {
    margin-bottom: 0;
}

.ab__sec .section-content > .row:not(:last-child) {
    margin-bottom: clamp(24px, 3.5vw, 44px);
}

.ab__story,
.ab__why,
.ab__cert {
    background: #fff;
    border: 1px solid #e3e6ea;
    border-radius: 12px;
}

.ab__story {
    padding: clamp(16px, 2.2vw, 28px);
}

.ab__why,
.ab__cert {
    padding: clamp(18px, 2.5vw, 32px);
}

@media (max-width: 549px) {
  .ab__sec {
    padding-left: 2px;
    padding-right: 2px;
  }
}

/* ---------- Tiêu đề section (Flatsome [title]) ---------- */
.ab__story-title,
.ab__why-title {
    display: block;
    margin-bottom: 20px;
}

.ab__story-title .section-title,
.ab__why-title .section-title {
    margin: 0;
    border: 0;
    align-items: center;
}

.ab__story-title .section-title-main,
.ab__why-title .section-title-main {
    margin: 0;
    padding: 0;
    border: 0;
    color: #14181f;
    font-size: clamp(1.25rem, 1.05rem + 0.7vw, 1.6rem);
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0;
    text-transform: uppercase;
}

/* Tiêu đề căn giữa có 2 vạch trang trí */
.ab__why-title .section-title {
    justify-content: center;
}

.ab__why-title .section-title-main {
    margin: 0 20px;
}

.ab__why-title .section-title b {
    position: relative;
    flex: 0 0 62px;
    height: 1px;
    margin: 0;
    opacity: 1;
    background: linear-gradient(90deg, transparent, var(--primary-color));
}

.ab__why-title .section-title b:last-of-type {
    background: linear-gradient(90deg, var(--primary-color), transparent);
}

.ab__why-title .section-title b:first-of-type::after,
.ab__why-title .section-title b:last-of-type::before {
    content: "";
    position: absolute;
    top: 50%;
    width: 7px;
    height: 7px;
    margin-top: -3.5px;
    border-radius: 50%;
    background-color: var(--primary-color);
}

.ab__why-title .section-title b:first-of-type::after {
    right: 0;
}

.ab__why-title .section-title b:last-of-type::before {
    left: 0;
}

@media (max-width: 549px) {
    .ab__why-title .section-title b {
        flex: 0 0 28px;
    }

    .ab__why-title .section-title-main {
        margin: 0 12px;
    }
}

/* ---------- Về chúng tôi ---------- */
/* height:100% chỉ có tác dụng khi các lớp bọc của ux_image cũng cao 100% */
.ab__story-image .col-inner,
.ab__story-image .img,
.ab__story-image .img-inner {
    height: 100%;
}

.ab__story-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

@media (min-width: 850px) {
    .ab__story-content:last-child .col-inner {
        padding-left: 30px;
    }
}

@media (max-width: 849px) {
    .ab__story-image img {
        height: auto;
        aspect-ratio: 16 / 10;
    }

    .ab__story-content .col-inner {
        padding-top: 22px !important;
    }
}

.ab__story__content ul {
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
}

.ab__story__content ul li {
    position: relative;
    margin: 0 0 10px !important;
    padding-left: 30px;
    font-size: 0.975rem;
    line-height: 1.5;
}

.ab__story__content ul li:last-child {
    margin-bottom: 0 !important;
}

.ab__story__content ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.15em;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: var(--primary-color);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 10px 10px;
}

/* ---------- Số liệu ---------- */
.ab__stats {
    padding: clamp(20px, 3vw, 34px) clamp(10px, 2vw, 22px);
    border-radius: 12px;
    background: linear-gradient(135deg, #14181f 0%, #232a35 100%);
}

.ab__stats-item {
    text-align: center;
}

.ab__stats-item .col-inner {
    padding: 6px 10px;
}

@media (max-width: 849px) {
    .ab__stats-item .col-inner {
        padding: 14px 8px;
    }
}

.ab__stats-number p {
    margin: 0;
    color: var(--primary-color);
    font-size: clamp(1.9rem, 1.4rem + 1.8vw, 2.75rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.02em;
    font-variant-numeric: tabular-nums;
}

.ab__stats-number strong {
    font-weight: inherit;
}

/* Nhắm vào chính khối label, không phụ thuộc có thẻ <p> hay không */
.ab__stats-label {
    margin-top: 8px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.875rem;
    line-height: 1.4;
}

.ab__stats-label p {
    margin: 0;
    color: inherit;
    font-size: inherit;
    line-height: inherit;
}

/* ---------- Vì sao chọn DHD ---------- */
/* row_inner style="collapse" ép padding cột = 0 !important nên phải dùng !important để thêm lại,
   kèm margin âm để lưới thẳng hàng với tiêu đề và không dư khoảng trống ở đáy */
.ab__why-grid {
    width: auto;
    max-width: none;
    margin: 0 -10px -20px;
}

.ab__why-grid > .ab__why-item {
    padding: 0 10px 20px !important;
}

.ab__why-item > .col-inner {
    height: 100%;
    padding: clamp(18px, 2vw, 26px) clamp(14px, 1.6vw, 22px) !important;
    border: 1px solid #e6e8eb;
    border-radius: 10px;
    background-color: #fcfcfd;
    transition: border-color 0.18s, box-shadow 0.18s;
}

@media (hover: hover) {
    .ab__why-item > .col-inner:hover {
        border-color: var(--primary-color);
        box-shadow: 0 6px 18px rgba(20, 24, 31, 0.07);
    }
}

.ab__why-box .icon-box-img {
    width: 60px;
    margin: 0 auto;
}

.ab__why-text h3 {
    margin: 14px 0 8px;
    color: #14181f;
    font-size: 1.0625rem;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0;
    text-transform: none;
}

/* ---------- Chứng nhận đại lý ---------- */
.ab__cert-content .col-inner {
    margin-bottom: 20px;
}

.ab__cert-slider .slider .flickity-viewport {
    border: 1px solid #e3e6ea;
    border-radius: 10px;
    overflow: hidden;
}

.ab__cert-slider .slider .img img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: min(460px, 65vh);
    margin: 0 auto;
}

@media (min-width: 850px) {
    /* Chừa cột 25% bên phải bằng padding thay vì flex.
       Flickity tính vị trí slide theo chiều rộng phần nội dung của .slider (đã trừ padding),
       nên viewport và vị trí slide luôn khớp nhau */
    .ab__cert-slider .slider {
        padding-right: 25%;
    }

    .ab__cert-slider .slider .flickity-page-dots {
        position: absolute;
        top: 0;
        right: 0;
        bottom: auto;
        left: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
        width: 25%;
        margin: 0;
        padding: 0 0 0 20px;
    }

    .ab__cert-slider .flickity-page-dots .dot {
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        opacity: 1 !important;
        font-size: 0;
        cursor: pointer;
    }

    .ab__cert-slider .flickity-page-dots .dot::before {
        display: block;
        padding: 4px 10px;
        border: 1px solid #e0e0e0;
        border-radius: 4px;
        color: #333;
        font-size: 13px;
        font-weight: 500;
        line-height: 1.4;
        white-space: nowrap;
        transition: border-color 0.18s, color 0.18s;
    }

    .ab__cert-slider .flickity-page-dots .dot:hover::before,
    .ab__cert-slider .flickity-page-dots .dot.is-selected::before {
        border-color: var(--primary-color);
        color: #000;
    }

    .ab__cert-slider .flickity-page-dots .dot.is-selected::before {
        font-weight: 700;
    }

    /* Số dòng phải khớp số ảnh trong slider và đúng thứ tự ảnh */
    .ab__cert-slider .flickity-page-dots .dot:nth-child(1)::before { content: "Bosch 2025"; }
    .ab__cert-slider .flickity-page-dots .dot:nth-child(2)::before { content: "Bosch 2024"; }
    .ab__cert-slider .flickity-page-dots .dot:nth-child(3)::before { content: "Bosch 2023"; }
    .ab__cert-slider .flickity-page-dots .dot:nth-child(4)::before { content: "Bosch 2022"; }
    .ab__cert-slider .flickity-page-dots .dot:nth-child(5)::before { content: "Sinhung 2023"; }
}

/* ---------- CTA ---------- */
.ab__cta {
    padding: clamp(24px, 4vw, 44px) clamp(20px, 4vw, 48px) !important;
    border-radius: 12px;
    background: linear-gradient(135deg, #14181f 0%, #232a35 100%);
}

.ab__cta .ab__cta-text h2,
.ab__cta .ab__cta-text h3 {
    margin: 0 0 10px;
    color: #fff;
    font-size: clamp(1.25rem, 1.05rem + 0.9vw, 1.85rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
    text-transform: none;
}

.ab__cta .ab__cta-text p {
    color: rgba(255, 255, 255, 0.8);
}

.ab__cta-stack {
    margin-top: 22px;
}

.cta__box .icon-box-img {
	margin-left: 0;
}

.cta__box .ab__why-item > .col-inner {
	padding: clamp(12px, 1.3vw, 18px) clamp(10px, 1vw, 14px) !important;
}

.cta__map .wpcf7-form {
	margin-top: 14px;
}

@media (min-width: 850px) {

.cta__map .wpcf7-form input[type="text"],
.cta__map .wpcf7-form input[type="email"],
.cta__map .wpcf7-form input[type="tel"],
.cta__map .wpcf7-form input[type="number"],
.cta__map .wpcf7-form input[type="url"] {
	padding: 15px 18px;
	height: auto;
}

.cta__map .wpcf7-form input[type="submit"] {
	width: 100%;
    padding: 5px 30px;
}
}