/* Client feedback round 2 (October 2026). Loaded last so it can settle the
   layered polish sheets without editing each of them. */

/* Vietnamese diacritics need room: tight display line-heights made the marks
   of one line (ộ, ạ, ẩ, ê) collide with the next. */
body :is(h1, h2) { line-height: 1.16 !important; }
body :is(h3, .cta-title) { line-height: 1.24 !important; }
body .rmh-keep { white-space: nowrap; }

/* Footer column titles were navy on the navy footer on inner pages. */
body .rmh-footer .rmh-footer-grid h3 { color: #fff !important; }

/* Kickers stay on one line. */
body .rmh-detail-heading .rmh-kicker,
body .rmh-static-eyebrow,
body .rmh-careers-kicker,
body .rmh-news-kicker { white-space: nowrap; }

/* ---------------------------------------------------------------- Home */
body.rmh-home-page .rmh-partner-toolbar { justify-content: flex-end; }
/* Client logos are mostly round hospital emblems: give them more height and
   keep their brand colours. */
body.rmh-home-page .rmh-partner-card img {
  height: 84px !important;
  max-width: 88% !important;
  object-fit: contain;
  filter: none !important;
}
@media (max-width: 767px) {
  body.rmh-home-page .rmh-partner-card img { height: 64px !important; }
}
/* Lifting a card on hover moved it out from under a cursor near its bottom
   edge, so it dropped back and re-triggered hover (visible jitter); the
   scrolling rail also clipped the lifted top. Highlight in place instead. */
body.rmh-home-page .rmh-partner-card,
body.rmh-home-page .rmh-partner-card:hover,
body.rmh-home-page .rmh-partner-card:hover img { transform: none !important; }
body.rmh-home-page .rmh-partner-card:hover {
  border-color: rgba(243, 106, 45, .32) !important;
  box-shadow: 0 10px 26px rgba(22, 43, 59, .08) !important;
}

body.rmh-home-page .rmh-product-intro h3 { white-space: normal; }

/* The stat accent bar was positioned over the numbers; let it flow under the
   label instead so it never overlaps text at any card height. */
body.rmh-home-page .rmh-stat-grid article::after {
  position: static !important;
  display: block !important;
  flex: 0 0 auto;
  width: 34px !important;
  height: 3px !important;
  margin: 14px auto 0 !important;
  border-radius: 999px !important;
  background: var(--rmh-orange) !important;
  transform: none !important;
  opacity: 1 !important;
}
body.rmh-home-page .rmh-stat-grid span { max-width: 170px; }

body.rmh-home-page .rmh-career-head h2 .rmh-nowrap-line { color: var(--rmh-navy); white-space: nowrap; }
/* The thumbnail bleeds over the card padding with a wider width and negative
   margins; the global img max-width cap shrank it and left a gap on the right. */
body.rmh-home-page .rmh-job-card .job-thumb { max-width: none !important; }
body.rmh-home-page .rmh-job-card h3 { font-size: 13px; overflow-wrap: normal; word-break: normal; }
body.rmh-home-page #events-title { font-size: clamp(30px, 2.9vw, 37px) !important; }
body.rmh-home-page .rmh-career-head h2 .rmh-accent-line { display: block; color: var(--rmh-orange); white-space: nowrap; }

/* "Xem tất cả" sat on a pale decoration and disappeared. */
body.rmh-home-page .rmh-news-head .rmh-news-all {
  position: relative;
  z-index: 2;
  color: #fff !important;
  border-color: var(--rmh-orange) !important;
  background: var(--rmh-orange) !important;
  box-shadow: 0 14px 30px rgba(243, 106, 45, .28);
}
body.rmh-home-page .rmh-news-head .rmh-news-all:hover { background: var(--rmh-orange-deep) !important; }

/* The old link was a 34px arrow-only circle; reset that shell so the label
   sits as a text link with the arrow in its own small circle. */
body.rmh-home-page .rmh-news-card .rmh-read-more {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  width: auto !important;
  height: auto !important;
  margin: auto 0 0 !important;
  padding: 0 !important;
  float: none !important;
  align-self: flex-start;
  border: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  color: var(--rmh-navy) !important;
  font-size: 14px;
  font-weight: 700;
  overflow: visible !important;
}
body.rmh-home-page .rmh-news-card .rmh-read-more b { font-weight: 700; }
body.rmh-home-page .rmh-news-card .rmh-read-more > span {
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 1px solid var(--rmh-border-soft, #e9e6df);
  border-radius: 50%;
  background: #fff;
  color: var(--rmh-navy) !important;
  font-size: 14px;
  line-height: 1;
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
body.rmh-home-page .rmh-news-card .rmh-read-more:hover { color: var(--rmh-orange) !important; }
body.rmh-home-page .rmh-news-card .rmh-read-more:hover > span { border-color: var(--rmh-orange); background: var(--rmh-orange); color: #fff !important; }

@media (min-width: 992px) {
  body.rmh-home-page .rmh-contact-points { width: 700px; }
  body.rmh-home-page .rmh-contact-points .rmh-contact-email { white-space: nowrap; overflow-wrap: normal !important; }
}

/* --------------------------------------------------------- Sustainability */
.rmh-sustainability-intro .rmh-sustainability-lead { color: var(--rmh-page-ink, #102f4e); font-size: 17px; font-weight: 700; }
.rmh-sustainability-principles-head h2 { line-height: 1.22 !important; }

.rmh-sustainability-promise { padding: 96px 0; background: var(--rmh-page-paper, #f8f6f1); border-top: 1px solid var(--rmh-page-line, rgba(16, 47, 78, .09)); }
.rmh-sustainability-promise-inner { max-width: 920px; text-align: center; }
.rmh-sustainability-promise-inner h2 { margin: 16px auto 22px; color: var(--rmh-page-ink, #102f4e); font-size: clamp(30px, 3.6vw, 46px); letter-spacing: -.035em; }
.rmh-sustainability-promise-inner h2 em { color: var(--rmh-page-orange, #ff6a21); font-style: normal; }
.rmh-sustainability-promise-inner p { max-width: 760px; margin: 0 auto; color: var(--rmh-page-text, #314558); font-size: 16px; line-height: 1.75; }

/* ---------------------------------------------------------------- Careers */
.rmh-careers-hero h1 { line-height: 1.14 !important; }
.rmh-careers-empty h3 .rmh-keep { color: var(--rmh-page-ink, #102f4e) !important; }
.rmh-careers-empty h3 .rmh-keep.rmh-accent { color: var(--rmh-page-orange, #ff6a21) !important; }

/* ---------------------------------------------------------------- Contact */
.rmh-contact-hero h1 em { white-space: nowrap; }
.rmh-contact-hero h1 { font-size: clamp(40px, 4.4vw, 62px) !important; }

.rmh-contact-interests { margin: 0; padding: 0; border: 0; }
.rmh-contact-interest-list { display: flex; flex-wrap: wrap; gap: 10px; }
.rmh-contact-interest {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 14px;
  border: 1px solid var(--rmh-page-line-strong, rgba(16, 47, 78, .16));
  border-radius: 999px;
  background: #fff;
  color: var(--rmh-page-text, #314558);
  font-size: 13px;
  cursor: pointer;
  transition: border-color .2s, background .2s;
}
.rmh-contact-interest input { accent-color: var(--rmh-page-orange, #ff6a21); }
.rmh-contact-interest:has(input:checked) { border-color: var(--rmh-page-orange, #ff6a21); background: #fff4ee; }
.rmh-contact-interest:focus-within { outline: 2px solid var(--rmh-page-orange, #ff6a21); outline-offset: 2px; }
.rmh-contact-other-label { margin-top: 16px; }
body .contact-form .lc-label { font-family: 'Be Vietnam Pro', sans-serif; }

/* ------------------------------------------------------------------- News */
.rmh-news-pin-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 14px;
  padding: 6px 12px;
  border-radius: 999px;
  background: #fff1e9;
  color: var(--rmh-page-orange, #ff6a21);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.rmh-news-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 44px; }
.rmh-news-pagination :is(a, span) {
  display: inline-grid;
  place-items: center;
  min-width: 44px;
  height: 44px;
  padding: 0 12px;
  border: 1px solid var(--rmh-page-line-strong, rgba(16, 47, 78, .16));
  border-radius: 999px;
  background: #fff;
  color: var(--rmh-page-ink, #102f4e);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}
.rmh-news-pagination a:hover { border-color: var(--rmh-page-orange, #ff6a21); color: var(--rmh-page-orange, #ff6a21); }
.rmh-news-pagination .is-active { border-color: var(--rmh-page-orange, #ff6a21); background: var(--rmh-page-orange, #ff6a21); color: #fff; }

/* -------------------------------------------------- Shared contact CTA */
/* Same language as the rest of the site: plain accent colour, no hand-drawn
   underline, no oversized orange disc, standard pill button. */
body.rmh-inner-page .rmh-inner-contact-cta { background: var(--rmh-page-paper, #f8f6f1) !important; }
body.rmh-inner-page .rmh-inner-contact-cta::before,
body.rmh-inner-page .rmh-inner-contact-cta::after { display: none !important; }
body.rmh-inner-page .rmh-inner-contact-cta .cta-title { font-size: clamp(32px, 3.6vw, 48px) !important; letter-spacing: -.035em !important; color: var(--rmh-page-ink, #102f4e) !important; }
body.rmh-inner-page .rmh-inner-contact-cta .lc-accent-word {
  color: var(--rmh-page-orange, #ff6a21) !important;
  background: none !important;
  text-decoration: none !important;
}
body.rmh-inner-page .rmh-inner-contact-cta .lc-accent-word::before,
body.rmh-inner-page .rmh-inner-contact-cta .lc-accent-word::after { display: none !important; }
body.rmh-inner-page .rmh-inner-contact-copy > p { max-width: 620px !important; margin-top: 14px !important; font-size: 15px !important; }
body.rmh-inner-page .rmh-inner-contact-button {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 26px !important;
  border-radius: 999px !important;
  background: var(--rmh-page-orange, #ff6a21) !important;
  color: #fff !important;
  font-weight: 700;
  box-shadow: 0 14px 30px rgba(243, 106, 45, .24);
}

/* --------------------------------------------------------- Product detail */
.rmh-product-detail .rmh-detail-thumbs { display: flex !important; flex-wrap: wrap; gap: 12px !important; }
.rmh-product-detail .rmh-detail-thumbs li { flex: 0 0 84px !important; width: 84px !important; margin: 0 !important; }
.rmh-product-detail .rmh-detail-thumbs button {
  width: 84px !important;
  height: 84px !important;
  padding: 8px !important;
  border: 1px solid var(--rmh-page-line-strong, rgba(16, 47, 78, .16)) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(18, 45, 68, .06) !important;
  transform: none !important;
}
.rmh-product-detail .rmh-detail-thumbs li.active button { border: 2px solid var(--rmh-page-orange, #ff6a21) !important; }
.rmh-product-detail .rmh-detail-thumbs img { border-radius: 10px !important; }

.rmh-detail-related .rmh-related-heading .rmh-kicker { display: inline-flex; align-items: center; gap: 12px; }
.rmh-detail-related .rmh-related-heading .rmh-kicker::before { width: 18px; height: 2px; content: ""; background: var(--rmh-page-orange, #ff6a21); }
.rmh-detail-related .rmh-related-heading h2 { margin: 0; color: var(--rmh-page-ink, #102f4e) !important; font-size: clamp(32px, 3.4vw, 46px); letter-spacing: -.035em; opacity: 1 !important; -webkit-text-stroke: 0 !important; }
.rmh-detail-related .rmh-related-heading h2 span { color: var(--rmh-page-orange, #ff6a21); }

/* Related cards: flat category pill and equal heights. */
.rmh-detail-related .swiper-wrapper { align-items: stretch; }
.rmh-detail-related .swiper-slide { height: auto !important; }
.rmh-detail-related .product-item { display: flex !important; flex-direction: column; height: 100%; }
.rmh-detail-related .product-item .product-content { display: flex; flex: 1; flex-direction: column; }
.rmh-detail-related .product-item .product-foot { margin-top: auto !important; gap: 10px; flex-wrap: wrap; }
.rmh-detail-related .product-item .order-btn { white-space: nowrap; overflow: hidden; }
.rmh-detail-related .product-item .badge-tag {
  top: 14px !important;
  left: 14px !important;
  right: auto !important;
  padding: 6px 12px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: var(--rmh-page-orange, #ff6a21) !important;
  box-shadow: 0 6px 16px rgba(18, 45, 68, .08) !important;
  font-size: 10px !important;
  letter-spacing: .08em !important;
  transform: none !important;
  rotate: none !important;
}

/* Zalo channel uses the real Zalo mark instead of a "Z" letter. */
.rmh-connect-channel .rmh-connect-zalo-icon { padding: 0 !important; overflow: hidden; background: #0068ff !important; }
.rmh-connect-channel .rmh-connect-zalo-icon img { display: block; width: 100%; height: 100%; }

/* Mobile news cards are a compact thumb | title | arrow row: keep only the
   arrow there (the link's aria-label still reads "Đọc thêm"). */
@media (max-width: 767.98px) {
  body.rmh-home-page .rmh-news-card .rmh-read-more { align-self: center; justify-content: center; margin: 0 !important; }
  body.rmh-home-page .rmh-news-card .rmh-read-more b { display: none; }
  body.rmh-home-page .rmh-news-card .rmh-read-more > span { width: 28px; height: 28px; font-size: 13px; }
}

/* ------------------------------------------------------------------ Header */
/* `.rmh-nav ul { display: flex }` also matched the products dropdown, laying
   its items out in one squeezed row. The dropdown is a vertical list. */
body .rmh-header .rmh-nav .rmh-submenu { display: block !important; }
/* Top-level labels must not break inside ("Trang / chủ") on mid-size screens. */
body .rmh-header .rmh-nav > ul > li > a { white-space: nowrap; }
@media (min-width: 992px) and (max-width: 1199.98px) {
  body .rmh-header .rmh-nav > ul { gap: 20px !important; }
  body .rmh-header .rmh-nav > ul > li > a { font-size: 14px !important; }
}
