/**
 * Khả Văn — CSS dùng chung mọi trang public (icon, typography, link, section tag)
 */
body.kv-public {
  font-family: var(--kv-font);
  color: var(--kv-text);
  background: #fff;
  font-size: 15px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

.kv-hero-kicker,
.vt-hero__kicker,
.bv-hero__kicker,
.lh-head__tag,
.lt-head__tag,
.feat-head__tag,
.kh-head__tag {
  font-family: var(--kv-font) !important;
  font-style: normal !important;
  font-size: 0.6875rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

.vt-hero__kicker {
  font-size: 0.8125rem !important;
  color: var(--kv-yellow) !important;
  margin: 0 0 0.75rem !important;
}

.kv-ic,
.vt-stat__icon,
.vt-achieve-card__icon,
.vt-pillar-item__icon,
.lt-step__icon,
.lt-pillar__icon,
.lt-stat__icon,
.lh-card__icon,
.lh-mini__icon,
.gv-pillar__icon,
.gv-cert__icon,
.hp-price__icon,
.hp-offer__icon,
.kh-tab span:first-child,
.hp-hero__feat > span:first-child {
  display: inline-grid;
  place-items: center;
  line-height: 1;
  color: var(--kv-green);
}

.kv-ic i,
.vt-stat__icon i,
.vt-achieve-card__icon i,
.vt-pillar-item__icon i,
.lt-step__icon i,
.lt-pillar__icon i,
.lt-pillar__icon .kv-icon-pct,
.lt-stat__icon i,
.lh-card__icon i,
.lh-mini__icon i,
.gv-pillar__icon i,
.gv-cert__icon i,
.hp-price__icon i,
.hp-offer__icon i {
  font-size: 1.25rem;
}

.lt-step__icon i { font-size: 1.5rem; }

.lt-step:not(:last-child)::after {
  content: "\ea6c";
  font-family: remixicon;
  font-size: 14px;
  opacity: 0.45;
}

.lt-level:not(:last-child)::after {
  content: "\ea6c";
  font-family: remixicon;
  font-weight: 400;
  margin-left: 6px;
  color: var(--kv-gold, #d4a800);
}

.kv-stars,
.kv-testimonial__stars,
.gv-stars,
.lt-stars,
.kh-stars,
.gd-stars,
.vt-stars,
.hp-stars {
  display: inline-flex;
  gap: 2px;
  color: var(--kv-yellow);
  font-size: 0.75rem;
}

.kv-stars i,
.gv-stars i,
.lt-stars i,
.kh-stars i,
.gd-stars i,
.vt-stars i {
  font-size: 0.85rem;
}

.kv-link-arrow,
.kh-card__link,
.gv-fcard__link,
.feat-card__btn {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.lt-benefit__icon {
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: var(--kv-yellow);
  color: var(--kv-green-dark, #004526);
  display: grid;
  place-items: center;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
}

.lt-benefit__icon i {
  font-size: 1.15rem;
  color: inherit;
}

/* Remix Icon — homepage sections (commit grid, stats, path, hero badges) */
.kv-commit-card__icon i,
.kv-stat__icon i,
.kv-path-card__icon i,
.kv-hero-badge__icon i,
.kv-course-card__badge i {
  font-family: remixicon !important;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
}

.lt-form-intro .lt-benefit {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 0.75rem 1rem;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  font-size: 0.9375rem;
  font-weight: 700;
  color: #fff;
}

.lt-form-intro .lt-benefit__text {
  line-height: 1.4;
}
