/* ==========================================================================
   home.css — CHỈ dùng cho trang chủ (/). Các trang khác không nạp file này.

   Tách khỏi site.css để không đụng vào giao diện đang chạy tốt của /ctv,
   /admin, /dai-su. Mọi màu đều lấy từ biến CSS của site.css, nên đại sứ đổi
   màu thương hiệu thì trang này đổi theo.
   ========================================================================== */

/* --- HAI BỘ MẶT ------------------------------------------------------------
   Khách vào bằng link đại sứ (?ref=) thì giấu sạch phần VINATAT và phần tuyển
   đại sứ. Việc gắn data-mode do /assets/surface.js làm, chạy trong <head> nên
   không bị loé nội dung.
   Không có JavaScript (hoặc file lỗi) thì data-mode vắng mặt → hiện đầy đủ,
   tức là rơi về bản VINATAT chứ không rơi vào trang trắng.
   -------------------------------------------------------------------------- */
html[data-mode="ref"] .only-vinatat { display: none !important; }
html[data-mode="vinatat"] .only-ref { display: none !important; }

/* --- Thanh điều hướng trên màn hình hẹp ------------------------------------
   Thanh này dính ở đầu trang. Trên điện thoại, 5 mục sẽ xuống 2 dòng và đẩy
   chiều cao header lên ~155px — chiếm gần 1/5 màn hình, cuộn đi đâu cũng vướng.
   Nên chỉ giữ lại hai việc người ta thật sự cần bấm: nhận tư vấn, và đăng nhập
   đại sứ. Các mục còn lại đều là neo tới nội dung ngay bên dưới, cuộn xuống là
   gặp — bỏ đi không mất đường nào. */
@media (max-width: 700px) {
  .nav .nav-phu { display: none; }
}

/* --- Hero ------------------------------------------------------------------ */
.hero-grid {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 40px;
  align-items: center;
}
@media (max-width: 900px) {
  .hero-grid { grid-template-columns: 1fr; gap: 28px; }
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #fff;
  background: rgba(255, 255, 255, .16);
  border: 1px solid rgba(255, 255, 255, .28);
  padding: 6px 14px;
  border-radius: 999px;
  margin-bottom: 18px;
}

/* Thẻ "chuyến đi thật" cạnh hero — thay cho ảnh stock.
   Số liệu trong thẻ này do JavaScript đổ từ cơ sở dữ liệu, không viết cứng. */
.hero-card {
  background: #fff;
  border-radius: 18px;
  padding: 22px;
  box-shadow: 0 18px 50px rgba(15, 23, 42, .22);
  color: var(--ink);
}
.hero-card h3 {
  margin: 0 0 4px;
  font-size: 17px;
}
.hero-card .hc-sub {
  margin: 0 0 16px;
  font-size: 13px;
  color: var(--muted);
}
.hc-rows { display: grid; gap: 10px; }
.hc-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 13px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: var(--bg);
}
.hc-row .hc-name { font-weight: 600; font-size: 14px; line-height: 1.35; }
.hc-row .hc-price { font-weight: 800; color: var(--primary); white-space: nowrap; font-size: 14px; }
.hc-foot {
  margin: 14px 0 0;
  font-size: 12px;
  color: var(--muted);
  line-height: 1.5;
}

/* --- Dải bằng chứng (thay cho lời tự khen) --------------------------------- */
.proof-bar {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
}
@media (max-width: 820px) { .proof-bar { grid-template-columns: repeat(2, 1fr); } }
.proof {
  background: #fff;
  padding: 22px 18px;
  text-align: center;
}
.proof .pv {
  font-size: 26px;
  font-weight: 800;
  color: var(--primary);
  line-height: 1.2;
}
.proof .pl {
  font-size: 13px;
  color: var(--muted);
  margin-top: 4px;
  line-height: 1.45;
}

/* --- Ba lý do -------------------------------------------------------------- */
.why { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
@media (max-width: 860px) { .why { grid-template-columns: 1fr; } }
.why .card-pad h3 { margin: 0 0 8px; font-size: 17px; }
.why .card-pad p { margin: 0; color: var(--muted); font-size: 15px; }
.why-ico {
  width: 42px; height: 42px;
  border-radius: 11px;
  background: var(--primary-soft);
  color: var(--primary);
  display: flex; align-items: center; justify-content: center;
  font-size: 20px; font-weight: 800;
  margin-bottom: 14px;
}

/* --- Người sáng lập -------------------------------------------------------- */
.founder {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 32px;
  align-items: start;
}
@media (max-width: 760px) {
  .founder { grid-template-columns: 1fr; gap: 20px; }
  .founder-photo { max-width: 200px; }
}
.founder-photo {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--shadow);
  background: var(--bg);
}
.founder-photo img { width: 100%; height: auto; display: block; }
.founder h3 { margin: 0 0 2px; font-size: 21px; }
.founder .role { margin: 0 0 16px; color: var(--muted); font-size: 14px; }
.founder p { margin: 0 0 12px; }
.founder-facts {
  list-style: none;
  padding: 0;
  margin: 16px 0 0;
  display: grid;
  gap: 8px;
}
.founder-facts li {
  padding-left: 24px;
  position: relative;
  font-size: 15px;
  color: var(--muted);
}
.founder-facts li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--ok);
  font-weight: 800;
}

/* --- Bảng hạng đại sứ ------------------------------------------------------ */
.rank-cards {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
}
@media (max-width: 980px) { .rank-cards { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 620px) { .rank-cards { grid-template-columns: repeat(2, 1fr); } }
.rank-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 16px 14px;
  text-align: center;
}
.rank-card .rc-name {
  font-weight: 700;
  font-size: 14px;
  margin-bottom: 8px;
}
.rank-card .rc-rate {
  font-size: 24px;
  font-weight: 800;
  color: var(--primary);
  line-height: 1.1;
}
.rank-card .rc-cond {
  font-size: 12px;
  color: var(--muted);
  margin-top: 8px;
  line-height: 1.45;
}
.rank-note {
  margin-top: 18px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--accent);
  border-radius: 10px;
  background: #fff;
  font-size: 14px;
  color: var(--muted);
}
.rank-note b { color: var(--ink); }

/* --- Dải kêu gọi làm đại sứ ------------------------------------------------ */
.cta-band {
  background: linear-gradient(135deg, var(--primary), var(--primary-dark));
  border-radius: var(--radius);
  padding: 40px 36px;
  color: #fff;
  text-align: center;
}
.cta-band h2 { margin: 0 0 10px; font-size: 27px; color: #fff; }
.cta-band p {
  margin: 0 auto 24px;
  max-width: 620px;
  color: rgba(255, 255, 255, .9);
}
.cta-band .btn-primary { background: #fff; color: var(--primary); border-color: #fff; }
.cta-band .btn-primary:hover:not(:disabled) { background: #f1f5f9; color: var(--primary-dark); }
.cta-band .btn-outline { border-color: rgba(255, 255, 255, .6); color: #fff; }
.cta-band .btn-outline:hover:not(:disabled) { background: rgba(255, 255, 255, .12); color: #fff; }
@media (max-width: 620px) { .cta-band { padding: 30px 20px; } .cta-band h2 { font-size: 22px; } }

/* --- Câu hỏi thường gặp ---------------------------------------------------- */
.faq { display: grid; gap: 10px; }
.faq details {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 11px;
  padding: 0;
  overflow: hidden;
}
.faq summary {
  cursor: pointer;
  padding: 16px 18px;
  font-weight: 600;
  list-style: none;
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after {
  content: "+";
  font-size: 20px;
  font-weight: 400;
  color: var(--muted);
  flex: none;
  line-height: 1;
}
.faq details[open] summary::after { content: "−"; }
.faq details[open] summary { border-bottom: 1px solid var(--line); }
.faq .faq-body {
  padding: 15px 18px 18px;
  color: var(--muted);
  font-size: 15px;
}
.faq .faq-body p { margin: 0 0 10px; }
.faq .faq-body p:last-child { margin: 0; }

/* --- Vụn vặt --------------------------------------------------------------- */
.mt-16 { margin-top: 16px; }
.mt-32 { margin-top: 32px; }
.mb-8  { margin-bottom: 8px; }
.mb-16 { margin-bottom: 16px; }
.mb-24 { margin-bottom: 24px; }
