/* ==================================================================== */
/*  TVX LISTINGS CSS  —  PHIEN BAN: v9  (Dot 11 - go bo Ban do)  —  26.7 KB            */
/*  KIEM TRA: neu KHONG thay dong nay khi mo /css/tvx_listings.css     */
/*  => file tren server la BAN CU, hay upload lai.                     */
/*  Marker: TVXCSS_V9_NOMAP                                             */
/* ==================================================================== */
/* ============================================================================
   TVX · LISTINGS  —  bổ sung riêng cho trang chi tiết doanh nghiệp
   Nạp SAU: css_listings3.css  →  tvx.css  →  tvx_listings.css
   ============================================================================ */

/* --- Chiều cao header TVX ---------------------------------------------------
   PC   : topbar 40px + mainbar 64px = 104px
   Phone: topbar ẩn (≤767.98px) → chỉ còn mainbar ≈ 58px                       */
:root{--tvx-hdr-h:104px}
@media(max-width:767.98px){:root{--tvx-hdr-h:58px}}

/* --- Header giờ là sticky-top -----------------------------------------------
   Nav trượt (#menu_croll) và cột phải phải DÍNH DƯỚI header, không chui vào.
   Ghi đè `div.sticky{top:0}` của css_listings3.css bằng specificity cao hơn.   */
div.sticky.menu_truot{top:var(--tvx-hdr-h);z-index:1010}
div.sticky.listing_phai{top:calc(var(--tvx-hdr-h) + 14px)}

/* --- Neo #section0..4: bấm nav trượt không bị header + nav che --------------- */
#section0,#section1,#section2,#section3,#section4{scroll-margin-top:calc(var(--tvx-hdr-h) + 56px)}
@media(max-width:991px){
  #section0,#section1,#section2,#section3,#section4{scroll-margin-top:calc(var(--tvx-hdr-h) + 12px)}
}

/* --- Promo 3 card: đồng bộ breakpoint 991px với categories -------------------
   (css_listings3 dùng 765px cho .pc_display/.m_display → lệch với .tvx-promo-grid) */
.tvx-promo-pc{display:block}
.tvx-promo-m{display:none}
@media(max-width:991px){
  .tvx-promo-pc{display:none}
  .tvx-promo-m{display:block}
}

/* ============================ CASCADE GUARD (BẮT BUỘC) ============================
   css_listings3.css (và css_categories1.css) có:
       a:link   { color:#111 }                    ← 0-1-1
       a:hover  { color:#ff6600!important; text-decoration:underline }
   ⇒ MỌI class TVX (0-1-0) đặt trên thẻ <a> đều THUA → chữ bị ép #111 + hover cam + gạch chân.
   tvx.css đã né bằng !important cho .tvx-hcta/.tvx-fbtn/.tvx-reg-cta — ta làm y hệt.
   ================================================================================= */
a.tvxl-act, a.tvxl-act:link, a.tvxl-act:visited{color:var(--tvx-ink)!important;text-decoration:none!important}
a.tvxl-act:hover{color:var(--tvx-gold)!important;text-decoration:none!important}
a.tvxl-claim-cta, a.tvxl-claim-cta:link, a.tvxl-claim-cta:visited{color:var(--tvx-brand)!important;text-decoration:none!important}
a.tvxl-claim-cta:hover{color:#fff!important;text-decoration:none!important}
.tvxl-claim-b a.q, .tvxl-claim-b a.q:link{color:var(--tvx-gold)!important;text-decoration:none!important}
.tvxl-claim-b a.q:hover{color:var(--tvx-ink)!important;text-decoration:none!important}
a.tvxl-zalo, a.tvxl-zalo:link, a.tvxl-zalo:visited, a.tvxc-zpill, a.tvxc-zpill:link, a.tvxc-zpill:visited{color:#0068ff!important;text-decoration:none!important}
a.tvxl-zalo:hover, a.tvxc-zpill:hover{color:#0055d4!important;text-decoration:none!important}
.tvxl-row a, .tvxl-row a:link{color:var(--tvx-ink)!important;text-decoration:none!important}
.tvxl-row a:hover{color:var(--tvx-gold)!important;text-decoration:none!important}
.tvxc-r a, .tvxc-r a:link, .tvxc-r a:visited{color:var(--tvx-ink)!important;text-decoration:none!important}
.tvxc-r a:hover{color:var(--tvx-gold)!important;text-decoration:none!important}
/* ===================== ĐỀ XUẤT MỚI — thêm vào css/tvx_listings.css ===================== */
/* --- HERO doanh nghiệp --- */
.tvxl-hero{background:#fff;border:1px solid var(--tvx-line);border-radius:16px;box-shadow:0 1px 2px rgba(20,24,31,.05),0 10px 26px -20px rgba(20,24,31,.28);padding:20px 22px;display:flex;gap:22px;align-items:flex-start}
.tvxl-logo{flex:0 0 auto;width:150px;border:1px solid var(--tvx-line);border-radius:12px;background:#fff;padding:10px;display:grid;place-items:center;min-height:98px}
.tvxl-logo img{max-width:100%;max-height:78px;object-fit:contain}
.tvxl-main{flex:1 1 auto;min-width:0}
.tvxl-h1{font-size:25px;font-weight:800;letter-spacing:-.3px;line-height:1.25;color:var(--tvx-ink);margin:0 0 9px;padding:0}
/* --- Hàng thông tin: icon đồng nhất, thẳng cột --- */
.tvxl-rows{display:flex;flex-direction:column;gap:8px;margin-top:15px}
.tvxl-row{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:#3a352c;line-height:1.55}
.tvxl-row>i{width:16px;flex:0 0 auto;text-align:center;color:var(--tvx-gold);margin-top:3px;font-size:13px}
.tvxl-row .k{font-weight:700;color:var(--tvx-ink)}
.tvxl-row a{color:var(--tvx-ink);text-decoration:none;border-bottom:1px solid transparent}
.tvxl-row a:hover{color:var(--tvx-gold);border-bottom-color:var(--tvx-brand-deep)}
.tvxl-tel{font-weight:700;font-size:16.5px;color:var(--tvx-ink);font-family:'Space Grotesk',ui-monospace,monospace;letter-spacing:.2px}
.tvxl-zalo{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:800;color:#0068ff;border:1px solid #cfe4ff;background:#f2f8ff;border-radius:6px;padding:2px 7px;margin-left:6px;text-decoration:none;vertical-align:2px}
.tvxl-zalo:hover{background:#e4f0ff;border-color:#a9cfff}
/* --- Nút hành động --- */
.tvxl-acts{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px;padding-top:15px;border-top:1px dashed var(--tvx-line)}
.tvxl-act{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:var(--tvx-ink);background:#fff;border:1px solid var(--tvx-line);border-radius:10px;padding:9px 15px;text-decoration:none;transition:.15s;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tvxl-act:hover{border-color:var(--tvx-brand-deep);background:var(--tvx-brand-tint);color:var(--tvx-gold)}
.tvxl-act i{color:var(--tvx-gold);font-size:14px;flex:0 0 auto}
/* --- Dải CLAIM (thay Business Zone) --- */
.tvxl-claim{display:flex;gap:18px;align-items:center;background:linear-gradient(180deg,var(--tvx-brand-tint),#fff);border:1px solid #f2e6a8;border-radius:16px;padding:20px 24px;margin-top:28px;position:relative;overflow:hidden}
.tvxl-claim::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--tvx-brand)}
.tvxl-claim-ic{width:52px;height:52px;border-radius:13px;background:#151310;display:grid;place-items:center;flex:0 0 auto}
.tvxl-claim-ic i{color:var(--tvx-brand);font-size:21px}
.tvxl-claim-b{flex:1 1 auto;min-width:0}
.tvxl-claim-b h3{font-size:17.5px;font-weight:800;color:var(--tvx-ink);margin:0 0 5px}
.tvxl-claim-b p{font-size:13.5px;color:var(--tvx-muted);margin:0 0 6px;line-height:1.55}
.tvxl-claim-b .q{font-size:12.5px;color:var(--tvx-gold);font-weight:700;text-decoration:none;border-bottom:1px dotted var(--tvx-brand-deep)}
.tvxl-claim-cta{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;background:#151310;color:var(--tvx-brand);font-weight:800;font-size:14px;border-radius:11px;padding:13px 22px;text-decoration:none;transition:.15s}
.tvxl-claim-cta:hover{background:#000;color:#fff}
/* --- Ảnh gallery/SP: khung bo, viền nhẹ, hover --- */
.tvxl-thumb{border:1px solid var(--tvx-line);border-radius:10px;overflow:hidden;background:#fff;position:relative;transition:.15s;cursor:zoom-in}
.tvxl-thumb:hover{border-color:var(--tvx-brand-deep);box-shadow:0 10px 22px -16px rgba(0,0,0,.45);transform:translateY(-2px)}
@media(max-width:767.98px){
  .tvxl-hero{flex-direction:column;padding:16px;gap:14px}
  .tvxl-logo{width:100%;max-width:170px;min-height:0}
  .tvxl-h1{font-size:20px}
  .tvxl-claim{flex-direction:column;align-items:flex-start;padding:18px}
  .tvxl-claim-cta{width:100%;justify-content:center}
}
/* ================= TVX · CARD LIÊN HỆ (sidebar + mobile) ================= */
.tvxc{background:#fff;border:1px solid var(--tvx-line);border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(20,24,31,.05),0 14px 30px -22px rgba(20,24,31,.35)}
.tvxc-hd{background:#151310;color:var(--tvx-brand);padding:13px 16px;display:flex;align-items:center;gap:9px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.tvxc-hd i{font-size:14px}
/* --- hàng công ty --- */
.tvxc-co{display:flex;gap:12px;align-items:center;padding:15px 16px;border-bottom:1px solid var(--tvx-line)}
.tvxc-colog{width:58px;height:58px;flex:0 0 auto;border:1px solid var(--tvx-line);border-radius:10px;display:grid;place-items:center;padding:5px;background:#fff}
.tvxc-colog img{max-width:100%;max-height:44px;object-fit:contain}
.tvxc-colog i{color:#c9c4b8;font-size:20px}
.tvxc-conm{font-size:13.5px;font-weight:700;color:var(--tvx-ink);line-height:1.42;min-width:0}
/* --- CTA gọi / zalo --- */
/* --- section --- */
.tvxc-sec{padding:15px 16px;border-bottom:1px solid var(--tvx-line)}
.tvxc-lbl{display:flex;align-items:center;gap:7px;font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--tvx-gold);margin-bottom:12px}
/* --- người liên hệ --- */
.tvxc-p{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px}
.tvxc-av{width:36px;height:36px;flex:0 0 auto;border-radius:9px;background:var(--tvx-brand-tint);border:1px solid #f0e4b4;display:grid;place-items:center;font-weight:800;font-size:12.5px;color:var(--tvx-gold);letter-spacing:.5px}
.tvxc-pn{font-size:13.5px;font-weight:700;color:var(--tvx-ink);line-height:1.35}
.tvxc-pr{font-size:12px;color:var(--tvx-muted);margin-top:1px}
.tvxc-rows{display:flex;flex-direction:column;gap:7px;margin-left:46px}
.tvxc-r{display:flex;align-items:center;gap:8px;font-size:13px;color:#3a352c;min-width:0}
.tvxc-r>i{width:14px;text-align:center;color:var(--tvx-gold);font-size:12px;flex:0 0 auto}
.tvxc-r a{color:var(--tvx-ink);text-decoration:none;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tvxc-r a:hover{color:var(--tvx-gold)}
.tvxc-num{font-family:'Space Grotesk',ui-monospace,monospace;font-weight:700;letter-spacing:.2px}
.tvxc-cp{margin-left:auto;width:25px;height:25px;border:1px solid var(--tvx-line);border-radius:6px;background:#fff;color:#a8a293;font-size:10px;cursor:pointer;flex:0 0 auto;display:grid;place-items:center;transition:.15s}
.tvxc-cp:hover{border-color:var(--tvx-brand-deep);color:var(--tvx-gold);background:var(--tvx-brand-tint)}
.tvxc-cp.ok{border-color:#86efac;color:#16a34a;background:#eefaf1}
.tvxc-zpill{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:800;color:#0068ff;border:1px solid #cfe4ff;background:#f2f8ff;border-radius:5px;padding:1px 6px;text-decoration:none;flex:0 0 auto}
.tvxc-hr{height:1px;background:var(--tvx-line);margin:13px 0}
/* --- thông tin nhanh --- */
.tvxc-kv{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:5px 0}
.tvxc-kv .k{color:var(--tvx-muted);flex:0 0 auto}
.tvxc-kv .v{font-weight:700;color:var(--tvx-ink);text-align:right}
.tvxc-loc{font-size:13.5px;color:var(--tvx-ink);font-weight:600;display:flex;gap:8px;align-items:flex-start}
.tvxc-loc i{color:var(--tvx-gold);font-size:12px;margin-top:3px}
/* --- ghi chú trung thực --- */
.tvxc-note{padding:12px 16px;background:var(--tvx-paper);font-size:11.5px;color:var(--tvx-muted);line-height:1.55;display:flex;gap:8px;border-bottom:0}
.tvxc-note i{color:#b8b2a4;margin-top:2px;flex:0 0 auto}

/* ================= HỒ SƠ KINH DOANH (B2B fact panel) ================= */
.tvxb{background:#fff;border:1px solid var(--tvx-line);border-radius:16px;box-shadow:0 1px 2px rgba(20,24,31,.05),0 10px 26px -20px rgba(20,24,31,.28);padding:20px 22px;margin-top:16px}
.tvxb-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:12px}
.tvxb-fact{background:var(--tvx-paper);border:1px solid var(--tvx-line);border-radius:12px;padding:13px 15px}
.tvxb-fact .k{display:flex;align-items:center;gap:7px;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--tvx-gold);margin-bottom:7px}
.tvxb-fact .v{font-size:14px;font-weight:700;color:var(--tvx-ink);line-height:1.45}
.tvxb-sec{margin-top:18px}
.tvxb-lbl{display:flex;align-items:center;gap:7px;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--tvx-gold);margin-bottom:11px}
.tvxb-tags{display:flex;flex-wrap:wrap;gap:8px}
.tvxb-tag{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--tvx-ink);background:#fff;border:1px solid var(--tvx-line);border-radius:9px;padding:7px 13px;text-decoration:none;transition:.15s}
.tvxb-tag::after{content:"\203A";color:var(--tvx-faint);font-weight:700;font-size:15px;line-height:1}
.tvxb-tag:hover{border-color:var(--tvx-brand-deep);background:var(--tvx-brand-tint)}
.tvxb-tag:hover::after{color:var(--tvx-gold)}
.tvxb-cert{display:flex;gap:10px;align-items:flex-start;background:#eefaf1;border:1px solid #bfe6cc;border-radius:11px;padding:12px 15px;font-size:13.5px;color:#15803d;font-weight:600;line-height:1.55}
.tvxb-cert i{margin-top:3px;flex:0 0 auto}
/* ================= SẢN PHẨM / DỊCH VỤ (grid) ================= */
.tvxp-wrap{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:20px 16px;padding:6px 20px 22px}
.tvxp-gh{grid-column:1/-1;display:flex;align-items:baseline;gap:10px;font-size:14.5px;font-weight:800;color:var(--tvx-ink);margin:12px 0 0;padding-left:12px;border-left:3px solid var(--tvx-brand);line-height:1.4}
.tvxp-gh:first-child{margin-top:2px}
.tvxp-brk{grid-column:1/-1;height:2px;margin:0;padding:0}
.tvxp-card{display:flex;flex-direction:column;gap:9px;min-width:0}
.tvxp-img{display:grid;place-items:center;height:152px;border:1px solid var(--tvx-line);border-radius:12px;background:#fff;padding:10px;overflow:hidden;transition:.18s}
.tvxp-img img{max-width:100%;max-height:130px;object-fit:contain;transition:.25s}
.tvxp-card:hover .tvxp-img{border-color:var(--tvx-brand-deep);box-shadow:0 12px 24px -18px rgba(0,0,0,.5);transform:translateY(-2px)}
.tvxp-card:hover .tvxp-img img{transform:scale(1.05)}
.tvxp-nm{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13.5px;font-weight:600;line-height:1.45;min-height:2.9em}
.tvxp-go{font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:5px;margin-top:auto}
.tvxp-go i{font-size:10px;transition:.15s}
.tvxp-card:hover .tvxp-go i{transform:translateX(3px)}
@media(max-width:575.98px){
  .tvxp-wrap{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px 12px;padding:4px 14px 18px}
  .tvxp-img{height:126px}
  .tvxb{padding:16px}
}
/* --- CASCADE GUARD cho khối mới --- */
a.tvxb-tag, a.tvxb-tag:link, a.tvxb-tag:visited{color:var(--tvx-ink)!important;text-decoration:none!important}
a.tvxb-tag:hover{color:var(--tvx-gold)!important;text-decoration:none!important}
.tvxp-gh a, .tvxp-gh a:link, .tvxp-gh a:visited{color:var(--tvx-ink)!important;text-decoration:none!important}
.tvxp-gh a:hover{color:var(--tvx-gold)!important;text-decoration:none!important}
a.tvxp-nm, a.tvxp-nm:link, a.tvxp-nm:visited{color:var(--tvx-ink)!important;text-decoration:none!important}
a.tvxp-nm:hover{color:var(--tvx-gold)!important;text-decoration:none!important}
a.tvxp-go, a.tvxp-go:link, a.tvxp-go:visited{color:var(--tvx-gold)!important;text-decoration:none!important}
a.tvxp-go:hover{color:var(--tvx-ink)!important;text-decoration:none!important}
a.tvxp-img, a.tvxp-img:link, a.tvxp-img:hover{text-decoration:none!important}

/* ================= TỰA ĐỀ MỤC (pill nét đứt + icon) ================= */
h2.tvxl-sh{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;
 color:#9a7a0f;background:#fffbe8;border:1px dashed #e9c900;border-radius:7px;padding:8px 15px;margin:0 0 4px;line-height:1.2}
h2.tvxl-sh i{font-size:12px;color:#c9a400}
/* ================= HỒ SƠ PHÁP LÝ (bảng key-value) ================= */
.tvxf{display:flex;flex-direction:column;padding:6px 22px 20px}
.tvxf-r{display:flex;gap:18px;align-items:flex-start;padding:13px 0;border-bottom:1px dashed var(--tvx-line)}
.tvxf-r:last-child{border-bottom:0}
.tvxf-k{flex:0 0 205px;display:flex;align-items:center;gap:8px;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--tvx-gold);padding-top:3px}
.tvxf-k i{width:13px;text-align:center;flex:0 0 auto}
.tvxf-v{flex:1 1 auto;font-size:14.5px;font-weight:600;color:var(--tvx-ink);line-height:1.55;min-width:0}
.tvxf-v.num{font-family:'Space Grotesk',ui-monospace,monospace;font-weight:700;letter-spacing:.4px;font-size:15px}
@media(max-width:575.98px){.tvxf{padding:6px 16px 16px}.tvxf-r{flex-direction:column;gap:5px;padding:11px 0}.tvxf-k{flex:none}}

/* ============================ ĐỢT 5 ============================ */
/* --- 1) FIX LỆCH: nhãn 1 dòng / 2 dòng làm giá trị lệch nhau --- */
.tvxb-facts{align-items:stretch}
.tvxb-fact{display:flex;flex-direction:column}
.tvxb-fact .k{min-height:2.7em;align-items:flex-start;margin-bottom:4px;line-height:1.35}
.tvxb-fact .v{flex:1 1 auto;font-weight:600;font-size:14px;line-height:1.55}
@media(max-width:991.98px){.tvxb-facts{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}
@media(max-width:575.98px){.tvxb-facts{grid-template-columns:1fr}.tvxb-fact .k{min-height:0}}

/* --- 2) VỎ SECTION: bo khung + nhịp trong khung --- */
.tvxsec{border-radius:16px;background:#fff;overflow:hidden;padding:20px 0 4px}
.tvxsec > h2.tvxl-sh{margin:0 22px 14px}
.tvxsec > .tvx-sh{padding:0 22px}
.menu_truot{border-radius:16px;background:#fff;overflow:hidden}
/* text dài trong panel (giới thiệu / SP mở rộng) */
.tvxsec .gioithieucongty_img, .tvxsec .gt_lh, .tvxsec > .tvxs-grid > p{padding-left:22px!important;padding-right:22px!important}
.tvxsec p:last-child{margin-bottom:0}

/* --- 3) SẢN PHẨM DỊCH VỤ: lưới + icon hiện đại --- */
.tvxs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:0 20px;padding:2px 22px 16px}
.tvxs-grid > p{grid-column:1/-1;margin:0}
.tvxs-grid > .tvxp-gh{margin:16px 0 6px;padding-left:11px}
.tvxs-grid > .tvxp-gh:first-child{margin-top:0}
.tvxs-item{display:flex;gap:10px;align-items:flex-start;padding:7px 0;font-size:14px;line-height:1.5;min-width:0}
.tvxs-i{width:19px;height:19px;flex:0 0 auto;margin-top:1px;border-radius:6px;background:var(--tvx-brand-tint);border:1px solid #f0e4b4;
 display:grid;place-items:center;transition:.15s}
.tvxs-i i{font-size:9px;color:var(--tvx-gold);transition:.15s}
.tvxs-item:hover .tvxs-i{background:var(--tvx-brand);border-color:#d9b800;transform:scale(1.08)}
.tvxs-item:hover .tvxs-i i{color:#151310}
a.tvxs-item-l{}
.tvxs-item a, .tvxs-item a:link, .tvxs-item a:visited{color:var(--tvx-ink)!important;text-decoration:none!important;font-weight:500}
.tvxs-item a:hover{color:var(--tvx-gold)!important;text-decoration:none!important}

/* --- 4) THƯ VIỆN ẢNH: lưới --- */
.tvxg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:18px 16px;padding:2px 22px 20px}
.tvxg-grid > p{grid-column:1/-1;margin:0;height:2px}
.tvxg-grid > .tvxp-gh{margin:14px 0 4px;padding-left:11px}
.tvxg-grid > .tvxp-gh:first-child{margin-top:0}
.tvxg-card{display:flex;flex-direction:column;gap:9px;min-width:0}
.tvxg-img{display:grid;place-items:center;height:150px;padding:10px;background:#fff;overflow:hidden}
.tvxg-img img{max-width:100%;max-height:128px;object-fit:contain;transition:.25s;height:auto}
.tvxg-card:hover .tvxg-img img{transform:scale(1.06)}
.tvxg-cap{font-size:12.5px;color:var(--tvx-muted);text-align:center;line-height:1.45;
 display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.9em}
/* lưới SP nổi bật: đồng bộ padding trong panel */
.tvxp-wrap{padding:2px 22px 20px}
.tvxp-wrap > .tvxp-gh{padding-left:11px}
/* bảng hồ sơ + khối B2B: đồng bộ */
.tvxf{padding:2px 22px 18px}
@media(max-width:575.98px){
  .tvxsec{padding:16px 0 2px}
  .tvxsec > h2.tvxl-sh{margin:0 16px 12px}
  .tvxs-grid{grid-template-columns:1fr;padding:2px 16px 14px}
  .tvxg-grid{grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:14px 12px;padding:2px 16px 16px}
  .tvxg-img{height:120px}
  .tvxp-wrap{padding:2px 16px 16px}
  .tvxf{padding:2px 16px 14px}
  .tvxsec .gioithieucongty_img,.tvxsec .gt_lh{padding-left:16px!important;padding-right:16px!important}
}

/* ============================ ĐỢT 6 ============================ */
/* --- 1) NÚT EMAIL / WEBSITE: đồng bộ tông TEAL với categories --- */
a.tvxl-act, a.tvxl-act:link, a.tvxl-act:visited{
  border:1px solid #cfe0e1!important;color:var(--tvx-teal)!important;background:#fff;
  font-size:13px;font-weight:600;padding:9px 15px;border-radius:8px;text-decoration:none!important}
a.tvxl-act:hover{border-color:var(--tvx-teal)!important;background:#f2f9f9!important;color:var(--tvx-teal)!important;text-decoration:none!important}
.tvxl-act i{color:var(--tvx-teal)!important}
.tvxl-act.is-lock{border-style:dashed!important;color:var(--tvx-muted)!important;background:var(--tvx-paper)}
.tvxl-act.is-lock i{color:var(--tvx-faint)!important}

/* --- 2) THANH TRƯỢT: tab bar + gạch vàng theo vị trí đọc --- */
.tvxnav{margin-top:18px;border-radius:14px;background:#fff;overflow:hidden}
.tvxnav-in{display:flex;align-items:stretch;padding:0 10px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.tvxnav-in::-webkit-scrollbar{display:none}
a.tvxnav-a, a.tvxnav-a:link, a.tvxnav-a:visited{
  flex:0 0 auto;display:inline-flex;align-items:center;padding:14px 15px 11px;font-size:14px;font-weight:600;white-space:nowrap;
  color:var(--tvx-muted)!important;text-decoration:none!important;border-bottom:3px solid transparent;transition:.15s}
a.tvxnav-a:hover{color:var(--tvx-ink)!important;background:var(--tvx-paper);text-decoration:none!important}
a.tvxnav-a.is-on{color:var(--tvx-ink)!important;font-weight:700;border-bottom-color:var(--tvx-brand)}
/* neo #section: không bị header + tab bar che */
#section0,#section1,#section2,#section3,#section4{scroll-margin-top:calc(var(--tvx-hdr-h) + 72px)}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* --- 3) Zalo pill trong hero: khoảng thở --- */
.tvxl-row .tvxl-zalo{margin-left:8px}

/* ============================ ĐỢT 7 ============================ */
/* --- THANH HÀNH ĐỘNG ĐÁY (chỉ mobile/tablet) --- */
.tvx-abar{display:none}
@media(max-width:991.98px){
  .tvx-abar{
    position:fixed;left:0;right:0;bottom:0;z-index:1050;
    display:flex;gap:8px;
    background:rgba(255,255,255,.97);backdrop-filter:saturate(180%) blur(8px);
    border-top:1px solid var(--tvx-line);
    box-shadow:0 -8px 28px -14px rgba(20,24,31,.35);
    padding:9px 10px;padding-bottom:calc(9px + env(safe-area-inset-bottom,0px))}
  a.tvx-ab, a.tvx-ab:link, a.tvx-ab:visited{
    flex:1 1 0;min-width:0;
    display:flex;align-items:center;justify-content:center;gap:7px;
    padding:11px 8px;border-radius:11px;
    font-size:13px;font-weight:700;white-space:nowrap;
    border:1px solid var(--tvx-line);background:#fff;
    text-decoration:none!important;transition:.15s}
  a.tvx-ab i{font-size:14px;flex:0 0 auto}
  a.tvx-ab:active{transform:scale(.97)}
  /* Gọi ngay = hành động chính (đen/vàng, nổi bật nhất) */
  a.tvx-ab.is-call, a.tvx-ab.is-call:link, a.tvx-ab.is-call:visited{
    background:#151310;border-color:#151310;color:var(--tvx-brand)!important;flex:1.25 1 0}
  a.tvx-ab.is-call i{color:var(--tvx-brand)}
  a.tvx-ab.is-zalo, a.tvx-ab.is-zalo:link, a.tvx-ab.is-zalo:visited{
    color:#0068ff!important;border-color:#cfe4ff;background:#f5faff}
  a.tvx-ab.is-zalo i{color:#0068ff}
  a.tvx-ab.is-mail, a.tvx-ab.is-mail:link, a.tvx-ab.is-mail:visited{
    color:var(--tvx-teal)!important;border-color:#cfe0e1;background:#fff}
  a.tvx-ab.is-mail i{color:var(--tvx-teal)}
  /* chừa chỗ cho thanh, footer không bị che */
  body.page_bg{padding-bottom:76px}
  /* nút go-top nhấc lên trên thanh */
  .gotop, #gotop{bottom:88px!important}
}
/* rất hẹp: rút gọn chữ */
@media(max-width:359.98px){
  a.tvx-ab{font-size:12px;padding:10px 5px;gap:5px}
}

/* ============================ ĐỢT 8 ============================ */
/* --- 1) Hotline hero: SỐ in đậm, dễ đọc --- */
.tvxl-row a[href^="tel:"]{font-weight:800!important;color:var(--tvx-ink)!important;
  font-family:'Space Grotesk',ui-monospace,monospace;letter-spacing:.2px}
.tvxl-row a[href^="tel:"]:hover{color:var(--tvx-gold)!important}
.tvxl-row .fw500 a[href^="tel:"]{font-weight:800!important}

/* --- 2) Zalo pill: GIỮ nền nhạt, CHỈ icon + chữ xanh Zalo --- */
.tvxl-zalo, a.tvxl-zalo:link, a.tvxl-zalo:visited{
  color:#0068ff!important;background:#f2f8ff!important;border-color:#cfe4ff!important;font-weight:800!important}
.tvxl-zalo i{color:#0068ff!important}
.tvxl-zalo:hover{background:#e4f0ff!important;border-color:#a9cfff!important;color:#0055d4!important}
.tvxc-zpill, a.tvxc-zpill:link, a.tvxc-zpill:visited{
  color:#0068ff!important;background:#f2f8ff!important;border-color:#cfe4ff!important;font-weight:800!important}
.tvxc-zpill i{color:#0068ff!important}
.tvxc-zpill:hover{background:#e4f0ff!important;border-color:#a9cfff!important;color:#0055d4!important}

/* --- 3) Mục lục A→Z: tách khỏi footer --- */
.tvxsec:last-of-type, .tvx-panel.tvxaz-pan{margin-bottom:34px}

/* --- 4) KHUNG LOGO hero: gần vuông 132×112 (cân cho logo vuông + ngang) --- */
.tvxl-logo{width:132px;min-height:112px}
.tvxl-logo img{max-height:92px}
@media(max-width:767.98px){.tvxl-logo{width:100%;max-width:150px;min-height:0}.tvxl-logo img{max-height:84px}}

/* ============================ ĐỢT 9 ============================ */
/* --- 1) FAQ: câu hỏi KHÔNG in đậm (đây là nội dung SEO/AI, không nên hút mắt) --- */
#faq details{border-bottom:1px solid var(--tvx-line);padding:0!important}
#faq details:last-child{border-bottom:0}
#faq summary{list-style:none;cursor:pointer;position:relative;
  padding:14px 40px 14px 26px!important;
  font-weight:500!important;font-size:14.5px;color:#3a352c;line-height:1.55;
  transition:.15s}
#faq summary::-webkit-details-marker{display:none}
#faq summary:hover{color:var(--tvx-ink);background:var(--tvx-paper)}
/* mũi tên gọn bên trái */
#faq summary::before{content:"\f105";font-family:"Font Awesome 6 Free";font-weight:900;
  position:absolute;left:6px;top:50%;transform:translateY(-50%);
  color:var(--tvx-faint);font-size:13px;transition:.2s;width:14px;text-align:center}
#faq details[open] summary{color:var(--tvx-ink);font-weight:600!important}
#faq details[open] summary::before{transform:translateY(-50%) rotate(90deg);color:var(--tvx-gold)}
/* nội dung trả lời */
#faq details > *:not(summary){padding:0 26px 15px 26px;font-size:14px;color:var(--tvx-muted);line-height:1.7;margin:0}
#faq details[open]{background:linear-gradient(180deg,var(--tvx-paper),#fff)}

/* ================= DONG BO 3 TRANG =================
   .tvx-panel (tvx.css) khong khai border-radius, nen `rounded-3` cua
   Bootstrap - nap SAU va co !important - ep hai the cuoi trang ve 8px
   trong khi 7 the .tvxsec o tren la 16px. Da go rounded-3 khoi hai the do
   va dung .tvxl-cline. Than luat chep TUNG KY TU tu .sp-cline / .pd-cline. */
.tvxl-cline{border:1px solid var(--tvx-line);border-radius:16px;box-shadow:0 1px 2px rgba(20,24,31,.05),0 8px 22px -18px rgba(20,24,31,.15)}
