/* ===== Blog Cards ===== */
.mf-post-card{
  display:flex; flex-direction:column;
  gap:12px; height:100%;
}
.mf-post-thumb{
  display:block; border-radius:12px; overflow:hidden;
  aspect-ratio: 16 / 9; background:#f2f2f2;
}
.mf-post-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }

.mf-post-thumb.has-placeholder .mf-thumb-ph{
  display:block; width:100%; height:100%; background:#f2f2f2;
}

.mf-post-meta{
  display:flex; align-items:center; gap:8px;
  font-size:14px; opacity:.8;
}
.mf-post-meta .icon-clock{ font-size:16px; line-height:1; }

.mf-post-title{
  font-size:18px; line-height:1.4; margin:0;
  font-weight:700; color:#00102e; /* chỉnh theo thương hiệu của bạn */
}
.mf-post-title a{ color:inherit; text-decoration:none; }
.mf-post-title a:hover{ text-decoration:underline; }

.mf-post-excerpt{
  margin:0;
  color:#555; font-size:15px; line-height:1.6;
}

/* Giới hạn dòng (title/excerpt) giống bản mẫu */
.mf-post-title{
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.mf-post-excerpt{
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}

/* Footer căn đáy */
.mf-post-footer{ margin-top:auto; }
.mf-post-readmore{
  position:relative; display:inline-flex; align-items:center; gap:10px;
  font-weight:600; text-decoration:none;
}
.mf-post-readmore .mf-arrow{
  display:inline-block; width:28px; height:1px; background:currentColor;
  position:relative;
}
.mf-post-readmore .mf-arrow:after{
  content:""; position:absolute; right:0; top:50%;
  width:8px; height:8px; border-right:1px solid currentColor; border-top:1px solid currentColor;
  transform:translateY(-50%) rotate(45deg);
}
.mf-post-readmore:hover{ text-decoration:underline; }

/* Khoảng cách lưới Flatsome mặc định đã ổn; nếu cần đồng đều hơn: */
.row .col .col-inner{ height:100%; }

/* Bo góc hình ảnh & hover nhẹ */
.mf-post-thumb{ transition:transform .25s ease, box-shadow .25s ease; }
.mf-post-thumb:hover{ transform:translateY(-2px); box-shadow:0 8px 24px rgba(0,0,0,.08); }

/* Responsive tinh chỉnh nhẹ */
@media (max-width: 549px){
  .mf-post-title{ font-size:16px; -webkit-line-clamp:2; }
  .mf-post-excerpt{ font-size:14px; }
}


/* ===== MF Consult Grid – v2 ===== */
.mf-consult-grid{
  /* có columns-* thì dùng, không thì auto-fit */
  display:grid; gap:18px;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  --card-bg:#fff;
  --card-radius:14px;
  --card-shadow:0 8px 26px rgba(0,0,0,.07);
  --title:#111;
  --muted:#6b7280;
  --ring: var(--fs-color-primary, #2563eb);

  --badge-zalo:#1bb0e6;
  --badge-mes:#0084ff;

  --avatar:60px;
  --pad-y:16px;
  --pad-x:16px;
}

.mf-consult-grid.mf-cols-2{ grid-template-columns: repeat(2, minmax(0,1fr)); }
.mf-consult-grid.mf-cols-3{ grid-template-columns: repeat(3, minmax(0,1fr)); }
.mf-consult-grid.mf-cols-4{ grid-template-columns: repeat(4, minmax(0,1fr)); }
.mf-consult-grid.mf-cols-5{ grid-template-columns: repeat(5, minmax(0,1fr)); }

/* ===== Card ===== */
.mf-consult-card{
  position:relative;
  display:flex; align-items:center; gap:14px;
  padding: calc(var(--pad-y) + 10px) var(--pad-x) var(--pad-y);
  background:var(--card-bg); border-radius:var(--card-radius);
  box-shadow:var(--card-shadow);
  text-decoration:none; color:inherit;
  transition:transform .18s ease, box-shadow .18s ease;
  min-height: 110px;
}
.mf-consult-card:hover{ transform:translateY(-2px); box-shadow:0 12px 32px rgba(0,0,0,.10); }
.mf-consult-card:focus-visible{ outline:2px solid var(--ring); outline-offset:2px; }

/* Badge ở góc trên trái */
.mf-consult-card__badge{
  position:absolute; top:10px; left:12px;
  display:inline-flex; align-items:center; gap:8px;
  height:24px; line-height:24px;
  padding:0 10px;
  border-radius:999px;
  font-size:12px; font-weight:700; letter-spacing:.2px;
  color:#fff;
  background:var(--badge-zalo);
  box-shadow:0 4px 10px rgba(0,0,0,.06);
}
.mf-consult-card[data-platform="messenger"] .mf-consult-card__badge{ background:var(--badge-mes); }
.mf-consult-card__badge-ico{
  width:14px; height:14px; display:inline-block; border-radius:50%;
  background:#fff; opacity:.95; flex:0 0 14px;
}

/* Title + avatar */
.mf-consult-card__title{
  flex:1 1 auto; margin-right:6px;
  font-size:16px; font-weight:800; color:var(--title);
  text-wrap:balance;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.mf-consult-card__avatar{
  flex:0 0 auto; width:var(--avatar); height:var(--avatar);
  border-radius:999px; overflow:hidden;
  box-shadow: inset 0 0 0 3px #e6eef7;
}
.mf-consult-card__avatar img{ width:100%; height:100%; object-fit:cover; display:block; }

/* ===== Responsive ===== */
@media (max-width:1024px){
  .mf-consult-grid{ gap:16px; }
  .mf-consult-card{ --avatar:56px; }
}
@media (max-width:768px){
  .mf-consult-grid{ gap:14px; }
  .mf-consult-card{ padding: calc(var(--pad-y) + 8px) var(--pad-x) var(--pad-y); --avatar:52px; }
  .mf-consult-card__title{ font-size:15px; }
  .mf-consult-card__badge{ top:8px; left:10px; height:22px; font-size:11px; padding:0 8px; }
}
@media (max-width:480px){
  .mf-consult-grid{ grid-template-columns:1fr; gap:12px; }
  .mf-consult-card{ --avatar:50px; }
}

/* ===== Prefers-reduced-motion ===== */
@media (prefers-reduced-motion:reduce){
  .mf-consult-card{ transition:none; }
}


