/* ============================================================
   VISTAR — Polish layer (nạp SAU amlab CSS để override cho đẹp)
   ============================================================ */

/* ------------------------------------------------------------
   TOKEN — nguồn duy nhất cho nhịp dọc, bo góc, đổ bóng.
   Trước đây mỗi section tự đặt padding (88/84/90/74/76/64px) nên
   nhịp trang lộn xộn. Giờ tất cả tham chiếu về --sec-y.
   ------------------------------------------------------------ */
:root{
  --sec-y:96px;          /* nhịp dọc chuẩn giữa các section */
  --sec-y-sm:72px;
  --sec-y-xs:60px;
  --card-r:16px;         /* bo góc thẻ */
  --card-r-lg:20px;      /* bo góc khối lớn (KV, ảnh) */
  --card-bd:1px solid var(--vt-border);
  --card-sh:0 10px 30px rgba(28,28,30,.055);
  --card-sh-hv:0 22px 50px rgba(28,28,30,.11);
  --ease:cubic-bezier(.22,.61,.36,1);
  /* Nền cho ô đang chờ ảnh — sáng, không lấn át nội dung thật */
  --ph-bg:linear-gradient(152deg,#FBF7F7 0%,#F1E7E7 100%);
  --ph-bd:1px dashed rgba(135,23,28,.22);
}

/* ----- Card grid (card_grid element): icon đỏ, bo tròn, hover nổi, canh đều ----- */
.amlab-card-grid{grid-template-columns:repeat(auto-fit,minmax(232px,1fr))!important;gap:22px!important}
.amlab-card{border-radius:16px!important;border-color:var(--vt-border)!important;padding:28px 24px!important;box-shadow:0 8px 22px rgba(28,28,30,.05)!important;transition:transform .22s,box-shadow .22s,border-color .22s}
.amlab-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(28,28,30,.1)!important;border-color:var(--vt-red)!important}
.amlab-card__icon{width:54px!important;height:54px!important;border-radius:15px!important;background:var(--vt-red-tint)!important;color:var(--vt-red)!important}
.amlab-card__icon svg{width:24px;height:24px}
.amlab-card__title{color:var(--vt-ink)!important;font-family:var(--head),sans-serif;font-size:1.08rem!important;margin-top:16px!important}
.amlab-card__desc{color:var(--vt-grey)!important}

/* ----- Mission & Vision (mission_vision element) ----- */
.amlab-mv{gap:44px}
.amlab-mv-card{border-radius:16px!important;border:1px solid var(--vt-border);box-shadow:0 8px 22px rgba(28,28,30,.05);transition:transform .22s,box-shadow .22s}
.amlab-mv-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(28,28,30,.1)}
.amlab-mv-card__icon{background:var(--vt-red-tint)!important;color:var(--vt-red)!important;width:50px;height:50px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center}
.amlab-mv__heading{color:var(--vt-ink)!important;letter-spacing:-.01em}
.amlab-mv__eyebrow{color:var(--vt-red)!important;font-family:var(--head),sans-serif;letter-spacing:.16em}
.amlab-mv__rule{background:var(--vt-red)!important}
.amlab-mv-chip{border:1px solid var(--vt-border)!important;background:#fff!important;color:var(--vt-ink)!important;font-weight:600;border-radius:999px;transition:.2s}
.amlab-mv-chip:hover{border-color:var(--vt-red)!important;color:var(--vt-red)!important}

/* ----- Section header (amlab_section_header trong card_grid) ----- */
.amlab-section-title{color:var(--vt-ink)!important;letter-spacing:-.01em}
.amlab-eyebrow{color:var(--vt-red)!important;font-family:var(--head),sans-serif}

/* ----- Nút ----- */
.btn-primary{box-shadow:0 10px 22px var(--vt-red-tint)}
.btn-primary:hover{box-shadow:0 14px 28px rgba(135,23,28,.28)}

/* ----- Timeline dot: hover + line gradient ----- */
.vt-tl-item::before{background:linear-gradient(90deg,rgba(135,23,28,.5),rgba(255,255,255,.15))!important}
.vt-tl-dot{transition:transform .2s,box-shadow .2s}
.vt-tl-item:hover .vt-tl-dot{transform:scale(1.08);box-shadow:0 0 0 8px rgba(135,23,28,.22)}

/* ----- Testimonial hover ----- */
.vt-testi-card{transition:transform .2s,box-shadow .2s}
.vt-testi-card:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(28,28,30,.1)}

/* ----- Hero stats hover ----- */
.vt-hero-stats > div{transition:transform .2s,background .2s}
.vt-hero-stats > div:hover{transform:translateY(-3px);background:rgba(255,255,255,.18)}

/* ----- News card ảnh bo góc trong ----- */
.vt-news-card img{border-top-left-radius:14px;border-bottom-left-radius:14px}

/* ----- Nhịp khoảng cách section builder ----- */
.bg-white.py-12,.amlab-section{scroll-margin-top:90px}

/* ----- Mobile: card grid & mv 1 cột gọn ----- */
@media(max-width:640px){
  .amlab-card-grid{grid-template-columns:1fr!important}
  .amlab-mv{grid-template-columns:1fr!important}
}

/* ============================================================
   ĐIỀU HƯỚNG — sitemap đã chốt (3 cấp + mục chưa có nội dung)
   ============================================================ */

/* Submenu giờ tới 3 cấp; nới rộng và cho cuộn khi danh sách sản phẩm dài. */
.nav-sub{min-width:266px;max-height:min(72vh,560px);overflow-y:auto}

/* Cấp 3: sản phẩm thuộc thương hiệu. */
.nav-sub-leaf{
  display:block;padding:8px 14px 8px 30px!important;border-radius:8px;
  font-family:var(--head),sans-serif;font-size:.845rem!important;font-weight:500!important;
  color:var(--vt-grey)!important;position:relative
}
.nav-sub-leaf::before{
  content:"";position:absolute;left:17px;top:50%;width:6px;height:1px;
  background:currentColor;opacity:.5
}
.nav-sub-leaf::after{display:none}
.nav-sub-leaf:hover{background:var(--vt-red-tint);color:var(--vt-red)!important}

/* Mục chưa có nội dung: hiện nhưng bấm không được (chốt A5). */
.nav-locked{
  display:block;padding:10px 14px;border-radius:8px;
  font-family:var(--head),sans-serif;font-weight:600;font-size:.9rem;
  color:var(--vt-grey);opacity:.45;cursor:not-allowed;user-select:none
}
.nav-locked:hover{background:transparent;color:var(--vt-grey)}
.nav-sub-leaf.nav-locked{font-size:.845rem;font-weight:500;padding-left:30px}
.mobile-drawer .nav-locked{padding-left:18px;font-size:.9rem;font-weight:500}
.mobile-drawer .drawer-sub-2.nav-locked{padding-left:34px;font-size:.84rem}

/* Drawer mobile: cấp 3. */
.drawer-sub-2{padding-left:34px!important;font-size:.84rem!important;opacity:.85}

/* Chân trang: sản phẩm thụt dưới tên thương hiệu. */
.footer-sub{padding-left:12px;font-size:.855rem;opacity:.82}

/* Mục con là anchor trên cùng trang → chừa chỗ cho header dính 74px. */
#ve-vistar,#tam-nhin-su-menh,#gia-tri-cot-loi,
#navecare-plus,#nave,
#phat-trien-san-pham,#oem-my-pham,#oem-thuc-pham,#oem-thiet-bi-y-te{scroll-margin-top:96px}

/* ============================================================
   TRANG CHỦ — Doc 2, Section 1→5
   ============================================================ */

.vt-center{text-align:center;margin-top:40px}

/* ----- S1 Hero -----
   theme.css vẽ thanh gạch trắng qua .hl::after, nhưng .hl là một dòng GIỮA tiêu đề
   nên thanh rơi vào giữa câu, trông như lỗi. Chuyển xuống dưới toàn bộ tiêu đề. */
.vt-home-hero__inner{max-width:1040px}
.vt-home-hero__title .hl::after{display:none}
.vt-home-hero__title{margin-bottom:0;max-width:1040px;text-wrap:balance}
.vt-home-hero__title::after{
  content:"";display:block;width:88px;height:5px;background:#fff;
  border-radius:3px;margin-top:24px;opacity:.85
}
.vt-home-hero__title span:not(.hl){font-weight:600;opacity:.94}
.vt-home-hero__lead{
  color:rgba(255,255,255,.92);font-size:1.06rem;line-height:1.72;
  max-width:640px;margin:26px 0 30px;text-shadow:0 1px 12px rgba(0,0,0,.25)
}
.vt-home-hero__cta{margin-top:2px}

/* ----- S2 Thương hiệu ----- */
.vt-brands{padding:88px 0;background:#fff}
.vt-brand-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:46px}
.vt-brand-card{
  display:block;text-align:center;padding:46px 34px 38px;border:1px solid var(--vt-border);
  border-radius:18px;background:#fff;transition:transform .22s,box-shadow .22s,border-color .22s
}
.vt-brand-card:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(28,28,30,.1);border-color:var(--vt-red)}
.vt-brand-card__logo{display:flex;align-items:center;justify-content:center;height:112px;margin-bottom:20px}
.vt-brand-card__logo img{max-height:100%;max-width:78%;width:auto;object-fit:contain}
.vt-brand-card h3{font-family:var(--head),sans-serif;font-size:1.26rem;color:var(--vt-ink);margin-bottom:6px}
/* Chưa có file logo: tên thương hiệu tự đóng vai wordmark, cỡ lớn màu đỏ. */
.vt-brand-card h3.is-wordmark{
  font-size:2.15rem;letter-spacing:-.02em;color:var(--vt-red);
  margin:12px 0 10px;line-height:1.15
}
.vt-brand-card p{color:var(--vt-grey);font-size:.96rem}
.vt-brand-card__more{
  display:inline-block;margin-top:16px;font-family:var(--head),sans-serif;
  font-weight:700;font-size:.86rem;color:var(--vt-red)
}

/* ----- S3 Giải pháp ----- */
.vt-solutions{padding:88px 0;background:var(--vt-red-tint)}
.vt-solution-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:46px}
.vt-solution-card{
  display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:30px 26px 32px;
  background:#fff;border:1px solid var(--vt-border);border-radius:16px;
  transition:transform .22s,box-shadow .22s,border-color .22s
}
.vt-solution-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(28,28,30,.1);border-color:var(--vt-red)}
.vt-solution-card__icon{
  display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;
  border-radius:15px;background:var(--vt-red-tint);color:var(--vt-red)
}
.vt-solution-card__icon svg{width:27px;height:27px}
.vt-solution-card__num{
  font-family:var(--head),sans-serif;font-weight:800;font-size:.8rem;
  letter-spacing:.14em;color:var(--vt-red)
}
.vt-solution-card h3{font-family:var(--head),sans-serif;font-size:1.02rem;line-height:1.44;color:var(--vt-ink)}

/* ----- S4 Đối tác ----- */
.vt-partners{padding:74px 0;background:#fff}
.vt-partner-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;margin-top:36px}
.vt-partner-item{
  display:flex;align-items:center;justify-content:center;min-width:216px;height:108px;
  padding:0 28px;border:1px solid var(--vt-border);border-radius:14px;background:#fff
}
.vt-partner-item span{font-family:var(--head),sans-serif;font-weight:700;font-size:1.04rem;color:var(--vt-grey)}
.vt-partner-item img{max-height:58px;max-width:100%;width:auto;object-fit:contain}

/* ----- S5 Tin tức ----- */
.vt-news{padding:88px 0;background:#fafafa}
.vt-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:46px}
.vt-news-item{
  background:#fff;border:1px solid var(--vt-border);border-radius:16px;overflow:hidden;
  display:flex;flex-direction:column;transition:transform .22s,box-shadow .22s
}
.vt-news-item:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(28,28,30,.1)}
.vt-news-item__media{display:block;aspect-ratio:16/10;overflow:hidden}
.vt-news-item__media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
/* Bài chưa có ảnh đại diện — khung thương hiệu Vistar thay vì ảnh của bên khác. */
.vt-news-item__ph{
  display:flex;align-items:center;justify-content:center;width:100%;height:100%;
  background:linear-gradient(135deg,var(--vt-red),#5E1012)
}
.vt-news-item__ph img{width:auto!important;height:auto!important;max-width:44%;max-height:52%;object-fit:contain!important;opacity:.9}
.vt-news-item:hover .vt-news-item__ph img{transform:none}
.vt-news-item:hover .vt-news-item__media img{transform:scale(1.05)}
.vt-news-item__body{padding:22px 22px 26px;display:flex;flex-direction:column;gap:9px}
.vt-news-item__body time{font-size:.8rem;color:var(--vt-grey);letter-spacing:.04em}
.vt-news-item__body h3{font-family:var(--head),sans-serif;font-size:1.04rem;line-height:1.45}
.vt-news-item__body h3 a{color:var(--vt-ink)}
.vt-news-item__body h3 a:hover{color:var(--vt-red)}
.vt-news-item__body p{color:var(--vt-grey);font-size:.92rem;line-height:1.65}

@media(max-width:960px){
  .vt-solution-grid{grid-template-columns:repeat(2,1fr)}
  .vt-news-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .vt-brands,.vt-solutions,.vt-news{padding:58px 0}
  .vt-partners{padding:52px 0}
  .vt-brand-grid,.vt-solution-grid,.vt-news-grid{grid-template-columns:1fr}
  .vt-partner-item{min-width:100%;height:90px}
  .vt-home-hero__lead{font-size:.99rem;margin:20px 0 26px}
}

/* ============================================================
   VỀ CHÚNG TÔI — Doc 2
   ============================================================ */

.vt-about{padding:88px 0;background:#fff}
.vt-about__inner{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center}
.vt-about__media img{width:100%;height:auto;border-radius:18px;display:block;box-shadow:0 18px 44px rgba(28,28,30,.1)}
/* Khung chờ ảnh — dùng nhận diện Vistar, không mượn ảnh của đơn vị khác. */
.vt-about__placeholder{
  aspect-ratio:4/3;border-radius:18px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:20px;
  background:linear-gradient(135deg,var(--vt-red),#5E1012);
  box-shadow:0 18px 44px rgba(28,28,30,.1)
}
.vt-about__placeholder img{width:auto;max-width:46%;height:auto;box-shadow:none;border-radius:0}
.vt-about__placeholder span{
  font-family:var(--head),sans-serif;font-weight:600;font-size:1rem;
  letter-spacing:.06em;color:rgba(255,255,255,.86)
}
.vt-about__body p{color:var(--vt-grey);line-height:1.8;margin:14px 0 26px;font-size:1.02rem}

.vt-vm{padding:88px 0;background:var(--vt-muted)}
.vt-vm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:46px}
.vt-vm-card{
  background:#fff;border:1px solid var(--vt-border);border-radius:18px;padding:36px 32px 38px;
  transition:transform .22s,box-shadow .22s
}
.vt-vm-card:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(28,28,30,.09)}
.vt-vm-card__icon{
  display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;
  border-radius:15px;background:var(--vt-red-tint);color:var(--vt-red);margin-bottom:18px
}
.vt-vm-card__icon svg{width:27px;height:27px}
.vt-vm-card h3{font-family:var(--head),sans-serif;font-size:1.32rem;color:var(--vt-ink);margin-bottom:10px}
.vt-vm-card p{color:var(--vt-grey);line-height:1.78;font-size:.98rem}

.vt-values{padding:88px 0;background:#fff}
.vt-value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:46px}
.vt-value-card{
  border:1px solid var(--vt-border);border-radius:16px;padding:30px 26px 32px;background:#fff;
  transition:transform .22s,box-shadow .22s,border-color .22s
}
.vt-value-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(28,28,30,.1);border-color:var(--vt-red)}
.vt-value-card__icon{
  display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;
  border-radius:14px;background:var(--vt-red-tint);color:var(--vt-red);margin-bottom:16px
}
.vt-value-card__icon svg{width:25px;height:25px}
.vt-value-card h3{
  font-family:var(--head),sans-serif;font-size:1.1rem;color:var(--vt-ink);
  margin-bottom:9px;letter-spacing:.01em
}
.vt-value-card p{color:var(--vt-grey);line-height:1.72;font-size:.9rem}

.vt-cta{padding:76px 0;background:linear-gradient(135deg,var(--vt-red),#5E1012)}
.vt-cta__inner{text-align:center}
.vt-cta__inner p{color:rgba(255,255,255,.88);margin:12px 0 28px;font-size:1.02rem}

/* ============================================================
   LIÊN HỆ — Doc 2
   ============================================================ */

.vt-contact{padding:88px 0;background:#fff}
.vt-contact-grid{display:flex;justify-content:center;margin-top:44px}
.vt-contact-card{
  background:#fff;border:1px solid var(--vt-border);border-radius:18px;padding:38px 40px;
  box-shadow:0 14px 38px rgba(28,28,30,.06);width:100%
}
.vt-contact-card--wide{max-width:820px}
.vt-contact-card h3{
  font-family:var(--head),sans-serif;font-size:1.2rem;color:var(--vt-red);
  margin-bottom:24px;letter-spacing:.01em
}
.vt-contact-list{display:grid;grid-template-columns:158px 1fr;gap:14px 22px;margin:0}
.vt-contact-list dt{
  font-family:var(--head),sans-serif;font-weight:700;font-size:.86rem;color:var(--vt-grey);
  letter-spacing:.02em
}
.vt-contact-list dd{margin:0;color:var(--vt-ink);line-height:1.62;font-size:.97rem}
.vt-contact-list dd a{color:var(--vt-red);font-weight:600}
.vt-note{color:var(--vt-grey);font-size:.84rem;font-style:italic}

.vt-maps{padding:0 0 88px;background:#fff}
.vt-map-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:44px}
.vt-map{margin:0}
.vt-map__frame{
  position:relative;aspect-ratio:4/3;border-radius:16px;overflow:hidden;
  border:1px solid var(--vt-border);background:var(--vt-muted)
}
.vt-map__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vt-map figcaption{display:flex;flex-direction:column;gap:4px;padding:16px 4px 0}
.vt-map figcaption strong{font-family:var(--head),sans-serif;font-size:1rem;color:var(--vt-ink)}
.vt-map figcaption span{color:var(--vt-grey);font-size:.9rem;line-height:1.6}

/* ============================================================
   BIỂU MẪU (Liên hệ + Ứng tuyển) — giai đoạn này chỉ dựng giao diện
   ============================================================ */

.vt-form-section{padding:88px 0;background:var(--vt-muted)}
.vt-form{
  max-width:760px;margin:44px auto 0;background:#fff;border:1px solid var(--vt-border);
  border-radius:18px;padding:38px 40px 34px;box-shadow:0 14px 38px rgba(28,28,30,.06);
  display:flex;flex-direction:column;gap:20px
}
.vt-form__row{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.vt-field{display:flex;flex-direction:column;gap:8px}
.vt-field>span{
  font-family:var(--head),sans-serif;font-weight:600;font-size:.88rem;color:var(--vt-ink)
}
.vt-field>span em{color:var(--vt-red);font-style:normal}
.vt-field input,.vt-field select,.vt-field textarea{
  font-family:inherit;font-size:.96rem;color:var(--vt-ink);background:#fff;
  border:1px solid var(--vt-border);border-radius:10px;padding:12px 14px;width:100%;
  transition:border-color .18s,box-shadow .18s
}
.vt-field textarea{resize:vertical;min-height:120px;line-height:1.65}
.vt-field input::placeholder,.vt-field textarea::placeholder{color:#B3AAAB}
.vt-field input:focus,.vt-field select:focus,.vt-field textarea:focus{
  outline:none;border-color:var(--vt-red);box-shadow:0 0 0 3px var(--vt-red-tint)
}
.vt-form__submit{align-self:flex-start;border:0;cursor:pointer;font-family:var(--head),sans-serif}
.vt-form__note{color:var(--vt-grey);font-size:.87rem;line-height:1.62;margin:0}
.vt-form__note a{color:var(--vt-red);font-weight:600}

/* ============================================================
   TIN TỨC — trang danh sách
   ============================================================ */

.vt-news--archive{background:#fff;padding-top:60px}
.vt-filter{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:8px}
.vt-filter__chip{
  display:inline-block;font-family:var(--head),sans-serif;font-weight:600;font-size:.88rem;
  padding:9px 20px;border-radius:999px;border:1px solid var(--vt-border);
  color:var(--vt-ink);background:#fff;transition:.2s
}
a.vt-filter__chip:hover{border-color:var(--vt-red);color:var(--vt-red);background:var(--vt-red-tint)}
.vt-filter__chip.is-active{background:var(--vt-red);border-color:var(--vt-red);color:#fff}
.vt-filter__chip.is-locked{opacity:.45;cursor:not-allowed;color:var(--vt-grey)}

.vt-pagination{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:46px}
.vt-pagination .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;
  padding:0 12px;border-radius:10px;border:1px solid var(--vt-border);background:#fff;
  font-family:var(--head),sans-serif;font-weight:600;font-size:.92rem;color:var(--vt-ink);transition:.2s
}
.vt-pagination a.page-numbers:hover{border-color:var(--vt-red);color:var(--vt-red)}
.vt-pagination .page-numbers.current{background:var(--vt-red);border-color:var(--vt-red);color:#fff}
.vt-empty{text-align:center;color:var(--vt-grey);padding:60px 0}

/* ============================================================
   Ô TÌM KIẾM SẢN PHẨM (trang Thương hiệu + chi tiết sản phẩm)
   ============================================================ */

.vt-search{display:flex;max-width:460px;margin:26px auto 0;position:relative}
.vt-search input{
  flex:1;font-family:inherit;font-size:.97rem;color:var(--vt-ink);background:#fff;
  border:0;border-radius:999px;padding:14px 56px 14px 22px;width:100%;
  box-shadow:0 8px 26px rgba(0,0,0,.14)
}
.vt-search input::placeholder{color:#A79C9D}
.vt-search input:focus{outline:none;box-shadow:0 0 0 3px rgba(255,255,255,.5),0 8px 26px rgba(0,0,0,.14)}
.vt-search button{
  position:absolute;right:5px;top:5px;bottom:5px;width:44px;border:0;cursor:pointer;
  border-radius:999px;background:var(--vt-red);color:#fff;
  display:inline-flex;align-items:center;justify-content:center;transition:background .2s
}
.vt-search button:hover{background:#6E1214}
.vt-search button svg{width:19px;height:19px}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ============================================================
   TRANG THƯƠNG HIỆU
   ============================================================ */

.vt-brand-hero__lead{
  color:rgba(255,255,255,.9);max-width:620px;margin:14px auto 0;
  font-size:1.02rem;line-height:1.7
}
.vt-brand-hero .container,.vt-product-hero .container{text-align:center}

.vt-brand-block{padding:84px 0;background:#fff}
.vt-brand-block.is-alt{background:var(--vt-muted)}
.vt-brand-block__head{text-align:center;margin-bottom:34px}
.vt-brand-block__logo{max-height:76px;width:auto}
.vt-brand-block__name{
  font-family:var(--head),sans-serif;font-weight:800;font-size:2.4rem;
  letter-spacing:-.02em;color:var(--vt-red);margin:0
}
.vt-brand-block__desc{color:var(--vt-grey);margin-top:8px;font-size:1.02rem}
.vt-brand-block__kv{margin-bottom:40px}
.vt-brand-block__kv img{width:100%;height:auto;border-radius:18px;display:block}

.vt-kv-placeholder{
  aspect-ratio:21/7;border-radius:18px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:14px;
  background:linear-gradient(135deg,var(--vt-red),#5E1012)
}
.vt-kv-placeholder img{width:auto;max-width:150px;height:auto}
.vt-kv-placeholder span{
  font-family:var(--head),sans-serif;font-weight:600;font-size:.94rem;
  letter-spacing:.08em;color:rgba(255,255,255,.85)
}
.vt-kv-placeholder--square{aspect-ratio:1/1;gap:18px}
.vt-kv-placeholder--square img{max-width:44%}

/* Thẻ sản phẩm — dùng chung ở Thương hiệu, chi tiết SP, danh mục SP */
.vt-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.vt-product-card{
  display:block;background:#fff;border:1px solid var(--vt-border);border-radius:16px;
  overflow:hidden;transition:transform .22s,box-shadow .22s,border-color .22s
}
.vt-product-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(28,28,30,.1);border-color:var(--vt-red)}
.vt-product-card__media{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--vt-muted)}
.vt-product-card__media img{width:100%;height:100%;object-fit:cover}
.vt-product-card__ph{
  display:flex;align-items:center;justify-content:center;width:100%;height:100%;
  background:linear-gradient(135deg,var(--vt-red),#5E1012)
}
.vt-product-card__ph img{width:auto;height:auto;max-width:40%;object-fit:contain;opacity:.9}
.vt-product-card h3{
  font-family:var(--head),sans-serif;font-size:1.04rem;line-height:1.45;
  color:var(--vt-ink);padding:20px 20px 0
}
.vt-product-card p{color:var(--vt-grey);font-size:.9rem;line-height:1.6;padding:8px 20px 0}
.vt-product-card__more{
  display:inline-block;font-family:var(--head),sans-serif;font-weight:700;
  font-size:.86rem;color:var(--vt-red);padding:14px 20px 22px
}
.vt-empty--inline{padding:34px 0;background:#fff;border:1px dashed var(--vt-border);border-radius:14px}

/* ============================================================
   CHI TIẾT SẢN PHẨM
   ============================================================ */

.vt-product-detail{padding:84px 0;background:#fff}
.vt-product-detail__inner{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:start}
.vt-product-detail__media img{width:100%;height:auto;border-radius:18px;display:block;box-shadow:0 18px 44px rgba(28,28,30,.1)}
.vt-brand-chip{
  display:inline-block;font-family:var(--head),sans-serif;font-weight:700;font-size:.8rem;
  letter-spacing:.06em;text-transform:uppercase;color:var(--vt-red);
  background:var(--vt-red-tint);padding:7px 16px;border-radius:999px;margin-bottom:16px
}
.vt-product-detail__lead{color:var(--vt-ink);font-size:1.06rem;line-height:1.72;margin:14px 0 0}
.vt-product-detail__content{color:var(--vt-grey);line-height:1.8;margin-top:18px}
.vt-product-detail__content h2,.vt-product-detail__content h3{
  font-family:var(--head),sans-serif;color:var(--vt-ink);margin:26px 0 10px;font-size:1.14rem
}
.vt-product-detail__content ul,.vt-product-detail__content ol{padding-left:20px;margin:10px 0}
.vt-product-detail__content li{margin-bottom:7px}
.vt-note-block{
  margin-top:20px;padding:18px 20px;border:1px dashed var(--vt-border);border-radius:12px;
  color:var(--vt-grey);font-size:.94rem;line-height:1.7;background:var(--vt-muted)
}
.vt-product-detail__cta{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:30px}
.btn-text{
  font-family:var(--head),sans-serif;font-weight:700;font-size:.9rem;color:var(--vt-red)
}
.btn-text:hover{text-decoration:underline}

.vt-related{padding:84px 0;background:var(--vt-muted)}
.vt-related .vt-product-grid{margin-top:44px}

/* ============================================================
   DANH MỤC SẢN PHẨM — /san-pham/
   ============================================================ */

.vt-archive{padding:74px 0;background:#fff}
.vt-archive__group + .vt-archive__group{margin-top:64px}
.vt-archive__head{
  display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  padding-bottom:14px;margin-bottom:28px;border-bottom:2px solid var(--vt-border)
}
.vt-archive__head h2{font-family:var(--head),sans-serif;font-size:1.5rem;color:var(--vt-ink);margin:0}
.vt-archive__head a{font-family:var(--head),sans-serif;font-weight:700;font-size:.88rem;color:var(--vt-red)}

/* ============================================================
   GIẢI PHÁP THƯƠNG HIỆU
   ============================================================ */

.vt-intro{padding:64px 0 10px;background:#fff}
.vt-intro__lead{
  max-width:780px;margin:0 auto;text-align:center;font-size:1.1rem;
  line-height:1.78;color:var(--vt-ink)
}
.vt-jump{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:34px}
.vt-jump a{
  display:inline-flex;align-items:center;gap:10px;padding:11px 20px;border-radius:999px;
  border:1px solid var(--vt-border);background:#fff;color:var(--vt-ink);
  font-family:var(--head),sans-serif;font-weight:600;font-size:.88rem;transition:.2s
}
.vt-jump a:hover{border-color:var(--vt-red);color:var(--vt-red);background:var(--vt-red-tint)}
.vt-jump a span{
  display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;
  border-radius:50%;background:var(--vt-red);color:#fff;font-size:.75rem;font-weight:800
}

.vt-solution-block{padding:74px 0;background:#fff}
.vt-solution-block.is-alt{background:var(--vt-muted)}
.vt-solution-block__head{display:flex;align-items:center;gap:20px;margin-bottom:18px}
.vt-solution-block__icon{
  display:inline-flex;align-items:center;justify-content:center;width:62px;height:62px;
  flex:0 0 62px;border-radius:17px;background:var(--vt-red-tint);color:var(--vt-red)
}
.vt-solution-block__icon svg{width:29px;height:29px}
.vt-solution-block__num{
  display:block;font-family:var(--head),sans-serif;font-weight:800;font-size:.78rem;
  letter-spacing:.16em;color:var(--vt-red);margin-bottom:4px
}
.vt-solution-block__head .section-title{margin:0}
.vt-solution-block__desc{color:var(--vt-grey);line-height:1.82;max-width:860px;font-size:1.01rem}

/* Bảng so sánh — có dữ liệu thì hiện bảng, chưa có thì hiện khung chờ */
.vt-compare{margin:30px 0 26px;overflow-x:auto;border:1px solid var(--vt-border);border-radius:14px;background:#fff}
.vt-compare table{width:100%;border-collapse:collapse;min-width:620px}
.vt-compare th,.vt-compare td{
  padding:15px 20px;text-align:left;border-bottom:1px solid var(--vt-border);
  font-size:.94rem;line-height:1.62;color:var(--vt-grey)
}
.vt-compare thead th{
  font-family:var(--head),sans-serif;font-weight:700;font-size:.86rem;color:var(--vt-ink);
  background:var(--vt-muted);border-bottom:2px solid var(--vt-border)
}
.vt-compare tbody th{font-family:var(--head),sans-serif;font-weight:650;color:var(--vt-ink)}
.vt-compare .is-vistar{background:var(--vt-red-tint);color:var(--vt-ink);font-weight:600}
.vt-compare thead .is-vistar{color:var(--vt-red)}
.vt-compare tr:last-child th,.vt-compare tr:last-child td{border-bottom:0}

.vt-compare--empty{overflow:visible}
.vt-compare__head{
  display:grid;grid-template-columns:1fr 1fr 1fr;background:var(--vt-muted);
  border-bottom:2px solid var(--vt-border);border-radius:13px 13px 0 0
}
.vt-compare__head span{
  padding:15px 20px;font-family:var(--head),sans-serif;font-weight:700;
  font-size:.86rem;color:var(--vt-ink)
}
.vt-compare__head .is-vistar{background:var(--vt-red-tint);color:var(--vt-red);border-radius:0 13px 0 0}
.vt-compare__note{
  margin:0;padding:34px 20px;text-align:center;color:var(--vt-grey);
  font-size:.94rem;font-style:italic
}

@media(max-width:960px){
  .vt-about__inner{grid-template-columns:1fr;gap:34px}
  .vt-value-grid{grid-template-columns:repeat(2,1fr)}
  .vt-product-detail__inner{grid-template-columns:1fr;gap:34px}
  .vt-product-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .vt-about,.vt-vm,.vt-values,.vt-contact,.vt-form-section{padding:58px 0}
  .vt-maps{padding-bottom:58px}
  .vt-vm-grid,.vt-value-grid,.vt-map-grid,.vt-form__row{grid-template-columns:1fr}
  .vt-contact-list{grid-template-columns:1fr;gap:4px 0}
  .vt-contact-list dd{margin-bottom:12px}
  .vt-contact-card,.vt-form{padding:28px 22px}

  .vt-brand-block,.vt-solution-block,.vt-product-detail,.vt-related,.vt-archive{padding:56px 0}
  .vt-product-grid{grid-template-columns:1fr}
  .vt-brand-block__name{font-size:1.9rem}
  .vt-kv-placeholder{aspect-ratio:16/9}
  .vt-kv-placeholder img{max-width:120px}
  .vt-solution-block__head{gap:14px}
  .vt-solution-block__icon{width:52px;height:52px;flex-basis:52px}
  .vt-solution-block__icon svg{width:24px;height:24px}
  .vt-compare__head{grid-template-columns:1fr}
  .vt-compare__head .is-vistar{border-radius:0}
  .vt-archive__head{flex-direction:column;align-items:flex-start;gap:6px}
}

/* ============================================================
   LƯỢT RÀ SOÁT GIAO DIỆN — chuẩn hoá nhịp, thẻ, placeholder
   Đặt cuối file để thắng các giá trị rời rạc phía trên.
   ============================================================ */

/* ----- 1. Nhịp dọc thống nhất -----------------------------
   Mọi section dùng chung một thang, thay cho 88/84/90/74/76/64px. */
.vt-brands,.vt-solutions,.vt-news,.vt-about,.vt-vm,.vt-values,
.vt-contact,.vt-form-section,.vt-brand-block,.vt-solution-block,
.vt-product-detail,.vt-related,.vt-archive,.stats,.mission{
  padding-top:var(--sec-y);padding-bottom:var(--sec-y)
}
.vt-partners,.vt-cta{padding-top:var(--sec-y-sm);padding-bottom:var(--sec-y-sm)}
.vt-intro{padding-top:var(--sec-y-sm);padding-bottom:0}
.vt-maps{padding-top:0;padding-bottom:var(--sec-y)}
.vt-news--archive{padding-top:var(--sec-y-sm)}
/* Section liền nhau cùng nền trắng thì gộp nhịp, tránh khoảng trống đôi. */
.vt-contact + .vt-maps{padding-top:0}

/* Khoảng cách trong section: đầu mục → nội dung */
.section-head-center{margin-bottom:0}
.vt-brand-grid,.vt-solution-grid,.vt-news-grid,.vt-value-grid,
.vt-vm-grid,.vt-map-grid,.vt-product-grid,.vt-partner-strip{margin-top:44px}
.vt-center{margin-top:44px}

/* ----- 2. Thẻ dùng chung một ngôn ngữ ---------------------- */
.vt-brand-card,.vt-solution-card,.vt-news-item,.vt-value-card,
.vt-vm-card,.vt-product-card,.stat-card{
  border-radius:var(--card-r);border:var(--card-bd);box-shadow:var(--card-sh);
  transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .28s var(--ease)
}
.vt-brand-card:hover,.vt-solution-card:hover,.vt-news-item:hover,
.vt-value-card:hover,.vt-vm-card:hover,.vt-product-card:hover{
  transform:translateY(-5px);box-shadow:var(--card-sh-hv);border-color:rgba(135,23,28,.35)
}

/* ----- 3. Ô chờ ảnh: từ khối đỏ đặc → panel sáng -----------
   Ba khối đỏ liền nhau ở hàng tin tức và hai khối đỏ khổng lồ ở trang
   Thương hiệu làm trang nặng và đơn điệu. Đổi sang nền sáng viền đứt,
   đọc ra ngay là "đang chờ ảnh" mà không lấn át nội dung thật. */
.vt-about__placeholder,.vt-kv-placeholder,
.vt-product-card__ph,.vt-news-item__ph{
  background:var(--ph-bg)
}
.vt-about__placeholder,.vt-kv-placeholder{border:var(--ph-bd)}
.vt-product-card__ph,.vt-news-item__ph{box-shadow:inset 0 0 0 1px rgba(135,23,28,.12)}
.vt-about__placeholder img,.vt-kv-placeholder img,
.vt-product-card__ph img,.vt-news-item__ph img{opacity:.42}
.vt-about__placeholder span,.vt-kv-placeholder span{
  color:var(--vt-grey);font-weight:600;letter-spacing:.05em;opacity:.9
}
.vt-about__placeholder{box-shadow:none;border-radius:var(--card-r-lg)}
.vt-kv-placeholder{border-radius:var(--card-r-lg)}
.vt-news-item__ph img{max-width:38%;max-height:46%}

/* ----- 4. Thẻ giải pháp: số thứ tự thành mốc thị giác ------
   Doc 2 đánh số I–IV nên đây là thứ tự thật, không phải trang trí.
   Đưa số ra góc phải dạng chữ số lớn mờ, nhường chỗ cho tiêu đề. */
.vt-solution-card{position:relative;padding:30px 26px 30px;overflow:hidden}
.vt-solution-card__num{
  position:absolute;top:16px;right:22px;font-size:2.6rem;line-height:1;
  letter-spacing:0;opacity:.12;pointer-events:none
}
.vt-solution-card h3{font-size:1.06rem;line-height:1.42;margin:2px 0 0}
.vt-solution-card__icon{width:52px;height:52px;border-radius:14px}
.vt-solution-card__icon svg{width:25px;height:25px}

/* ----- 5. Ô đối tác: nhẹ đi, bớt viền cứng ----------------- */
.vt-partner-item{
  height:96px;min-width:196px;background:var(--vt-muted);
  border:1px solid rgba(28,28,30,.05);border-radius:14px
}
.vt-partner-item span{color:#8B8385;font-weight:600;letter-spacing:.02em;font-size:1rem}

/* ----- 6. Hero: scrim chéo thay lớp phủ đỏ-đen đục --------- */
.vt-home-hero .hero-overlay{
  background:
    linear-gradient(100deg,rgba(22,11,12,.84) 0%,rgba(22,11,12,.6) 42%,rgba(22,11,12,.18) 78%,rgba(22,11,12,.05) 100%),
    linear-gradient(180deg,rgba(135,23,28,.08),rgba(135,23,28,.26))
}
.vt-home-hero__title{letter-spacing:-.015em}
.vt-home-hero__lead{color:rgba(255,255,255,.88)}

/* ----- 7. Thẻ thương hiệu ở trang chủ: chắc tay hơn -------- */
.vt-brand-card{position:relative;padding:44px 32px 34px;overflow:hidden}
.vt-brand-card::before{
  content:"";position:absolute;inset:0 0 auto 0;height:3px;
  background:linear-gradient(90deg,var(--vt-red),rgba(135,23,28,.15));
  opacity:0;transition:opacity .28s var(--ease)
}
.vt-brand-card:hover::before{opacity:1}
.vt-brand-card h3.is-wordmark{margin:6px 0 8px;font-size:2.05rem}
.vt-brand-card__more{margin-top:18px}

/* ----- 8. Khối thương hiệu ở trang Thương hiệu ------------- */
.vt-brand-block__kv{margin-bottom:36px}
.vt-kv-placeholder{aspect-ratio:24/7}
.vt-kv-placeholder img{max-width:124px}
.vt-empty--inline{
  background:var(--vt-muted);border:1px dashed var(--vt-border);
  border-radius:var(--card-r);color:var(--vt-grey);padding:30px 20px
}

/* ----- 9. Bảng so sánh rỗng: gọn lại ---------------------- */
.vt-compare--empty{border-radius:var(--card-r)}
.vt-compare__note{padding:28px 20px}

/* ----- 10. Nút & liên kết: đồng nhất chuyển động ---------- */
.btn{transition:background .22s var(--ease),box-shadow .22s var(--ease),transform .22s var(--ease)}
.btn:hover{transform:translateY(-1px)}
.vt-jump a,.vt-filter__chip{transition:all .22s var(--ease)}

/* ----- 11. Tôn trọng thiết lập giảm chuyển động ----------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
  .vt-brand-card:hover,.vt-solution-card:hover,.vt-news-item:hover,
  .vt-value-card:hover,.vt-vm-card:hover,.vt-product-card:hover,.btn:hover{transform:none}
}

/* ----- 12. Nhịp dọc thu theo màn hình --------------------- */
@media(max-width:960px){
  :root{--sec-y:var(--sec-y-sm)}
  .vt-brand-grid,.vt-solution-grid,.vt-news-grid,.vt-value-grid,
  .vt-vm-grid,.vt-map-grid,.vt-product-grid,.vt-partner-strip,.vt-center{margin-top:36px}
}
@media(max-width:640px){
  :root{--sec-y:var(--sec-y-xs);--sec-y-sm:48px}
  .vt-brand-card{padding:34px 24px 28px}
  .vt-brand-card h3.is-wordmark{font-size:1.8rem}
  .vt-solution-card__num{font-size:2.1rem;top:14px;right:18px}
  .vt-kv-placeholder{aspect-ratio:16/9}
  .vt-kv-placeholder img{max-width:104px}
  .vt-partner-item{height:84px}
}

/* ----- 13. Khung xương sản phẩm (chưa nhập dữ liệu) --------
   Thay cho một hộp chữ trống: dựng đúng 3 thẻ như Doc 1 mô tả, dải xám
   đọc ra ngay là đang chờ dữ liệu. Không hover, không bấm được. */
.vt-product-card.is-skeleton{
  cursor:default;box-shadow:none;background:#fff;
  border-style:dashed;border-color:rgba(28,28,30,.1)
}
.vt-product-card.is-skeleton:hover{transform:none;box-shadow:none;border-color:rgba(28,28,30,.1)}
.sk-line{
  display:block;height:11px;border-radius:6px;margin:0 20px 12px;
  background:linear-gradient(90deg,#EFEAEA,#F7F3F3)
}
.sk-line--title{height:15px;width:72%;margin-top:22px;margin-bottom:14px}
.sk-line:last-child{width:46%;margin-bottom:24px}
.vt-skeleton-note{
  margin:22px 0 0;text-align:center;color:var(--vt-grey);
  font-size:.92rem;font-style:italic
}

/* ----- 14. Tiêu đề hero: cân dòng từng cụm ----------------
   text-wrap:balance trên <h1> không lan xuống các <span> con (mỗi span là
   một khối riêng), nên "Sắc đẹp" bị tách đôi. Đặt balance cho chính span. */
.vt-home-hero__title span{text-wrap:balance}

/* ----- 15. Bớt lặp logo -----------------------------------
   Trang Thương hiệu vốn hiện logo tới 7 lần (2 dải KV + 6 thẻ khung xương).
   Thẻ khung xương để panel trơn, dải KV giữ logo là đủ nhận diện. */
.vt-product-card.is-skeleton .vt-product-card__ph img{display:none}
.vt-product-card.is-skeleton .vt-product-card__ph{box-shadow:inset 0 0 0 1px rgba(28,28,30,.05)}
.vt-kv-placeholder img{opacity:.34;max-width:112px}

/* ----- 16. Chân trang theo sitemap -------------------------
   Lưới cũ 1.6fr+3 cột chỉ chứa được 3 nhánh; sitemap có 5. Tách thành
   khối giới thiệu bên trái + vùng điều hướng 5 cột bên phải. */
.footer-top{grid-template-columns:minmax(260px,1.15fr) 3fr;gap:48px;align-items:start}
.footer-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px}
.footer-col h4{font-size:.95rem;margin-bottom:14px;line-height:1.35}
.footer-col a{font-size:.855rem;padding:5px 0;line-height:1.5}
.footer-sub{padding-left:11px!important;opacity:.78;font-size:.82rem!important}
.footer-locked{
  display:block;font-size:.855rem;padding:5px 0;line-height:1.5;
  color:var(--vt-grey);opacity:.42;cursor:not-allowed
}

@media(max-width:1100px){
  .footer-top{grid-template-columns:1fr;gap:34px}
  .footer-about{max-width:none}
}
@media(max-width:860px){
  .footer-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 20px}
}
@media(max-width:560px){
  .footer-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ----- 17. Chân trang: giới thiệu ngắn + khối liên hệ ------
   Đoạn giới thiệu cũ dài 4 dòng đẩy cột trái xuống sâu. Rút còn một câu,
   nhường chỗ cho thông tin liên hệ. */
.footer-tagline{font-size:.885rem;line-height:1.72;color:var(--vt-grey);margin:0 0 22px}
.footer-tagline strong{color:var(--vt-ink);font-weight:650}

.footer-contact{font-style:normal;display:grid;gap:7px;padding-top:20px;border-top:1px solid var(--vt-border)}
.footer-contact__name{
  font-family:var(--head),sans-serif;font-size:.855rem;font-weight:700;
  color:var(--vt-ink);letter-spacing:.01em;margin-bottom:3px
}
.footer-contact span{
  display:grid;grid-template-columns:82px 1fr;gap:0 10px;
  font-size:.815rem;line-height:1.6;color:var(--vt-grey)
}
.footer-contact em{
  font-style:normal;font-family:var(--head),sans-serif;font-weight:600;
  font-size:.755rem;color:#9A9092;letter-spacing:.03em;padding-top:1px
}
.footer-contact a{color:var(--vt-red);font-weight:600;padding:0;display:inline}
.footer-contact a:hover{text-decoration:underline}

@media(max-width:1100px){
  .footer-contact span{grid-template-columns:88px 1fr}
}
@media(max-width:420px){
  .footer-contact span{grid-template-columns:1fr;gap:1px}
  .footer-contact em{padding-top:4px}
}

/* ----- 18. Số thứ tự nhóm giải pháp: to và rõ ---------------
   Cỡ .78rem cùng letter-spacing .16em khiến chữ số đơn trông như dấu mũ
   lạc chỗ (một ký tự thì tracking chỉ đẩy lệch chứ không giãn được gì).
   Nâng lên cỡ tiêu đề phụ, bỏ tracking, thêm gạch ngắn để đọc ra là số mục. */
.vt-solution-block__num{
  display:inline-flex;align-items:center;gap:13px;
  font-size:2.2rem;line-height:1;letter-spacing:0;margin-bottom:10px
}
.vt-solution-block__num::after{
  content:"";width:38px;height:2px;border-radius:2px;
  background:currentColor;opacity:.32
}
@media(max-width:640px){
  .vt-solution-block__num{font-size:1.8rem;gap:10px}
  .vt-solution-block__num::after{width:28px}
}

/* ----- 19. Hero trang chủ: canh giữa ------------------------
   Kèm theo phải đổi luôn lớp phủ: scrim cũ đậm dồn về bên TRÁI (dựng cho
   chữ canh trái), giữ nguyên thì chữ giữa nằm trên vùng ảnh sáng, khó đọc.
   Đổi sang scrim toả tâm — đậm ở giữa nơi có chữ, nhạt dần ra rìa để ảnh
   còn thấy được. */
.vt-home-hero .hero-content{text-align:center}
.vt-home-hero__inner,
.vt-home-hero__title,
.vt-home-hero__lead{margin-left:auto;margin-right:auto}
.vt-home-hero__title::after{margin-left:auto;margin-right:auto}
.vt-home-hero__lead{margin-top:26px;margin-bottom:32px}

.vt-home-hero .hero-overlay{
  background:
    radial-gradient(122% 96% at 50% 46%,
      rgba(22,11,12,.74) 0%,
      rgba(22,11,12,.6) 42%,
      rgba(22,11,12,.4) 72%,
      rgba(22,11,12,.28) 100%),
    linear-gradient(180deg,rgba(135,23,28,.1),rgba(135,23,28,.3))
}

/* ----- 20. Thẻ tin tức: ảnh bìa thay ô placeholder ---------
   Ba ô placeholder giống hệt nhau làm hàng tin trông rỗng. Nay mỗi bài có
   một ảnh bìa hoa văn riêng, phóng nhẹ khi rê chuột như ảnh thật. */
.vt-news-item__cover{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}
.vt-news-item:hover .vt-news-item__cover{transform:scale(1.05)}
.vt-news-item__body{gap:8px}
.vt-news-item__body time{
  font-family:var(--head),sans-serif;font-weight:600;font-size:.75rem;
  letter-spacing:.06em;color:var(--vt-red);text-transform:uppercase
}
.vt-news-item__body h3{font-size:1.06rem;line-height:1.42;margin:0}
.vt-news-item__body p{font-size:.885rem;line-height:1.68;margin:0}

/* ----- 21. Wordmark thương hiệu ---------------------------- */
.vt-brand-block__logo{max-height:66px}
.vt-brand-card__logo{height:74px;margin-bottom:14px}
.vt-brand-card__logo img{max-height:100%;max-width:82%}

/* ----- 22. Logo đối tác --------------------------------------
   Ba logo khác nhau về tỉ lệ và độ đậm nhạt. Nền trắng + chiều cao cố định
   + object-fit contain để chúng đứng cùng hàng đều nhau. */
.vt-partner-item{background:#fff;border-color:var(--vt-border);height:104px;min-width:214px;padding:0 30px}
.vt-partner-item img{max-height:44px;max-width:100%;width:auto;object-fit:contain}
@media(max-width:640px){
  .vt-partner-item{height:88px}
  .vt-partner-item img{max-height:36px}
}

/* ----- 23. Tên đối tác dạng chữ ------------------------------
   Dùng khi chưa có file logo sạch. Đặt cỡ và độ đậm sát với logo thật để
   ba ô đứng cùng hàng không bị lệch nhịp. */
.vt-partner-item span{
  font-family:var(--head),sans-serif;font-weight:800;font-size:1.22rem;
  letter-spacing:-.01em;line-height:1.25;text-align:center
}
@media(max-width:640px){ .vt-partner-item span{font-size:1.08rem} }

/* ----- 24. Ảnh bìa tin: logo trên nền hoa văn ---------------
   Ảnh cũ trong bài trỏ về host đã chết nên không lấy lại được. Dùng logo
   Vistar đặt trên nền hoa văn (4 mẫu luân phiên) thay vì để ô trơn. */
.vt-news-item__ph{
  background-size:cover;background-position:center;background-repeat:no-repeat;
  box-shadow:none
}
.vt-news-item__ph img{
  max-width:46%!important;max-height:44%!important;opacity:.62;
  object-fit:contain!important;transition:transform .4s var(--ease)
}
.vt-news-item:hover .vt-news-item__ph img{transform:scale(1.05)}

/* Logo đối tác: nền trắng, cao đều nhau. An Khang có nền xanh đặc nên bo góc
   nhẹ cho khỏi cấn vào viền ô. */
.vt-partner-item img{max-height:42px;border-radius:4px}
