/*!
 * gioi-thieu.css — trang Giới thiệu dựng bằng AVADA (Figma frame `Giới thiệu`,
 * node 496-5006, 1600 x 7042). Cùng cách làm với khampha.css: nội dung là
 * container / column / text / title / post cards gốc của Avada, container tự
 * khai lớp lb-gt-*, file này chỉ tạo kiểu. Không bám ID trang.
 *
 * Số đo đọc từ bảng Properties của Figma (cmd+click từng lớp, 15/09/2026):
 *   khung 1600, cột 1200 (lề 200) · hero 613, gradient #041691 → #000526
 *   hàng nhãn: chữ 16/500 uppercase tracking 5% #FF3251 + kẻ 1px #1B1B38 10%, gap 15
 *   tiêu đề khối: Source Serif 4 500 31.25 #000 · mô tả 16/24 #676673
 *   thẻ Triết lý 384 x 238 (khe 24) · thẻ Chứng nhận 286 x 223 (khe 19)
 *   trục thời gian: chấm 19, mốc đầu thụt 56, bước 267 · ảnh 504 x 336 · năm mờ 208px
 *   khối đen #191919 996: vòng 177 #FF3251 · thẻ đơn vị 293.33 x 178 (khe 16)
 *   thanh số liệu 1201 x 132 #000 bo 16 · chip bo 8 pad 8/12 · lưới 3 cột khe 21
 *   thẻ Kết quả 386 x 386.5 bo 16 viền #0F0F2E 20% · ảnh 386 x 257.33
 *   CTA 260, gradient #0F0F2E → #0C21AF, nút cao 48
 *
 * Cần !important vì Avada in kiểu bằng biến --awb-* ngay trên phần tử (inline).
 * Chỉ --lb-font-sans / --lb-font-serif được dùng — hai token ở :root.
 */

/* ============================================================
 * Khung chung: cột 1200, huỷ máng cột của Avada
 * ============================================================ */
[class*="lb-gt-"] > .fusion-row {
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

[class*="lb-gt-"] > .fusion-row > .fusion-layout-column {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-bottom: 0 !important;
}

[class*="lb-gt-"] > .fusion-row > .fusion-layout-column > .fusion-column-wrapper {
  margin: 0 !important;
  width: 100% !important;
}

/*
 * Hàng trong: Avada in `width:104% !important` NGAY TRÊN phần tử (inline
 * !important — stylesheet không đè được) rồi kéo lề -2% để cột con có máng
 * 1.92% mỗi bên. Không chống lại: giữ 104% và -2%, đệm lại 1.923% mỗi bên
 * (1.04 x 1.923% = 2%) để hộp nội dung đúng bằng cột 1200; lưới của từng khối
 * đặt bên trong hộp đó.
 */
[class*="lb-gt-"] .fusion-builder-row-inner {
  margin-left: -2% !important;
  margin-right: -2% !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 1.923% !important;
  box-sizing: border-box;
}

[class*="lb-gt-"] .fusion-builder-row-inner > .fusion-layout-column {
  width: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}

[class*="lb-gt-"] .fusion-builder-row-inner > .fusion-layout-column > .fusion-column-wrapper {
  margin: 0 !important;
  width: 100% !important;
}

[class*="lb-gt-"] .fusion-text p { margin: 0; }
[class*="lb-gt-"] .fusion-title { margin: 0 !important; }
[class*="lb-gt-"] .fusion-title .fusion-title-heading { margin: 0 !important; letter-spacing: 0 !important; text-transform: none !important; }
[class*="lb-gt-"] :where(a) { text-decoration: none; }

/* ---- Hàng nhãn + tiêu đề khối (Frame 534 / 542 / 546 / 550: 1201 x 20) ---- */
.lb-gt-eyebrow {
  display: flex;
  align-items: center;
  gap: 15px;
  margin: 0 0 9px !important;
  font-family: var(--lb-font-sans) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase;
  color: #FF3251 !important;
}

.lb-gt-eyebrow span { flex: 0 0 auto; }
.lb-gt-eyebrow::after { content: ""; flex: 1 1 auto; height: 1px; background: rgba(27, 27, 56, .1); }

.lb-gt-head__title .fusion-title-heading {
  font-family: var(--lb-font-serif) !important;
  font-size: 31.25px !important;
  font-weight: 500 !important;
  line-height: 1.38 !important;        /* hộp 43px */
  color: #000 !important;
}

.lb-gt-head__sub p {
  margin: 10px 0 0 !important;
  max-width: 643px;
  font-family: var(--lb-font-sans);
  font-size: 16px;
  line-height: 24px;
  color: #676673;
}

/* ---- Nút của trang: Link 286 x 60 / 175 x 48, bo 8, pad 4/24, chữ 16/500, icon 24 ---- */
.lb-gt-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-height: 48px;
  padding: 4px 24px;
  border: 1px solid #FF3251;
  border-radius: 8px;
  background: #FF3251;
  color: #FFF !important;
  font-family: var(--lb-font-sans);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
  text-decoration: none !important;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.lb-gt-btn:hover { background: #D20F12; border-color: #D20F12; transform: translateY(-1px); }

.lb-gt-btn--glass { background: rgba(255, 255, 255, .3); border-color: rgba(255, 255, 255, .8); }
.lb-gt-btn--glass:hover { background: rgba(255, 255, 255, .42); border-color: #FFF; }

.lb-gt-btn--ghost { background: #FFF; border-color: rgba(15, 15, 46, .2); color: #1B1B38 !important; gap: 8px; }
.lb-gt-btn--ghost:hover { background: #FFF; border-color: #1B1B38; }

.lb-gt-btn--sm { gap: 8px; padding: 8px 24px; }

/* Icon đứng trước chữ: vẽ bằng mask để đổi màu theo nút, không cần Font Awesome */
.lb-gt-btn--spark::before,
.lb-gt-btn--layers::before,
.lb-gt-btn--users::before {
  content: "";
  width: 24px;
  height: 24px;
  flex: 0 0 auto;
  background: currentColor;
  -webkit-mask: var(--lb-ico) center / contain no-repeat;
  mask: var(--lb-ico) center / contain no-repeat;
}

.lb-gt-btn--spark  { --lb-ico: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'><path d='M12 3l2.2 6.1L20 12l-5.8 2.9L12 21l-2.2-6.1L4 12l5.8-2.9z'/></svg>"); }
.lb-gt-btn--layers { --lb-ico: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3l9 5-9 5-9-5z'/><path d='M3 13l9 5 9-5M3 17l9 5 9-5'/></svg>"); }
.lb-gt-btn--users  { --lb-ico: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><circle cx='9' cy='8' r='3.2'/><path d='M2.5 20a6.5 6.5 0 0 1 13 0M17 11.2A3.2 3.2 0 1 0 17 5M18 20h3.5a5.5 5.5 0 0 0-3-4.9'/></svg>"); width: auto; }
.lb-gt-btn--users::before { width: 20px; height: 20px; }

/* ============================================================
 * 01 · Thông điệp Chủ tịch — Frame 361 (1600 x 613)
 * ============================================================ */
.lb-gt-hero {
  background: linear-gradient(90deg, #041691 0%, #000526 100%) !important;
  padding: 0 !important;
  min-height: 613px;
  position: relative;
  overflow: hidden;
  color: #FFF;
}

.lb-gt-hero > .fusion-row { position: relative; z-index: 1; }

/* Hai cột trong: chữ 623 (top 105) | ảnh 358 x 581 dán đáy, left 892 (= 693 trong khung) */
.lb-gt-hero .fusion-builder-row-inner {
  display: grid !important;
  grid-template-columns: 623px minmax(0, 1fr);
  min-height: 613px !important;
}

.lb-gt-hero__text > .fusion-column-wrapper {
  padding-top: 105px !important;
  display: flex !important;
  flex-direction: column;
  gap: 16px !important;
}

.lb-gt-hero__eyebrow {
  font-family: var(--lb-font-sans) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .7) !important;
}

.lb-gt-hero__title .fusion-title-heading {
  font-family: var(--lb-font-serif) !important;
  font-size: 48.83px !important;
  font-weight: 700 !important;
  line-height: 56px !important;
  color: #FFF !important;
}

.lb-gt-hero__title em { font-style: italic; }

.lb-gt-hero__quote p { font-family: var(--lb-font-sans); font-size: 16px; line-height: 24px; color: rgba(255, 255, 255, .9); }

.lb-gt-hero__who { display: flex; flex-direction: column; gap: 5px; }
.lb-gt-hero__name { font-family: var(--lb-font-serif) !important; font-size: 20px !important; font-weight: 500 !important; line-height: 1.35 !important; color: #FFF !important; }   /* Frame 538 cao 49 = 27 + 5 + 17 */
.lb-gt-hero__role { font-family: var(--lb-font-sans) !important; font-size: 13.33px !important; line-height: 1.3 !important; color: rgba(255, 255, 255, .7) !important; }

/* Frame 540: top 448, gap 20; Link 286 x 60 */
.lb-gt-hero__actions { margin-top: 26px !important; }
.lb-gt-hero__actions-in { display: flex; flex-wrap: wrap; gap: 20px; }
.lb-gt-hero__actions .lb-gt-btn { min-height: 60px; }
.lb-gt-hero__actions .lb-gt-btn--solid { min-width: 286px; }
.lb-gt-hero__actions .lb-gt-btn--glass { min-width: 217px; background: rgba(255, 255, 255, .1); border-color: rgba(255, 255, 255, .3); }

/*
 * Cột ảnh. image 87 trong Figma: 358 x 581, top 32, left 892 (= 693 trong khung
 * 1200; cột này bắt đầu ở 623 → 70). File xuất 2x = 860 x 1226 vì Figma bake
 * luôn bóng đổ (blur 36 → đệm 72 ngang, 32 dọc): đặt 430 x 613 ở left 70 − 72,
 * top 32 − 32 = 0 thì phần ảnh thật rơi đúng chỗ, không cần drop-shadow CSS.
 */
.lb-gt-hero__media > .fusion-column-wrapper { position: relative; min-height: 613px; }
.lb-gt-hero__media .lb-gt-hero__photo { position: absolute; left: -2px; top: 0; width: 430px; height: 613px; margin: 0 !important; z-index: 2; }
.lb-gt-hero__media .lb-gt-hero__photo img { width: 100% !important; height: 100% !important; object-fit: contain; object-position: bottom; }
.lb-gt-hero__photo-note { position: absolute; left: 70px; top: 40px; width: 358px; padding: 12px; border: 1px dashed rgba(255, 255, 255, .35); border-radius: 8px; font-size: 12px; color: rgba(255, 255, 255, .5); }
.lb-gt-hero__media:has(img) .lb-gt-hero__photo-note { display: none; }

/* Logo mờ sau ảnh: LOGO LIBERO FINAL 831 x 681, top −68, left 667 (khung: 467), opacity 10% đã bake vào PNG */
.lb-gt-hero > .fusion-row > .fusion-layout-column > .fusion-column-wrapper { position: relative; }
.lb-gt-hero > .fusion-row > .fusion-layout-column > .fusion-column-wrapper > .fusion-image-element:has(.lb-gt-hero__mark) {   /* Avada bọc imageframe trong .fusion-image-element */
  position: absolute;
  left: 467px;
  top: -68px;
  width: 831px;
  height: 681px;
  margin: 0 !important;
  z-index: 0;
  pointer-events: none;
}
.lb-gt-hero__mark, .lb-gt-hero__mark img { display: block; width: 100% !important; height: 100% !important; object-fit: contain; margin: 0 !important; }
.lb-gt-hero .fusion-builder-row-inner { position: relative; z-index: 1; }

/* ============================================================
 * 02 · Triết lý & Sứ mệnh — 3 thẻ 384 x 238, khe 24
 * ============================================================ */
.lb-gt-trietly { padding: 48px 0 56px !important; }   /* hero 747 → nhãn 795; thẻ 1187 → nhãn kế 1243 */

.lb-gt-trietly .fusion-builder-row-inner {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 24px !important;         /* mô tả đáy 925 → thẻ 949 */
}

/* Frame 367: bo 8, viền 1px #1B1B38 10%, nền #F8F8F8, padding 16, gap 16; vạch trên 3px */
.lb-gt-pillar {
  --lb-pillar: #000;
  position: relative;
  min-height: 238px;
  border: 1px solid rgba(27, 27, 56, .1);
  border-radius: 8px;
  background: #F8F8F8;
  overflow: hidden;
}

.lb-gt-pillar::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 3px; background: var(--lb-pillar); }

.lb-gt-pillar--red    { --lb-pillar: #FF3251; }
.lb-gt-pillar--blue   { --lb-pillar: #213EFF; }
.lb-gt-pillar--purple { --lb-pillar: #8E32FF; }
.lb-gt-pillar--green  { --lb-pillar: #2CD17F; }

.lb-gt-pillar > .fusion-column-wrapper { padding: 19px 16px 16px !important; display: flex !important; flex-direction: column; gap: 16px !important; }

/* Frame 363: 40 x 40, bo 8, icon 24 trắng */
.lb-gt-pillar__icon {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: var(--lb-pillar);
  display: block;
  position: relative;
}

.lb-gt-pillar__icon::after {
  content: "";
  position: absolute;
  inset: 8px;
  background: #FFF;
  -webkit-mask: var(--lb-ico) center / contain no-repeat;
  mask: var(--lb-ico) center / contain no-repeat;
}

.lb-gt-icon--eye    { --lb-ico: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M2.5 12s3.5-6.5 9.5-6.5S21.5 12 21.5 12s-3.5 6.5-9.5 6.5S2.5 12 2.5 12z'/><circle cx='12' cy='12' r='3'/></svg>"); }
.lb-gt-icon--rocket { --lb-ico: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M5 15l-1.5 4.5L8 18'/><path d='M9 15l-3-3 2.5-2.5A9 9 0 0 1 20 4a9 9 0 0 1-5.5 11.5L12 18z'/><circle cx='15' cy='9' r='1.5'/></svg>"); }
.lb-gt-icon--gem    { --lb-ico: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M7 3h10l4 6-9 12L3 9z'/><path d='M3 9h18M9 3l3 6 3-6M12 9v12'/></svg>"); }

.lb-gt-pillar__title .fusion-title-heading { font-family: var(--lb-font-serif) !important; font-size: 20px !important; font-weight: 500 !important; line-height: 1.35 !important; color: #000 !important; }
.lb-gt-pillar__text p { font-family: var(--lb-font-sans); font-size: 16px; line-height: 24px; color: #676673; }
.lb-gt-pillar__text b { font-weight: 600; color: #1B1B38; }

/* ============================================================
 * 03 · Hành trình — trục + slide (Frame 542 top 1243 → 1941)
 * ============================================================ */
.lb-gt-journey { padding: 0 0 139px !important; }    /* ảnh đáy 1802 → khối đen 1941 */

.lb-gt-journey > .fusion-row > .fusion-layout-column > .fusion-column-wrapper { position: relative; }

.lb-gt-axis-wrap { margin-top: 53px !important; }      /* nhãn 1243 → chấm 1368 = 125 = 72 + 53 */

/* Trục: N mốc rải đều, mốc đầu/cuối thụt 56; đường 2px, phần tới mốc chọn gradient #E8E8EB → #FF0000 */
.lb-gt-axis {
  --lb-p: 0;
  position: relative;
  list-style: none !important;
  margin: 0 0 79px !important;         /* chấm 1368 → ảnh 1466 = 98 = 19 + 79 */
  padding: 0 56px !important;
  display: flex;
  justify-content: space-between;
}

.lb-gt-axis::before,
.lb-gt-axis::after { content: ""; position: absolute; top: 9px; left: 65px; right: 65px; height: 2px; background: #E8E8EB; }
.lb-gt-axis::after { right: auto; width: calc((100% - 130px) * var(--lb-p)); background: linear-gradient(90deg, #E8E8EB 0%, #FF0000 100%); transition: width .35s ease; }

.lb-gt-axis li { position: relative; z-index: 1; width: 19px; height: 19px; line-height: 0; margin: 0; padding: 0; list-style: none; }

.lb-gt-axis__dot {
  display: block;
  position: relative;
  width: 19px;
  height: 19px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #D9D9D9;
  cursor: pointer;
  transition: background .2s ease, box-shadow .2s ease;
}

.lb-gt-axis__dot:hover { background: #BFBFC6; }
.lb-gt-axis__dot.is-on { background: #FF3251; box-shadow: 0 0 0 4px rgba(255, 50, 81, .18); }

/* Năm: 13.33 #676673, đáy chấm + 6, căn giữa chấm */
.lb-gt-axis__dot span {
  position: absolute;
  top: calc(100% + 6px);
  left: 50%;
  transform: translateX(-50%);
  font-family: var(--lb-font-sans);
  font-size: 13.33px;
  line-height: 1.25;
  color: #676673;
  white-space: nowrap;
}

.lb-gt-axis__dot.is-on span { color: #FF3251; font-weight: 500; }

/* Slide: một cột trong; wrapper thành lưới ảnh 504 | chữ (khe 32); ẩn slide không chọn */
.lb-gt-journey .fusion-builder-row-inner:has(.lb-gt-slide) { display: block !important; }
.lb-gt-journey .fusion-builder-row-inner:has(.lb-gt-slide[hidden]) { display: none !important; }

.lb-gt-slide > .fusion-column-wrapper {
  display: grid !important;
  row-gap: 0 !important;
  column-gap: 32px !important;
  grid-template-columns: 504px minmax(0, 1fr);
  grid-template-areas: "img chip" "img title" "img text" "img year";
  grid-template-rows: auto auto auto 1fr;
  min-height: 336px;
  position: relative;
}

.lb-gt-slide__media { grid-area: img; width: 504px; max-width: 100%; aspect-ratio: 504 / 336; border-radius: 16px; overflow: hidden; background: #F8F8F8; }
.lb-gt-slide__media img { width: 100%; height: 100%; object-fit: cover; }
.lb-gt-slide__img-note { padding: 16px; font-size: 12px; color: #9A9AAE; }
.lb-gt-slide > .fusion-column-wrapper:has(.fusion-imageframe) .lb-gt-slide__img-note { display: none; }
/* Avada bọc imageframe trong .fusion-image-element — chính nó là ô lưới `img` */
.lb-gt-slide > .fusion-column-wrapper > .fusion-image-element { grid-area: img; width: 504px; max-width: 100%; aspect-ratio: 504 / 336; border-radius: 16px; overflow: hidden; margin: 0 !important; }
.lb-gt-slide > .fusion-column-wrapper > .fusion-image-element .fusion-imageframe { display: block; width: 100%; height: 100%; margin: 0 !important; }
.lb-gt-slide > .fusion-column-wrapper > .fusion-image-element img { width: 100% !important; height: 100% !important; object-fit: cover; }
.lb-gt-slide > .fusion-column-wrapper:has(.fusion-imageframe) .lb-gt-slide__media { display: none; }

.lb-gt-slide__chip { grid-area: chip; padding-top: 34px; position: relative; z-index: 1; }

/* Frame 543: bo 24, viền 1px #FF3251, nền #FF3251 10%, pad 8/16, chữ hoa 13.33/500 */
.lb-gt-chip {
  display: inline-block;
  padding: 6px 16px;
  border: 1px solid #FF3251;
  border-radius: 24px;
  background: rgba(255, 50, 81, .1);
  color: #FF3251;
  font-family: var(--lb-font-sans);
  font-size: 13.33px;
  font-weight: 500;
  letter-spacing: .04em;
  text-transform: uppercase;
  line-height: 1.4;
}

.lb-gt-slide__title { grid-area: title; margin-top: 16px !important; position: relative; z-index: 1; }
.lb-gt-slide__title .fusion-title-heading { font-family: var(--lb-font-serif) !important; font-size: 31.25px !important; font-weight: 500 !important; line-height: 1.38 !important; color: #000 !important; }

.lb-gt-slide__text { grid-area: text; margin-top: 16px !important; position: relative; z-index: 1; max-width: 626px; }
.lb-gt-slide__text p { font-family: var(--lb-font-sans); font-size: 16px; line-height: 24px; color: #676673; }

/* Năm mờ: Source Serif 800 208px #F8F8F8, SAU chữ, top 141 so với ảnh, lấn trái 42 */
.lb-gt-slide__year { grid-area: year; position: relative; z-index: 0; }
.lb-gt-slide__year p {
  position: absolute;
  left: -42px;
  top: -33px;                          /* Figma 1607 = ảnh 1466 + 141 */
  font-family: var(--lb-font-serif);
  font-size: 208px;
  font-weight: 800;
  line-height: 1;
  color: #F8F8F8;
  pointer-events: none;
  user-select: none;
}

/* Frame 20: 96 x 40 góc dưới phải, đáy ngang đáy ảnh (1802) */
/* z-index 20, KHÔNG phải 2: Avada đặt z-index:10 cho mọi .fusion-row — hàng slide phủ lên nút, bấm không ăn (lỗi 15/09/2026). */
.lb-gt-slides__nav-wrap { position: absolute; right: 0; bottom: 0; z-index: 20; }
.lb-gt-slides__nav { display: flex; gap: 16px; }

.lb-gt-arrow {
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid rgba(15, 15, 46, .2);
  border-radius: 50%;
  background: #FFF;
  color: #1B1B38;
  cursor: pointer;
  position: relative;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}

.lb-gt-arrow::after {
  content: "";
  position: absolute;
  inset: 11px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14M13 6l6 6-6 6'/></svg>") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14M13 6l6 6-6 6'/></svg>") center / contain no-repeat;
}

.lb-gt-arrow--prev::after { transform: rotate(180deg); }
.lb-gt-arrow:hover:not(:disabled) { background: #D20F12; border-color: #D20F12; color: #FFF; }
.lb-gt-arrow:disabled { opacity: .35; cursor: default; }

/* ============================================================
 * 04 · Hệ sinh thái — Frame 545 (1600 x 996, #191919)
 * ============================================================ */
.lb-gt-eco { background: #191919 !important; padding: 102px 0 106px !important; color: #FFF; text-align: center; }

.lb-gt-eco__eyebrow { font-family: var(--lb-font-sans) !important; font-size: 16px !important; font-weight: 500 !important; line-height: 1.25 !important; letter-spacing: .05em !important; text-transform: uppercase; color: rgba(255, 255, 255, .7) !important; }

.lb-gt-eco__title .fusion-title-heading { font-family: var(--lb-font-serif) !important; font-size: 48.83px !important; font-weight: 700 !important; line-height: 56px !important; color: #FFF !important; text-align: center !important; }

.lb-gt-eco__sub p { margin: 12px auto 0 !important; max-width: 701px; font-family: var(--lb-font-sans); font-size: 16px; line-height: 24px; color: rgba(255, 255, 255, .7); }

/* Frame 546: 177 tròn #FF3251, top 286 (mô tả đáy 238 + 48); nối 55px trắng 70% */
.lb-gt-eco__hub-wrap { margin-top: 48px !important; }
.lb-gt-eco__hub {
  position: relative;
  width: 177px;
  height: 177px;
  margin: 0 auto !important;
  border-radius: 50%;
  background: #FF3251;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #FFF;
}

.lb-gt-eco__hub::after { content: ""; position: absolute; top: 100%; left: 50%; width: 1px; height: 55px; background: rgba(255, 255, 255, .7); }
.lb-gt-eco__lead { font-family: var(--lb-font-sans); font-size: 27.65px; font-weight: 500; line-height: 1.25; }
.lb-gt-eco__rest { font-family: var(--lb-font-sans); font-size: 19.2px; font-weight: 500; line-height: 1.25; }

/*
 * Thẻ đơn vị = Post Cards (Post Card 22072, nguồn CPT Đơn vị, số thẻ = number_posts
 * của element). Lưới flex 3 cột, khe 16, hai hàng cách 22; hàng cuối lẻ thẻ thì
 * căn giữa như Figma (3 + 2). Thẻ 293.33 x 178, bo 8, viền trắng 20%, nền trắng 10%.
 * Hàng 1 top 512 = vòng đáy 463 + 49.
 */
.lb-gt-eco .fusion-post-cards { margin-top: 49px !important; }
.lb-gt-eco .fusion-post-cards .fusion-grid {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch !important;     /* Avada gắn fusion-flex-align-items-flex-start → thẻ so le chiều cao khi tên 1/2 dòng */
  gap: 22px 16px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.lb-gt-eco .lb-gt-unit {
  width: 293.33px !important;
  flex: 0 0 293.33px !important;
  max-width: 100%;
  min-height: 178px;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 8px;
  background: rgba(255, 255, 255, .1);
  text-align: left;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.lb-gt-eco .lb-gt-unit:hover { background: rgba(255, 255, 255, .16); border-color: rgba(255, 255, 255, .4); transform: translateY(-2px); }
.lb-gt-eco .lb-gt-unit > .fusion-column-inner-bg { display: none; }
.lb-gt-eco .lb-gt-unit > .fusion-column-wrapper { margin: 0 !important; padding: 16px !important; width: 100% !important; display: flex !important; flex-direction: column; gap: 16px !important; }

/* Logo trắng (_unit_logo_white, LOGO LIBERO FINAL 106–130 x 40, PNG 3x) */
.lb-gt-eco .lb-gt-unit .fusion-image-element { margin: 0 !important; line-height: 0; }
.lb-gt-eco .lb-gt-unit .lb-gt-unit__logo { display: block; margin: 0 !important; }
.lb-gt-eco .lb-gt-unit .lb-gt-unit__logo img { height: 40px !important; width: auto !important; max-width: 100%; }

.lb-gt-unit__name .fusion-title-heading { font-family: var(--lb-font-serif) !important; font-size: 20px !important; font-weight: 500 !important; line-height: 1.35 !important; color: rgba(255, 255, 255, .9) !important; }
.lb-gt-unit__name a { color: inherit !important; }
.lb-gt-unit__desc p { font-family: var(--lb-font-sans); font-size: 13.33px; line-height: 1.3; color: rgba(255, 255, 255, .7); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }

/* ============================================================
 * 05 · Chứng nhận — 4 thẻ 286 x 223, khe 19; khối 89/89
 * ============================================================ */
.lb-gt-awards { padding: 89px 0 !important; }

.lb-gt-awards .fusion-builder-row-inner {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 19px;
  margin-top: 39px !important;         /* nhãn 3026 → thẻ 3137 = 111 = 72 + 39 */
}

.lb-gt-award { min-height: 223px; border: 1px solid rgba(27, 27, 56, .1); border-radius: 8px; background: #F8F8F8; text-align: center; }
.lb-gt-award > .fusion-column-wrapper { padding: 16px !important; display: flex !important; flex-direction: column; align-items: center; gap: 16px !important; }

/* Logo 82px cao (image 89–92, PNG 3x, blend multiply như Figma); chưa có ảnh thì ô ghi chú */
.lb-gt-award__logo-wrap, .lb-gt-award .lb-gt-award__img { height: 82px; display: flex; align-items: center; justify-content: center; margin: 0 !important; }
.lb-gt-award .lb-gt-award__img img { height: 82px !important; width: auto !important; max-width: 253px; object-fit: contain; mix-blend-mode: multiply; }
.lb-gt-award__logo { font-size: 11px; line-height: 1.3; color: #9A9AAE; border: 1px dashed rgba(27, 27, 56, .2); border-radius: 6px; padding: 8px; max-width: 200px; }
.lb-gt-award > .fusion-column-wrapper:has(.fusion-imageframe) .lb-gt-award__logo-wrap { display: none; }

.lb-gt-award__title .fusion-title-heading { font-family: var(--lb-font-serif) !important; font-size: 20px !important; font-weight: 500 !important; line-height: 1.35 !important; color: #000 !important; text-align: center !important; }
.lb-gt-award__text p { max-width: 252px; margin: 0 auto !important; font-family: var(--lb-font-sans); font-size: 16px; line-height: 24px; color: #676673; }

/* ============================================================
 * 06 · Ban lãnh đạo — Frame 553 (863, #F8F8F8); thẻ Post Card 22045
 * Thẻ = đúng thẻ giảng viên trang chủ: 283 x 424.59, bo 16, viền 0.74 #DDDAD5,
 * ảnh 283 x 240, vạch đỏ 3px #C8102E, huy hiệu số 26px, thân padding 14/16/18
 * ============================================================ */
.lb-gt-leaders { background: #F8F8F8 !important; padding: 70px 0 109px !important; }

.lb-gt-leaders .fusion-post-cards { margin-top: 28px !important; }   /* nhãn 3519 → thẻ 3677 = 158 = 130 + 28 */

/*
 * Carousel gốc của Post Cards (Swiper): 4 thẻ/màn, khe 22 (--awb-column-spacing),
 * trượt từng thẻ, tự chạy. KHÔNG đè .swiper-wrapper / width / margin của slide
 * (Swiper ghi inline). Chỉ đánh số thẻ 01, 02… bằng counter và tạo kiểu mũi tên.
 *
 * Giống dải Giảng viên trang chủ: mũi tên tròn 44 nổi NGOÀI mép dải (−22), giữa
 * theo chiều dọc, thẻ kế tiếp lộ một phần. .awb-swiper là swiper container với
 * overflow:hidden → nút thò ra ngoài bị cắt. Mở overflow rồi cắt lại bằng
 * clip-path inset(0 −22px): slide dư vẫn bị cắt tại mép + 22, còn nút (−22…22)
 * nằm trọn trong vùng cắt. Dọc nới −40 để bóng/hover của thẻ không bị xén.
 */
.lb-gt-leaders .swiper-wrapper { counter-reset: lb-gt; align-items: stretch !important; }
.lb-gt-leaders .awb-swiper {
  position: relative;
  padding-bottom: 0 !important;
  overflow: visible !important;
  clip-path: inset(-40px -22px);
}

.lb-gt-leaders .awb-swiper-button {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  margin: -22px 0 0 !important;
  border: 1px solid rgba(15, 15, 46, .2);
  border-radius: 50%;
  background: #FFF;
  color: #1B1B38;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 20px -10px rgba(15, 15, 46, .45);
  cursor: pointer;
  z-index: 20;                          /* .fusion-row của Avada là 10 */
  transition: background .2s ease, color .2s ease, border-color .2s ease;
  opacity: 1 !important;
}

.lb-gt-leaders .awb-swiper-button-prev { left: -22px; }
.lb-gt-leaders .awb-swiper-button-next { right: -22px; }
.lb-gt-leaders .awb-swiper-button i { font-size: 16px; line-height: 1; }
.lb-gt-leaders .awb-swiper-button:hover { background: #D20F12; border-color: #D20F12; color: #FFF; }
.lb-gt-leaders .awb-swiper-button.swiper-button-disabled { opacity: .35 !important; cursor: default; }

.lb-gt-teacher {
  /* KHÔNG đặt width/flex/margin: Swiper ghi width + margin-right (khe 22) inline cho từng slide, đè là dải trượt vỡ. */
  padding: 0 !important;
  border: .74px solid #DDDAD5;
  border-radius: 16px;
  background: #FFF;
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease;
}

.lb-gt-teacher:hover { transform: translateY(-4px); box-shadow: 0 14px 30px -18px rgba(15, 15, 46, .45); }
.lb-gt-teacher > .fusion-column-wrapper { margin: 0 !important; padding: 0 !important; width: 100% !important; display: flex; flex-direction: column; height: 100%; }
.lb-gt-teacher > .fusion-column-inner-bg { display: none; }

.lb-gt-teacher__media { position: relative; aspect-ratio: 283 / 240; background: #EEF0F4; overflow: hidden; margin: 0 !important; border-bottom: 3px solid #C8102E; }   /* nền sáng: ảnh qua lazysizes của Avada nạp muộn, nền tối #1B1B38 (trang chủ) thành khối đen chớp */
/* Avada tính .fusion-image-wrapper theo tỉ lệ ảnh (ảnh vuông 1026 → 237 x 237) nên ảnh nhỏ hơn hộp 283 x 240 và lệch trái, lộ nền tối bên phải. Ép wrapper + <a> + <img> phủ kín hộp. */
.lb-gt-teacher__media .fusion-image-wrapper, .lb-gt-teacher__media a { display: block !important; width: 100% !important; height: 100% !important; max-width: none !important; }
.lb-gt-teacher__media img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; object-position: top center; display: block; }   /* absolute: chuỗi wrapper/a của Avada làm ảnh hụt 3px đáy */

/* Lớp phủ đáy ảnh + huy hiệu số 01, 02… (Figma: 26px #D20F12, left 14 bottom 12) */
.lb-gt-teacher__media::before { content: ""; position: absolute; inset: auto 0 0 0; height: 110px; background: linear-gradient(180deg, rgba(35, 25, 27, 0) 0%, rgba(35, 25, 27, .08) 100%); pointer-events: none; }
.lb-gt-teacher__media::after {
  counter-increment: lb-gt;
  content: counter(lb-gt, decimal-leading-zero);
  position: absolute;
  z-index: 2;                          /* .fusion-image-wrapper của Avada tạo ngữ cảnh xếp lớp, không có z-index thì huy hiệu chìm dưới ảnh */
  left: 14px;
  bottom: 12px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #D20F12;
  color: #FFF;
  font-family: var(--lb-font-sans);
  font-size: 11.11px;
  font-weight: 600;
  display: grid;
  place-items: center;
}

.lb-gt-teacher__field { padding: 14px 16px 0 !important; }
.lb-gt-teacher__field, .lb-gt-teacher__field p { font-family: var(--lb-font-sans) !important; font-size: 13.33px !important; letter-spacing: 0 !important; text-transform: uppercase; color: #C8102E !important; line-height: 1.3 !important; }
.lb-gt-teacher__field:empty { display: none; }

.lb-gt-teacher__name { padding: 6px 16px 0 !important; }
.lb-gt-teacher__name .fusion-title-heading { font-family: var(--lb-font-serif) !important; font-size: 20px !important; font-weight: 600 !important; line-height: 1.25 !important; min-height: 2.5em; color: #1B1B38 !important; }

.lb-gt-teacher__role { padding: 6px 16px 0 !important; }
.lb-gt-teacher__unit { padding: 0 16px 18px !important; }
.lb-gt-teacher__role p, .lb-gt-teacher__unit p { font-family: var(--lb-font-sans); font-size: 13.33px; line-height: 1.45; color: rgba(15, 15, 46, .5); }

/* Nút dưới lưới: 56 dưới thẻ, căn giữa */
.lb-gt-leaders__more { margin-top: 56px !important; }
.lb-gt-more { display: flex; justify-content: center; }

/* ============================================================
 * 07 · Đối tác — element của trang chủ ([libero_doitac]); dải logo tràn viền
 * đã đặt chung ở logos.css ([data-section="10-doitac"] .lb-logos) cho cả 4 trang.
 * ============================================================ */

/* ============================================================
 * 08 · Kết quả & Dấu ấn — Frame 554 (1384, #F8F8F8); thẻ Post Card 22046
 * ============================================================ */
.lb-gt-results { background: #F8F8F8 !important; padding: 94px 0 95px !important; }

/* Frame 508: 1201 x 132, bo 16, #000; vạch 82px trắng 40% */
.lb-gt-stats-wrap { margin-top: 20px !important; }    /* mô tả đáy 224 → thanh 244 */
.lb-gt-stats { display: flex; min-height: 132px; padding: 25px 0; border-radius: 16px; background: #000; color: #FFF; }
.lb-gt-stat { flex: 1 1 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; text-align: center; }
.lb-gt-stat + .lb-gt-stat { border-left: 1px solid rgba(255, 255, 255, .4); }
.lb-gt-stat__num { font-family: var(--lb-font-serif); font-size: 39.06px; font-weight: 600; line-height: 1; }
.lb-gt-stat__label { font-family: var(--lb-font-sans); font-size: 11px; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; color: rgba(255, 255, 255, .6); }

/* Chip lọc của Post Cards (Frame 105: top 412 = thanh đáy 376 + 36, gap 16; chip bo 8 pad 8/12) */
.lb-gt-results .fusion-post-cards { margin-top: 36px !important; }
.lb-gt-results .fusion-filters { display: flex !important; flex-wrap: wrap; gap: 16px; margin: 0 0 45px !important; padding: 0 !important; border: 0 !important; list-style: none; }
.lb-gt-results .fusion-filter { margin: 0 !important; padding: 0 !important; }
.lb-gt-results .fusion-filter a {
  display: inline-block;
  padding: 8px 12px !important;
  border: 1px solid rgba(27, 27, 56, .1) !important;
  border-radius: 8px;
  background: #FFF;
  color: #1B1B38 !important;
  font-family: var(--lb-font-sans) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.lb-gt-results .fusion-filter a:hover { border-color: #1B1B38 !important; }
.lb-gt-results .fusion-filter.fusion-active a { background: #1B1B38; border-color: #1B1B38 !important; color: #FFF !important; }

/* Lưới 3 cột khe 21 (Frame 512) */
.lb-gt-results .fusion-post-cards .fusion-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 21px !important; margin: 0 !important; padding: 0 !important; }
.lb-gt-results .fusion-post-cards .fusion-grid.isotope { display: block !important; }   /* isotope tự xếp tuyệt đối khi lọc */

/* Card 386 x 386.5, bo 16, viền 1px #0F0F2E 20%, trắng; ảnh 386 x 257.33; thân 16/24/18 */
.lb-gt-card { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; flex: none !important; border: 1px solid rgba(15, 15, 46, .2); border-radius: 16px; background: #FFF; overflow: hidden; transition: transform .25s ease, box-shadow .25s ease; }
.lb-gt-card:hover { transform: translateY(-4px); box-shadow: 0 14px 30px -18px rgba(15, 15, 46, .45); }
.lb-gt-card > .fusion-column-wrapper { margin: 0 !important; padding: 0 0 18px !important; width: 100% !important; display: flex !important; flex-direction: column; gap: 4px !important; }
.lb-gt-card > .fusion-column-inner-bg { display: none; }

.lb-gt-card__media { aspect-ratio: 386 / 257.33; overflow: hidden; background: #F8F8F8; margin: 0 0 12px !important; }
.lb-gt-card__media .fusion-image-wrapper, .lb-gt-card__media a { display: block !important; width: 100% !important; height: 100% !important; max-width: none !important; }
.lb-gt-card__media img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; display: block; }

/* Loại (trái, đỏ) và năm (phải, xám) cùng một hàng: đặt hai text kề nhau bằng grid trong wrapper */
.lb-gt-card__cat  { padding: 0 24px !important; }
.lb-gt-card__cat, .lb-gt-card__cat p { font-family: var(--lb-font-sans) !important; font-size: 16px !important; font-weight: 500 !important; line-height: 1.25 !important; color: #FF3251 !important; }
.lb-gt-card__year { padding: 0 24px !important; margin-top: -24px !important; text-align: right; }   /* -20 hộp chữ − 4 gap: cùng hàng với Loại */
.lb-gt-card__year, .lb-gt-card__year p { font-family: var(--lb-font-sans) !important; font-size: 13.33px !important; line-height: 1.5 !important; color: #676673 !important; text-align: right !important; }
.lb-gt-card__title { padding: 4px 24px 0 !important; }
.lb-gt-card__title .fusion-title-heading { font-family: var(--lb-font-serif) !important; font-size: 20px !important; font-weight: 500 !important; line-height: 1.35 !important; color: #000 !important; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.lb-gt-card__title a { color: inherit !important; }
.lb-gt-card__text { padding: 0 24px !important; }
.lb-gt-card__text p { font-family: var(--lb-font-sans); font-size: 16px; line-height: 24px; color: #676673; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }

/* ============================================================
 * 09 · CTA — Frame 448 (1600 x 260)
 * ============================================================ */
.lb-gt-cta { background: linear-gradient(90deg, #0F0F2E 0%, #0C21AF 100%) !important; padding: 0 !important; min-height: 260px; color: #FFF; }

.lb-gt-cta .fusion-builder-row-inner { display: flex !important; align-items: center; justify-content: space-between; gap: 40px; flex-wrap: wrap; min-height: 260px !important; }
/* Avada khoá width cột bằng .fusion-layout-column.fusion-flex-column (0,2,0) !important — kể tên khối để thắng */
.lb-gt-cta .lb-gt-cta__text { width: 720px !important; flex: 0 1 720px !important; align-self: center !important; }
.lb-gt-cta .lb-gt-cta__btns { width: auto !important; flex: 0 0 auto !important; align-self: center !important; }

/* Source Serif 4/h3 600 39.06, hộp 703 (trình duyệt dựng 712 → nới 720 để giữ 1 dòng) */
.lb-gt-cta__title .fusion-title-heading { max-width: 720px; font-family: var(--lb-font-serif) !important; font-size: 39.06px !important; font-weight: 600 !important; line-height: 1.38 !important; color: #FFF !important; }
.lb-gt-cta__sub p { margin-top: 3px !important; max-width: 702px; font-family: var(--lb-font-sans); font-size: 16px; line-height: 24px; color: rgba(255, 255, 255, .8); }
.lb-gt-cta__actions-in { display: flex; flex-wrap: wrap; gap: 16px; justify-content: flex-end; }

/* ============================================================
 * Khổ hẹp
 * ============================================================ */
@media (max-width: 1100px) {
  [class*="lb-gt-"] > .fusion-row { padding: 0 24px; }
  .lb-gt-hero .fusion-builder-row-inner { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .lb-gt-hero__media > .fusion-column-wrapper { min-height: 0; }
  .lb-gt-hero__media .lb-gt-hero__photo { position: static; width: 100%; max-width: 430px; height: auto; margin: 0 auto !important; }
  .lb-gt-hero > .fusion-row > .fusion-layout-column > .fusion-column-wrapper > .fusion-image-element:has(.lb-gt-hero__mark) {   /* Avada bọc imageframe trong .fusion-image-element */ display: none; }
  .lb-gt-hero__text > .fusion-column-wrapper { padding: 56px 0 48px !important; }
  .lb-gt-trietly .fusion-builder-row-inner, .lb-gt-awards .fusion-builder-row-inner,
  .lb-gt-results .fusion-post-cards .fusion-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lb-gt-slide > .fusion-column-wrapper { grid-template-columns: minmax(0, 1fr); grid-template-areas: "img" "chip" "title" "text" "year"; }
  .lb-gt-slide__media, .lb-gt-slide > .fusion-column-wrapper > .fusion-image-element { width: 100%; }
  .lb-gt-slide__year p { font-size: 120px; left: 0; top: -40px; }
  .lb-gt-slide__year { min-height: 96px; }
  .lb-gt-eco { padding: 72px 0 !important; }
  .lb-gt-cta .fusion-builder-row-inner { padding: 40px 0; }
}

@media (max-width: 767px) {
  .lb-gt-hero__title .fusion-title-heading { font-size: 39px !important; line-height: 1.15 !important; }
  .lb-gt-hero__actions .lb-gt-btn { width: 100%; min-width: 0; }
  .lb-gt-trietly .fusion-builder-row-inner, .lb-gt-awards .fusion-builder-row-inner,
  .lb-gt-results .fusion-post-cards .fusion-grid { grid-template-columns: minmax(0, 1fr); }
  .lb-gt-axis { padding: 0 12px !important; }
  .lb-gt-axis::before, .lb-gt-axis::after { left: 21px; right: 21px; }
  .lb-gt-axis::after { width: calc((100% - 42px) * var(--lb-p)); }
  .lb-gt-journey { padding-bottom: 80px !important; }
  .lb-gt-slides__nav-wrap { position: static; margin-top: 16px !important; }
  .lb-gt-leaders .awb-swiper { clip-path: inset(-40px 0); }
  .lb-gt-leaders .awb-swiper-button-prev { left: 8px; }
  .lb-gt-leaders .awb-swiper-button-next { right: 8px; }
  .lb-gt-eco__title .fusion-title-heading { font-size: 39px !important; line-height: 1.15 !important; }
  .lb-gt-unit { width: 100% !important; }
  .lb-gt-stats { flex-direction: column; padding: 8px 0; }
  .lb-gt-stat { padding: 16px 0; }
  .lb-gt-stat + .lb-gt-stat { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .4); }
  .lb-gt-cta__actions-in { justify-content: flex-start; }
  .lb-gt-cta__btns { flex: 1 1 100%; }
}
