/* ==========================================================================
   BỐ CỤC TRANG CON THEO HEZA.GOV.VN (PLAN-20261013-LAYOUT-CLONE)
   Chỉ nạp cho trang có meta _heza_layout=prod (body.heza-layout-prod).
   Giữ CÁCH SẮP XẾP của PROD (section → cột → widget do tools/elementor_tree_convert.php --layout=prod sinh),
   chỉ trau chuốt: khoảng cách đều, chữ dễ đọc, màu đúng bảng màu PROD (biến --heza-c-* trong heza-gov.css).
   ========================================================================== */
html:has(body.heza-layout-prod) { overflow-x: clip; }
/* content.css cắt tràn ngang ở post-content (cho bảng/iframe rộng); section tràn ngang của PROD cần thoát ra → chỉ cắt ở <html> */
.heza-layout-prod :is(.heza-page-main, .heza-single-kcn-main) .wp-block-post-content { overflow-x: visible; }

.heza-layout-prod :is(.heza-page-main, .heza-single-kcn-main) { padding-top: 40px !important; }
.heza-layout-prod :is(.heza-page-main, .heza-single-kcn-main):has(> .heza-hero--prod),
.heza-layout-prod #wp--skip-link--target:is(.heza-page-main, .heza-single-kcn-main):has(> .heza-hero--prod) { padding-top: 0 !important; }

/* Banner: chỉ ảnh, tràn ngang như section đầu của PROD (min-height 565px) */
.heza-hero--prod {
  position: relative;
  max-width: none !important;
  height: clamp(240px, 39vw, 565px);
  margin: 0 calc(50% - 50vw) 40px !important; /* full-bleed: padding main khác nhau theo breakpoint */
  overflow: hidden;
  background: var(--heza-c-blue);
}
:is(.heza-page-main, .heza-single-kcn-main) .heza-hero--prod img.heza-hero__img:not(.emoji):not(.wp-smiley):not([width="16"]):not([height="16"]) {
  display: block;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  margin: 0 !important;
  object-fit: cover;
}

/* ---------- Section ---------- */
.heza-layout-prod .wp-block-post-content > .heza-pc-section { margin-block: 0 48px; }
.heza-layout-prod .wp-block-post-content > .heza-pc-section:last-child { margin-bottom: 0; }
.heza-pc-section > .wp-block-columns { margin-bottom: 0; gap: clamp(20px, 2.6vw, 36px); }
.heza-pc-section > :first-child { margin-top: 0; }
.heza-pc-section > :last-child { margin-bottom: 0; }
.heza-pc--inner { margin-top: 28px; }

/* Section kéo dài hết chiều ngang màn hình (Elementor "stretch section") */
.heza-pc--stretch {
  margin-inline: calc(50% - 50vw) !important;
  padding-inline: max(clamp(20px, 3.8vw, 44px), calc(50vw - 620px));
}
.heza-pc--stretch.heza-pc--full { padding-inline: 0; }
/* Section full_width của PROD: ảnh giữ kích thước gốc (tối đa 100%), căn giữa — không kéo giãn */
.heza-pc--full .wp-block-image { width: 100%; max-width: none; margin: 0 !important; text-align: center; }
.heza-layout-prod .wp-block-post-content .heza-pc--full .wp-block-image img:not(.emoji):not(.wp-smiley):not([width="16"]):not([height="16"]) { width: auto !important; max-width: 100% !important; height: auto !important; margin: 0 auto !important; border-radius: 0; }

/* Nền */
.heza-pc--dark,
.heza-pc-col--dark { padding: clamp(28px, 4vw, 56px) clamp(20px, 4vw, 64px); background: var(--heza-c-blue); color: #FFFFFF; }
.heza-pc--dark.heza-pc--stretch { padding-inline: max(clamp(20px, 3.8vw, 44px), calc(50vw - 620px)); }
.heza-pc--dark a, .heza-pc-col--dark a { color: #FFFFFF; }
.heza-pc--tint,
.heza-pc-col--tint { padding: clamp(28px, 4vw, 56px) clamp(20px, 3vw, 40px); background: #F3F6F9; }
.heza-pc--tint.heza-pc--stretch { padding-inline: max(clamp(20px, 3.8vw, 44px), calc(50vw - 620px)); }

/* Khối xanh chồng lên banner (PROD margin-top âm) */
.heza-layout-prod :is(.heza-page-main, .heza-single-kcn-main):has(> .heza-hero--prod) .wp-block-post-content > .heza-pc--overlap:first-child {
  position: relative;
  z-index: 2;
  margin-top: calc(-1 * clamp(110px, 13vw, 190px)) !important;
  box-shadow: 0 10px 30px rgba(0, 24, 50, 0.12);
}

/* Vạch viền */
.heza-pc-col--rule-right { padding-right: clamp(16px, 2vw, 28px); border-right: 4px solid var(--heza-c-blue); }
.heza-pc-col--rule-left { padding-left: clamp(16px, 2vw, 28px); border-left: 4px solid var(--heza-c-blue); }
.heza-pc--dark .heza-pc-col--rule-right { padding-right: 12px; border-right: 1px solid rgba(255, 255, 255, 0.55); }
.heza-pc--dark .wp-block-column:last-child.heza-pc-col--rule-right { border-right: 0; }

/* Dòng thời gian: vạch ngang trên cùng + mốc tròn nằm trên vạch */
.heza-pc--rule-top { margin-top: 40px !important; padding-top: 0; border-top: 4px solid var(--heza-c-blue); }
.heza-layout-prod .wp-block-post-content .heza-pc--rule-top .heza-pc-box .heza-feature > img:not(.emoji):not(.wp-smiley):not([width="16"]):not([height="16"]) { width: 36px !important; height: 36px !important; margin: -20px auto 14px !important; border-radius: 50%; background: #FFFFFF; }

/* ---------- Tiêu đề (PROD: màu kit #6EC1E4 → xanh HEZA cho đủ tương phản) ---------- */
.heza-layout-prod .heza-pc-title { margin: 0 0 16px; font-family: var(--heza-font__main); font-weight: 700; line-height: 1.25; letter-spacing: 0; }
.heza-pc-title.is-accent { color: #6EC1E4; } /* màu tiêu đề kit Elementor của PROD (rgb 110,193,228) */
.heza-pc-title.is-dark { color: var(--heza-c-dark); }
.heza-pc-title.is-red { color: var(--heza-c-primary); }
.heza-pc-title.is-light, .heza-pc--dark .heza-pc-title { color: #FFFFFF; }
/* PROD đặt tiêu đề trắng trên ảnh nền tối; DEV thay ảnh nền bằng nền nhạt → dùng xanh HEZA */
.heza-pc--tint .heza-pc-title.is-light { color: var(--heza-c-blue); }
.heza-pc-title.is-upper { text-transform: uppercase; }
.heza-pc-title.is-lg { font-size: clamp(22px, 2.4vw, 30px); } /* PROD: 30px cố định */
.heza-pc-title.is-sm { font-size: 17px; }

/* ---------- Văn bản ---------- */
/* PROD: chữ trong widget Elementor mặc định #7A7A7A (màu chữ kit), SVN-Gilroy 16px/24px; widget đặt 18px → is-md */
.heza-pc-text { color: #7A7A7A; font-family: var(--heza-font__main); font-size: 16px; line-height: 24px; }
.heza-pc-text.is-md { font-size: 18px; line-height: 27px; }
.heza-pc--dark .heza-pc-text, .heza-pc-col--dark .heza-pc-text { color: #FFFFFF; }
.heza-pc-text.is-lead { font-size: clamp(17px, 1.5vw, 20px); }
.heza-pc-text > :first-child { margin-top: 0; }
.heza-pc-text > :last-child { margin-bottom: 0; }
.heza-pc-text ul, .heza-pc-text ol { padding-left: 1.2em; }
.heza-pc-text li + li { margin-top: 6px; }

/* ---------- Số liệu (counter) ---------- */
.heza-layout-prod .heza-pc-counter { display: block; margin: 0; padding: 0; list-style: none; text-align: center; }
.heza-layout-prod .heza-pc-counter .heza-stat { margin: 0; padding: 4px 0; border: 0; background: none; }
.heza-layout-prod .heza-pc-counter strong { display: block; color: var(--heza-c-blue); font-family: var(--heza-font__main); font-size: clamp(22px, 2.2vw, 30px); font-weight: 700; line-height: 1.2; }
.heza-layout-prod .heza-pc-counter span { display: block; margin-top: 4px; color: var(--heza-c-text); font-size: 14px; line-height: 1.4; }
.heza-pc--dark .heza-pc-counter strong, .heza-pc--dark .heza-pc-counter span { color: #FFFFFF; }

/* ---------- Hộp icon/ảnh (icon-box, image-box) giữ vị trí như PROD ---------- */
.heza-layout-prod .heza-pc-box { display: block; margin: 0; padding: 0; list-style: none; }
.heza-layout-prod .heza-pc-box .heza-feature { display: flex; flex-direction: column; align-items: center; gap: 8px; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; text-align: center; }
/* Quy tắc căn ảnh toàn cục có độ ưu tiên (0,5,1) + !important → phải lặp chuỗi :not để thắng */
.heza-layout-prod .wp-block-post-content .heza-pc-box .heza-feature > img:not(.emoji):not(.wp-smiley):not([width="16"]):not([height="16"]) { width: auto !important; max-width: 56px !important; max-height: 56px !important; height: auto !important; margin: 0 !important; }
.heza-layout-prod .heza-pc-box .heza-feature__title { color: var(--heza-c-dark); font-family: var(--heza-font__main); font-size: 16px; font-weight: 600; line-height: 1.4; }
.heza-layout-prod .heza-pc-box .heza-feature__title a { color: inherit; text-decoration: none; }
.heza-layout-prod .heza-pc-box .heza-feature__title a:hover { color: var(--heza-c-primary); }
.heza-layout-prod .heza-pc-box .heza-feature__desc { color: var(--heza-c-text); font-size: 15px; line-height: 1.55; }
.heza-layout-prod .heza-pc-box .heza-feature__desc p { margin: 0; }
.heza-layout-prod .heza-pc-box--left .heza-feature { flex-direction: row; align-items: center; gap: 14px; text-align: left; }
.heza-layout-prod .heza-pc-box--left .heza-feature__title { color: var(--heza-c-blue); text-transform: uppercase; }
.heza-layout-prod .heza-pc-box--right .heza-feature { flex-direction: row-reverse; text-align: right; }
.heza-pc--dark .heza-pc-box .heza-feature__title, .heza-pc--dark .heza-pc-box .heza-feature__desc { color: #FFFFFF; }

/* Icon Font Awesome (fa-subset.css) trong hộp icon / danh sách icon — PROD: Elementor icon-box & icon-list */
.heza-layout-prod .heza-fa { color: var(--heza-c-blue); font-size: 24px; }
.heza-layout-prod .heza-fa--lg { font-size: 20px; }
.heza-layout-prod .heza-fa--xl { height: 40px; font-size: 40px; line-height: 40px; }
.heza-layout-prod .heza-fa--pink { color: #E16D84; }
.heza-layout-prod .heza-fa--white, .heza-layout-prod .heza-pc--dark .heza-fa { color: #FFFFFF; }
.heza-layout-prod .heza-pc-box .heza-feature > .heza-fa { margin-bottom: 4px; }
.heza-layout-prod .heza-pc-box--left .heza-feature > .heza-fa, .heza-layout-prod .heza-pc-box--right .heza-feature > .heza-fa { margin-bottom: 0; }
.heza-layout-prod ul.heza-icon-list.has-fa { margin: 0; padding: 0; list-style: none; }
.heza-layout-prod ul.heza-icon-list.has-fa > li { display: flex; align-items: flex-start; gap: 10px; margin: 0 0 8px; padding: 0; }
.heza-layout-prod ul.heza-icon-list.has-fa > li > .heza-fa { margin-top: 3px; font-size: 16px; }
.heza-layout-prod ul.heza-icon-list.has-fa > li a { color: inherit; text-decoration: none; }

/* Hàng logo đối tác (cols-6): căn giữa theo chiều dọc và ngang như PROD (cột 218×103) */
@media (min-width: 782px) {
  .heza-layout-prod .heza-pc--cols-6 > .wp-block-columns { align-items: center !important; }
  .heza-layout-prod .heza-pc--cols-6 > .wp-block-columns > .wp-block-column { align-self: center !important; display: flex; align-items: center; justify-content: center; margin-block-start: 0; }
  .heza-layout-prod .heza-pc--cols-6 .wp-block-column > .wp-block-image { margin: 0 !important; text-align: center; }
}

/* Dải số liệu đầu trang (PROD: mỗi cột đệm 10px, vạch trắng 1px bên phải) */
@media (min-width: 768px) {
  .heza-layout-prod .heza-pc--overlap .heza-pc--cols-5 > .wp-block-columns > .wp-block-column { box-sizing: border-box; padding: 10px; border-right: 1px solid #FFFFFF; }
}

/* Khối "Các khu công nghiệp…" (PROD: ảnh nền bg-2.png + lớp phủ #007BB0 60%, đệm 110/81, carousel 3 thẻ 403×315) */
.heza-layout-prod .heza-pc--waves { background: linear-gradient(rgba(0, 123, 176, .6), rgba(0, 123, 176, .6)), url("/wp-content/uploads/2023/05/bg-2.png") center / cover no-repeat; padding-block: 110px 81px; color: #FFFFFF; }
.heza-layout-prod .heza-pc--waves.heza-pc--ph { background-image: linear-gradient(rgba(0, 123, 176, .6), rgba(0, 123, 176, .6)), url("../img/waves-placeholder.png"); }
.heza-layout-prod .heza-pc--waves .heza-pc-title { margin-bottom: 40px; color: #FFFFFF; }
.heza-carousel { position: relative; }
.heza-layout-prod .heza-posts--carousel, .heza-layout-prod .heza-posts--carousel-bar { display: flex; gap: 20px; margin: 0; padding: 0; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.heza-layout-prod .heza-posts--carousel::-webkit-scrollbar, .heza-layout-prod .heza-posts--carousel-bar::-webkit-scrollbar { display: none; }
.heza-layout-prod .heza-posts--carousel .heza-posts__item, .heza-layout-prod .heza-posts--carousel-bar .heza-posts__item { flex: 0 0 calc((100% - 40px) / 3); display: flex; flex-direction: column; gap: 0; margin: 0; padding: 0; border: 0; background: none; scroll-snap-align: start; min-width: 0; }
.heza-layout-prod .heza-posts--carousel .heza-posts__thumb, .heza-layout-prod .heza-posts--carousel-bar .heza-posts__thumb { display: block; height: 270px; overflow: hidden; }
.heza-layout-prod .heza-posts--carousel .heza-posts__thumb img:not(.emoji):not(.wp-smiley):not([width="16"]):not([height="16"]), .heza-layout-prod .heza-posts--carousel-bar .heza-posts__thumb img:not(.emoji):not(.wp-smiley):not([width="16"]):not([height="16"]) { display: block; width: 100% !important; height: 270px !important; max-width: none !important; margin: 0 !important; object-fit: cover; aspect-ratio: auto; border-radius: 0; }
.heza-layout-prod .heza-posts--carousel .heza-posts__title { display: block; padding: 10px 0 0; color: #FFFFFF; font-size: 18px; font-weight: 600; line-height: 1.4; }
.heza-layout-prod .heza-posts--carousel-bar .heza-posts__title { display: flex; align-items: center; min-height: 45px; padding: 0 10px; background: #007BB0; color: #FFFFFF; font-size: 15px; font-weight: 400; }
.heza-carousel__nav { position: absolute; top: 135px; z-index: 2; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .85); color: #007BB0; cursor: pointer; transform: translateY(-50%); }
.heza-carousel__nav.is-prev { left: -56px; }
.heza-carousel__nav.is-next { right: -56px; }
@media (max-width: 1100px) { .heza-carousel__nav.is-prev { left: 6px; } .heza-carousel__nav.is-next { right: 6px; } }
@media (max-width: 1024px) { .heza-layout-prod .heza-posts--carousel .heza-posts__item, .heza-layout-prod .heza-posts--carousel-bar .heza-posts__item { flex-basis: calc((100% - 20px) / 2); } }
@media (max-width: 640px) { .heza-layout-prod .heza-pc--waves { padding-block: 56px 48px; } .heza-layout-prod .heza-posts--carousel .heza-posts__item, .heza-layout-prod .heza-posts--carousel-bar .heza-posts__item { flex-basis: 100%; } }

/* Trang Hội nghị (PROD: hero 1957×1000, video 16:9 rộng đủ khung, cờ + tiêu đề cùng hàng, logo đối tác trượt 3 thẻ 393×157) */
.heza-layout-prod .heza-pc--hero-slide .heza-feature img:not(.emoji):not(.wp-smiley):not([width="16"]):not([height="16"]) { width: 100% !important; max-width: none !important; aspect-ratio: 1957 / 861; height: auto !important; object-fit: cover; object-position: center top; margin: 0 !important; }
.heza-layout-prod .heza-embed, .heza-layout-prod .heza-embed .wp-block-embed__wrapper { width: 100%; margin: 0; }
.heza-layout-prod .heza-embed iframe { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; min-height: 0; border-radius: 0; }
.heza-layout-prod .ticker__track img:not(.emoji):not(.wp-smiley):not([width="16"]):not([height="16"]) { display: inline-block !important; flex: 0 0 auto; width: 64px !important; height: auto !important; margin: 0 !important; }
.heza-layout-prod .ticker__track { max-width: 100%; white-space: normal; text-align: center; }
.heza-layout-prod .heza-logos { display: flex; gap: 30px; margin: 0; padding: 0; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.heza-layout-prod .heza-logos::-webkit-scrollbar { display: none; }
.heza-layout-prod .heza-logos > li { flex: 0 0 calc((100% - 60px) / 3); margin: 0; scroll-snap-align: start; display: flex; align-items: center; justify-content: center; height: 157px; }
.heza-layout-prod .heza-logos img:not(.emoji):not(.wp-smiley):not([width="16"]):not([height="16"]) { width: auto !important; max-width: 100% !important; height: auto !important; max-height: 157px !important; margin: 0 !important; object-fit: contain; }
.heza-carousel--logos .heza-carousel__nav { top: 50%; background: rgba(0, 0, 0, .08); }
@media (max-width: 767px) { .heza-layout-prod .heza-logos > li { flex-basis: calc((100% - 30px) / 2); } }

/* Ảnh trong nội dung PROD-layout: không bo góc thừa, căn giữa */
.heza-layout-prod .heza-pc-section .wp-block-image { margin-block: 0; }

/* ---------- Responsive ---------- */
@media (max-width: 781px) {
  .heza-layout-prod .wp-block-post-content > .heza-pc-section { margin-bottom: 32px; }
  .heza-pc-col--rule-right, .heza-pc-col--rule-left { padding: 0 0 12px; border: 0; border-bottom: 3px solid var(--heza-c-blue); }
  .heza-pc--dark .heza-pc-col--rule-right { border-bottom: 1px solid rgba(255, 255, 255, 0.4); }
  /* 4–6 cột số liệu: 2 cột trên điện thoại thay vì xếp dọc dài */
  /* heza-gov.css ép main .wp-block-columns thành cột dọc ở mobile → ghi đè cho lưới số liệu */
  .heza-layout-prod .heza-pc--cols-4 > .wp-block-columns, .heza-layout-prod .heza-pc--cols-5 > .wp-block-columns, .heza-layout-prod .heza-pc--cols-6 > .wp-block-columns { flex-direction: row !important; flex-wrap: wrap !important; gap: 20px 16px !important; }
  .heza-layout-prod .heza-pc--cols-4 > .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column,
  .heza-layout-prod .heza-pc--cols-5 > .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column,
  .heza-layout-prod .heza-pc--cols-6 > .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis: calc(50% - 12px) !important; flex-grow: 1; box-sizing: border-box; min-width: 0; padding: 0 !important; border: 0 !important; }
  .heza-pc--dark .heza-pc--cols-5 .heza-pc-col--rule-right { border-bottom: 0; }
  .heza-pc--rule-top { border-top: 0; }
  .heza-pc--rule-top > .wp-block-columns > .wp-block-column { padding-top: 20px; border-top: 3px solid var(--heza-c-blue); }
  .heza-layout-prod :is(.heza-page-main, .heza-single-kcn-main):has(> .heza-hero--prod) .wp-block-post-content > .heza-pc--overlap:first-child { margin-top: -48px !important; }
}

/* KCN: PROD không có sidebar → bỏ cột phải, nội dung toàn chiều rộng (như trang thường) */
.heza-layout-prod .heza-single-kcn-main > .alignwide > .wp-block-columns { display: block; }
.heza-layout-prod .heza-single-kcn-main > .alignwide > .wp-block-columns > .wp-block-column { flex-basis: 100% !important; width: 100%; max-width: none; }
.heza-layout-prod .heza-single-kcn-main > .alignwide > .wp-block-columns > .wp-block-column:last-child:not(:first-child) { display: none; }
.heza-layout-prod .heza-single-kcn-main { padding-inline: clamp(20px, 3.8vw, 44px); }

/* Khối cover (ảnh nền + chữ, vd. VR360 của KCN): quy tắc ảnh toàn cục (0,5,1) !important làm ảnh co lại → ép phủ kín như PROD */
.heza-layout-prod .wp-block-post-content .wp-block-cover { position: relative; display: flex; align-items: center; justify-content: center; min-height: 280px; padding: clamp(20px, 3vw, 40px); overflow: hidden; color: #fff; }
.heza-layout-prod .wp-block-post-content .wp-block-cover img.wp-block-cover__image-background:not(.emoji):not(.wp-smiley):not([width="16"]):not([height="16"]) { position: absolute; inset: 0; width: 100% !important; max-width: none !important; height: 100% !important; margin: 0 !important; object-fit: cover; }
.heza-layout-prod .wp-block-cover .wp-block-cover__background { background-color: #001832; opacity: 0.45; }
.heza-layout-prod .wp-block-cover .wp-block-cover__inner-container { position: relative; z-index: 1; width: 100%; max-width: 1240px; text-align: center; }
.heza-layout-prod .wp-block-cover .heza-pc-title, .heza-layout-prod .wp-block-cover .heza-pc-text, .heza-layout-prod .wp-block-cover p { color: #fff; }
.heza-layout-prod .wp-block-cover .wp-block-button__link { background: var(--heza-c-primary); color: #fff; border-radius: 2px; font-weight: 600; text-decoration: none; }
.heza-layout-prod .wp-block-cover .wp-block-buttons { justify-content: center; }

/* ==========================================================================
   Dải ảnh nền thành phố + lớp phủ xanh HEZA (PROD: bg-lienhe + #007BB0 ~85%) — Liên hệ, Người phát ngôn…
   Đo trên PROD: section tràn ngang, đệm 47px trên / 81px dưới, tiêu đề trắng 30px/600 hoa cách 30px,
   thẻ trắng bo 16px gồm 2 cột 35% / 65% (khung hẹp 774px), đệm cột 48/20/59/43 và 48/40/59/20.
   ========================================================================== */
.heza-layout-prod .heza-pc--photo {
  position: relative;
  isolation: isolate;
  margin-inline: calc(50% - 50vw) !important;
  padding: 47px max(20px, calc(50vw - 645px)) 81px;
  background: url("/wp-content/uploads/2023/06/bg-lienhe.png") center / cover no-repeat;
}
.heza-layout-prod .heza-pc--photo::before { content: ''; position: absolute; inset: 0; z-index: -1; background: #007BB0; opacity: .85; }
.heza-layout-prod .heza-pc--photo .heza-pc-title { margin-bottom: 30px; text-align: center; }
.heza-layout-prod .heza-pc--photo .heza-pc-title::before { content: none; }
.heza-layout-prod .heza-pc--photo .heza-pc--inner { margin-top: 0; margin-bottom: 0; }
.heza-layout-prod .heza-pc--photo .wp-block-columns { gap: 0; margin: 0; align-items: stretch; }
.heza-pc-col--white { box-sizing: border-box; background: #fff; padding: 48px 40px 59px 20px; }
.heza-pc-col--white:first-child { padding: 48px 20px 59px 43px; border-radius: 16px 0 0 16px; }
.heza-pc-col--white:last-child { border-radius: 0 16px 16px 0; }
.heza-pc-col--white:only-child { border-radius: 16px; }
.heza-pc-col--white .wp-block-image, .heza-pc-col--white .wp-block-image img:not(.emoji) { margin: 0 auto !important; }
.heza-pc-col--white:first-child { display: flex; align-items: center; justify-content: center; }
.heza-pc-col--white .heza-pc-title { margin: 0 0 12px; text-align: left; color: #6EC1E4; font-size: 20px; line-height: 30px; text-transform: none; }

/* Hộp icon + chữ ngang: kiểu chữ theo cài đặt widget (is-upper / is-sm / is-regular) */
.heza-layout-prod .heza-pc-box--left .heza-feature__title { color: var(--heza-c-dark); font-size: 20px; font-weight: 600; line-height: 28px; text-transform: none; }
.heza-layout-prod .heza-pc-box--left .heza-feature__title a { color: inherit; }
.heza-layout-prod .heza-pc-box--left.is-upper .heza-feature__title { color: var(--heza-c-blue); text-transform: uppercase; }
.heza-layout-prod .heza-pc-box--left.is-sm .heza-feature__title { font-size: 16px; line-height: 24px; }
.heza-layout-prod .heza-pc-box--left.is-regular .heza-feature__title { font-weight: 400; color: var(--heza-c-text); }
.heza-layout-prod .heza-pc-box--left.is-sm .heza-feature { gap: 12px; margin-bottom: 2px; }
.heza-layout-prod .wp-block-post-content .heza-pc-box--left.is-sm .heza-feature > img:not(.emoji):not(.wp-smiley):not([width="16"]):not([height="16"]) { width: 24px !important; max-width: 24px !important; max-height: 24px !important; border-radius: 50%; }

/* Đường kẻ đứt dưới đoạn văn (widget có border-bottom dashed) */
.heza-pc-text.has-rule-dashed { margin-bottom: 22px; padding-bottom: 22px; border-bottom: 1px dashed var(--heza-c-blue); }

@media (max-width: 781px) {
  .heza-layout-prod .heza-pc--photo { padding: 32px 20px 40px; }
  .heza-pc-col--white, .heza-pc-col--white:first-child, .heza-pc-col--white:last-child { padding: 20px; }
  .heza-pc-col--white:first-child { border-radius: 16px 16px 0 0; }
  .heza-pc-col--white:last-child { border-radius: 0 0 16px 16px; }
}

/* Dải ảnh ở đầu/cuối nội dung sát thanh menu và dải liên kết như PROD (bỏ đệm main và khoảng cách tự động 24px của khung WP) */
.heza-layout-prod main:has(.wp-block-post-content > .heza-pc--photo:first-child) { padding-top: 0 !important; }
.heza-layout-prod main:has(.wp-block-post-content > .heza-pc--photo:first-child) > .alignwide { margin-block-start: 0 !important; }
.heza-layout-prod main:has(.wp-block-post-content > .heza-pc--photo:last-child) { padding-bottom: 0 !important; }
.wp-site-blocks:has(.wp-block-post-content > .heza-pc--photo:last-child) .heza-footer-portals { margin-top: 0 !important; }
/* Tiêu đề trong thẻ trắng căn trái (đặc thù hơn quy tắc căn giữa của tiêu đề dải) */
.heza-layout-prod .heza-pc--photo .heza-pc-col--white .heza-pc-title { margin: 0 0 12px; text-align: left; font-size: 20px; line-height: 30px; }
.heza-pc-col--white .heza-pc-text { color: #7A7A7A; font-weight: 300; }
.heza-pc-col--white .heza-pc-text ul { margin: 0; }
.heza-red, .heza-red a, a.heza-red { color: var(--heza-c-primary) !important; font-weight: 700; font-style: italic; }

/* Gallery một ảnh (thư cảm ơn…): WP co ảnh theo cột của gallery; PROD hiện ảnh gần đủ rộng, tối đa kích thước gốc */
.heza-layout-prod .wp-block-gallery.has-nested-images { display: block; margin: 0; }
/* WP dùng :not(#individual-image) để tăng độ ưu tiên → phải lặp mẹo này */
.heza-layout-prod .wp-block-gallery.has-nested-images.has-nested-images figure.wp-block-image:not(#individual-image):only-child { width: 100%; flex-basis: 100%; max-width: none; margin: 0 auto; }
.heza-layout-prod .wp-block-gallery.has-nested-images > figure.wp-block-image:only-child img:not(.emoji) { width: 100% !important; height: auto !important; }
.heza-tt-crumbs--page { margin-bottom: 18px; }
.heza-layout-prod .heza-page-main:has(.heza-tt-crumbs--page) { padding-top: 22px !important; }

.heza-layout-prod .heza-pc--photo .heza-pc-col--white .heza-pc-title { color: #6EC1E4; }
.heza-red, .heza-red a, a.heza-red { text-decoration: none !important; }

/* ==========================================================================
   Bổ sung 2026-10-13 22:30 — để block cũ dùng được trong khối wp:html (danh mục block, skill heza-page-prototype)
   ========================================================================== */
/* Cột: WordPress chỉ nạp CSS core/columns khi trang có khối Columns thật → dựng lại hành vi đó cho .wp-block-columns viết tay */
.heza-layout-prod .heza-pc-section > .wp-block-columns { display: flex; flex-wrap: nowrap; box-sizing: border-box; }
.heza-layout-prod .heza-pc-section > .wp-block-columns.are-vertically-aligned-center { align-items: center; }
.heza-layout-prod .heza-pc-section > .wp-block-columns > .wp-block-column { flex-grow: 1; min-width: 0; word-break: break-word; overflow-wrap: break-word; }
@media (max-width: 781px) {
  .heza-layout-prod .heza-pc-section > .wp-block-columns:not(.is-not-stacked-on-mobile) { flex-wrap: wrap; }
  .heza-layout-prod .heza-pc-section > .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis: 100% !important; }
}
/* Tab (assets/js/heza-tabs.js dựng từ các <details> trong .heza-tabs) — kiểu tab của PROD: chữ #6EC1E4 16/600, tab chọn #61CE70 có viền, khung #D5D8DC */
.heza-layout-prod .heza-tabs.is-tabbed { margin-block: 24px; }
.heza-layout-prod .heza-tabs__nav { display: flex; margin-bottom: -1px; }
.heza-layout-prod .heza-tabs--right .heza-tabs__nav { justify-content: flex-end; }
.heza-layout-prod .heza-tabs__nav button { padding: 20px 25px; border: 1px solid transparent; border-bottom: 0; background: none; color: #6EC1E4; font-family: Roboto, sans-serif; font-size: 16px; font-weight: 600; line-height: 16px; cursor: pointer; }
.heza-layout-prod .heza-tabs__nav button.is-active { position: relative; border-color: #D5D8DC; background: #fff; color: #61CE70; }
.heza-layout-prod .heza-tabs.is-tabbed > details { min-height: 150px; margin: 0; padding: 20px; border: 1px solid #D5D8DC; border-radius: 0; background: #fff; }
.heza-layout-prod .heza-tabs.is-tabbed > details > summary { display: none; }
.heza-layout-prod .heza-tabs.is-tabbed > details[hidden] { display: none; }
.heza-layout-prod .heza-tabs.is-tabbed > details ul { margin: 0; padding-left: 20px; color: #7A7A7A; font-family: Roboto, sans-serif; font-size: 16px; line-height: 24px; }
.heza-layout-prod .heza-tabs.is-tabbed > details li { margin: 0 0 12px; }
.heza-layout-prod .heza-tabs.is-tabbed > details li a { color: #1D2128; font-size: 14px; font-weight: 700; text-decoration: none; }
.heza-layout-prod .heza-tabs.is-tabbed > details h6 { margin: 0; font-size: inherit; }
