/*
Theme Name: Thiên Khôi 2026
Description: Theme mới cho datrangyenbai.com theo mockup thiết kế 2026, dùng lại toàn bộ nội dung/permalink WordPress hiện có (không đổi slug, không đổi meta Yoast).
Author: Thiên Khôi Stone
Version: 1.0
Text Domain: thienkhoi-2026
*/

:root {
  --green: #0F5D3E;
  --gold: #C79C2E;
  --paper: #FAF8F4;
  --stone: #F1ECE3;
  --line: #E6E0D5;
  --muted: #6E6A62;
  --ink: #1F2A24;
  --fs-label: 0.7rem;    /* nhan nho viet hoa: badge, eyebrow, category tag */
  --fs-caption: 0.75rem; /* chu phu/caption: breadcrumb, meta, spec-table th */
}

/* 03/09/2026: make keyboard skip navigation visible on focus. */
.skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 100000;
  padding: 10px 14px;
  border-radius: 4px;
  background: #fff;
  color: #0d0d0d;
  font-weight: 700;
  transform: translateY(-160%);
  transition: transform .15s ease;
}
.skip-link:focus { transform: translateY(0); }
* { box-sizing: border-box; }
body { font-family: 'Be Vietnam Pro', system-ui, sans-serif; background: var(--paper); color: var(--ink); margin:0; }
button, input, select, textarea { font-family: inherit; }

.site-nav { background: var(--paper); border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 100; }
.nav-inner { max-width: 1680px; margin: 0 auto; padding: 0 0.75rem; display: flex; align-items: center; height: 64px; gap: 0.25rem; }
.logo-wrap { display: flex; align-items: center; gap: 0.6rem; text-decoration: none; flex-shrink: 0; }
.logo-wrap img { display:block; height:36px; width:auto; object-fit:contain; }
.logo-title { font-size:0.9rem; font-weight:800; color:var(--green); letter-spacing:-0.01em; white-space:nowrap; }

.site-nav .nav-links { display: flex; gap: 0; flex: 1; justify-content: space-between; align-items: center; list-style:none; margin:0; padding:0; }
.site-nav .nav-links > li { position: relative; flex: 1 1 auto; text-align: center; }
.site-nav .nav-links a { font-size: 0.95rem; font-weight: 700; color: var(--muted); text-decoration: none; letter-spacing: 0.01em; white-space: nowrap; text-transform: uppercase; padding: 0.4rem 0.15rem; display:block; }
.site-nav .nav-links a:hover { color: var(--green); }

.menu-item-has-children > a::after { content: ' \25BE'; font-size: var(--fs-label); }
.site-nav .menu-item-has-children:hover > .sub-menu { display: flex; }
.site-nav .sub-menu { text-align: left; display: none; position: absolute; top: calc(100% + 8px); left: 0; background: #fff; border: 1px solid var(--line); border-radius: 0.75rem; padding: 0.4rem; min-width: 230px; flex-direction: column; gap: 0; box-shadow: 0 8px 28px rgba(0,0,0,0.12); z-index: 300; list-style:none; margin:0; }
.sub-menu::before { content:''; position:absolute; top:-8px; left:0; right:0; height:8px; }
.sub-menu a { font-size: 0.85rem; font-weight: 600; color: var(--ink); padding: 0.55rem 0.9rem; border-radius: 0.4rem; white-space: nowrap; text-transform:none; }
.sub-menu a:hover { background: var(--stone); color: var(--green); }
.site-nav .sub-menu .sub-menu { top: 0; left: calc(100% + 4px); }

.nav-cta { background: var(--green); color: var(--paper); font-size: 0.85rem; font-weight: 700; padding: 0.45rem 0.85rem; border-radius: 9999px; text-decoration: none; white-space: nowrap; margin-left: 0.5rem; flex-shrink:0; }
.nav-toggle { display: none; background: none; border: none; cursor: pointer; padding: 0.4rem; }

.container { max-width: 1380px; margin: 0 auto; padding: 0 2.5rem; }
.container-narrow { max-width: 860px; margin: 0 auto; padding: 0 2.5rem; }
/* CHI dat padding doc. Truoc day dung shorthand 'padding: 4rem 0' nen no XOA
   luon padding trai/phai cua .container o phan tu class="container section",
   khien noi dung dinh sat mep man hinh. */
.section { padding-top: 4rem; padding-bottom: 4rem; }
.badge { display: inline-flex; align-items: center; gap: 0.35rem; background: rgba(15,93,62,0.09); color: var(--green); font-size: var(--fs-label); font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; padding: 0.3rem 0.8rem; border-radius: 9999px; }
.btn-primary { display: inline-flex; align-items: center; gap: 0.5rem; background: var(--green); color: var(--paper); font-weight: 700; font-size: 0.875rem; padding: 0.7rem 1.6rem; border-radius: 9999px; text-decoration: none; }
.btn-ghost { display: inline-flex; align-items: center; gap: 0.5rem; background: transparent; color: var(--green); font-weight: 600; font-size: 0.875rem; padding: 0.7rem 1.6rem; border-radius: 9999px; text-decoration: none; border: 1.5px solid var(--green); }

.card { background: #fff; border-radius: 1rem; border: 1px solid var(--line); box-shadow: 0 1px 3px rgba(0,0,0,0.04); }
.product-card { display:flex; flex-direction:column; }
.product-card .img-wrap { overflow: hidden; border-radius: 1rem 1rem 0 0; height:220px; width:100%; }
.product-card .img-wrap img,
.product-card .img-wrap picture { width: 100%; height:100%; display: block; object-fit:cover; object-position:center; }
.product-card .info { padding: 1.1rem 1.25rem 1.25rem; flex:1; }
.product-card .collection-tag { font-size: var(--fs-label); font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; color: var(--gold); margin-bottom: 0.35rem; text-decoration:none; display:block; }
.product-card .name { font-size: 1rem; font-weight: 700; color: var(--ink); margin-bottom: 0.2rem; text-decoration:none; }
.product-card .price { font-size: 0.88rem; font-weight: 700; color: var(--green); }
.product-card, .product-card:hover, .product-card:visited { text-decoration:none; color:inherit; }
.product-card a { text-decoration:none; }

.article-card { background: #fff; border-radius: 1rem; border: 1px solid var(--line); overflow: hidden; display:flex; flex-direction:column; }
.article-card > img { width: 100%; aspect-ratio: 4 / 3; height: auto; display: block; object-fit: cover; object-position:center; }
.article-card .body { padding: 1.25rem; flex:1; }
.article-card .category { font-size: var(--fs-label); font-weight: 700; text-transform: uppercase; letter-spacing: 0.09em; color: var(--gold); margin-bottom: 0.5rem; }
.article-card h3 { font-size: 1rem; font-weight: 700; line-height: 1.35; margin: 0 0 0.5rem; }
.article-card .excerpt { font-size: 0.8rem; color: var(--muted); line-height: 1.6; }
.article-card .meta { font-size: var(--fs-caption); color: var(--muted); margin-top: 0.9rem; }

.breadcrumb { display: flex; align-items: center; gap: 0.4rem; font-size: var(--fs-caption); color: var(--muted); flex-wrap: wrap; }
.breadcrumb a { color: var(--muted); text-decoration: none; }
.breadcrumb .sep { color: var(--line); }
.breadcrumb .current { color: var(--ink); font-weight: 500; }

.tab-bar { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.tab { padding: 0.45rem 1.1rem; border-radius: 9999px; font-size: 0.8rem; font-weight: 600; cursor: pointer; border: 1.5px solid var(--line); color: var(--muted); background: transparent; font-family: inherit; }
.tab.active { background: var(--green); color: #fff; border-color: var(--green); }
.tab:hover:not(.active) { border-color: var(--green); color: var(--green); }

.gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 270px; gap: 1rem; grid-auto-flow: dense; }
.gallery-card { position: relative; overflow: hidden; border-radius: 0.875rem; }
.gallery-card img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.55s cubic-bezier(0.32,0.72,0,1); }
.gallery-card:hover img { transform: scale(1.05); }
.gallery-card.featured { grid-column: span 2; grid-row: span 2; }
.gallery-card.wide { grid-column: span 2; }
.gallery-card.tall { grid-row: span 2; }

footer.site-footer { background: var(--ink); color: var(--paper); padding: 3rem 0 1.5rem; margin-top:2rem; }
.footer-grid { display:grid; grid-template-columns: 2fr 1fr 1fr; gap:2rem; }
.footer-muted { color: rgba(255,255,255,0.45); font-size: 0.78rem; }
footer.site-footer a { color: var(--paper); text-decoration:none; }
footer.site-footer a:hover { color: var(--gold); }

.entry-content { max-width: 74ch; margin: 0 auto; line-height:1.8; }
.entry-content img { max-width:100%; height:auto; border-radius:0.75rem; }
.entry-content h2 { color: var(--green); margin-top:2rem; }
.entry-content table { width:100%; border-collapse:collapse; margin:1.5rem 0; }
.entry-content table th, .entry-content table td { border:1px solid var(--line); padding:0.6rem 0.8rem; text-align:left; }
.entry-content table th { background:var(--stone); }

/* Nut noi Zalo/Phone: xem khoi GOP o cuoi file (07/08/2026) */
/* Ẩn nút WhatsApp theo yêu cầu owner (thị trường nội địa dùng Zalo) */
#whatsapp-vr { display: none !important; }

/* FAQ accordion (dropdown) theo mockup */
.faq-item { background:#fff; border:1px solid var(--line); border-radius:0.875rem; overflow:hidden; }
.faq-item summary { padding:1.1rem 1.4rem; font-size:0.9rem; font-weight:700; color:var(--ink); line-height:1.35; cursor:pointer; list-style:none; position:relative; padding-right:2.6rem; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary::after { content:'▾'; position:absolute; right:1.4rem; top:50%; transform:translateY(-50%); color:var(--muted); transition:transform 0.2s; }
.faq-item[open] summary::after { transform:translateY(-50%) rotate(180deg); }
.faq-item p { margin:0; padding:0 1.4rem 1.1rem; font-size:0.85rem; color:var(--muted); line-height:1.75; }

/* ===== NAV RESPONSIVE (28/07/2026) =====
   Menu 7 muc tieng Viet deu nowrap -> can ~1200px moi vua.
   Truoc day hamburger chi bat o 900px nen man hinh 901-1200px bi TRAN NGANG.
   Cac rule duoi day khoanh vao .site-nav de KHONG dinh sang phan trang
   (phan trang loi WordPress cung dung class .nav-links). */
@media (max-width: 1400px) {
  .site-nav .nav-links { gap: 0; padding: 0; }
  .site-nav .nav-links a { font-size: 0.82rem; padding: 0.4rem 0.2rem; }
}
@media (max-width: 1200px) {
  .nav-toggle { display: flex; }
  /* ===== CAN PHAI CUM NUT GOI + HAMBURGER — 30/07/2026 =====
     Tu breakpoint nay .nav-links bi day ra khoi luong (position:absolute) nen
     `flex:1` cua no khong con day duoc gi. Khong co dong nay thi nut goi va
     hamburger don ve sat logo, chua mot khoang trong lon ben phai.
     .nav-cta dung truoc .nav-toggle trong DOM => day no la keo theo ca hamburger. */
  .site-nav .nav-cta { margin-left: auto; }
  .site-nav .nav-links { display:none; position:absolute; top:100%; left:0; right:0; background:#fff; flex-direction:column; align-items:stretch; padding:0.5rem; border-bottom:1px solid var(--line); box-shadow:0 12px 28px rgba(0,0,0,0.12); max-height: calc(100vh - 100px); overflow-y:auto; }
  .site-nav .nav-links.mobile-open { display:flex; }
  .site-nav .nav-links > li { flex:0 0 auto; text-align:left; }
  .site-nav .nav-links a { width:100%; padding:0.9rem 0.75rem; text-align:left; font-size:0.95rem; }
  .site-nav .sub-menu { position:static; box-shadow:none; border:none; padding:0 0 0.5rem 0.75rem; min-width:0; width:100%; background:var(--stone); }
}

@media (max-width: 900px) {
  .footer-grid { grid-template-columns:1fr; gap:2rem; }
  footer.site-footer div[style*="grid-template-columns"] { grid-template-columns:1fr !important; gap:1.5rem !important; }

  /* Gallery mobile (theo mockup): 2 cột, featured chiếm 2 cột, caption luôn hiện */
  .gallery-grid { grid-template-columns: repeat(2,1fr); }
  .gallery-card.featured { grid-column: span 2; }

  /* ===== KHUNG 4:3 CHO THE SAN PHAM — 30/07/2026 =====
     Tu breakpoint nay #mainGallery chay o che do .mobile-carousel (display:flex),
     nen `grid-auto-rows:270px` cua .gallery-grid MAT TAC DUNG va chieu cao the roi
     ve ti le goc cua tung file anh => loi lom.
     `flex:0 0 85%` quyet dinh be rong, aspect-ratio suy ra chieu cao => deu khung.
     Kem theo: chieu cao doan truoc duoc truoc khi anh tai xong => het nhay layout (CLS).
     Desktop >900px giu nguyen luoi mosaic theo mockup da duyet. */
  .gallery-card { aspect-ratio: 4 / 3; }
  .gallery-card img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .home-collections-grid { grid-template-columns:1fr !important; gap:1.5rem !important; }
  .home-block-banner { flex-direction:column; align-items:flex-start !important; padding:1.5rem !important; }
}
@media (max-width: 600px) {
  .gallery-grid { grid-template-columns: 1fr 1fr; }
  .container, .container-narrow { padding: 0 1rem; }
}

/* ===== CAROUSEL TRUOT NGANG MOBILE (moi .mobile-carousel, <=900px) ===== */
@media (max-width:900px) {
  .mobile-carousel { display:flex !important; overflow-x:auto; scroll-snap-type:x mandatory; gap:16px; padding-bottom:4px; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
  .mobile-carousel::-webkit-scrollbar { display:none; }
  .mobile-carousel > * { scroll-snap-align:center; flex:0 0 85%; min-width:0; }
}

/* ===== GRID DUNG CHUNG (thay inline style de responsive/carousel ap dung duoc) ===== */
.grid-3col { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.grid-4col { display:grid; grid-template-columns:repeat(4,1fr); gap:1.25rem; }
/* O luoi mac dinh co min-width:auto -> anh kich thuoc that (768px) ep cot rong ra
   gay TRAN NGANG. min-width:0 cho phep cot co lai dung 1fr. */
.grid-3col > *, .grid-4col > * { min-width: 0; }
.grid-3col img, .grid-4col img { max-width: 100%; }

/* ===== PRODUCT DETAIL RESPONSIVE (gallery/info split + thumbnail strip) ===== */
.pd-main-grid { display:grid; grid-template-columns:1.15fr 0.95fr; gap:3rem; align-items:start; }
.pd-thumbs { display:grid; grid-template-columns:repeat(4,1fr); gap:0.6rem; }
@media (max-width:900px) {
  .pd-main-grid { grid-template-columns:1fr; gap:2rem; }
  .pd-info { position:static !important; top:auto !important; }
}
@media (max-width:600px) {
  .pd-thumbs { display:flex; overflow-x:auto; gap:0.6rem; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
  .pd-thumbs::-webkit-scrollbar { display:none; }
  .pd-thumbs > div { flex:0 0 22%; min-width:0; }
}

/* ===== ANSWER-FIRST CALLOUT (dung chung nhieu template) ===== */
.answer-first { background:var(--stone); border-left:3px solid var(--green); border-radius:0 0.75rem 0.75rem 0; padding:1.1rem 1.4rem; margin-bottom:2.5rem; }
.answer-first .label { font-size:var(--fs-label); font-weight:800; text-transform:uppercase; letter-spacing:0.1em; color:var(--green); margin-bottom:0.4rem; }
.answer-first p { font-size:0.92rem; color:var(--ink); line-height:1.65; margin:0; }

/* ===== CTA BAND (dai lien he giua trang, nen toi) ===== */
.cta-band { background:var(--ink); border-radius:1rem; padding:2rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin:3rem 0; }
.cta-band .title { font-weight:800; font-size:1.1rem; color:#fff; margin-bottom:0.25rem; }
.cta-band .subtitle { font-size:0.82rem; color:rgba(255,255,255,0.6); }

/* ===== L2 HUB: hero anh nen ===== */
.l2-hero { position:relative; min-height:340px; display:flex; align-items:flex-end; overflow:hidden; padding:3rem 0; border-bottom:3px solid var(--gold); }
.l2-hero img.l2-hero-bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.l2-hero::before { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg, rgba(9,13,10,0.94) 0%, rgba(9,13,10,0.86) 42%, rgba(9,13,10,0.42) 100%); }
.l2-hero .l2-hero-inner { position:relative; z-index:2; max-width:760px; }
.l2-hero h1 { color:#fff; font-size:clamp(1.6rem,3.2vw,2.4rem); font-weight:800; letter-spacing:-0.02em; margin:0.75rem 0 0.6rem; }
.l2-hero .lead { color:rgba(250,248,244,0.8); font-size:0.95rem; max-width:60ch; }

/* ===== L2 HUB: luoi danh muc con ===== */
.subcat-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; margin-bottom:3rem; }
.subcat-card { display:block; border-radius:0.875rem; overflow:hidden; text-decoration:none; color:inherit; border:1px solid var(--line); background:#fff; }
.subcat-card .img-wrap { height:160px; overflow:hidden; background:var(--stone); }
.subcat-card .img-wrap img { width:100%; height:100%; object-fit:cover; }
.subcat-card .body { padding:1rem 1.1rem 1.2rem; }
.subcat-card h3 { font-size:0.95rem; font-weight:800; margin:0 0 0.3rem; }
.subcat-card p { font-size:var(--fs-caption); color:var(--muted); line-height:1.55; margin:0; }

/* ===== BANG GIA / THONG SO (dung chung) ===== */
.spec-table-wrap { overflow-x:auto; margin-bottom:2.5rem; }
.spec-table { width:100%; border-collapse:collapse; font-size:0.85rem; }
.spec-table caption { text-align:left; font-size:0.95rem; font-weight:800; margin-bottom:0.75rem; caption-side:top; }
.spec-table th, .spec-table td { padding:0.65rem 0.9rem; border:1px solid var(--line); text-align:left; }
.spec-table th { background:var(--stone); font-weight:700; font-size:var(--fs-caption); text-transform:uppercase; letter-spacing:0.04em; }
.spec-table td.num { font-weight:700; color:var(--green); }
.spec-table .cite { font-size:var(--fs-caption); color:var(--muted); margin-top:0.5rem; }

/* ===== USE-CASE LIST (phu hop ung dung nao) ===== */
.usecase-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:0.75rem; }
.usecase-list li { display:flex; align-items:flex-start; gap:0.6rem; font-size:0.88rem; color:var(--ink); }
.usecase-list li::before { content:"✓"; color:var(--green); font-weight:800; flex-shrink:0; }

/* ===== L3 TEMPLATE ===== */
.l3-badge-slug { font-size:var(--fs-label); color:var(--muted); font-family:monospace; }
.l3-sibling-links { display:flex; gap:0.5rem; flex-wrap:wrap; margin:2rem 0; }
.l3-sibling-links a { padding:0.45rem 1.1rem; border-radius:9999px; font-size:0.8rem; font-weight:600; border:1.5px solid var(--line); color:var(--ink); text-decoration:none; background:#fff; }

/* ===== HERO STATS NOI (glassmorphism, trang chu) ===== */
.home-hero-stats { position:absolute; top:2rem; right:2rem; background:rgba(15,42,24,0.55); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border:1px solid rgba(255,255,255,0.15); border-radius:1rem; padding:1.25rem 1.5rem; color:#fff; }

/* ===== VIDEO SECTION (trang chu) ===== */
.home-video-grid { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; }
.home-video-main { position:relative; border-radius:1rem; overflow:hidden; aspect-ratio:16/10; background:var(--stone); }
.home-video-main img { width:100%; height:100%; object-fit:cover; display:block; }
.home-video-play { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; }
.home-video-play span { width:64px; height:64px; border-radius:50%; background:rgba(255,255,255,0.92); display:flex; align-items:center; justify-content:center; font-size:1.4rem; color:var(--green); box-shadow:0 10px 30px rgba(0,0,0,0.25); }
.home-video-thumbs { display:grid; grid-template-columns:repeat(3,1fr); gap:0.75rem; margin-top:1rem; }
.home-video-thumbs .thumb { position:relative; border-radius:0.6rem; overflow:hidden; aspect-ratio:1; background:var(--stone); }
.home-video-thumbs .thumb img { width:100%; height:100%; object-fit:cover; }

/* ===== BO QUY TAC TRINH BAY CHUNG CHO TRANG L2/L3 ===== */
.l23-h1 { font-size:clamp(1.75rem,3vw,2.25rem); font-weight:800; letter-spacing:-0.02em; line-height:1.15; margin:0 0 0.75rem; }
.l23-h1--light { color:#fff; }
.l23-eyebrow { font-size:var(--fs-label); font-weight:800; text-transform:uppercase; letter-spacing:0.08em; color:var(--gold); margin-bottom:0.75rem; }
.l23-h3 { font-size:1.15rem; font-weight:800; color:var(--ink); margin-bottom:1.25rem; }
.l23-lead { font-size:0.9rem; color:var(--muted); line-height:1.7; }

/* ===== AUTO CAROUSEL (luon chay o moi kich thuoc man hinh) ===== */
.auto-carousel { display:flex !important; overflow-x:auto; scroll-snap-type:x mandatory; gap:1.25rem; padding-bottom:4px; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
.auto-carousel::-webkit-scrollbar { display:none; }
.auto-carousel > * { scroll-snap-align:start; flex:0 0 calc((100% - 3.75rem) / 4); min-width:0; }
@media (max-width:900px) { .auto-carousel > * { flex:0 0 calc((100% - 1.25rem) / 2); } }
@media (max-width:560px) { .auto-carousel > * { flex:0 0 100%; } }

/* ===== L2/L3 THEO MOCKUP: hop lien ket noi bo, FAQ phang, nut CTA vang ===== */
.l23-links-box { background:var(--stone); border-radius:0.875rem; padding:1.25rem 1.4rem; margin-bottom:2rem; }
.l23-links-label { font-size:var(--fs-caption); font-weight:800; text-transform:uppercase; letter-spacing:0.08em; color:var(--muted); margin-bottom:0.65rem; }
.l23-links-row { display:flex; flex-wrap:wrap; gap:0.5rem; }
.l23-link-pill { font-size:var(--fs-caption); font-weight:600; color:var(--green); text-decoration:none; padding:0.35rem 0.75rem; border:1px solid rgba(15,93,62,0.3); border-radius:2rem; background:transparent; }
.l23-link-pill:hover { background:#fff; border-color:var(--green); }

.l23-faq-h2 { font-size:1.4rem; font-weight:800; margin-bottom:1.25rem; color:var(--ink); }
.l23-faq-list { display:flex; flex-direction:column; gap:1.1rem; margin-bottom:2.5rem; }
.l23-faq-q { font-weight:700; font-size:0.9rem; margin-bottom:0.3rem; color:var(--ink); }
.l23-faq-a { font-size:0.83rem; color:var(--muted); line-height:1.6; }

.btn-gold-cta { display:inline-flex; align-items:center; gap:0.5rem; background:var(--gold); color:var(--ink); font-weight:800; font-size:0.9rem; padding:0.85rem 1.5rem; border-radius:0.75rem; text-decoration:none; }
.btn-gold-cta:hover { filter:brightness(1.06); }


/* ===== QUY TẮC TRÌNH BÀY CHUNG — 28/07/2026 ===== */
/* Tiêu đề bảng luôn căn giữa. Dùng !important vì một số bài cũ có inline
   text-align trên thẻ <th> sẽ đè CSS thường. Ô dữ liệu (td) giữ căn trái. */
.entry-content table th,
.spec-table th { text-align: center !important; }

/* ===== MAU CHU TIEU DE BANG — 30/07/2026 =====
   Loi: mot so bai cu dat mau tren <tr> chu khong tren <th>:
       <tr style="background:#1a6bb5; color:#fff">
   <th> khong co background rieng nen nen be cua theme (.entry-content table th
   {background:var(--stone)}) TO DE LEN nen xanh cua <tr>, trong khi color:#fff
   van DUOC KE THUA xuong <th> => chu trang tren nen be = khong doc duoc.
   Khai bao mau tuong minh cho <th>: bat ky declaration nao tren chinh element
   cung thang gia tri ke thua tu the cha.
   CO Y KHONG dung !important — de <th> nao co inline color rieng (vd bang nen
   nau #5a3e28 trong 2 bai case study) van giu duoc mau trang doc duoc cua no. */
.entry-content table th,
.spec-table th { color: var(--ink); }


/* Chú thích ảnh luôn căn giữa — phủ mọi biến thể caption của WordPress:
   [caption] shortcode (.wp-caption-text), block editor (.wp-element-caption), figcaption thuần. */
.wp-caption-text,
.wp-element-caption,
.entry-content figcaption { text-align: center; }


/* ===== PHAN TRANG (28/07/2026) =====
   Truoc day khong co rule nao: so trang hien tai la <span> nen khong an style,
   trong nhu "loi font"; con cac so khac bi CSS menu de len do trung class .nav-links. */
.navigation.pagination { margin: 2.5rem 0 1rem; }
.navigation.pagination .nav-links { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:0.5rem; }
.navigation.pagination .page-numbers {
  display:inline-flex; align-items:center; justify-content:center;
  min-width:2.25rem; height:2.25rem; padding:0 0.7rem;
  font-size:0.85rem; font-weight:600; line-height:1;
  color:var(--ink); text-decoration:none; text-transform:none;
  border:1px solid var(--line); border-radius:0.6rem; background:#fff;
  transition:background 0.18s, color 0.18s, border-color 0.18s;
}
.navigation.pagination a.page-numbers:hover { border-color:var(--green); color:var(--green); }
.navigation.pagination .page-numbers.current { background:var(--green); border-color:var(--green); color:#fff; font-weight:700; }
.navigation.pagination .page-numbers.dots { border:none; background:transparent; color:var(--muted); min-width:1.5rem; padding:0; }
.navigation.pagination .page-numbers.next,
.navigation.pagination .page-numbers.prev { font-weight:700; }
@media (max-width:600px) {
  .navigation.pagination .page-numbers { min-width:2rem; height:2rem; padding:0 0.5rem; font-size:0.8rem; }
}

/* Chong tran ngang cho noi dung nhung (theme truoc chi co rule cho img) */
.entry-content iframe,
.entry-content video,
.entry-content embed { max-width:100%; }


/* ===== NUT MUI TEN BANG CHUYEN (28/07/2026) =====
   Dat BEN TRONG khung (left/right duong) de khong gay tran ngang. */
.carousel-wrap { position: relative; }
.carousel-arrow {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 40px; height: 40px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: #fff; color: var(--green);
  border: 1px solid var(--line); box-shadow: 0 2px 10px rgba(0,0,0,0.12);
  cursor: pointer; padding: 0; z-index: 5;
  transition: background .18s, color .18s, box-shadow .18s;
}
.carousel-arrow:hover { background: var(--green); color: #fff; box-shadow: 0 4px 14px rgba(0,0,0,0.18); }
.carousel-arrow.prev { left: 8px; }
.carousel-arrow.next { right: 8px; }
/* Khong con gi de truot -> an het nut va cham dieu huong */
.carousel-wrap.is-static .carousel-arrow { display: none !important; }
@media (max-width:600px) {
  .carousel-arrow { width: 34px; height: 34px; }
  .carousel-arrow.prev { left: 4px; }
  .carousel-arrow.next { right: 4px; }
}

/* ===== KIEU CHU THAN BAI (28/07/2026) =====
   .entry-content truoc day CHI co 5 rule (max-width, line-height, img, mau h2, table)
   => h2/h3, doan van, danh sach deu roi ve MAC DINH TRINH DUYET, nhin nhu "loi font".
   Dung :not([class]) de chi ap cho noi dung cu, KHONG dung toi heading co class .l23-*. */
.entry-content h2:not([class]) { font-size:1.45rem; font-weight:800; line-height:1.3; margin:2.25rem 0 0.75rem; }
.entry-content h3:not([class]) { font-size:1.15rem; font-weight:700; line-height:1.35; margin:1.75rem 0 0.5rem; color:var(--ink); }
.entry-content h4:not([class]) { font-size:1rem; font-weight:700; margin:1.5rem 0 0.5rem; color:var(--ink); }
.entry-content p { margin:0 0 1rem; }
.entry-content ul, .entry-content ol { margin:0 0 1.25rem; padding-left:1.4rem; }
.entry-content li { margin-bottom:0.4rem; }
.entry-content a { color:var(--green); text-decoration:underline; text-underline-offset:2px; }
.entry-content a:hover { color:var(--gold); }
.entry-content blockquote { margin:1.5rem 0; padding:0.75rem 1.25rem; border-left:3px solid var(--gold); background:var(--stone); border-radius:0 0.5rem 0.5rem 0; }
.entry-content figure { margin:1.5rem 0; }

/* Vo hieu style rac tu trinh soan thao cu (noi dung chuyen tu HawkHost):
   font la de font thuong hieu, co chu tu do, va can deu 2 ben — rat xau voi tieng Viet. */
.entry-content span[style*="font-family"],
.entry-content p[style*="font-family"],
.entry-content div[style*="font-family"] { font-family:inherit !important; }
.entry-content span[style*="font-size"],
.entry-content p[style*="font-size"],
.entry-content li[style*="font-size"],
.entry-content div[style*="font-size"] { font-size:inherit !important; }
.entry-content [style*="text-align: justify"],
.entry-content [style*="text-align:justify"] { text-align:left !important; }

/* Khoi nhan manh trong bai viet (dung mau thuong hieu, thay CSS nau cua bai cu) */
.entry-content .highlight { background:var(--stone); border-left:3px solid var(--gold); border-radius:0 0.5rem 0.5rem 0; padding:0.9rem 1.25rem; margin:1.25rem 0; font-style:italic; }
.entry-content .highlight p:last-child { margin-bottom:0; }


/* ===== HERO TRANG CHUYEN DE L2 — thiet ke lai 30/07/2026 =====
   Ban cu: <section> inline style, cao cung 52vh, chi co badge + H1 => hop den
   rong vi ca 10 trang deu khong co anh dai dien lan post_excerpt.
   Ban moi: chieu cao theo noi dung, co dai thong so EN, nut CTA, va lop phu toi
   khi co anh nen (chu trang luon doc duoc du anh sang hay toi). */
.tkhero {
  position: relative; overflow: hidden;
  padding: clamp(2.5rem, 5.5vw, 4.25rem) 0;
  border-bottom: 3px solid var(--gold);
  background:
    radial-gradient(1100px 460px at 12% -10%, rgba(199,156,46,0.18), transparent 62%),
    linear-gradient(135deg, #12160F 0%, #1E2A21 58%, #14472F 100%);
}
.tkhero-media { position: absolute; inset: 0; z-index: 0; }
.tkhero-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }
/* Lop phu chuyen sac: dam ben trai (noi dat chu), nhat dan sang phai de lo anh. */
.tkhero.has-img::after {
  content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(90deg, rgba(9,13,10,0.94) 0%, rgba(9,13,10,0.86) 42%, rgba(9,13,10,0.42) 100%);
}
.tkhero-inner { position: relative; z-index: 2; }
.tkhero-eyebrow {
  display: inline-block; margin-bottom: 0.9rem;
  background: rgba(199,156,46,0.16); color: var(--gold);
  border: 1px solid rgba(199,156,46,0.34); border-radius: 9999px;
  font-size: var(--fs-label); font-weight: 700; letter-spacing: 0.11em; text-transform: uppercase;
  padding: 0.34rem 0.9rem;
}
.tkhero-h1 {
  margin: 0 0 0.85rem; max-width: 20ch;
  font-size: clamp(1.85rem, 4.2vw, 2.75rem); font-weight: 800;
  color: #fff; letter-spacing: -0.03em; line-height: 1.12;
  text-wrap: balance;
}
.tkhero-sub {
  margin: 0; max-width: 62ch;
  font-size: clamp(0.95rem, 1.15vw, 1.05rem); line-height: 1.65;
  color: rgba(255,255,255,0.76);
}
.tkhero-facts {
  list-style: none; margin: 1.6rem 0 0; padding: 0; max-width: 780px;
  display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 0.7rem;
}
.tkhero-facts li {
  display: flex; flex-direction: column; gap: 0.15rem;
  background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.15);
  border-radius: 0.75rem; padding: 0.7rem 0.85rem; min-width: 0;
}
.tkhero-facts strong { color: #fff; font-size: 0.92rem; font-weight: 800; line-height: 1.25; }
.tkhero-facts span { color: rgba(255,255,255,0.6); font-size: var(--fs-label); letter-spacing: 0.05em; text-transform: uppercase; }
.tkhero-cta { display: flex; flex-wrap: wrap; gap: 0.7rem; margin-top: 1.6rem; }
.tkhero-ghost {
  display: inline-flex; align-items: center; gap: 0.5rem;
  color: #fff; text-decoration: none; font-weight: 700; font-size: 0.9rem;
  padding: 0.85rem 1.4rem; border-radius: 0.75rem;
  border: 1px solid rgba(255,255,255,0.36);
  transition: background .18s, border-color .18s;
}
.tkhero-ghost:hover { background: rgba(255,255,255,0.12); border-color: rgba(255,255,255,0.6); }
@media (max-width: 820px) {
  .tkhero-facts { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .tkhero.has-img::after { background: linear-gradient(180deg, rgba(9,13,10,0.9) 0%, rgba(9,13,10,0.8) 100%); }
}
@media (max-width: 460px) {
  .tkhero-cta > * { width: 100%; justify-content: center; }
}


/* ===== THANG KHOANG CACH DOC DAP UNG — 30/07/2026 =====
   Truoc day moi padding doc deu la INLINE STYLE tren the <section>, ma inline thi
   CSS thuong khong de duoc => khong co cach nao giam cho mobile. Do duoc 592px
   padding doc chi rieng trang chu, cong footer ~700px = gan mot man hinh dien
   thoai trang tron.
   Ten class = gia tri DESKTOP (0.1rem) de tu tai lieu hoa. clamp() giu nguyen
   desktop tung pixel, chi co lai tren man hep.
   Cung tien le voi .grid-3col/.grid-4col: thay inline style de responsive ap duoc. */
.pt-15 { padding-top: clamp(1rem, 3.5vw, 1.25rem); }
.pb-15 { padding-bottom: clamp(1rem, 3.5vw, 1.25rem); }
.pt-20 { padding-top: clamp(1.25rem, 4vw, 1.5rem); }
.pb-20 { padding-bottom: clamp(1.25rem, 4vw, 1.5rem); }
.pt-25 { padding-top: clamp(1.5rem, 4.5vw, 1.875rem); }
.pb-25 { padding-bottom: clamp(1.5rem, 4.5vw, 1.875rem); }
.pt-30 { padding-top: clamp(1.5rem, 5vw, 2.25rem); }
.pb-30 { padding-bottom: clamp(1.5rem, 5vw, 2.25rem); }
.pt-35 { padding-top: clamp(1.75rem, 5.5vw, 2.5rem); }
.pb-35 { padding-bottom: clamp(1.75rem, 5.5vw, 2.5rem); }
.pt-40 { padding-top: clamp(1.75rem, 6vw, 3rem); }
.pb-40 { padding-bottom: clamp(1.75rem, 6vw, 3rem); }
.pt-50 { padding-top: clamp(2rem, 7vw, 3.5rem); }
.pb-50 { padding-bottom: clamp(2rem, 7vw, 3.5rem); }


/* ===== HERO TRANG CHU — sua kien truc 30/07/2026 =====
   Gia tri desktop giu HET nhu inline style cu (72vh / 480px / padding 4rem 3rem 3.5rem). */
.home-hero { position: relative; height: 72vh; min-height: 480px; overflow: hidden; }
.home-hero-media { width: 100%; height: 100%; object-fit: cover; display: block; }
.home-hero-scrim {
  position: absolute; inset: 0; z-index: 1;
  background: linear-gradient(135deg, rgba(15,42,24,0.78) 0%, rgba(15,42,24,0.2) 60%, transparent 100%);
}
.home-hero-inner {
  position: absolute; inset: 0; z-index: 2;
  display: flex; flex-direction: column; justify-content: flex-end;
  padding: 4rem 3rem 3.5rem;
}

@media (max-width: 900px) {
  /* MAU CHOT: dao nguoc cach xep lop. Anh xuong lam nen tuyet doi, lop noi dung
     tro ve luong thuong => CHIEU CAO BANNER DO NOI DUNG QUYET DINH.
     Truoc day lop noi dung la absolute nen khong tao duoc chieu cao cho cha,
     noi dung tran ra roi bi overflow:hidden CAT MAT DINH (chu H1 bi cat). */
  .home-hero { height: auto; min-height: 0; }
  .home-hero-media { position: absolute; inset: 0; height: 100%; z-index: 0; }
  .home-hero-inner {
    /* PHAI la `relative`, KHONG duoc la `static`.
       `relative` van giu phan tu trong luong (van tao chieu cao cho .home-hero —
       dung muc dich ban dau) NHUNG la phan tu dinh vi nen an duoc z-index.
       Voi `static` thi noi dung ve o buoc 4 cua thu tu ve, con .home-hero-media va
       .home-hero-scrim (absolute) ve o buoc 8 => anh + lop phu DE KIN badge, H1,
       doan mo ta va 2 nut. Chi khoi .home-hero-stats song sot vi backdrop-filter
       cua no tao stacking context nen cung duoc ve o buoc 8. */
    position: relative;
    z-index: 2;
    padding: clamp(1.25rem, 5vw, 2rem) 1rem clamp(1.5rem, 5vw, 2.25rem);
  }
  /* Tren mobile chu chiem toan bo be ngang -> phu doc thay vi phu cheo. */
  .home-hero-scrim { background: linear-gradient(180deg, rgba(15,42,24,0.86) 0%, rgba(15,42,24,0.72) 100%); }
  /* H1 cu la clamp(2.2rem,5vw,4rem): min 2.2rem = 35px, qua lon o be ngang 375px. */
  /* Nen chieu cao banner (~465px -> ~365px) ma KHONG bo bot cau chu nao:
     owner dang doi thong tin chinh phai hien ra, khong phai bi cat bo. */
  .home-hero .badge { margin-bottom: 0.75rem !important; }
  .home-hero h1 {
    font-size: clamp(1.45rem, 6.4vw, 2rem) !important;
    max-width: none !important;
    margin-bottom: 0.6rem !important;
  }
  .home-hero p {
    font-size: 0.85rem !important;
    line-height: 1.5 !important;
    margin-bottom: 1rem !important;
  }
  /* Hai nut vua mot hang thay vi tran xuong hai hang. */
  .home-hero .btn-primary,
  .home-hero .btn-ghost { padding: 0.6rem 1.05rem; font-size: 0.82rem; }

  .home-hero-stats { position: static !important; margin-top: 1rem; width: auto; padding: 0.7rem 0.85rem !important; }
  .home-hero-stats > div:first-child { font-size: 0.6rem !important; margin-bottom: 0.45rem !important; }
  .home-hero-stats > div:last-child { gap: 1.1rem !important; }
  .home-hero-stats > div:last-child > div > div:first-child { font-size: 1.25rem !important; }
  .home-hero-stats > div:last-child > div > div:last-child { font-size: 0.65rem !important; }

  /* Footer cung dang chiem qua nhieu chieu doc tren mobile. */
  footer.site-footer { padding: 2rem 0 1.25rem; margin-top: 1.25rem; }
  /* Cot "San pham tieu bieu" o footer in lai dung menu chinh (7 muc) — tren mobile
     no trung y het menu hamburger o header, chiem 7 dong chieu doc ma khong them
     thong tin gi. Owner yeu cau an 30/07/2026.
     Dung display:none nen link VAN nam trong HTML (khong mat link noi bo), va nguoi
     dung van toi duoc cac muc do qua menu hamburger. */
  .footer-col-menu { display: none; }
  .footer-grid { gap: 1.25rem; }
}


/* ===== BADGE reCAPTCHA + DONG GHI CONG — 30/07/2026 =====
   Badge cua Google neo mac dinh o bottom:14px right:14px — DUNG cho cum nut lien he
   noi cua plugin button-contact-vr, nen trong nhu bi trung/de nhau.
   Dung visibility (KHONG dung display:none) de reCAPTCHA v3 van chay binh thuong.
   Da bu lai bang dong ghi cong duoi form (xem thienkhoi2026_recaptcha_notice) —
   day la dieu kien Google cho phep an badge. */
.grecaptcha-badge { visibility: hidden !important; }


/* ===== KHOI TIEU DE SECTION + DAI TAB LOC MOT DONG — 30/07/2026 =====
   Truoc: khoi tieu de la inline style tren <div>, va `.tab-bar{flex-wrap:wrap}`
   khien 5 tab tieng Viet vo thanh 3 DONG so le (3+1+1) — chiem ~120px chieu doc
   va trong lech han tren mobile. */
.home-sec-head {
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 1.5rem; flex-wrap: wrap;
  margin-bottom: clamp(1.25rem, 4vw, 2.5rem);
}

@media (max-width: 900px) {
  /* Doi thanh dai cuon ngang MOT DONG — dung mau da co cua site (.mobile-carousel).
     `min-width:0` la BAT BUOC: .tab-bar la flex item, thieu no thi item khong co lai
     duoc va overflow-x:auto khong bao gio kich hoat. */
  .tab-bar {
    flex: 1 1 100%;
    min-width: 0;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 0.4rem;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
  }
  .tab-bar::-webkit-scrollbar { display: none; }
  .tab {
    flex: 0 0 auto;
    padding: 0.4rem 0.85rem;
    font-size: 0.75rem;
    scroll-snap-align: start;
  }
}


/* === AN BREADCRUMB (03/08/2026, theo yeu cau) === */
.breadcrumb { display: none; }


/* ===== ANH THAN BAI — THONG NHAT KICH THUOC (03/08/2026) =====
   Truoc: anh gian het be ngang cot (1185px, cao 889px) va moi bai mot co
   vi noi dung cu con dinh width="900" / style="width:900px".
   Nay: canh giua, bo tron dong deu, chan chieu cao de anh doc khong nuot man hinh.
   max-width/max-height + width/height:auto => trinh duyet tu co lai DUNG TY LE. */
.entry-content img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  height: auto;
  border-radius: 0.75rem;
}
/* Chi chan chieu cao cho anh dung rieng trong <figure> — khong dung toi anh
   trong luoi tuy chinh (nhung anh do co inline style rieng, inline luon thang). */
/* Chan bang px (KHONG dung vh): dung vh thi be rong anh doi theo chieu cao
   man hinh => moi may mot co. 800px du de anh 4:3 va 1:1 hien du be ngang cot,
   dong thoi van chan anh dung (portrait) neu sau nay co. */
.entry-content figure > img { width: auto; max-height: 800px; }
/* Nhip dung deu nhau giua cac khoi anh */
.entry-content figure { margin: 1.75rem auto; }
.entry-content figure > figcaption {
  font-size: 0.82rem;
  color: var(--muted);
  line-height: 1.5;
  margin-top: 0.6rem;
}


/* ===== BATCH 1 AUDIT FIX (04/08/2026) =====
   Sua tu bao cao audit go-live: caption 800px vo mobile, contrast footer
   duoi WCAG AA, vung bam mobile < 44px (WCAG 2.5.5 Target Size). Dat o CUOI
   file de thang cascade ma khong dong toi rule goc. */

/* Caption co dinh 800px (WordPress core tu sinh cho anh cu dung [caption]
   shortcode) truoc day khong co CSS nao gioi han -> vo mobile. */
.entry-content .wp-caption {
  max-width: 100% !important;
  width: auto !important;
}
.entry-content .wp-caption img {
  width: 100%;
  height: auto;
}

/* Contrast chu phu footer: 0.45 opacity tren nen toi #1F2A24 do duoc
   ~3.5-4.1:1, duoi chuan WCAG AA (4.5:1). Tang opacity + co chu. */
.footer-muted {
  color: rgba(255,255,255,0.65);
  font-size: 0.85rem;
}

/* Vung bam mobile toi thieu 44x44px (WCAG 2.5.5 Target Size) */
@media (max-width: 900px) {
  .home-hero .btn-primary,
  .home-hero .btn-ghost {
    min-height: 44px;
  }
  .tab {
    min-height: 44px;
  }
  .nav-toggle {
    min-width: 44px;
    min-height: 44px;
  }
}
@media (max-width: 600px) {
  .carousel-arrow {
    width: 44px;
    height: 44px;
  }
}


/* ===== CHONG KEO GIAN ANH (04/08/2026) =====
   Anh dai dien dau bai dung inline width:100% nhung THIEU height:auto,
   nen thuoc tinh HTML height="..." cua WordPress con hieu luc => anh bi
   keo gian meo doc (do that: 1448x1086 render thanh 780x1086).
   Da sua tan goc trong single.php va template-l3-detail.php; rule nay la
   luoi an toan cho moi anh khac trong <article>.
   An toan voi cac anh co inline height:100%;object-fit:cover — inline
   luon thang rule stylesheet nen cac khoi anh phu (bai lien quan, luoi
   san pham) giu nguyen hanh vi cu. */
article img { height: auto; }


/* ===== HERO BAI VIET — noi rong (04/08/2026) =====
   .tkhero-h1 mac dinh gioi han 20ch — vua dep cho tit trang chuyen de
   (ngan, dat theo tu khoa) nhung tit BAI VIET dai hon nhieu, giu 20ch se
   vo thanh 5-6 dong. Noi rong rieng cho .tkhero--post. */
.tkhero--post .tkhero-h1 { max-width: 30ch; }
.tkhero--post .tkhero-sub { max-width: 62ch; }


/* ===== IN DAM BANG: tieu de + cot dau (04/08/2026) =====
   Owner yeu cau: hang tieu de va cot dau tien phai in dam de doc bang
   nhanh hon (mat luot theo cot dau roi moi doc ngang).
   KHONG dung !important: de noi dung dac biet van ghi de duoc khi can. */
.entry-content table th,
.spec-table th {
  font-weight: 700;
}
.entry-content table td:first-child,
.spec-table td:first-child {
  font-weight: 700;
}


/* ===== A6: TRAN NGANG + VUNG CHAM + NUT NOI (07/08/2026) ===== */
/* --- 1. Chan tran ngang o man hinh hep ---
   Bao cao: 360px -> scrollWidth 376. Thu pham: .logo-title nowrap +
   .logo-wrap flex-shrink:0 nen khong co gi co lai duoc. */
.nav-inner { min-width: 0; }
.logo-wrap { flex-shrink: 1; min-width: 0; }
.logo-title { min-width: 0; overflow: hidden; text-overflow: ellipsis;
  /* 12/08/2026 — chua loi MAT DAU SAC: logo hien "ĐÁ TRĂNG" thay vi "ĐÁ TRẮNG".
     overflow:hidden o tren cat tai MEP HOP DEM. Net muc chu Ắ (dau á + dau sac
     chong 2 tang) can 18px phia tren duong chan chu, ma chan chu chi cach mep
     tren hop 14px => tran 4px, bi xen dung phan dau sac.
     padding-top day mep cat len 4px; margin-top am bu lai nen CHU KHONG XE DICH.
     Dung em de tu co theo @media 480px ha co chu logo xuong 0.74rem.
     🔴 KHONG GO overflow:hidden — no dang va loi tran ngang 360px (muc A6). */
  padding-top: .28em; margin-top: -.28em; }
@media (max-width: 480px) {
  .nav-inner { padding: 0 0.5rem; gap: 0.2rem; }
  .logo-wrap img { height: 30px; }
  .logo-title { font-size: 0.74rem; letter-spacing: -0.02em; }
  .site-nav .nav-cta { font-size: 0.72rem; padding: 0.5rem 0.7rem; }
}

/* --- 2. Vung cham toi thieu 44x44 (WCAG 2.5.5) ---
   Bao cao B1: logo 36px, hotline header 31px, CTA 40-43px, link footer ~15px,
   nut trong card 14x29px, mui ten carousel 40x40 o 768px. */
@media (max-width: 1024px) {
  .site-nav .nav-cta,
  .btn-primary, .btn-ghost, .btn-gold-cta, .tkhero-ghost,
  .card a.btn, .card .btn-primary, .card .btn-ghost {
    min-height: 44px; display: inline-flex; align-items: center; justify-content: center;
  }
  .site-footer a, .footer-col-menu a {
    display: inline-block; min-height: 44px; line-height: 44px;
  }
  .auto-carousel .carousel-prev, .auto-carousel .carousel-next,
  .carousel-prev, .carousel-next { min-width: 48px; min-height: 48px; }
}

/* ===== HET A6 ===== */


/* ===== NUT NOI ZALO/PHONE — KHOI DUY NHAT (07/08/2026) ===== */
/* Truoc day CO HAI khoi cung dieu khien nut nay (dong 107 va trong block A6),
   deu dung !important => khong biet cai nao thang. Da gop lai day.

   Plugin chi dat: #button-contact-vr{position:fixed;bottom:0;z-index:99999}
   KHONG co left/right => phai tu dat, neu khong no nam theo vi tri tinh,
   tran ra ngoai mep phai man hinh.

   Cau truc plugin (KHONG doi kich thuoc — icon con dinh vi tuyet doi theo hop 90px):
     .phone-vr              90x90  (hop)
     .phone-vr-circle-fill  65x65  top/left 12px  (vong sang nhay)
     .phone-vr-img-circle   40x40  top/left 25px  (icon)
   => Vung bam mo rong bang cach cho <a> PHU KIN hop, khong phong to hop. */

#button-contact-vr {
  left: auto !important;
  right: 16px !important;
  bottom: 16px !important;
}
@media (max-width: 767px) {
  #button-contact-vr {
    right: 10px !important;
    /* chua khoang an toan cho may co thanh dieu huong ao */
    bottom: calc(10px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* Vung bam >= 48px ma KHONG doi kich thuoc hop cua plugin */
.button-contact .phone-vr > a,
.button-contact .phone-vr-img-circle > a {
  position: absolute; inset: 0;
  display: flex; align-items: center; justify-content: center;
}
/* 28/08/2026 — vùng bấm thật của icon con đạt tối thiểu 48x48px. */
.button-contact .phone-vr-img-circle { overflow:visible !important; }
.button-contact .phone-vr-img-circle > a {
  inset:-11px; min-width:48px; min-height:48px;
}
/* Khong de nut de len chu o chan trang tren man hinh hep */
@media (max-width: 1024px) {
  .site-footer { padding-bottom: 110px; }
}


/* ===== 15/08/2026 — LUOI AN TOAN FONT =====
   1. Phan tu form KHONG ke thua font tu body theo mac dinh trinh duyet.
      Do duoc 22 the <button>/<svg> dang render bang Arial.
   2. Noi dung dan tu Word/Google Docs luon kem font-family inline. Da don
      15.593 khai bao ngay 15/08, nhung bai MOI dang se lai sinh ra. Luoi nay
      vo hieu hoa chung ngay tai tang CSS — khong phai don tay nua.
      Chi ap trong vung NOI DUNG, khong dung den giao dien theme. */

button, input, select, textarea, optgroup { font: inherit; }

.entry-content [style*="font-family"],
.entry-content [style*="font-Family"],
.term-description [style*="font-family"],
article [style*="font-family"] { font-family: inherit !important; }
/* ===== het luoi an toan font ===== */

/* ===== Trang lien he: Zalo-first ===== */
.tk-contact-intro {
  max-width: 760px;
  margin: 0 auto 2rem;
  text-align: center;
}
.tk-contact-intro h2 {
  margin-bottom: .75rem;
  color: #0f5d3e;
}
.tk-contact-intro p {
  font-size: 1.05rem;
  line-height: 1.75;
  color: #4b5563;
}
.tk-contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .8fr);
  gap: 1.5rem;
  margin: 2rem 0;
}
.tk-contact-card {
  border: 1px solid #e4e7e5;
  border-radius: 18px;
  padding: 1.6rem;
  background: #fff;
  box-shadow: 0 12px 35px rgba(15, 93, 62, .08);
}
.tk-contact-card h3 {
  margin: 0 0 1rem;
  color: #183c2f;
}
.tk-contact-card p {
  margin: .65rem 0;
  line-height: 1.7;
}
.tk-zalo-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: linear-gradient(145deg, #0f5d3e, #173f32);
  color: #fff;
}
.entry-content .tk-zalo-card h3,
.entry-content .tk-zalo-card p {
  color: #fff !important;
}
.tk-zalo-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: .75rem;
  padding: .9rem 1.2rem;
  border-radius: 999px;
  background: #fff;
  color: #0f5d3e !important;
  font-weight: 800;
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease;
}
.tk-zalo-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, .18);
}
@media (max-width: 760px) {
  .tk-contact-grid { grid-template-columns: 1fr; }
  .tk-contact-card { padding: 1.25rem; }
  .tk-contact-intro { text-align: left; }
}
/* ===== het trang lien he Zalo-first ===== */
