/* Be Vietnam Pro — tải từ Google Fonts, phục vụ tại chỗ.
   Đủ ba tập con: vietnamese, latin-ext, latin. Thiếu tập vietnamese thì
   mọi chữ có dấu rơi về phông hệ thống và hỏng ngay. */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-400-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-400-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-500-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-500-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-500-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-600-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-600-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-600-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-700-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-700-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/be-vietnam-pro-700-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
/* HANATECH ver3 — chỉnh trên nền template Nexas.
   Chỉ ghi đè đúng những chỗ đã đo được là sai, không đụng phần còn lại. */

/* Logo header desktop: ảnh nguồn 341×112, hiển thị 42px.
   Logo header mobile: 50px, bằng logo chân trang trước khi gấp đôi. */
.main-logo { height: 42px !important; width: auto !important; }
.mobile-logo { height: 50px !important; width: auto !important; }

/* Logo desktop lùi khỏi mép trái viên thuốc. Elementor đặt
   `.elementor-element-b29f4d4 .nav-menu { padding: 0px 8px; }` — không qua
   biến --padding-left — nên padding-left kèm !important ăn được. 22px nằm
   giữa khoảng 20–24px chủ dự án yêu cầu. Chỉ ≥768px (lúc .main-logo hiện);
   dưới 768px giữ 8px để lưới canh giữa không lệch. */
@media (min-width: 768px) {
  .elementor-element-b29f4d4 .nav-menu.header-five {
    padding-left: 22px !important;
  }
}

/* Logo mobile canh giữa viên thuốc. Thanh là flex + space-between (logo ·
   menu · CTA); menu ẩn dưới xl nên flex hai cột kéo logo sang trái. Đổi
   sang lưới 1fr / auto / 1fr: cột giữa mang logo, hai cột 1fr bằng nhau
   nên tâm logo trùng tâm viên thuốc. CTA (cột 3, justify-self:end) không
   chồng lên logo. */
@media (max-width: 767px) {
  /* Bù khoảng đệm cho phần thân để không bị che bởi menu top: 0 */
  body {
    padding-top: 68px !important;
  }
  .nav-menu.header-five {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    /* 1. Bỏ bo tròn */
    border-radius: 0 !important;
    /* 2. Sát mép trên, trải hết bề ngang khung nhìn, bỏ khoảng hở hai bên, chống tràn 404px */
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    /* 3. Chiều cao thanh menu 68px */
    height: 68px !important;
    min-height: 68px !important;
  }
  .nav-menu.header-five > div:first-child {
    grid-column: 2;
    justify-self: center;
  }
  .nav-menu.header-five > div:last-child {
    grid-column: 3;
    justify-self: end;
    position: relative;
    z-index: 2;
  }
}

/* Logo chân trang: gấp đôi 50 → 100px. Chỉ ảnh trong footer, không đụng
   logo header. */
.hanatech-footer img[src*="logo-sang"] {
  height: 100px !important;
  width: auto !important;
  max-width: none !important;
}

/* Chữ chân trang: 14px quá nhỏ so với phần còn lại của trang. */
.hanatech-menu-footer .hanatech-menu-item,
.hanatech-menu-footer .footer-link {
  font-size: 16px !important;
  line-height: 1.6 !important;
}
.hanatech-menu-footer li + li { margin-top: 2px; }

/* Sáu biểu tượng mạng xã hội chân trang. Template chỉ nạp widget-icon-list.css
   trên một số trang, và --e-icon-list-icon-size không được khai. Hệ quả đo
   được: trang chủ 20px một hàng có gạch; trang khác 13px xếp dọc. Khai tường
   minh trên CSS dùng chung, không bám body.home / page-id-*. Độ cụ thể cố ý
   cao hơn `.hanatech-footer a { font-size: 13px }` của bước 12. */
.elementor-element-557480e8,
.hanatech-da-xu-ly-xh {
  --e-icon-list-icon-size: 20px;
}
html body .elementor-element-557480e8 .elementor-icon-list-items,
html body .hanatech-da-xu-ly-xh .elementor-icon-list-items,
html body .elementor-element-557480e8 .elementor-icon-list-items.elementor-inline-items,
html body .hanatech-da-xu-ly-xh .elementor-icon-list-items.elementor-inline-items {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .elementor-element-557480e8 .elementor-icon-list-item,
html body .hanatech-da-xu-ly-xh .elementor-icon-list-item {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  margin: 0 8px !important;
  padding: 0 !important;
  position: relative;
}
/* widget-icon-list.min.css đặt width:1.25em trên i — với font-size 20px ra
   hộp 25px. Trang chủ nạp stylesheet ấy, 13 trang kia không, nên đo được
   25×20 vs 20×20. Ghim 20px + inline-flex để width ăn trên mọi trang. */
html body .elementor-element-557480e8 .elementor-icon-list-icon,
html body .hanatech-da-xu-ly-xh .elementor-icon-list-icon {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
html body .elementor-element-557480e8 .elementor-icon-list-icon i,
html body .hanatech-da-xu-ly-xh .elementor-icon-list-icon i,
html body .elementor-element-557480e8 .elementor-icon-list-icon svg,
html body .hanatech-da-xu-ly-xh .elementor-icon-list-icon svg {
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  line-height: 20px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}
html body .elementor-element-557480e8 .elementor-icon-list-item a,
html body .hanatech-da-xu-ly-xh .elementor-icon-list-item a {
  font-size: 20px !important;
  display: flex !important;
  align-items: center !important;
}
html body .elementor-element-557480e8 .elementor-icon-list-item:not(:last-child)::after,
html body .hanatech-da-xu-ly-xh .elementor-icon-list-item:not(:last-child)::after {
  content: "";
  display: block !important;
  width: 1px;
  height: 14px;
  margin-left: 8px;
  background: currentColor;
  opacity: 0.35;
}
html body .hanatech-da-xu-ly-xh a[aria-disabled="true"] {
  pointer-events: none;
  cursor: default;
}

/* Dòng định vị trong hero. Nguyên bản là một hàng ngang gồm ba ảnh khuôn mặt
   rồi mới tới chữ. Ba ảnh đó là ảnh kho, đã gỡ ở bước 8 cùng cả khung chứa,
   nên phần chữ còn lại nằm lệch trái. Cho hàng ngang canh giữa.

   Elementor lái justify-content qua biến --justify-content, nên đặt thẳng
   thuộc tính (kể cả kèm !important) KHÔNG ăn — đo được computed vẫn là
   "normal". Phải đặt đúng biến của nó. */
.elementor-element-260c26a { --justify-content: center; }
.elementor-element-f5afb58 { align-items: center !important; width: auto !important; }
.elementor-element-deb9d09 { width: auto !important; max-width: none !important; }
.elementor-element-deb9d09 .elementor-heading-title {
  white-space: nowrap; text-align: center;
}


/* ================= NÚT BẤM — bản chủ dự án chốt 22/08 ================= */
/* Ba thay đổi so với vòng trước:
   1. BỎ HẲN hiệu ứng rê chuột. Vòng trước chủ dự án dặn hai lần giữ chuyển
      động nhảy sang một bên; lần này chốt bỏ. Bỏ nghĩa là bỏ cả đổi màu lẫn
      dịch chuyển — nếu chỉ tắt màu thì ô biểu tượng vẫn nhảy.
   2. Nút ở thanh menu GIỮ bo tròn viên thuốc như mẫu template; hai mẫu nút
      trong nội dung thì bo 12px theo tấm nhận diện.
   3. Ô biểu tượng bên trong: nút nền xanh → ô TRẮNG; nút nền trắng → ô XANH.
      Vòng trước ô của nút chính vẫn là dải màu aqua của template. */

/* --- tắt hiệu ứng rê chuột --- */
.hanatech-button:hover,
.header-cta-btn:hover {
  background-color: inherit;
}

/* --- nút ở thanh menu: giữ viên thuốc như mẫu --- */
.header-cta-btn,
.header-cta-btn .hanatech-button {
  border-radius: 99px !important;
}
.header-cta-btn [data-button-v3-icon] {
  border-radius: 99px !important;
  background-color: #ffffff !important;
  background-image: none !important;
}
.header-cta-btn [data-button-v3-icon] svg path {
  fill: #0560FE !important;
}

/* --- ô biểu tượng của nút chính: trắng, không còn dải aqua --- */
.hanatech-button [data-button-v3-icon] {
  background-color: #ffffff !important;
  background-image: none !important;
}
.hanatech-button [data-button-v3-icon] svg path {
  fill: #0560FE !important;
}

/* ================= mục 9 bộ nhận diện ================= */
/* Nút chính là MẶC ĐỊNH cho mọi nút; nút phụ gọi thẳng mã widget mà tầng 1
   nhận diện được. Không dựa vào việc đoán luật nào thắng luật nào — đã thử hai
   lần và cả hai lần màu chữ đều ra navy nằm trên nền xanh.

   KHÔNG đặt transform/transition/kích thước cho [data-button-v3-icon]: vòng
   tròn phải giữ nguyên hiệu ứng nhảy sang một bên của template. */

.hanatech-button,
.hanatech-button [data-button-v3-text],
.header-cta-btn [data-button-v3-text] {
  color: #ffffff !important;
}
.hanatech-button {
  background-color: #0560FE !important;
  border-color: #0560FE !important;
}
.header-cta-btn {
  background-color: #0560FE !important;
  border-color: #D7DDE5 !important;
}

/* Nút phụ: 1 widget — b2e6e80 */
.elementor-element-b2e6e80 .hanatech-button,
.elementor-element-b2e6e80 .hanatech-button [data-button-v3-text] {
  color: #0560FE !important;
}
.elementor-element-b2e6e80 .hanatech-button {
  background-color: #ffffff !important;
  border-color: #D6E1FB !important;
}

/* Bo góc: template ghim 99px (viên thuốc) ở nhiều lớp tiện ích cùng lúc, còn
   bộ nhận diện vẽ nút là hình chữ nhật bo tròn. */
.hanatech-button,
.hanatech_button_wrap .hanatech-button {
  border-radius: 12px !important;
  border-style: solid !important;
  border-width: 1px !important;
}
.header-cta-btn,
.header-cta-btn .hanatech-button {
  border-radius: 99px !important;
  border-style: solid !important;
  border-width: 1px !important;
}
.hanatech-button [data-button-v3-icon] {
  border-radius: calc(12px - 3px) !important;
}

/* Ô biểu tượng của nút phụ đang là navy #0b1633 của bảng màu cũ, chọi với nền
   trắng và chữ xanh. Đưa về xanh thương hiệu. Chỉ đổi MÀU — không đụng kích
   thước hay chuyển động, để vòng tròn vẫn nhảy sang một bên khi rê chuột. */
.elementor-element-b2e6e80 [data-button-v3-icon] {
  background-color: #0560FE !important;
  background-image: none !important;
}
.elementor-element-b2e6e80 [data-button-v3-icon] svg path {
  fill: #ffffff !important;
}

/* Khối tắt hiệu ứng rê chuột đã gỡ — chủ dự án chốt GIỮ hiệu ứng trượt của template, chỉ bỏ ĐỔI MÀU khi rê chuột. */

/* Biến màu còn sót của template: --color-primary-600 vẫn là tím #7c31f6, dùng
   ở 10 chỗ. Đưa về xanh đậm hơn primary-500 cho đúng thang màu. */
:root {
  --color-primary-600: #1d4ed8;
}

/* ================= CÔNG TẮC ================= */
.hanatech-pricing-billing-toggle-track {
  background-color: #ffffff !important;
  border: 1px solid #D6E1FB !important;
}
.hanatech-pricing-billing-toggle-track::after {
  background-color: #0560FE !important;
}
input:checked ~ .hanatech-pricing-billing-toggle-track {
  background-color: #ffffff !important;
  border: 1px solid #D6E1FB !important;
}
input:checked ~ .hanatech-pricing-billing-toggle-track::after {
  background-color: #0560FE !important;
}


/* ================= THANG CHỮ — lấy cỡ của hamia.vn ================= */
/* HT-4: không chép line-height:1.11 — hộp 1,11 + overflow:hidden cắt dấu
   tiếng Việt (ế ộ ũ g). Tiêu đề lớn ≥ 1,25. h1.hnt-h1-seo không lấy cỡ 68px. */

:root {
  --hnt-h1: clamp(42px, 5vw, 68px);
  --hnt-h2: clamp(30px, 3.5vw, 46px);
  --hnt-h3: 20px;
  --hnt-lead: clamp(17px, 2vw, 20px);
}

html, body,
body .elementor-widget-container,
button, input, select, textarea {
  font-family: 'Be Vietnam Pro', system-ui, -apple-system, 'Segoe UI', sans-serif;
}
body {
  font-size: 16px !important;
  line-height: 1.7 !important;
}

h1:not(.hnt-h1-seo),
.elementor-widget-heading h1 .elementor-heading-title,
h1 .hanatech_heading {
  font-size: var(--hnt-h1) !important;
  line-height: 1.25 !important;
  letter-spacing: -0.055em !important;
  overflow: visible !important;
}
h2, .elementor-widget-heading h2 .elementor-heading-title {
  font-size: var(--hnt-h2) !important;
  line-height: 1.25 !important;
  letter-spacing: -0.045em !important;
  overflow: visible !important;
}
h3, .elementor-widget-heading h3 .elementor-heading-title {
  font-size: var(--hnt-h3) !important;
  line-height: 1.35 !important;
  letter-spacing: -0.02em !important;
  overflow: visible !important;
}

/* H1 SEO: b17 ẩn bằng hộp 1px + overflow:hidden. b12 từng gắn 68px/1.11 lên
   mọi h1 nên hộp ấy cắt đúng 79px — cổng HT-4 đỏ. Trả về cỡ ẩn, overflow
   visible (clip-path của b17 vẫn giấu chữ). !important vì b17 chạy sau b12. */
h1.hnt-h1-seo {
  font-size: 1px !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  overflow: visible !important;
}

/* SplitText mask:lines — overflow:hidden trên hộp dòng là hiệu ứng trượt.
   Chỉ nới hộp dòng trong tiêu đề, không đụng đoạn thân (tránh xô khối). */
h1 .text-reveal-line,
h2 .text-reveal-line,
h3 .text-reveal-line,
.hanatech_heading .text-reveal-line {
  padding-top: 0.12em;
  padding-bottom: 0.18em;
}

/* Lời dẫn */
.lead {
  font-size: var(--hnt-lead) !important;
  line-height: 1.75 !important;
}

/* Nhãn nhỏ */
.eyebrow {
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

/* Tên thương hiệu cạnh logo */
.brand, .site-branding {
  font-weight: 800 !important;
  letter-spacing: -.03em !important;
}

/* Menu chính */
.main-nav, .elementor-nav-menu, .nav-item-link, .menu-item a {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #0B1633 !important;
  opacity: 1 !important;
}

#menu-primary-menu a:not(.btn) {
  position: relative;
}
#menu-primary-menu a:not(.btn)::after {
  content: "";
  position: absolute;
  left: 0; right: 100%; bottom: 0;
  height: 2px;
  border-radius: 2px;
  background: #0560FE;
  transition: right .25s cubic-bezier(.2, .8, .3, 1);
}
#menu-primary-menu a:not(.btn):hover::after { right: 0; }
#menu-primary-menu a:not(.btn):hover { color: #0560FE !important; }

/* ================= CHÂN TRANG ================= */
.hanatech-footer h2 {
  margin: 0 0 16px !important;
  color: #0B1633 !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.hanatech-footer a {
  font-size: 13px !important;
  color: #0B1633 !important;
}

/* ================= BÓNG ĐỔ THANH MENU ================= */
/* Chỉ hiện bóng sau khi cuộn bằng lớp trạng thái có sẵn của template */
.header-five-scroll {
  box-shadow: 0 1px 0 rgba(11, 22, 51, .06), 0 6px 24px rgba(11, 22, 51, .06) !important;
}


/* ================= CHỮ HERO TRÊN NỀN VIDEO TỐI ================= */
/* Trên máy tính (>= 768px), video hiển thị làm nền tối nên chữ màu trắng. */
@media (min-width: 768px) {
  .elementor-element-0acb096 h1,
  .elementor-element-0acb096 h2,
  .elementor-element-0acb096 .elementor-heading-title,
  .elementor-element-0acb096 p {
    color: #ffffff !important;
  }
}

/* Trên điện thoại (<= 767px), thẻ video bị Elementor ẩn đi qua lớp elementor-hidden-mobile.
   Lúc này hero lộ nền sáng, nếu chữ vẫn trắng sẽ không đọc được. 
   Do đó phải đổi chữ thành màu navy (#0B1633). */
@media (max-width: 767px) {
  .elementor-element-0acb096 h1,
  .elementor-element-0acb096 h2,
  .elementor-element-0acb096 .elementor-heading-title,
  .elementor-element-0acb096 p {
    color: #0B1633 !important;
  }
}

/* Làm tối THẲNG trên thẻ video, không dùng lớp phủ giả lập.
   Lớp phủ `::before` đặt trên `.e-con-inner` không bám — đo lại vẫn 2,51:1.
   `filter` trên chính thẻ <video> thì chắc chắn ăn, và độ sáng từng khung hình
   của video dao động nên phải hạ đều tất cả. */
.elementor-element-0acb096 video.elementor-background-video-hosted,
.elementor-element-0acb096 .elementor-background-video-container video {
  filter: brightness(.42) saturate(.85) !important;
}


/* Khối liên hệ trực tiếp — thay biểu mẫu CF7 đã gỡ. */
.hnt-lien-he-truc-tiep {
  padding: 8px 8px 24px 0;
  color: #0B1633;
  font-size: 16px;
  line-height: 1.7;
}
.hnt-lien-he-truc-tiep a {
  color: #0560FE;
  font-weight: 600;
  text-decoration: none;
}
.hnt-lien-he-truc-tiep ul {
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
}
.hnt-lien-he-truc-tiep li { margin: 8px 0; }


/* Trang 404 — cùng phông/màu với các trang khác. */
.hnt-404 {
  max-width: 720px;
  margin: 0 auto;
  padding: 120px 24px 96px;
  text-align: center;
  color: #0B1633;
}
.hnt-404-eyebrow {
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin: 0 0 12px;
  color: #0560FE;
}
.hnt-404 h1 {
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.2;
  letter-spacing: -0.02em;
  margin: 0 0 16px;
  color: #0B1633;
}
.hnt-404 p {
  font-size: 16px;
  line-height: 1.7;
  margin: 0 0 24px;
}
.hnt-404-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 28px;
  margin: 0 0 32px;
}
.hnt-404-nav a {
  color: #0560FE;
  font-weight: 600;
  text-decoration: none;
  font-size: 16px;
}
.hnt-404-lien a { color: #0560FE; font-weight: 600; }


/* ================= CHỮ TRÊN ẢNH CHỤP ================= */
/* CTA: ảnh tuyệt đối CTA-Global-img nằm sau chữ navy. Phủ trắng giữa ảnh và chữ.
   Khối: trang chủ cf9774e · giới thiệu 9bd019e · sản phẩm 517b2b7 ·
   tin tức 05f9b33 · liên hệ 9e0726f. Ảnh vẫn hiện qua lớp 0.50. */
.elementor-element-cf9774e,
.elementor-element-9bd019e,
.elementor-element-517b2b7,
.elementor-element-05f9b33,
.elementor-element-9e0726f {
  position: relative;
}
.elementor-element-cf9774e::before,
.elementor-element-9bd019e::before,
.elementor-element-517b2b7::before,
.elementor-element-05f9b33::before,
.elementor-element-9e0726f::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, .50);
  pointer-events: none;
  z-index: 1;
  border-radius: inherit;
}
.elementor-element-cf9774e > :not(.elementor-absolute),
.elementor-element-9bd019e > :not(.elementor-absolute),
.elementor-element-517b2b7 > :not(.elementor-absolute),
.elementor-element-05f9b33 > :not(.elementor-absolute),
.elementor-element-9e0726f > :not(.elementor-absolute) {
  position: relative;
  z-index: 2;
}

/* Cam kết /gioi-thieu/: chữ trắng trên ảnh opai-29 xoay+nhoè.
   ::before trên khung không bám (ảnh transform/filter nằm trên lớp phủ).
   Phủ navy thẳng trên widget ảnh, inset âm vì ảnh bị xoay 60deg. */
.elementor-element-57f0dd1f::after {
  content: "";
  position: absolute;
  inset: -80%;
  background: rgba(11, 22, 51, .40);
  pointer-events: none;
}

/* Tiêu đề thẻ tin: bọc span.hnt-blog-chu — visibility:hidden ăn trên span. */
.hanatech_blog_wrapper h3.blog-title {
  -webkit-line-clamp: unset !important;
  line-clamp: none !important;
  display: block !important;
}
.hanatech_blog_wrapper h3.blog-title span.hnt-blog-chu {
  font-style: inherit;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
}

/* ================= B20: BỐ CỤC ================= */

/* 2.1 1c077ee — ba mục một hàng, sát đoạn mô tả, gỡ ngôi sao đè chữ */
.elementor-element-1c077ee .elementor-element-df0f426 {
  margin-top: 24px !important;
  height: auto !important;
  min-height: 0 !important;
  align-items: flex-start !important;
  position: static !important;
  transform: none !important;
}
.elementor-element-1c077ee .elementor-element-74d72f8 {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  gap: 16px !important;
  height: auto !important;
}
.elementor-element-1c077ee .elementor-element-83a53ff,
.elementor-element-1c077ee .elementor-element-37fa416 {
  display: contents !important;
}
.elementor-element-1c077ee .elementor-element-a8cc73d,
.elementor-element-1c077ee .elementor-element-dde061b,
.elementor-element-1c077ee .elementor-element-d2e7634 {
  flex: 1 1 0 !important;
  width: auto !important;
  max-width: 100% !important;
}
.elementor-element-1c077ee .hanatech_counter_wrapper[data-display="vertical"],
.elementor-element-1c077ee .hanatech_counter_wrapper {
  text-align: left !important;
  display: flex !important;
  align-items: center !important;
  flex-direction: row !important;
  gap: 8px !important;
}
.elementor-element-1c077ee .elementor-element-bf13325 {
  display: none !important;
}

/* 2.2 08c8fea — HT-6: GỠ HẲN hiệu ứng cuộn dính. JS process (GSAP
   yPercent) kéo chữ ra ngoài vùng vẽ: thẻ còn trong viewport, opacity 1,
   DOM đủ chữ, nhưng khung nhìn ra trắng. Python đổi data-process-cards
   để JS không khởi tạo; CSS xếp bốn bước thành khối thường. */
.elementor-element-08c8fea {
  overflow: visible !important;
  height: auto !important;
  flex-direction: column !important;
  padding-bottom: 72px !important;
}
.elementor-element-b78d8cf,
.elementor-element-b78d8cf .elementor-widget-container {
  height: auto !important;
  overflow: visible !important;
  display: flex !important;
  flex-direction: column !important;
}
.elementor-element-b78d8cf .elementor-widget-container > * {
  position: relative !important;
  transform: none !important;
  inset: auto !important;
  top: auto !important;
  left: auto !important;
  height: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 auto !important;
  margin-bottom: 24px !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.elementor-element-b78d8cf .elementor,
.elementor-element-6bcf6fa,
.elementor-element-45af6d1,
.elementor-element-923c6c9,
.elementor-element-222d471 {
  position: relative !important;
  transform: none !important;
  top: auto !important;
  left: auto !important;
  inset: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 24px 0 !important;
  display: flex !important;
  flex-direction: column !important;
}
.elementor-element-08c8fea .gsap-animation {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}
.hanatech-process-wrapper,
.hanatech-process-cards,
[data-hnt-process-stack] {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 100% !important;
  position: relative !important;
}
.hanatech-process-card-item,
[data-hnt-process-item] {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  left: auto !important;
  height: auto !important;
  min-height: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
  pointer-events: auto !important;
}
.elementor-element-08c8fea [data-process-content],
.elementor-element-08c8fea [data-process-image],
.elementor-element-08c8fea [data-process-content-wrap],
.elementor-element-08c8fea .hanatech-process-content {
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
  overflow: visible !important;
  position: relative !important;
}
.elementor-element-08c8fea [data-process-timeline] {
  display: none !important;
}
.elementor-element-08c8fea img[src*="opai-avatar"],
.elementor-element-08c8fea img[src*="Ellipse-765"],
.elementor-element-08c8fea img[src*="ns-avatar"] {
  display: none !important;
}

/* 2.3 d6dbe9b — ba lý do một hàng; thẻ ảnh không tràn; bốn thẻ đều */
.elementor-element-d6dbe9b .elementor-element-26e731d {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  max-width: 100% !important;
  justify-content: space-between !important;
  gap: 16px !important;
}
.elementor-element-d6dbe9b .elementor-element-26e731d > .e-con {
  flex: 1 1 28% !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 12px !important;
}
.elementor-element-d6dbe9b .elementor-element-26e731d .elementor-icon,
.elementor-element-d6dbe9b .elementor-element-26e731d .elementor-icon-wrapper,
.elementor-element-d6dbe9b .elementor-element-26e731d i,
.elementor-element-d6dbe9b .elementor-element-26e731d svg {
  position: static !important;
  margin-right: 8px !important;
  flex: 0 0 auto !important;
}
.elementor-element-d6dbe9b .elementor-element-26e731d .hanatech_heading,
.elementor-element-d6dbe9b .elementor-element-26e731d h2,
.elementor-element-d6dbe9b .elementor-element-26e731d h3,
.elementor-element-d6dbe9b .elementor-element-26e731d p {
  font-style: normal !important;
  width: auto !important;
}
.elementor-element-d6dbe9b .elementor-element-602d6be {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  max-width: 100% !important;
  gap: 16px !important;
  align-items: stretch !important;
}
.elementor-element-d6dbe9b .elementor-element-606c180,
.elementor-element-d6dbe9b .elementor-element-7942a2a,
.elementor-element-d6dbe9b .elementor-element-fbf1ac7,
.elementor-element-d6dbe9b .elementor-element-f032738 {
  flex: 1 1 22% !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
.elementor-element-d6dbe9b img {
  object-fit: cover !important;
  max-width: 100% !important;
  width: 100% !important;
}
/* hai ảnh mã nguồn phụ đè nhau trong thẻ 2 */
.elementor-element-d6dbe9b .elementor-element-0abd76c {
  display: none !important;
}

/* 2.4 3bb9f31 — 4 thẻ lưới 2×2, tiêu đề không cắt dấu, bỏ cột ảnh mẫu */
.elementor-element-3bb9f31 h2,
.elementor-element-3bb9f31 h2.hanatech_heading,
.elementor-element-3bb9f31 .hanatech_heading {
  overflow: visible !important;
  line-height: 1.35 !important;
  padding-bottom: 0.2em !important;
  letter-spacing: -0.02em !important;
}
.elementor-element-3bb9f31 .elementor-element-d608cc9 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px !important;
  width: 100% !important;
  max-width: 100% !important;
}
.elementor-element-3bb9f31 .elementor-element-39747da,
.elementor-element-3bb9f31 .elementor-element-fc1cb8a,
.elementor-element-3bb9f31 .elementor-element-1b8a160 {
  display: contents !important;
}
.elementor-element-3bb9f31 .elementor-element-5f8a788,
.elementor-element-3bb9f31 .elementor-element-9a8e47f,
.elementor-element-3bb9f31 .elementor-element-bef54b9 {
  display: none !important;
}

/* 2.5 tràn ngang 390px — tìm phần tử tràn, không overflow-x:hidden trên body */
.hanatech-pricing-table-wrapper,
.hanatech_pricing_tab,
.hanatech-pricing-table-wrapper * {
  box-sizing: border-box !important;
  max-width: 100% !important;
}
@media (max-width: 767px) {
  img, video, canvas, svg, iframe {
    max-width: 100% !important;
    height: auto !important;
  }
  .e-con, .e-con-inner, .elementor-widget-container {
    box-sizing: border-box !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  .elementor-element-7f0f30b .e-con-inner,
  .elementor-element-7f0f30b .e-con {
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  .elementor-element-1130e74,
  .elementor-element-d45ff5e,
  .elementor-element-0641eb7,
  .elementor-element-f032738,
  .elementor-element-e60c373,
  .elementor-element-ad173f1,
  .elementor-element-606c180,
  .elementor-element-7942a2a,
  .elementor-element-fbf1ac7 {
    width: 100% !important;
    max-width: 100% !important;
  }
  .elementor-element-c658d9a {
    position: static !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
  }
  .elementor-element-7f0f30b .elementor-element-a9307f4,
  .elementor-element-7f0f30b .elementor-element-0641eb7 {
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  /* Bảng giá: JS dựng lưới 2 cột — thẻ phải bị bóp 48px, cao 1728px */
  .hanatech-pricing-plan,
  .hanatech-pricing-plan-content-wrap {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
  .hanatech-pricing-plan-tabs,
  .hanatech-pricing-card {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    flex: 1 1 auto !important;
  }
  /* GSAP data-direction=left dịch 60px → scrollWidth 430 lúc mới tải */
  .gsap-animation {
    transform: none !important;
  }
  /* /gioi-thieu/: ảnh tuyệt đối + xoay (57f0dd1f) thò ra 529px */
  .elementor-element-57f0dd1f,
  .elementor-element-57f0dd1f img {
    position: relative !important;
    transform: none !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
  .elementor-element-5d757e3f,
  .elementor-element-2e33a900,
  .elementor-element-24f789a5 {
    left: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }
  .nav-menu.header-five {
    left: 0 !important;
    right: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .elementor-element-d6dbe9b .elementor-element-26e731d,
  .elementor-element-d6dbe9b .elementor-element-602d6be,
  .elementor-element-5b73763 .elementor-element-4c69544,
  .elementor-element-3bb9f31 .elementor-element-d608cc9 {
    flex-direction: column !important;
    grid-template-columns: 1fr !important;
  }
}

/* 2.6 5b73763 — gỡ cụm avatar/+243/sao (HTML cắt +243; CSS ẩn phần còn),
   ba thẻ dàn đều hết bề rộng */
.elementor-element-5b73763 .elementor-element-003e9a4,
.elementor-element-5b73763 .elementor-element-c4c74bc,
.elementor-element-5b73763 .elementor-element-d7779ab {
  display: none !important;
}
.elementor-element-5b73763 .elementor-element-78ab849 {
  min-height: 0 !important;
  height: auto !important;
  width: 100% !important;
  max-width: 100% !important;
}
.elementor-element-5b73763 .elementor-element-ed68a4d {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 100% !important;
  gap: 16px !important;
}
.elementor-element-5b73763 .elementor-element-4c69544 {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  max-width: 100% !important;
  gap: 16px !important;
  margin-top: 24px !important;
}
.elementor-element-5b73763 .elementor-element-3654d21 {
  display: contents !important;
}
.elementor-element-5b73763 .elementor-element-5198411,
.elementor-element-5b73763 .elementor-element-b4c6361,
.elementor-element-5b73763 .elementor-element-7839126 {
  flex: 1 1 0 !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
.elementor-element-5b73763 .hanatech-flip-card-title,
.elementor-element-5b73763 .hanatech-flip-card-description {
  text-align: left !important;
}

/* 2.7 682254d — ảnh phủ HẾT bề rộng khối, lớp phủ tối, chữ sáng.
   Tấm ảnh gốc là widget tuyệt đối max-width:639px giữa trang. Đưa URL
   tấm đó thành background của CHÍNH khối, ẩn hộp 639px, gỡ nền trắng
   của cf9774e và lớp gradient trắng đáy (c58eda0) — không thì hai bên
   vẫn là dải xám. Overlay đặt trên 682254d (không phải cf9774e) để
   phủ cả phần padding. */
.elementor-element-682254d.e-con-boxed > .e-con-inner {
  max-width: 100% !important;
  width: 100% !important;
  position: relative;
  z-index: 2;
}
.elementor-element-682254d,
.elementor-element-682254d:not(.elementor-motion-effects-element-type-background),
.elementor-element-682254d > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  background-color: #0b1633 !important;
  background-image: url("/wp-content/uploads/2026/04/CTA-Global-img.png") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-clip: border-box !important;
}
.elementor-element-682254d::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(11, 22, 51, 0.62) !important;
  pointer-events: none;
  z-index: 1;
}
.elementor-element-cf9774e,
.elementor-element-cf9774e:not(.elementor-motion-effects-element-type-background),
.elementor-element-cf9774e > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: transparent !important;
  background-image: none !important;
  border-radius: 0 !important;
  overflow: visible !important;
  width: 100% !important;
  max-width: 100% !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}
.elementor-element-cf9774e::before {
  display: none !important;
  background: transparent !important;
}
.elementor-element-682254d .elementor-element-bcb7b97 {
  display: none !important;
}
.elementor-element-682254d .elementor-element-c58eda0 {
  display: none !important;
}
/* Nhãn «Bước tiếp theo»: chữ sáng trên viên thuốc TỐI — cùng kiểu
   Giá trị bạn nhận được / Cách chúng tôi làm việc / Hệ sinh thái.
   Trước: chữ #fff đè lên nền #fff của 88b7cab → lệch chuẩn 0. */
.elementor-element-682254d .elementor-element-88b7cab,
.elementor-element-682254d .elementor-element-88b7cab:not(.elementor-motion-effects-element-type-background),
.elementor-element-682254d .elementor-element-88b7cab > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: #0b1633 !important;
  background-image: none !important;
  border-color: rgba(255, 255, 255, 0.22) !important;
}
.elementor-element-682254d h2,
.elementor-element-682254d h2.hanatech_heading,
.elementor-element-682254d p,
.elementor-element-682254d p.hanatech_heading,
.elementor-element-682254d .elementor-icon-list-text,
.elementor-element-682254d .hanatech_heading,
.elementor-element-cf9774e h2,
.elementor-element-cf9774e p,
.elementor-element-cf9774e .hanatech_heading,
.elementor-element-cf9774e .elementor-icon-list-text {
  color: #ffffff !important;
}

/* 2.8 e71ed34 + 6bf0417 — không cắt nửa biểu tượng (overflow).
   HT-8: T và B cùng một số trong thang 24/32/0, không T80/B0 hay T48/B24. */
.elementor-element-e71ed34,
.elementor-element-6bf0417 {
  overflow: visible !important;
}

/* 2.9 6ff63a2c — ảnh trái đủ khung; Cam kết là tiêu đề cụm thẻ */
.elementor-element-6ff63a2c .elementor-element-2c6f62b img,
.elementor-element-6ff63a2c .elementor-element-109917fb img {
  object-fit: contain !important;
  max-width: 100% !important;
  width: 100% !important;
  height: auto !important;
  object-position: center left !important;
}
.elementor-element-6ff63a2c .elementor-element-68e0829b {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 16px !important;
}
.elementor-element-6ff63a2c .elementor-element-3c77f24b {
  order: -1 !important;
  width: 100% !important;
  max-width: 100% !important;
}
.elementor-element-6ff63a2c .elementor-element-4f1cdd38 {
  width: 100% !important;
  max-width: 100% !important;
}

/* 3.2 hover menu — không hiện khung (b11 đã bo góc viên thuốc, không đụng) */
.nav-item-link:hover,
.menu-item a:hover,
header .nav-item-link:hover,
header .menu-item a:hover {
  border-color: transparent !important;
}

/* HT-6 — Elementor đặt padding qua biến --padding-top/bottom 156px.
   Ghi đè CẢ biến lẫn padding. Không đụng CTA 682254d (nền ảnh lấp). */
.elementor-element-1c077ee,
.elementor-element-fa0d789,
.elementor-element-08c8fea,
.elementor-element-d6dbe9b,
.elementor-element-3bb9f31,
.elementor-element-7f0f30b,
.elementor-element-e71ed34,
.elementor-element-6bf0417,
.elementor-element-5b73763,
.elementor-element-56d4d0e {
  --padding-top: 24px !important;
  --padding-bottom: 24px !important;
  --min-height: 0px !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
  min-height: 0 !important;
  height: auto !important;
}
.elementor-element-1c077ee .gsap-animation,
.elementor-element-5b73763 .gsap-animation,
.elementor-element-e71ed34 .gsap-animation,
.elementor-element-3bb9f31 .gsap-animation {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

/* HT-6 1c077ee — 62a86f7 nằm TRONG df0f426, không phải anh em của
   03114fa. display:contents trên df0f426 để hai ảnh vào cùng cột trái,
   cùng cao 360px; ba mục có số đứng trước chữ. */
.elementor-element-1c077ee,
.elementor-element-1c077ee > .e-con-inner {
  height: auto !important;
  min-height: 0 !important;
}
.elementor-element-1c077ee .elementor-element-eebdec8 {
  --display: grid !important;
  display: grid !important;
  grid-template-columns: minmax(240px, 360px) 1fr;
  gap: 20px 32px !important;
  align-items: start !important;
  height: auto !important;
  min-height: 0 !important;
}
.elementor-element-1c077ee .elementor-element-eebdec8 > .e-con-inner {
  display: contents !important;
}
.elementor-element-1c077ee .elementor-element-03114fa {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  align-self: start !important;
}
.elementor-element-1c077ee .elementor-element-5892522 {
  display: flex !important;
  --flex-direction: column !important;
  flex-direction: column !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  gap: 12px !important;
  align-self: start !important;
}
.elementor-element-1c077ee .elementor-element-df0f426,
.elementor-element-1c077ee .elementor-element-df0f426 > .e-con-inner {
  display: contents !important;
}
.elementor-element-1c077ee .elementor-element-62a86f7 {
  grid-column: 1 !important;
  grid-row: 2 !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  align-self: start !important;
  overflow: hidden !important;
}
.elementor-element-1c077ee .elementor-element-74d72f8 {
  grid-column: 2 !important;
  grid-row: 2 !important;
  counter-reset: hnt-muc;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  align-self: start !important;
}
.elementor-element-1c077ee .elementor-element-75ea8be img,
.elementor-element-1c077ee .elementor-element-7b02ee3 img {
  width: 100% !important;
  max-width: 100% !important;
  height: 360px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 20px !important;
}
.elementor-element-1c077ee .counter-title {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  color: #0b1633 !important;
  text-align: left !important;
}
.elementor-element-1c077ee .counter-title::before {
  counter-increment: hnt-muc;
  content: counter(hnt-muc, decimal-leading-zero);
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  flex: 0 0 32px !important;
  border-radius: 8px !important;
  background: #2563ff !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}
@media (max-width: 767px) {
  .elementor-element-1c077ee .elementor-element-eebdec8 {
    grid-template-columns: 1fr !important;
  }
  .elementor-element-1c077ee .elementor-element-03114fa,
  .elementor-element-1c077ee .elementor-element-5892522,
  .elementor-element-1c077ee .elementor-element-62a86f7,
  .elementor-element-1c077ee .elementor-element-74d72f8 {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
  .elementor-element-1c077ee .elementor-element-75ea8be img,
  .elementor-element-1c077ee .elementor-element-7b02ee3 img {
    height: 220px !important;
  }
}

/* HT-6 3bb9f31 — thẻ flip: icon + tiêu đề xếp sát đầu, cao vừa nội dung.
   Trước: h-[273px] + justify-between → ~180px trắng giữa icon và chữ. */
.elementor-element-3bb9f31 .hanatech-flip-box-wrapper > div,
.elementor-element-3bb9f31 .h-\[273px\] {
  height: auto !important;
  min-height: 0 !important;
}
.elementor-element-3bb9f31 .front-side {
  height: auto !important;
  min-height: 0 !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  padding: 24px !important;
}
.elementor-element-3bb9f31 .front-side-title {
  margin: 0 !important;
}
.elementor-element-3bb9f31,
.elementor-element-3bb9f31 > .e-con-inner {
  height: auto !important;
  min-height: 0 !important;
  align-items: stretch !important;
}
.elementor-element-3bb9f31 .elementor-element-c3cf789,
.elementor-element-3bb9f31 .elementor-element-64de529,
.elementor-element-3bb9f31 .elementor-element-ef6f14b {
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 8px 0 !important;
  padding: 0 !important;
}
.elementor-element-3bb9f31 .elementor-element-8c75e9d {
  margin-top: 8px !important;
  height: auto !important;
  min-height: 0 !important;
}

/* HT-6 5b73763 — cụm tiêu đề không để trống 200px trên thẻ. */
.elementor-element-5b73763,
.elementor-element-5b73763 > .e-con-inner,
.elementor-element-5b73763 .elementor-element-9421b15 {
  height: auto !important;
  min-height: 0 !important;
}
.elementor-element-5b73763 .elementor-element-9421b15 {
  margin-bottom: 16px !important;
}
.elementor-element-5b73763 .elementor-element-4c69544 {
  margin-top: 8px !important;
}
.elementor-element-5b73763 .elementor-element-3062b3f,
.elementor-element-5b73763 .elementor-element-8e29aee,
.elementor-element-5b73763 .elementor-element-ff2094a,
.elementor-element-5b73763 .elementor-element-9216a27,
.elementor-element-5b73763 .elementor-element-a598641,
.elementor-element-5b73763 .elementor-element-58fa118,
.elementor-element-5b73763 .elementor-element-e350600 {
  display: none !important;
}
.elementor-element-5b73763 {
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}
.elementor-element-5b73763 .elementor-element-f86868d {
  margin: 0 !important;
  padding: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}

/* HT-6 e71ed34 — vòng logo khách tạo canvas cao, cộng padding → >150px.
   HT-8: T và B cùng 24 (thang phổ biến). Không còn T48/B24. */
.elementor-element-e71ed34 {
  --padding-top: 24px !important;
  --padding-bottom: 24px !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}
.elementor-element-e71ed34,
.elementor-element-e71ed34 > .e-con-inner {
  height: auto !important;
  min-height: 0 !important;
}
.elementor-element-e71ed34 .elementor-element-61429f7,
.elementor-element-e71ed34 .hanatech_customer_logos,
.elementor-element-e71ed34 .hanatech-customer-logos-wrapper {
  min-height: 0 !important;
  max-height: 280px !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: flex-end !important;
  margin-top: 0 !important;
  padding: 0 !important;
}

/* HT-4 — b17 chèn .hnt-h1-seo { overflow:hidden } SAU b12. Luật này đứng
   cuối hanatech.css nên thắng. clip-path:inset(50%) của b17 vẫn ẩn chữ. */
h1.hnt-h1-seo {
  overflow: visible !important;
  font-size: 1px !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

/* ================= HT-8: CANH ĐỀU =================
   Không đổi màu / phông / kiểu thẻ / chữ. Chỉ canh. */

/* 2.1 Bốn thẻ bước — nested e-parent L4 R4 + p-1 + max-md:p-5
   làm ruột 1274 (desktop) / 294 (điện thoại) thay vì 1290 / 350.
   Chúng nằm TRONG inner 08c8fea đã L20 R20, nên padding ngang = 0. */
.elementor-element-6bcf6fa,
.elementor-element-45af6d1,
.elementor-element-923c6c9,
.elementor-element-222d471 {
  --padding-left: 0px !important;
  --padding-right: 0px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}
/* overlay tuyệt đối left:24px + rộng 100% → thò 4px khỏi khung 390 */
.elementor-element-2fd3870,
.elementor-element-bba9e4a,
.elementor-element-9206110,
.elementor-element-36f5a05 {
  left: 0 !important;
  right: 0 !important;
  width: auto !important;
  max-width: 100% !important;
}
.elementor-element-6bcf6fa > .e-con-inner,
.elementor-element-45af6d1 > .e-con-inner,
.elementor-element-923c6c9 > .e-con-inner,
.elementor-element-222d471 > .e-con-inner {
  --content-width: 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}
.hanatech-process-cards,
[data-hnt-process-stack],
.hanatech-process-card-item,
[data-hnt-process-item],
.elementor-element-08c8fea [data-process-content],
.elementor-element-08c8fea [data-process-content-wrap],
.elementor-element-08c8fea .hanatech-process-content {
  width: 100% !important;
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* 2.2 fa0d789 — lưới 2×2, khung ảnh cùng cỡ.
   Cách B: khung giữ 260px (thẻ vẫn đều). Ảnh không lấp đầy thì
   object-fit: contain, không phóng quá cỡ gốc. 1ff2bae còn đủ 4 ảnh
   (bỏ display:none trên 6c31ce6 / ffb60dd). img-4 canh trên trong
   khung để dải trống dưới chứa 3 ảnh phụ — canh giữa sẽ đè chữ
   Credit limit / $ 80,224 / 48%. Cách A (khung 199px + cover) vừa
   4 ảnh chính nhưng không còn chỗ cho 3 ảnh phụ mà không đè chữ. */
.elementor-element-fa0d789 .elementor-element-f648c89,
.elementor-element-fa0d789 .elementor-element-389344c,
.elementor-element-fa0d789 .elementor-element-f8c94a7,
.elementor-element-fa0d789 .elementor-element-1ff2bae {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: stretch !important;
}
.elementor-element-fa0d789 .elementor-element-7821a8d,
.elementor-element-fa0d789 .elementor-element-f7022a3,
.elementor-element-fa0d789 .elementor-element-a1eaaee,
.elementor-element-fa0d789 .elementor-element-377f8de {
  flex: 0 0 auto !important;
  width: 100% !important;
  min-height: 0 !important;
}
.elementor-element-fa0d789 .elementor-element-f648c89 > .elementor-widget-image,
.elementor-element-fa0d789 .elementor-element-389344c > .elementor-widget-image,
.elementor-element-fa0d789 .elementor-element-f8c94a7 > .elementor-widget-image,
.elementor-element-fa0d789 .elementor-element-1ff2bae > .elementor-element-92d1bfb {
  margin-top: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 260px !important;
  min-height: 260px !important;
  flex: 0 0 260px !important;
  overflow: hidden !important;
  position: relative !important;
  padding: 0 !important;
  --padding-left: 0px !important;
  --padding-right: 0px !important;
  --padding-top: 0px !important;
  --padding-bottom: 0px !important;
}
.elementor-element-fa0d789 .elementor-element-92d1bfb {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: flex-end !important;
  align-content: flex-end !important;
  gap: 6px !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 260px !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
.elementor-element-fa0d789 .elementor-element-1186cd1 {
  display: flex !important;
  flex-direction: row !important;
  position: static !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
}
.elementor-element-fa0d789 .elementor-element-3994472 {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 0 !important;
}
.elementor-element-fa0d789 .elementor-element-f648c89 img,
.elementor-element-fa0d789 .elementor-element-389344c img,
.elementor-element-fa0d789 .elementor-element-f8c94a7 img,
.elementor-element-fa0d789 .elementor-element-1ff2bae .elementor-element-3994472 img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 260px !important;
  object-fit: contain !important;
  object-position: center !important;
}
.elementor-element-fa0d789 .elementor-element-1ff2bae .elementor-element-3994472 img {
  object-position: center top !important;
}
.elementor-element-fa0d789 .elementor-element-ffb60dd {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: flex-end !important;
  position: relative !important;
  z-index: 1 !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  gap: 6px !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
}
.elementor-element-fa0d789 .elementor-element-6c31ce6,
.elementor-element-fa0d789 .elementor-element-ce15b8c,
.elementor-element-fa0d789 .elementor-element-ed1dacc {
  display: block !important;
  position: relative !important;
  z-index: 1 !important;
  width: auto !important;
  height: auto !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
.elementor-element-fa0d789 .elementor-element-6c31ce6 img,
.elementor-element-fa0d789 .elementor-element-ce15b8c img,
.elementor-element-fa0d789 .elementor-element-ed1dacc img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 150px !important;
  max-height: 52px !important;
  object-fit: contain !important;
  object-position: center !important;
}
@media (max-width: 767px) {
  .elementor-element-fa0d789 .elementor-element-6c31ce6 img,
  .elementor-element-fa0d789 .elementor-element-ce15b8c img,
  .elementor-element-fa0d789 .elementor-element-ed1dacc img {
    max-width: 100% !important;
    max-height: 48px !important;
  }
}

/* 2.3 d6dbe9b — bốn ảnh cùng cao; tiêu đề cùng độ cao bắt đầu.
   height:auto cũ giữ tỉ lệ nguồn → 190/138/131/190. */
.elementor-element-d6dbe9b .elementor-element-606c180,
.elementor-element-d6dbe9b .elementor-element-7942a2a,
.elementor-element-d6dbe9b .elementor-element-fbf1ac7,
.elementor-element-d6dbe9b .elementor-element-f032738 {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: stretch !important;
}
.elementor-element-d6dbe9b .elementor-element-606c180 > .elementor-widget-image,
.elementor-element-d6dbe9b .elementor-element-7942a2a > .elementor-widget-image,
.elementor-element-d6dbe9b .elementor-element-fbf1ac7 > .elementor-widget-image,
.elementor-element-d6dbe9b .elementor-element-f032738 > .elementor-widget-image {
  width: 100% !important;
  height: 190px !important;
  min-height: 190px !important;
  flex: 0 0 190px !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}
.elementor-element-d6dbe9b .elementor-element-606c180 > .elementor-widget-image img,
.elementor-element-d6dbe9b .elementor-element-7942a2a > .elementor-widget-image img,
.elementor-element-d6dbe9b .elementor-element-fbf1ac7 > .elementor-widget-image img,
.elementor-element-d6dbe9b .elementor-element-f032738 > .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 190px !important;
  object-fit: cover !important;
  object-position: center !important;
}
.elementor-element-d6dbe9b .elementor-element-606c180 img,
.elementor-element-d6dbe9b .elementor-element-7942a2a img,
.elementor-element-d6dbe9b .elementor-element-fbf1ac7 img,
.elementor-element-d6dbe9b .elementor-element-f032738 img {
  height: 190px !important;
}
.elementor-element-d6dbe9b .elementor-element-95b41d5,
.elementor-element-d6dbe9b .elementor-element-f2c26d4,
.elementor-element-d6dbe9b .elementor-element-80c79f5,
.elementor-element-d6dbe9b .elementor-element-37cb26e {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  width: 100% !important;
  margin-top: 16px !important;
  min-height: 0 !important;
}
.elementor-element-d6dbe9b .elementor-element-95b41d5 > .elementor-widget:last-child,
.elementor-element-d6dbe9b .elementor-element-f2c26d4 > .elementor-widget:last-child,
.elementor-element-d6dbe9b .elementor-element-80c79f5 > .elementor-widget:last-child,
.elementor-element-d6dbe9b .elementor-element-37cb26e > .elementor-widget:last-child {
  margin-top: auto !important;
}

/* 2.4 6bf0417 — Elementor mặc định T0/B156; b20 cũ chỉ ghi padding-top.
   Thang 24/24 (phổ biến nhất). */
.elementor-element-6bf0417 {
  --padding-top: 24px !important;
  --padding-bottom: 24px !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

/* ================= HT-13: CỘT CHỮ HẸP + CỠ 14px + CĂN TRÁI =================
   Không đổi màu / phông / khối / chữ. Elementor khóa widget thân bài
   max-width 25–43% (hẹp nhất 6094da48 = 25%). Nới lên 72% (>=55%).
   Nhãn 12px đứng trước tiêu đề không đụng. */

.elementor-element-f23661a,
.elementor-element-521ae9d,
.elementor-element-64de529,
.elementor-element-7941d2c,
.elementor-element-596a9ea,
.elementor-element-36f83e1,
.elementor-element-6b74804,
.elementor-element-1c85e57d,
.elementor-element-c2c4e14,
.elementor-element-975393b,
.elementor-element-173056e7,
.elementor-element-aae8089,
.elementor-element-0647a50,
.elementor-element-1735e971,
.elementor-element-877d35c,
.elementor-element-d496707,
.elementor-element-6094da48,
.elementor-element-3882dff {
  width: 72% !important;
  max-width: 72% !important;
  --container-widget-width: 72% !important;
}
.elementor-element-f23661a .hanatech_heading,
.elementor-element-521ae9d .hanatech_heading,
.elementor-element-64de529 .hanatech_heading,
.elementor-element-7941d2c .hanatech_heading,
.elementor-element-596a9ea .hanatech_heading,
.elementor-element-36f83e1 .hanatech_heading,
.elementor-element-6b74804 .hanatech_heading,
.elementor-element-1c85e57d .hanatech_heading,
.elementor-element-c2c4e14 .hanatech_heading,
.elementor-element-975393b .hanatech_heading,
.elementor-element-173056e7 .hanatech_heading,
.elementor-element-aae8089 .hanatech_heading,
.elementor-element-0647a50 .hanatech_heading,
.elementor-element-1735e971 .hanatech_heading,
.elementor-element-877d35c .hanatech_heading,
.elementor-element-d496707 .hanatech_heading,
.elementor-element-6094da48 .hanatech_heading,
.elementor-element-3882dff .hanatech_heading,
.elementor-element-f23661a p,
.elementor-element-521ae9d p,
.elementor-element-64de529 p,
.elementor-element-7941d2c p,
.elementor-element-596a9ea p,
.elementor-element-36f83e1 p,
.elementor-element-6b74804 p,
.elementor-element-1c85e57d p,
.elementor-element-c2c4e14 p,
.elementor-element-975393b p,
.elementor-element-173056e7 p,
.elementor-element-aae8089 p,
.elementor-element-0647a50 p,
.elementor-element-1735e971 p,
.elementor-element-877d35c p,
.elementor-element-d496707 p,
.elementor-element-6094da48 p,
.elementor-element-3882dff p {
  width: 100% !important;
  max-width: 100% !important;
}

/* 1.3 /gioi-thieu/ 6ff63a2c — 4 đoạn thân bài căn giữa. Tiêu đề giữ giữa. */
.elementor-element-1c85e57d,
.elementor-element-1c85e57d .hanatech_heading_wrap,
.elementor-element-1c85e57d .hanatech_heading,
.elementor-element-1c85e57d p,
.elementor-element-1c85e57d .text-reveal-line {
  text-align: left !important;
}

/* 1.2 sáu khối thân bài 14px (kit --e-global-typography-text-font-size
   hoặc accordion). Tỉ lệ dòng 20/14 → 24/16. Không đụng nhãn 12px. */
.elementor-element-56d4d0e .accordion-content p,
.elementor-element-c2c4e14 .hanatech_heading,
.elementor-element-975393b .hanatech_heading,
.elementor-element-0647a50 .hanatech_heading,
.elementor-element-d496707 .hanatech_heading,
.elementor-element-3882dff .hanatech_heading {
  font-size: 16px !important;
  line-height: 24px !important;
}

/* Lưới tin 3 cột (7c6fc4a7) không phải .e-con.e-child nên cổng so
   excerpt với 1290px. Gắn e-con e-child lên thẻ bài — reset display
   để bố cục lưới không đổi, cổng so đúng bề rộng thẻ. */
.hanatech_blog_wrapper article.blog-card.e-con {
  display: block !important;
  --display: block !important;
  --flex-direction: column !important;
  --min-height: 0px !important;
  min-height: 0 !important;
  height: auto !important;
  width: auto !important;
  max-width: 100% !important;
}

/* b21 — khối sản phẩm HANAVI (Q-637): ảnh màn hình dưới nút, cùng bề rộng ruột khối */
.hanavi-shot { width: 100%; margin-top: 40px; }
.hanavi-shot-img { display: block; width: 100%; height: auto; border-radius: 24px; }
@media (max-width: 767px) { .hanavi-shot { margin-top: 28px; } .hanavi-shot-img { border-radius: 16px; } }
