/* nxdh-css */

        .nxdh, .nxdh-spacer { display: none; }

        @media (min-width: 850px) {
            #header .header-wrapper, #header .header-bg-container { display: none !important; }
            #header { min-height: 0 !important; }

            .nxdh { display: block; background: #fff; }
                        .nxdh.is-sticky {
                position: fixed; top: 0; left: 0; right: 0; z-index: 9990;
                margin-top: 0; border-radius: 0;
                box-shadow: 0 2px 14px rgba(53, 39, 28, 0);
                /* Chuyển động: thu vào và bung ra đều đi qua left/right nên mượt và không giật layout */
                transition: left .38s cubic-bezier(.22, .8, .24, 1),
                            right .38s cubic-bezier(.22, .8, .24, 1),
                            margin-top .38s cubic-bezier(.22, .8, .24, 1),
                            border-radius .3s ease,
                            box-shadow .3s ease;
            }

            /* Đã cuộn xuống: thu lại thành một thanh nổi rộng bằng khung nội dung, bo góc, đổ bóng */
            .nxdh.is-sticky.is-float.is-scrolled {
                left: max(14px, calc((100% - 1340px) / 2));
                right: max(14px, calc((100% - 1340px) / 2));
                margin-top: 0;                      /* dính sát mép trên, không để hở dải nội dung */
                border-radius: 0 0 16px 16px;       /* chỉ bo hai góc dưới vì hai góc trên đã chạm mép */
                /* KHÔNG dùng overflow: hidden ở đây: nó cắt mất menu con, danh mục, gợi ý tìm kiếm và
                   menu tài khoản (đều bung ra ngoài khung đầu trang) nên rê chuột khi đã cuộn không thấy gì.
                   Góc bo dưới được vẽ bằng chính thanh menu ở hàng cuối (quy tắc ngay bên dưới). */
                box-shadow: 0 14px 38px rgba(53, 39, 28, .20);
            }
            .nxdh.is-sticky.is-float.is-scrolled .nxdh-nav {
                border-radius: 0 0 16px 16px;
                transition: border-radius .3s ease;
            }

            /* Thanh trên cùng thu lại khi cuộn, cho thanh nổi gọn hơn */
            .nxdh.is-sticky .nxdh-top {
                max-height: 60px; overflow: hidden;
                transition: max-height .34s cubic-bezier(.22, .8, .24, 1), opacity .24s ease;
            }
            .nxdh.is-sticky.is-scrolled .nxdh-top { max-height: 0; opacity: 0; }

            /* Trong thanh nổi, hai bên đã có lề riêng nên khung trong không cần giới hạn nữa */
            .nxdh.is-sticky.is-float.is-scrolled .nxdh-in { max-width: none; padding-left: 22px; padding-right: 22px; }

            @media (prefers-reduced-motion: reduce) {
                .nxdh.is-sticky, .nxdh.is-sticky .nxdh-top,
                .nxdh-main .nxdh-in, .nxdh-logo-img { transition: none !important; }
            }
            .nxdh.is-sticky ~ .nxdh-spacer { display: block; overflow-anchor: none; }
            /* Đầu trang đứng yên (không dính theo): vẫn phải nằm TRÊN menu dọc và banner phía dưới,
               nếu không menu con đổ xuống bị chúng che mất */
            .nxdh:not(.is-sticky) { position: relative; z-index: 9990; }
            .nxdh.nxdh-nomotion, .nxdh.nxdh-nomotion * { transition: none !important; }

            /* ---------- Kiểu "ẩn khi cuộn xuống, hiện khi cuộn lên" ---------- */
            .nxdh.is-sticky.is-smart {
                will-change: transform;
                /* Chỉ trượt + đổ bóng; vị trí trái/phải đổi ngay (lúc đầu trang đang khuất) */
                transition: transform .42s cubic-bezier(.2, .85, .25, 1), box-shadow .3s ease, border-radius .3s ease;
            }
            .nxdh.is-sticky.is-smart.is-hidden { transform: translate3d(0, calc(-100% - 24px), 0); box-shadow: none; }
            .nxdh.is-sticky.is-smart .nxdh-top,
            .nxdh.is-smart.can-shrink .nxdh-main .nxdh-in,
            .nxdh.is-smart.can-shrink .nxdh-logo-img { transition-duration: .18s; }
            .nxdh.is-sticky.is-smart.is-scrolled { box-shadow: 0 16px 40px rgba(53, 39, 28, .18); }

            /* Vạch tiến độ đọc trang ở mép dưới đầu trang (chỉ khi đã cuộn) */
            .nxdh-progress { position: absolute; left: 16px; right: 16px; bottom: 0; height: 3px; pointer-events: none;
                             opacity: 0; transition: opacity .25s ease; }
            .nxdh-progress i { display: block; height: 100%; border-radius: 3px; transform: scaleX(0); transform-origin: left center;
                               background: linear-gradient(90deg, #CF873F, #fff); will-change: transform; }
            .nxdh.is-scrolled .nxdh-progress { opacity: 1; }

            @media (prefers-reduced-motion: reduce) {
                .nxdh.is-sticky.is-smart { transition: none; }
            }

            .nxdh-in {
                display: flex; align-items: center; gap: 26px;
                width: 100%; max-width: 1400px;
                margin: 0 auto; padding: 0 30px;
                box-sizing: border-box;
            }

            /* ---------- Thanh trên cùng ---------- */
            .nxdh-top { background: #261C15; color: rgba(255,255,255,.82); font-size: 13px; }
            .nxdh-top .nxdh-in { min-height: 36px; justify-content: space-between; }
            .nxdh-top-left, .nxdh-top-right { display: flex; align-items: center; gap: 22px; }
            .nxdh-top-item {
                display: inline-flex; align-items: center; gap: 7px;
                color: rgba(255,255,255,.82) !important; text-decoration: none !important; line-height: 1;
            }
            .nxdh-top-item:hover { color: #fff !important; }

            /* ---------- Hàng chính ---------- */
            .nxdh-main { overflow: visible; }
            .nxdh-main .nxdh-in { min-height: 88px; height: auto; transition: min-height .2s ease; }
            .nxdh.can-shrink.is-scrolled .nxdh-main .nxdh-in { min-height: 66px; }

            /* Đệm bốn phía quanh logo. Dùng ĐỆM chứ không dùng transform: transform chỉ vẽ lệch đi
               chứ không tính vào chiều cao, nên logo sẽ tràn xuống đè lên thanh menu. Đệm thì hàng
               tự cao theo, và đó cũng là cách chừa khoảng trống trên dưới quanh logo. */
            .nxdh-logo {
                flex: 0 0 auto; display: flex; align-items: center;
                padding: 5px 0px 0px 0px;
            }
            .nxdh-logo-img {
                max-height: 110px; width: auto; display: block;
                transition: max-height .2s ease;
            }
            .nxdh.can-shrink.is-scrolled .nxdh-logo-img { max-height: 79px; }
            .nxdh-logo-text { color: #342A22; font-size: 21px; font-weight: 800; }

            /* ---------- Khối tìm kiếm ---------- */
            .nxdh-search {
                position: relative; flex: 1 1 auto; display: flex; align-items: stretch;
                min-width: 0;
                max-width: 640px;
                /* Mép trái khung tìm kiếm cách logo đúng khoảng này; mép phải tự co giãn theo màn hình.
                   margin-top/bottom phải đặt lại về 0: theme gán cho mọi thẻ <form> một khoảng đệm
                   dưới, khi căn giữa theo chiều dọc thì khoảng đệm đó tính vào chiều cao và đẩy ô
                   tìm kiếm nhích lên so với hàng nút bên phải. */
                margin: 0 auto 0 10px;
                align-self: center;
                background: #fff;
                border: 2px solid var(--nhatdx-primary, #C67930); border-radius: 10px;
            }
            .nxdh-cats-btn {
                flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
                width: 48px; min-height: 44px; margin: 0; padding: 0;
                background: #F9F7F4 !important; border: 0 !important;
                border-right: 1px solid #EEEAE5 !important;
                border-radius: 8px 0 0 8px !important; box-shadow: none !important;
                color: var(--nhatdx-primary, #C67930) !important; min-height: 44px !important;
            }
            .nxdh-cats-btn:hover { background: #F7F2EB !important; }
            .nxdh-burger { position: relative; width: 17px; height: 2px; background: currentColor; border-radius: 2px; }
            .nxdh-burger::before, .nxdh-burger::after {
                content: ''; position: absolute; left: 0; width: 17px; height: 2px;
                background: currentColor; border-radius: 2px; transition: transform .2s ease;
            }
            .nxdh-burger::before { top: -5px; }
            .nxdh-burger::after  { top: 5px; }
            .nxdh.cats-open .nxdh-burger { background: transparent; }
            .nxdh.cats-open .nxdh-burger::before { transform: translateY(5px) rotate(45deg); }
            .nxdh.cats-open .nxdh-burger::after  { transform: translateY(-5px) rotate(-45deg); }

            .nxdh-search-in {
                flex: 1 1 auto; min-width: 0; height: auto !important; min-height: 44px; margin: 0 !important;
                padding: 0 16px !important; background: #fff !important;
                border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
                font-size: 14.5px; color: #342A22;
            }
            .nxdh-search-in::placeholder { color: #B0A69C; }
            .nxdh-search-in:focus { outline: none; box-shadow: none !important; }
            .nxdh-search-go {
                flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
                width: 54px; min-height: 44px !important; margin: 0; padding: 0;
                background: var(--nhatdx-primary, #C67930) !important; border: 0 !important;
                border-radius: 0 8px 8px 0 !important; box-shadow: none !important; color: #fff !important;
            }

            /* ---------- Bảng gợi ý & bảng danh mục ---------- */
            .nxdh-live, .nxdh-cats-panel {
                position: absolute; top: calc(100% + 10px); left: 0; right: 0; z-index: 40;
                max-height: 70vh; overflow-y: auto; padding: 6px;
                background: #fff; border: 1px solid #EDEAE7; border-radius: 12px;
                box-shadow: 0 16px 38px rgba(53, 39, 28, .16);
            }
            .nxdh-live-note { padding: 14px 12px; color: #83786C; font-size: 13.5px; }
            .nxdh-live-item {
                display: flex; align-items: center; gap: 12px; padding: 8px 10px; border-radius: 9px;
                color: #342A22 !important; text-decoration: none !important;
            }
            .nxdh-live-item:hover { background: #FBF8F4; }
            .nxdh-live-img { flex: 0 0 auto; width: 46px; height: 46px; border-radius: 8px; overflow: hidden; background: #F7F6F4; }
            .nxdh-live-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
            .nxdh-live-tx { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
            .nxdh-live-name {
                display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
                font-size: 13.5px; font-weight: 600; line-height: 1.35;
            }
            .nxdh-live-price { color: var(--nhatdx-primary, #C67930); font-size: 13px; font-weight: 700; }
            .nxdh-live-price del { color: #B0A69C; font-weight: 400; font-size: 12px; margin-left: 4px; }
            .nxdh-live-all {
                display: block; margin-top: 4px; padding: 11px 12px; border-top: 1px solid #F6F4F1;
                color: var(--nhatdx-primary, #C67930) !important; font-size: 13.5px; font-weight: 600;
                text-align: center; text-decoration: none !important;
            }
            .nxdh-live-all:hover { background: #FBF8F4; }

            .nxdh-cats-list, .nxdh-cats-list ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
            .nxdh-cats-list > li + li { border-top: 1px solid #F8F6F3; }
            .nxdh-cats-list > li > a {
                display: block; padding: 10px 12px; border-radius: 8px;
                color: #342A22 !important; font-size: 14px; font-weight: 600; text-decoration: none !important;
            }
            .nxdh-cats-list > li > a:hover { background: #FBF8F4; color: var(--nhatdx-primary, #C67930) !important; }
            .nxdh-cats-list ul.sub-menu { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 12px 10px !important; }
            .nxdh-cats-list ul.sub-menu a {
                display: inline-block; padding: 5px 10px; background: #F9F7F5; border-radius: 999px;
                color: #60564C !important; font-size: 12.5px; text-decoration: none !important;
            }
            .nxdh-cats-list ul.sub-menu a:hover { background: #F7F1EA; color: var(--nhatdx-primary, #C67930) !important; }

            /* ---------- Cụm bên phải ---------- */
            .nxdh-acts { flex: 0 0 auto; display: flex; align-items: center; gap: 12px; }

            .nxdh-hotline {
                display: inline-flex; align-items: center; gap: 10px; padding: 7px 14px 7px 8px;
                border-radius: 10px; background: #FBF8F4;
                color: #342A22 !important; text-decoration: none !important; line-height: 1.25;
            }
            .nxdh-hotline:hover { background: #F7F1EA; }
            .nxdh-hotline-ic {
                display: flex; align-items: center; justify-content: center; width: 36px; height: 36px;
                border-radius: 50%; background: var(--nhatdx-primary, #C67930); color: #fff; flex: 0 0 auto;
            }
            .nxdh-hotline-tx { display: flex; flex-direction: column; gap: 2px; }
            .nxdh-hotline-tx small { color: #83786C; font-size: 11.5px; }
            .nxdh-hotline-tx strong { color: var(--nhatdx-primary, #C67930); font-size: 15.5px; font-weight: 800; }

            .nxdh-act {
                display: inline-flex; align-items: center; gap: 12px; padding: 8px 16px;
                min-height: 52px; box-sizing: border-box;
                border-radius: 10px; text-decoration: none !important;
                font-size: 13.5px; font-weight: 600; line-height: 1.25;
            }

            /* Giỏ hàng: khoảng cách giữa biểu tượng và chữ phải đủ cho huy hiệu số nằm lọt */
            /* Flatsome ẩn nút đã bấm khi ngăn giỏ hàng mở ra, để lại một khoảng trống giữa hàng.
               Chặn lại vì nút này nằm trong bố cục cố định của đầu trang. */
            .nxdh-cart, .nxdh-cart.active, .nxdh-cart.current {
                display: inline-flex !important; visibility: visible !important; opacity: 1 !important;
            }
            .nxdh-cart { background: var(--nhatdx-primary, #C67930); color: #fff !important; }
            .nxdh-cart:hover { color: #fff !important; filter: brightness(1.06); }
            .nxdh-cart-ic { position: relative; display: inline-flex; margin-right: 4px; }
            .nxdh-cart-n {
                position: absolute; top: -8px; right: -10px; min-width: 18px; height: 18px; padding: 0 5px;
                display: none; align-items: center; justify-content: center;
                background: #fff; color: var(--nhatdx-primary, #C67930);
                border-radius: 999px; font-size: 10.5px; font-weight: 800; line-height: 1;
            }
            .nxdh-cart-n.is-on { display: inline-flex; }
            .nxdh-cart-tx { display: flex; flex-direction: column; gap: 2px; }
            .nxdh-cart-tx small { color: rgba(255,255,255,.82); font-size: 11.5px; font-weight: 500; }
            .nxdh-cart-t { font-size: 14.5px; font-weight: 800; }

            /* Menu đổ xuống của nút Tài khoản, chỉ có khi khách đã đăng nhập */
            .nxdh-acct { position: relative; }
            .nxdh-acct-menu {
                position: absolute; top: calc(100% + 10px); right: 0; z-index: 60; padding: 6px;
                /* Rộng vừa đúng nội dung, không để thừa mảng trống bên phải */
                width: max-content; min-width: 0; max-width: 240px;
                background: #fff; border: 1px solid #EDEAE7; border-radius: 12px;
                box-shadow: 0 16px 38px rgba(53, 39, 28, .16);
                opacity: 0; visibility: hidden; transform: translateY(6px);
                transition: opacity .16s ease, transform .16s ease;
            }
            /* Vùng đệm vô hình nối nút với bảng, để chuột đi xuống không rớt giữa chừng */
            .nxdh-acct-menu::before { content: ''; position: absolute; left: 0; right: 0; top: -12px; height: 12px; }
            .nxdh-acct.has-menu:hover .nxdh-acct-menu,
            .nxdh-acct.has-menu:focus-within .nxdh-acct-menu { opacity: 1; visibility: visible; transform: none; }

            .nxdh-acct-head {
                display: flex; align-items: center; gap: 10px; padding: 8px 10px 12px;
                margin-bottom: 4px; border-bottom: 1px solid #F6F4F1;
            }
            .nxdh-acct-head img { width: 40px; height: 40px; border-radius: 50%; display: block; }
            .nxdh-acct-name {
                min-width: 0; max-width: 140px; color: #342A22; font-size: 13.5px; font-weight: 700;
                line-height: 1.3; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
            }
            .nxdh-acct-menu a {
                display: block; padding: 9px 12px; border-radius: 8px; white-space: nowrap;
                color: #4E3F34 !important; font-size: 13.5px; font-weight: 500; text-decoration: none !important;
            }
            .nxdh-acct-menu a:hover { background: #FBF8F4; color: var(--nhatdx-primary, #C67930) !important; }
            .nxdh-acct-menu a.is-out { margin-top: 4px; border-top: 1px solid #F6F4F1; color: #793F22 !important; }
            .nxdh-acct-menu a.is-out:hover { background: #FAF5EE; color: #793F22 !important; }

            /* Tài khoản: khối riêng có viền, nằm ngoài cùng bên phải */
            .nxdh-account {
                background: #fff; border: 1.5px solid #EAE6E1; gap: 9px; padding: 9px 16px;
                color: #4E3F34 !important;
            }
            .nxdh-account:hover {
                border-color: var(--nhatdx-primary, #C67930);
                color: var(--nhatdx-primary, #C67930) !important;
            }

            /* ---------- Thanh menu ---------- */
            .nxdh-nav {
                background: var(--nhatdx-primary, #C67930);
                margin-top: 0px;
            }
            .nxdh-nav .nxdh-in { align-items: stretch; }

            /* Menu mang đúng lớp của theme nên kiểu dáng do theme quyết định. Phần dưới chỉ đổi
               màu chữ cho hợp nền xanh và gỡ nền trắng mặc định của thanh. */
            .nxdh-nav .nxdh-menu { background: transparent !important; }
            .nxdh-nav .nxdh-menu > li > a {
                position: relative; color: #fff !important; font-weight: 700 !important;
            }
            /* Gạch chân: quy tắc gạch chân của theme chỉ ăn khi menu nằm trong #header, mà đầu trang
               này nằm ngoài #header, nên phải tự vẽ lại cho giống bản mặc định. */
            .nxdh-nav .nxdh-menu > li > a::after {
                content: ''; position: absolute; left: 50%; bottom: 10px;
                width: calc(100% - 30px); height: 2px; background: #fff;
                transform: translateX(-50%) scaleX(.3); transform-origin: center;
                opacity: 0; transition: opacity .18s ease, transform .18s ease; pointer-events: none;
            }
            .nxdh-nav .nxdh-menu > li > a:hover::after,
            .nxdh-nav .nxdh-menu > li.current-menu-item > a::after,
            .nxdh-nav .nxdh-menu > li.current-menu-parent > a::after,
            .nxdh-nav .nxdh-menu > li.current-menu-ancestor > a::after {
                opacity: 1; transform: translateX(-50%) scaleX(1);
            }
            .nxdh-nav .nxdh-menu > li > a:hover,
            .nxdh-nav .nxdh-menu > li.current-menu-item > a,
            .nxdh-nav .nxdh-menu > li.current-menu-parent > a,
            .nxdh-nav .nxdh-menu > li.current-menu-ancestor > a { color: #fff !important; opacity: .92; }
            .nxdh-nav .nxdh-menu > li > a:before,
            .nxdh-nav .nxdh-menu > li > a:after { background-color: #fff !important; }
            /* ---------- Thanh menu kiểu mới ---------- */
            .nxdh.nav-modern .nxdh-nav {
                background: linear-gradient(90deg, var(--nhatdx-primary, #C67930) 0%, #B46D2C 55%, #A36327 100%);
                box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
            }
            .nxdh.nav-modern .nxdh-nav .nxdh-in { position: relative; align-items: center; }
            .nxdh.nav-modern .nxdh-nav .nxdh-menu > li > a {
                display: inline-flex !important; align-items: center; gap: 7px;
                margin: 7px 2px !important; padding: 8px 14px !important; border-radius: 10px;
                letter-spacing: .02em; transition: background-color .2s ease, color .2s ease;
            }
            .nxdh.nav-modern .nxdh-nav .nxdh-menu > li > a::after { display: none !important; }   /* thay bằng vạch trượt */
            .nxdh.nav-modern .nxdh-nav .nxdh-menu > li > a:hover,
            .nxdh.nav-modern .nxdh-nav .nxdh-menu > li.has-dropdown:hover > a { background: rgba(255,255,255,.14); opacity: 1; }
            .nxdh.nav-modern .nxdh-nav .nxdh-menu > li.current-menu-item > a,
            .nxdh.nav-modern .nxdh-nav .nxdh-menu > li.current-menu-parent > a,
            .nxdh.nav-modern .nxdh-nav .nxdh-menu > li.current-menu-ancestor > a { background: rgba(255,255,255,.18); opacity: 1; }
            .nxdh.nav-modern .nxdh-mi { flex: 0 0 auto; opacity: .92; transition: transform .25s cubic-bezier(.3,1.6,.5,1); }
            .nxdh.nav-modern .nxdh-nav .nxdh-menu > li > a:hover .nxdh-mi { transform: translateY(-2px) scale(1.12); }
            .nxdh.nav-modern .nxdh-nav .nxdh-menu > li > a .icon-angle-down { transition: transform .2s ease; margin-left: 2px; }
            .nxdh.nav-modern .nxdh-nav .nxdh-menu > li.has-dropdown:hover > a .icon-angle-down { transform: rotate(180deg); }
            .nxdh.nav-modern .nxdh-magic {
                position: absolute; left: 0; bottom: 5px; height: 3px; width: 0; border-radius: 3px; pointer-events: none; opacity: 0;
                background: linear-gradient(90deg, #D18B45, #fff);
                box-shadow: 0 0 10px rgba(209, 139, 69, .7);
                transition: transform .35s cubic-bezier(.3,.9,.3,1), width .35s cubic-bezier(.3,.9,.3,1), opacity .2s ease;
            }
            .nxdh.nav-modern .nxdh-hotpill {
                margin-left: auto; flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px;
                padding: 6px 14px 6px 11px; border-radius: 999px; text-decoration: none !important;
                background: linear-gradient(90deg, #B65F33, #9E522C); color: #fff !important;
                font-size: 13px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase;
                box-shadow: 0 4px 14px rgba(158, 82, 44, .4); position: relative; overflow: hidden;
            }
            .nxdh.nav-modern .nxdh-hotpill svg { color: #D18B45; animation: nxdhFlame 1.4s ease-in-out infinite; }
            .nxdh.nav-modern .nxdh-hotpill::after {
                content: ''; position: absolute; top: 0; bottom: 0; left: -40%; width: 30%;
                background: linear-gradient(100deg, transparent, rgba(255,255,255,.55), transparent); transform: skewX(-18deg);
                animation: nxdhShine 3.6s ease-in-out infinite;
            }
            .nxdh.nav-modern .nxdh-hotpill:hover { filter: brightness(1.06); }
            @keyframes nxdhFlame { 0%, 100% { transform: scale(1) rotate(-4deg); } 50% { transform: scale(1.15) rotate(4deg); } }
            @keyframes nxdhShine { 0%, 60% { left: -40%; } 100% { left: 130%; } }
            @media (prefers-reduced-motion: reduce) {
                .nxdh.nav-modern .nxdh-hotpill svg, .nxdh.nav-modern .nxdh-hotpill::after { animation: none; }
            }

            /* ---------- Bảng danh mục con đổ xuống ----------
               Dựng theo đúng ngôn ngữ của website: nền trắng, viền nhạt, bo góc 12px, bóng đổ mềm,
               mục đang rê chuột có nền xanh nhạt và thụt vào một nhịp. */
            .nxdh-nav .nxdh-menu .nav-dropdown {
                min-width: 244px; padding: 8px !important; margin-top: 0 !important;
                background: #fff !important;
                border: 1px solid #EDEAE7 !important; border-top: 0 !important;
                border-radius: 12px !important;
                box-shadow: 0 16px 38px rgba(53, 39, 28, .16) !important;
            }
            /* Vùng đệm vô hình nối thanh menu với bảng, để chuột đi xuống không rớt giữa chừng */
            .nxdh-nav .nxdh-menu > li > .nav-dropdown::before {
                content: ''; position: absolute; left: 0; right: 0; top: -10px; height: 10px;
            }

            .nxdh-nav .nxdh-menu .nav-dropdown li { margin: 0 !important; border: 0 !important; }
            .nxdh-nav .nxdh-menu .nav-dropdown > li > a,
            .nxdh-nav .nxdh-menu .nav-dropdown li a {
                display: block; padding: 10px 13px !important; border: 0 !important;
                border-radius: 8px !important;
                color: #4E3F34 !important; font-size: 14px !important; font-weight: 500 !important;
                line-height: 1.45 !important; text-transform: none !important; letter-spacing: 0 !important;
                transition: background-color .14s ease, color .14s ease, padding-left .14s ease;
            }
            .nxdh-nav .nxdh-menu .nav-dropdown li a:hover,
            .nxdh-nav .nxdh-menu .nav-dropdown li.current-menu-item > a {
                background: #FBF8F4 !important;
                color: var(--nhatdx-primary, #C67930) !important;
                padding-left: 17px !important;
            }

            /* Mũi tên nhỏ chỉ sang phải cho mục còn có cấp con */
            .nxdh-nav .nxdh-menu .nav-dropdown li.menu-item-has-children > a::after {
                content: '›'; float: right; margin-left: 8px;
                color: #C7C0B8; font-size: 17px; line-height: 1.2;
            }

            /* ---------- Bảng đổ xuống: một cột, KHÔNG dùng kiểu ô bảng của theme ----------
               Flatsome dựng menu con thành các ô bảng (display: table-cell, rộng 160px, không xuống
               dòng). Thêm menu cấp 2 vào là cột bị bóp lại, chữ rớt xuống 3–4 dòng và bảng cấp 3
               đè lên bảng cha — đúng cảnh trong ảnh bạn gửi. Ở đây ép về danh sách dọc bình thường. */
            .nxdh-nav .nxdh-menu .nav-dropdown {
                display: block !important; width: auto !important; max-width: 340px;
                white-space: normal !important;
            }
            .nxdh-nav .nxdh-menu .nav-dropdown > li,
            .nxdh-nav .nxdh-menu .nav-dropdown > li.nav-dropdown-col {
                display: block !important; width: 100% !important; min-width: 0 !important;
                white-space: normal !important; border-right: 0 !important; position: relative;
            }
            .nxdh-nav .nxdh-menu .nav-dropdown li > a { white-space: normal !important; }

            /* Cấp 3: bảng con mở sang bên phải, cùng kiểu với bảng cha */
            .nxdh-nav .nxdh-menu .nav-dropdown li > ul {
                position: absolute !important; left: 100% !important; top: -9px !important;
                min-width: 230px; max-width: 320px; margin: 0 !important;
                padding: 8px !important; border-radius: 12px !important;
                background: #fff !important; border: 1px solid #EDEAE7 !important;
                box-shadow: 0 16px 38px rgba(53, 39, 28, .16) !important;
                opacity: 0; visibility: hidden; transform: translateX(6px);
                transition: opacity .16s ease, transform .16s ease, visibility .16s;
                z-index: 5;
            }
            .nxdh-nav .nxdh-menu .nav-dropdown li:hover > ul,
            .nxdh-nav .nxdh-menu .nav-dropdown li:focus-within > ul {
                opacity: 1; visibility: visible; transform: translateX(0);
            }
            /* Sát mép phải màn hình thì mở sang trái (lớp do đoạn mã bên dưới gắn) */
            .nxdh-nav .nxdh-menu .nav-dropdown li.nxdh-flip > ul { left: auto !important; right: 100% !important; }
            /* Dải nối vô hình giữa mục cha và bảng con, để chuột đi ngang không rớt */
            .nxdh-nav .nxdh-menu .nav-dropdown li.menu-item-has-children > a::before {
                content: ''; position: absolute; right: -12px; top: 0; bottom: 0; width: 12px;
            }
            /* Cấp 3 dùng chữ nhỏ hơn một nhịp cho dễ phân biệt cấp */
            .nxdh-nav .nxdh-menu .nav-dropdown li > ul li a { font-size: 13.5px !important; }

            /* Bỏ sạch đường kẻ ngang mà theme kẻ giữa các mục */
            .nxdh-nav .nxdh-menu .nav-dropdown li + li > a,
            .nxdh-nav .nxdh-menu .nav-dropdown li::before,
            .nxdh-nav .nxdh-menu .nav-dropdown li::after { border: 0 !important; }

            /* Khoảng trống giữa thanh menu và nội dung bên dưới.
               CHỈ áp dụng ở trang chủ. Bản trước tôi đặt cho mọi trang nên trang đăng nhập, trang
               tra cứu... đều bị dán sát vào thanh menu. Khoảng trống bạn muốn thu hẹp là khoảng
               phía trên banner ở trang chủ, không phải khoảng của mọi trang. */
            body.home #main { padding-top: 15px !important; }

            body.home #main > .page-wrapper,
            body.home #main .page-wrapper,
            body.home #content.page-wrapper { padding-top: 0 !important; margin-top: 0 !important; }

            body.home #main > *:first-child,
            body.home #main .page-wrapper > *:first-child,
            body.home #main .page-wrapper > *:first-child > .section-content,
            body.home #main .page-wrapper > *:first-child > .section-content > .row,
            body.home #main .page-wrapper > *:first-child > .row,
            body.home #content > *:first-child,
            body.home #content > *:first-child > .section-content,
            body.home #content > *:first-child > .section-content > .row {
                padding-top: 0 !important; margin-top: 0 !important;
            }

            /* Các trang còn lại: chừa một khoảng thở cố định dưới thanh menu */
            body:not(.home) #main { padding-top: 15px; }
        }

        @media (min-width: 850px) and (max-width: 1240px) {
            .nxdh-in { gap: 16px; }
            .nxdh-hotline-tx small { display: none; }
            .nxdh-cart-tx small { display: none; }
            .nxdh-account span { display: none; }
            .nxdh-account { padding: 9px 12px; }
        }

