/* ══════════════════════════════════════════════════════════════════
   Giao diện toàn site — bài viết, chuyên mục, trang tĩnh, 404.
   Nạp SAU nt-home.css + nt-gia.css; dùng biến màu, khung, nút của chúng.

   Ba việc file này lo:
   1. Bố cục hai cột: bài (tối đa 780px) + cột bên 320px dính.
   2. Chữ trong bài đọc được: theme cũ 20,4px, ở đây 18px/1,75; mắt
      khách trên 50 tuổi (hồ sơ). nt-home.css xoá gạch đầu dòng và lề của
      ul/ol/p bằng :where() (độ ưu tiên 0) — .nt-content phải TRẢ LẠI.
   3. Thẻ bài trong lưới, bài liên quan, phân trang, menu 73 mục.
   ══════════════════════════════════════════════════════════════════ */

/* ── bố cục ───────────────────────────────────────────────────── */
.nt-doc {
	display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 40px 48px; align-items: start;
	padding: clamp(22px, 3vw, 40px) 0 clamp(36px, 5vw, 64px);
}
.nt-doc--rong { grid-template-columns: minmax(0, 1fr); }
.nt-doc__main { min-width: 0; max-width: 820px; }
.nt-doc--ds .nt-doc__main { max-width: none; }
@media (max-width: 960px) {
	.nt-doc { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.nt-doc__main { max-width: none; }
}

/* ── đầu bài ──────────────────────────────────────────────────── */
.nt-doc__kick { display: flex; flex-wrap: wrap; gap: 4px 6px; font-size: 13.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--g-600); }
.nt-doc__kick a:hover { color: var(--g-800); text-decoration: underline; text-underline-offset: 3px; }
.nt-doc__h1 { margin-top: 10px; font-size: clamp(28px, 4vw, 42px); line-height: 1.15; }
.nt-doc__by { margin-top: 12px; font-size: 14.5px; color: var(--ink-3); }
.nt-doc__by a { color: var(--ink-2); font-weight: 600; }
.nt-doc__head--ds .nt-doc__h1 { font-size: clamp(26px, 3.4vw, 36px); }
.nt-doc__mota { margin-top: 14px; font-size: 16.5px; color: var(--ink-2); max-width: 70ch; }
.nt-doc__trong { margin-top: 16px; font-size: 17px; color: var(--ink-2); }
.nt-doc__trong a { color: var(--g-700); font-weight: 600; }

/* ── nội dung bài: trả lại kiểu chữ tài liệu ─────────────────── */
.nt-content { margin-top: 26px; font-size: 18px; line-height: 1.75; color: var(--ink); overflow-wrap: anywhere; }
.nt-content > * + * { margin-top: 1.1em; }
.nt-content p { margin: 0 0 1.1em; }
.nt-content h2, .nt-content h3, .nt-content h4 { font-family: var(--f-txt); letter-spacing: 0; line-height: 1.3; color: var(--g-900); margin: 1.7em 0 .6em; text-wrap: pretty; }
.nt-content h2 { font-size: 1.5em; font-weight: 700; }
.nt-content h3 { font-size: 1.22em; font-weight: 700; }
.nt-content h4 { font-size: 1.05em; font-weight: 700; }
.nt-content ul, .nt-content ol { margin: 0 0 1.1em; padding-left: 1.5em; }
.nt-content ul { list-style: disc; }
.nt-content ol { list-style: decimal; }
.nt-content li { margin: .3em 0; }
.nt-content li::marker { color: var(--g-600); }
.nt-content a { color: var(--g-700); text-decoration: underline; text-decoration-color: var(--g-300); text-underline-offset: 3px; }
.nt-content a:hover { color: var(--g-900); text-decoration-color: currentColor; }
.nt-content img { max-width: 100%; height: auto; border-radius: 12px; margin: 1.2em auto; }
.nt-content img.alignleft { float: left; margin: .4em 1.4em 1em 0; }
.nt-content img.alignright { float: right; margin: .4em 0 1em 1.4em; }
.nt-content .aligncenter, .nt-content img.aligncenter { display: block; margin-inline: auto; }
.nt-content figure, .nt-content .wp-caption { max-width: 100%; margin: 1.4em auto; }
.nt-content figcaption, .nt-content .wp-caption-text { margin-top: 8px; font-size: 14.5px; color: var(--ink-3); text-align: center; }
.nt-content blockquote { margin: 1.4em 0; padding: 16px 22px; border-left: 4px solid var(--g-500); background: var(--g-50); border-radius: 0 12px 12px 0; color: var(--ink-2); }
.nt-content blockquote p:last-child { margin-bottom: 0; }
.nt-content table { width: 100%; border-collapse: collapse; margin: 1.4em 0; font-size: 16px; display: block; overflow-x: auto; }
.nt-content th, .nt-content td { padding: 10px 12px; border: 1px solid var(--line-2); vertical-align: top; text-align: left; }
.nt-content th { background: var(--cream); font-weight: 700; }
.nt-content iframe, .nt-content video { max-width: 100%; }
.nt-content hr { border: 0; border-top: 1px solid var(--line); margin: 2em 0; }
.nt-content strong, .nt-content b { font-weight: 700; }
.nt-content .nt-gia { margin-top: 44px; }
.nt-content .nt-gmoi { margin: 26px 0; }
/* Bài cũ hay dán từ Word: ép cỡ chữ nhỏ về cỡ đọc được. */
.nt-content span[style*="font-size"], .nt-content p[style*="font-size"] { font-size: inherit !important; }
.nt-content [style*="font-family"] { font-family: inherit !important; }
@media (max-width: 700px) {
	.nt-content { font-size: 17px; }
	.nt-content img.alignleft, .nt-content img.alignright { float: none; margin: 1em auto; }
}

/* ── cuối bài ─────────────────────────────────────────────────── */
.nt-doc__foot { margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--line); font-size: 15px; color: var(--ink-2); }
.nt-doc__cats a { color: var(--g-700); font-weight: 600; }
.nt-doc__cats a:hover { text-decoration: underline; text-underline-offset: 3px; }
.nt-doc__nav { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 22px; }
.nt-doc__nav-a {
	display: grid; gap: 4px; padding: 16px 18px; border-radius: 14px;
	background: var(--paper); border: 1px solid var(--line); box-shadow: var(--sh-1);
	transition: border-color .15s, box-shadow .2s, transform .2s var(--ease);
}
.nt-doc__nav-a:hover { border-color: var(--g-400); box-shadow: var(--sh-2); transform: translateY(-2px); }
.nt-doc__nav-a span { font-size: 12.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--g-600); }
.nt-doc__nav-a b { font-size: 15.5px; font-weight: 600; color: var(--g-900); line-height: 1.35; }
.nt-doc__nav-a--sau { text-align: right; }
@media (max-width: 700px) { .nt-doc__nav { grid-template-columns: 1fr; } .nt-doc__nav-a--sau { text-align: left; } }

/* ── cột bên ──────────────────────────────────────────────────── */
.nt-side { position: sticky; top: calc(var(--head-h) + 16px); display: grid; gap: 18px; }
@media (max-width: 960px) { .nt-side { position: static; } }
.nt-side__box { padding: 20px 22px; border-radius: 16px; background: var(--paper); border: 1px solid var(--line); box-shadow: var(--sh-1); }
.nt-side__cta { background: var(--g-900); color: #fff; border-color: var(--g-900); }
.nt-side__kick { font-size: 12.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--g-300); }
.nt-side__tel { display: flex; align-items: center; gap: 12px; margin-top: 12px; color: #fff; }
.nt-side__tel .nt-i { flex: none; color: var(--g-300); }
.nt-side__tel b { display: block; font-size: 22px; font-weight: 700; letter-spacing: .01em; line-height: 1.15; }
.nt-side__tel i { display: block; font-style: normal; font-size: 13.5px; color: var(--g-200); margin-top: 2px; }
.nt-side__cta .nt-btn { margin-top: 16px; }
.nt-side__note { margin-top: 12px; font-size: 13.5px; color: var(--g-200); line-height: 1.5; }
.nt-side__h { font-family: var(--f-txt); font-size: 15px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--g-800); }
.nt-side__cats { margin-top: 12px; display: grid; }
.nt-side__cats li { border-top: 1px solid var(--line); }
.nt-side__cats li:first-child { border-top: 0; }
.nt-side__cats a { display: inline-block; padding: 9px 0; font-size: 15px; font-weight: 500; color: var(--ink); }
.nt-side__cats a:hover { color: var(--g-700); }
.nt-side__cats li { font-size: 13.5px; color: var(--ink-3); }   /* số bài "(674)" đứng ngoài link */
.nt-side__cats .current-cat > a { color: var(--g-700); font-weight: 700; }

/* ── thẻ bài ──────────────────────────────────────────────────── */
.nt-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 26px; }
.nt-grid3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
@media (max-width: 960px) { .nt-grid3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .nt-grid2, .nt-grid3 { grid-template-columns: 1fr; gap: 18px; } }
.nt-card {
	display: grid; grid-template-rows: auto 1fr; border-radius: 16px; overflow: hidden;
	background: var(--paper); border: 1px solid var(--line); box-shadow: var(--sh-1);
	transition: box-shadow .25s, transform .25s var(--ease), border-color .2s;
}
.nt-card:hover { box-shadow: var(--sh-2); transform: translateY(-3px); border-color: var(--g-300); }
.nt-card__img { display: block; aspect-ratio: 16 / 10; background: var(--cream-2); overflow: hidden; }
.nt-card__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--ease); }
.nt-card:hover .nt-card__img img { transform: scale(1.04); }
.nt-card__noimg { display: grid; place-items: center; height: 100%; color: var(--line-2); }
.nt-card__b { display: grid; align-content: start; gap: 8px; padding: 16px 18px 18px; }
.nt-card__kick { font-size: 12.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--g-600); }
.nt-card__h { font-family: var(--f-txt); font-size: 18px; font-weight: 700; line-height: 1.35; letter-spacing: 0; text-wrap: pretty; }
.nt-card__h a:hover { color: var(--g-700); }
.nt-card__by { font-size: 13px; color: var(--ink-3); }
.nt-card__by a { color: var(--ink-2); }
.nt-card__p { font-size: 15px; line-height: 1.55; color: var(--ink-2); }
.nt-card__more { display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; font-size: 14.5px; font-weight: 700; color: var(--g-700); }
.nt-card__more .nt-i { transition: translate .2s var(--ease); }
.nt-card__more:hover .nt-i { translate: 3px 0; }
.nt-lienquan { padding: clamp(28px, 4vw, 48px) 0 clamp(40px, 5vw, 64px); background: var(--paper); border-top: 1px solid var(--line); }
.nt-lienquan .nt-sech { margin-bottom: 22px; }

/* ── phân trang, tìm kiếm ─────────────────────────────────────── */
.nt-pag { margin-top: 30px; }
.nt-pag .nav-links { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.nt-pag .page-numbers {
	display: inline-grid; place-items: center; min-width: 44px; height: 44px; padding: 0 14px; border-radius: 999px;
	background: var(--paper); border: 1.5px solid var(--line-2); font-weight: 600; color: var(--ink-2);
}
.nt-pag .page-numbers:hover { border-color: var(--g-400); color: var(--g-900); }
.nt-pag .page-numbers.current { background: var(--g-700); border-color: var(--g-700); color: #fff; }
.nt-pag .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.nt-tim { display: flex; gap: 10px; margin-top: 18px; max-width: 520px; }
.nt-tim input { flex: 1; min-width: 0; height: 48px; padding: 0 16px; border-radius: 10px; border: 1.5px solid var(--line-2); background: var(--paper); font-size: 16px; }
.nt-tim input:focus { outline: none; border-color: var(--g-500); box-shadow: 0 0 0 3px rgb(36 132 60 / .12); }

/* ── menu 73 mục của WordPress trong thanh menu ───────────────── */
.nt-site .nt-nav__item.is-now > a { color: var(--g-900); background: var(--g-100); }
.nt-site .nt-mega__list li.is-now a { color: var(--g-800); font-weight: 700; }
.nt-site .nt-mega--1 .nt-mega__in { width: min(560px, calc(100vw - 32px)); }
.nt-site .nt-mega__list { max-height: min(62vh, 520px); }

/* ── trang Elementor giữ nguyên lề của nó ─────────────────────── */
.nt-page--el .nt-content > * + * { margin-top: 0; }
.nt-page--el .nt-content p { margin: 0; }
.nt-page--el .nt-content ul, .nt-page--el .nt-content ol { list-style: none; padding: 0; margin: 0; }
.nt-page--el .nt-content img { margin: 0; border-radius: 0; }

/* ── widget WordPress trong cột bên (Chuyên mục và widget chị Duyên thêm sau) ── */
.nt-side__wg .widget + .widget { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.nt-side__wg .widget-title { font-family: var(--f-txt); font-size: 15px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--g-800); margin: 0 0 12px; }
.nt-side__wg .widget ul { display: grid; }
.nt-side__wg .widget li { border-top: 1px solid var(--line); font-size: 13.5px; color: var(--ink-3); }
.nt-side__wg .widget li:first-child { border-top: 0; }
.nt-side__wg .widget li a { display: inline-block; padding: 9px 0; font-size: 15px; font-weight: 500; color: var(--ink); }
.nt-side__wg .widget li a:hover { color: var(--g-700); }
.nt-side__wg .current-cat > a { color: var(--g-700); font-weight: 700; }
.nt-side__wg .widget p { font-size: 15px; color: var(--ink-2); line-height: 1.55; }

/* ── chân trang: cột Giới thiệu + link bài trước/sau ─────────── */
.nt-foot__gt { font-size: 14px; line-height: 1.6; color: var(--g-200); margin-bottom: 10px; }
.nt-doc__nav-a a { display: block; }
.nt-doc__nav-a a:hover b { color: var(--g-700); }

/* ── điện thoại: hộp con của menu 73 mục không cuộn lồng ─────── */
@media (max-width: 960px) {
	.nt-site .nt-mega__list, .nt-site .nt-mega--1 .nt-mega__in { max-height: none; width: auto; overflow: visible; }
}

/* ── danh sách bài trong chuyên mục: một cột, đủ đoạn đầu bài như bản cũ ── */
.nt-list { display: grid; gap: 18px; margin-top: 26px; }
.nt-list__it {
	display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 20px 24px; align-items: start;
	padding: 20px; border-radius: 16px; background: var(--paper); border: 1px solid var(--line); box-shadow: var(--sh-1);
	transition: box-shadow .25s, border-color .2s;
}
.nt-list__it:hover { box-shadow: var(--sh-2); border-color: var(--g-300); }
.nt-list__img { display: block; aspect-ratio: 4 / 3; border-radius: 12px; overflow: hidden; background: var(--cream-2); }
.nt-list__img img { width: 100%; height: 100%; object-fit: cover; }
.nt-list__b { min-width: 0; }
.nt-list__h { font-family: var(--f-txt); font-size: 21px; font-weight: 700; line-height: 1.3; letter-spacing: 0; text-wrap: pretty; }
.nt-list__h a:hover { color: var(--g-700); }
.nt-list__b .nt-card__by { margin-top: 6px; }
/* Đoạn đầu bài: chữ 16px, tối đa ~8 dòng rồi mờ dần; ảnh trong đoạn thu nhỏ thành dải. */
.nt-list__tx { margin-top: 12px; font-size: 16px; line-height: 1.6; color: var(--ink-2); max-height: 13.5em; overflow: hidden; position: relative; }
.nt-list__tx::after { content: ''; position: absolute; inset: auto 0 0 0; height: 3em; background: linear-gradient(to bottom, transparent, var(--paper)); pointer-events: none; }
.nt-list__tx > * + * { margin-top: .7em; }
.nt-list__tx p { margin: 0 0 .7em; }
.nt-list__tx h2, .nt-list__tx h3 { font-size: 1.05em; margin: .9em 0 .4em; }
.nt-list__tx img { display: inline-block; width: auto; max-height: 90px; margin: 4px 6px 4px 0; border-radius: 6px; vertical-align: middle; }
.nt-list__tx figure, .nt-list__tx .wp-caption { display: inline-block; margin: 4px 6px 4px 0; max-width: 140px; }
.nt-list__tx figcaption, .nt-list__tx .wp-caption-text { display: none; }
.nt-list__tx blockquote { margin: .6em 0; padding: 10px 14px; }
.nt-list__tx .more-link, .nt-list__tx .read-more { display: inline-flex; margin-top: 4px; font-weight: 700; color: var(--g-700); text-decoration: none; }
.nt-list__tx .read-more-container { margin: 0; }
.nt-list__meta { margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--line); font-size: 13.5px; color: var(--ink-3); display: flex; flex-wrap: wrap; gap: 4px 18px; }
.nt-list__meta a { color: var(--g-700); font-weight: 600; }
.nt-list__meta a:hover { text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 700px) {
	.nt-list__it { grid-template-columns: 1fr; padding: 14px; }
	.nt-list__img { aspect-ratio: 16 / 9; }
	.nt-list__h { font-size: 19px; }
	.nt-list__tx { max-height: 9em; }
}

/* ── mô tả SEO chuyên mục: gập, bấm Xem thêm ─────────────────── */
.nt-doc__seo { margin-top: 28px; padding: 22px 24px 18px; border-radius: 16px; background: var(--paper); border: 1px solid var(--line); }
.nt-doc__seo-in { margin-top: 0; font-size: 16px; line-height: 1.65; color: var(--ink-2); max-height: 14em; overflow: hidden; position: relative; }
.nt-doc__seo-in::after { content: ''; position: absolute; inset: auto 0 0 0; height: 4em; background: linear-gradient(to bottom, transparent, var(--paper)); }
.nt-doc__seo.is-mo .nt-doc__seo-in { max-height: none; }
.nt-doc__seo.is-mo .nt-doc__seo-in::after { display: none; }
.nt-doc__seo-in h2, .nt-doc__seo-in h3 { font-size: 1.15em; margin: 1.2em 0 .5em; }
.nt-doc__seo-mo { margin-top: 10px; min-height: 40px; padding: 0 16px; border-radius: 999px; border: 1.5px solid var(--g-500); background: var(--g-50); color: var(--g-900); font-weight: 700; font-size: 14.5px; }
.nt-doc__seo-mo:hover { background: var(--g-100); }

/* ══ 09/09 tối — sửa theo Chrome của chủ dự án (màn 1470px) ══════════ */

/* ── đầu trang: menu 73 mục + hotline + nút phải lọt 1438px ─────
   Đo: brand 298 + menu 1000 + hộp liên hệ 299 = 1597 → số điện thoại văng
   195px khỏi mép. Dưới 1640px bỏ dòng phụ của logo, nén chữ menu. */
@media (min-width: 1260px) and (max-width: 1640px) {
	.nt-site .nt-head__in { gap: 12px; }
	.nt-site .nt-brand__txt i { display: none; }
	.nt-site .nt-nav { min-width: 0; }
	.nt-site .nt-nav__l1 { flex-wrap: nowrap; }
	.nt-site .nt-nav__item > a { padding: 9px 8px; font-size: .84rem; }
	.nt-site .nt-head__cta { flex: none; gap: 10px; }
}
@media (min-width: 1260px) and (max-width: 1420px) {
	.nt-site .nt-nav__item > a { padding: 8px 6px; font-size: .78rem; }
	.nt-site .nt-head__cta .nt-btn { padding: 9px 14px; font-size: .84rem; }
}

/* ── chân trang: 7 cột trong lưới 5 → cột 152px, chữ rớt (đo cột cao 874px).
   Bố cục lại: hàng trên là thương hiệu + liên hệ + hotline (3 cột), hàng
   dưới là bản đồ trang 4 cột, cột Giới thiệu chiếm 2. Áp cho cả site. */
.nt-foot__top { grid-template-columns: 1fr; gap: 34px; }
.nt-foot__brand { display: grid; grid-template-columns: minmax(220px, 1fr) 1.5fr 1fr; gap: 24px 40px; align-items: start; padding-bottom: 30px; border-bottom: 1px solid rgb(255 255 255 / .09); }
.nt-foot__brand .nt-brand { align-self: center; }
.nt-foot__contact { margin: 0; }
.nt-foot__phones { margin: 0; }
.nt-foot__map { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px 34px; }
.nt-foot__col--gt { grid-column: span 2; }
.nt-foot__col li a { font-size: .86rem; }
@media (max-width: 1180px) { .nt-foot__map { grid-template-columns: repeat(3, minmax(0, 1fr)); } .nt-foot__col--gt { grid-column: span 3; } }
@media (max-width: 900px)  { .nt-foot__brand { grid-template-columns: 1fr; gap: 20px; } }
@media (max-width: 700px)  { .nt-foot__map { grid-template-columns: repeat(2, minmax(0, 1fr)); } .nt-foot__col--gt { grid-column: span 2; } }

/* ── cột bên mới ──────────────────────────────────────────────── */
.nt-side { position: static; align-self: stretch; }   /* kéo cột bên cao bằng bài để phần dính có chỗ trượt */
.nt-side__in { position: sticky; top: calc(var(--head-h) + 14px); display: grid; gap: 18px; max-height: calc(100vh - var(--head-h) - 28px); overflow-y: auto; scrollbar-width: none; }
.nt-side__in::-webkit-scrollbar { display: none; }
.nt-side__cta { padding: 22px 22px 20px; }
@media (max-width: 960px) { .nt-side { align-self: start; } .nt-side__in { position: static; max-height: none; overflow: visible; } }
.nt-side__nv { display: flex; align-items: center; gap: 12px; }
.nt-side__av { flex: none; width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; background: var(--g-700); color: #fff; font-family: var(--f-dis); font-size: 20px; font-weight: 700; box-shadow: 0 0 0 3px rgb(255 255 255 / .12); }
.nt-side__nvt { display: grid; line-height: 1.3; }
.nt-side__nvt b { font-size: 15.5px; color: #fff; }
.nt-side__nvt i { font-style: normal; font-size: 13px; color: var(--g-200); }
.nt-side__tel { display: block; margin-top: 14px; font-size: 30px; font-weight: 700; letter-spacing: .01em; color: #fff; line-height: 1.1; font-variant-numeric: tabular-nums; }
.nt-side__tel:hover { color: var(--g-200); }
.nt-side__acts { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 14px; }
.nt-side__acts .nt-btn { padding: 12px 10px; font-size: 15px; gap: 7px; }
.nt-side__hoac { display: flex; align-items: center; gap: 10px; margin: 16px 0 10px; font-size: 12.5px; color: var(--g-300); text-transform: uppercase; letter-spacing: .06em; }
.nt-side__hoac::before, .nt-side__hoac::after { content: ''; flex: 1; height: 1px; background: rgb(255 255 255 / .14); }
.nt-side__lab { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.nt-side__row { display: grid; gap: 8px; }
.nt-side__o { width: 100%; height: 48px; padding: 0 14px; border-radius: 10px; border: 1.5px solid rgb(255 255 255 / .2); background: rgb(255 255 255 / .08); color: #fff; font-size: 18px; font-weight: 600; letter-spacing: .02em; }
.nt-side__o::placeholder { color: var(--g-300); font-weight: 400; }
.nt-side__o:focus { outline: none; border-color: var(--g-300); background: rgb(255 255 255 / .12); }
.nt-side__gui.nt-btn--out { background: #fff; border-color: #fff; color: var(--g-900); padding: 12px 14px; font-size: 15px; }
.nt-side__gui.nt-btn--out:hover { background: var(--g-50); color: var(--g-900); }
.nt-side__bay { position: absolute; left: -9999px; }
.nt-side__msg { margin-top: 6px; font-size: 13.5px; color: #ffd9dc; min-height: 0; }
.nt-side__msg:empty { display: none; }
.nt-side__xong { padding: 12px 14px; border-radius: 10px; background: rgb(255 255 255 / .1); font-size: 14.5px; color: #fff; }
.nt-side__tin { display: grid; gap: 6px; margin-top: 16px; padding-top: 14px; border-top: 1px solid rgb(255 255 255 / .12); font-size: 13.5px; color: var(--g-200); }
.nt-side__tin li { display: flex; gap: 8px; align-items: center; }
.nt-side__tin .nt-i { color: var(--g-300); flex: none; }
.nt-side__nhom { display: grid; margin-top: 8px; }
.nt-side__nhom li { border-top: 1px solid var(--line); }
.nt-side__nhom li:first-child { border-top: 0; }
.nt-side__nhom a { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 10px; padding: 10px 0; }
.nt-side__nhom b { font-size: 15px; font-weight: 600; color: var(--g-900); }
.nt-side__nhom i { font-style: normal; font-size: 13.5px; color: var(--ink-3); white-space: nowrap; }
.nt-side__nhom .nt-i { color: var(--g-500); transition: translate .2s var(--ease); }
.nt-side__nhom a:hover b { color: var(--g-700); }
.nt-side__nhom a:hover .nt-i { translate: 3px 0; }
/* Chuyên mục: chip nhỏ, không số đếm — 27 link vẫn đủ cho SEO nhưng không át hộp liên hệ. */
.nt-side__wg .widget ul { display: flex; flex-wrap: wrap; gap: 6px; }
.nt-side__wg .widget li { border: 0; font-size: 0; }
.nt-side__wg .widget li a { display: inline-block; padding: 6px 11px; border-radius: 999px; border: 1px solid var(--line-2); background: var(--paper); font-size: 13.5px; font-weight: 500; color: var(--ink-2); line-height: 1.3; }
.nt-side__wg .widget li a:hover { border-color: var(--g-400); color: var(--g-900); background: var(--g-50); }
.nt-side__wg .current-cat > a { border-color: var(--g-600); background: var(--g-100); color: var(--g-900); font-weight: 700; }
.nt-side__wg .widget-title { margin-bottom: 10px; }

/* ── chân trang trên điện thoại: 7 nhóm × 10 link = màn dài 3.000px (đo 09/09).
   Gập từng nhóm, chạm tiêu đề mới xổ. Link vẫn trong HTML cho Google. */
@media (max-width: 700px) {
	.nt-foot__map { grid-template-columns: 1fr; gap: 0; }
	.nt-foot__col { border-top: 1px solid rgb(255 255 255 / .1); }
	.nt-foot__col--gt { grid-column: auto; border-top: 0; padding-bottom: 14px; }
	.nt-foot__col:not(.nt-foot__col--gt) .nt-foot__ch { display: flex; align-items: center; justify-content: space-between; margin: 0; padding: 14px 0; cursor: pointer; }
	.nt-foot__col:not(.nt-foot__col--gt) .nt-foot__ch::after { content: '+'; font-family: var(--f-txt); font-size: 22px; font-weight: 400; color: var(--g-300); }
	.nt-foot__col.is-open .nt-foot__ch::after { content: '–'; }
	.nt-foot__col:not(.nt-foot__col--gt) ul { display: none; padding-bottom: 14px; }
	.nt-foot__col.is-open ul { display: grid; }
}

/* Bảng nổi 4 số của plugin hotline-button: trên mẫu mới đã có số ở đầu trang, cột bên,
   chân trang và thanh đáy; bảng nổi xoay theo nhịp riêng nên qua bộ đệm sẽ lệch với
   đầu trang, và nó che cột bên (ảnh chụp Chrome 09/09). Giấu, plugin vẫn chạy. */
/* 10/09: chủ dự án muốn giữ nút Hotline của plugin trên máy tính. Giữ; nt-sdt.js xếp lại
   thứ tự trong bảng cho khớp với số ở đầu trang (qua bộ đệm hai bên xoay khác nhịp). */
.nt-site .hotline-button { z-index: 150; }   /* giữ trên <main>; từng đặt 89 → main che, bấm không ăn (đo 10/09) */

/* Bản đồ trang máy tính: xếp cột kiểu báo (columns) thay vì lưới — nhóm 21 link
   không kéo cả hàng dài, không chừa khoảng trống dưới Giới thiệu (ảnh 09/09 tối). */
@media (min-width: 701px) {
	.nt-foot__map { display: block; columns: 4; column-gap: 34px; }
	.nt-foot__col { break-inside: avoid; margin-bottom: 26px; }
	.nt-foot__col--gt { grid-column: auto; }
}
@media (min-width: 701px) and (max-width: 1180px) { .nt-foot__map { columns: 3; } }

/* ── chân trang: toàn bộ chuyên mục bài viết, gập lại (27 link giữ cho SEO, rời khỏi cột bên) ── */
.nt-foot__cm { margin-top: 26px; padding-top: 18px; border-top: 1px solid rgb(255 255 255 / .09); }
.nt-foot__cm summary { cursor: pointer; list-style: none; display: inline-flex; align-items: center; gap: 8px; font-family: var(--f-dis); font-weight: 700; font-size: 1rem; color: var(--g-300); }
.nt-foot__cm summary::-webkit-details-marker { display: none; }
.nt-foot__cm summary::after { content: '+'; font-family: var(--f-txt); font-size: 20px; font-weight: 400; }
.nt-foot__cm[open] summary::after { content: '–'; }
.nt-foot__cm summary:hover { color: #fff; }
.nt-foot__cmin { margin-top: 14px; }
.nt-foot__cmin .widget-title { display: none; }
.nt-foot__cmin ul { display: flex; flex-wrap: wrap; gap: 6px 8px; }
.nt-foot__cmin li { font-size: 0; }
.nt-foot__cmin li a { display: inline-block; padding: 5px 11px; border-radius: 999px; border: 1px solid rgb(255 255 255 / .16); font-size: .8rem; color: var(--g-200); }
.nt-foot__cmin li a:hover { border-color: var(--g-300); color: #fff; }

/* ── đường dẫn (breadcrumb) ───────────────────────────────────── */
.nt-crumb { margin-bottom: 14px; font-size: 13.5px; color: var(--ink-3); }
.nt-crumb ol { display: flex; flex-wrap: wrap; gap: 4px 6px; }
.nt-crumb li + li::before { content: '›'; margin-right: 6px; color: var(--line-2); }
.nt-crumb a { color: var(--g-700); font-weight: 600; }
.nt-crumb a:hover { text-decoration: underline; text-underline-offset: 3px; }
.nt-crumb span { color: var(--ink-3); }
.nt-g__all { display: inline-block; margin-left: 4px; font-weight: 700; color: var(--g-700); text-decoration: underline; text-underline-offset: 3px; }

/* ── position: sticky trong cột bên và thanh tổng của khối giá không dính (đo 10/09:
   top −1685px sau khi cuộn 1800px). Nguyên nhân: nt-home.css đặt body { overflow-x:
   hidden } → body thành khung cuộn riêng, sticky lồng bên trong mất tác dụng.
   `clip` chặn tràn ngang y như hidden nhưng KHÔNG tạo khung cuộn. */
.nt-home.nt-site, .nt-home.nt-bgpage, .nt-home.nt-tbpage { overflow-x: clip; }
