/* Thành Vinh – Core values, scoped to the new SVG mode. Legacy timeline remains intact. */
.dc-hhcv.dc-hhcv--svg,
.dc-hhcv--svg * { box-sizing: border-box; }
.dc-hhcv.dc-hhcv--svg {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-height: 0;
  overflow: clip;
  padding: 104px 24px 96px;
  background-color: #f6f8fa;
  font-family: 'Montserrat', Arial, sans-serif;
}
.dc-hhcv--svg .dc-tv-core__bg,
.dc-hhcv--svg .dc-tv-core__overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.dc-hhcv--svg .dc-tv-core__bg { z-index: -2; overflow: hidden; }
.dc-hhcv--svg .dc-tv-core__bg img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
}
.dc-hhcv--svg .dc-tv-core__overlay {
  z-index: -1;
  background: #fff;
  opacity: .84;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}
.dc-hhcv--svg .dc-tv-core__inner {
  position: relative;
  width: 100%;
  max-width: 1320px;
  min-width: 0;
  margin-inline: auto;
}
.dc-hhcv--svg .dc-tv-core__header { min-width: 0; }
.dc-hhcv--svg .dc-tv-core__eyebrow {
  display: flex;
  gap: 8px;
  align-items: center;
  color: #c8010a;
  font-size: 26px;
  font-weight: 500;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.dc-hhcv--svg .dc-tv-core__eyebrow::before {
  content: '';
  display: inline-block;
  flex: 0 0 auto;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: currentColor;
}
.dc-hhcv--svg .dc-tv-core__heading {
  margin: 24px 0 0;
  min-width: 0;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.18;
  color: #051a53;
  overflow-wrap: anywhere;
}
.dc-hhcv--svg .dc-tv-core__grid {
  position: relative;
  display: grid;
  width: 100%;
  grid-template-columns: repeat(4,minmax(0,1fr));
  column-gap: 24px;
  row-gap: 24px;
  margin-top: 50px;
  min-width: 0;
}
.dc-hhcv--svg .dc-tv-core__card {
  min-width: 0;
  min-height: 356px;
  padding: 32px;
  border: 1px solid rgba(0,0,0,.05);
  border-radius: 24px;
  background-color: #fcfcfc;
  color: #282828;
  transition: background-color .26s ease, box-shadow .26s ease, transform .26s ease;
}
.dc-hhcv--svg .dc-tv-core__card-head {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 20px;
}
.dc-hhcv--svg .dc-tv-core__icon {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
  width: 56px;
  height: 56px;
  border-radius: 16px;
  background-color: #fbeded;
  color: #c8010a;
  font-size: 32px;
  line-height: 1;
}
.dc-hhcv--svg .dc-tv-core__glyph {
  display: block;
  width: 32px;
  height: 32px;
  flex: 0 0 auto;
  background-color: currentColor;
  opacity: .35;
  -webkit-mask-image: var(--dc-tv-core-mask);
  mask-image: var(--dc-tv-core-mask);
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
.dc-hhcv--svg .dc-tv-core__icon :where(img,svg,i) {
  display: block;
  width: 32px;
  height: 32px;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  flex: 0 0 auto;
  color: currentColor;
}
.dc-hhcv--svg .dc-tv-core__card-title {
  min-width: 0;
  margin: 0;
  color: #051a53;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.22;
  overflow-wrap: anywhere;
}
.dc-hhcv--svg .dc-tv-core__body {
  min-width: 0;
  max-width: 100%;
  margin-top: 22px;
  color: #282828;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.48;
  overflow-wrap: anywhere;
}
.dc-hhcv--svg .dc-tv-core__body :where(p,li,a,span) { color: inherit; overflow-wrap: anywhere; }
.dc-hhcv--svg .dc-tv-core__body > :first-child { margin-top: 0; }
.dc-hhcv--svg .dc-tv-core__body > :last-child { margin-bottom: 0; }
.dc-hhcv--svg .dc-tv-core__body p { margin: 0; }
.dc-hhcv--svg .dc-tv-core__body p + p { margin-top: .75em; }
.dc-hhcv--svg .dc-tv-core__body :where(img,video,iframe,svg) { max-width: 100%; height: auto; }
.dc-hhcv--svg .dc-tv-core__body :where(table,pre) { display: block; max-width: 100%; overflow-x: auto; }
.dc-hhcv--svg .dc-tv-core__body a { text-decoration: underline; }
/* No timeline or faux navigation. Card content always grows, never clips. */
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .dc-hhcv--svg .dc-tv-core__card:hover { transform: translateY(-4px); box-shadow: 0 12px 36px rgba(5,26,83,.07); }
}
@media (max-width: 1366px) {
  .dc-hhcv.dc-hhcv--svg { padding-block: 80px; }
  .dc-hhcv--svg .dc-tv-core__heading { font-size: clamp(30px,2.6vw,40px); }
  .dc-hhcv--svg .dc-tv-core__card { padding: clamp(20px,2.1vw,32px); }
  .dc-hhcv--svg .dc-tv-core__card-title { font-size: clamp(18px,1.55vw,24px); }
  .dc-hhcv--svg .dc-tv-core__body { font-size: clamp(15px,1.22vw,18px); }
}
@media (max-width: 1100px) {
  .dc-hhcv--svg .dc-tv-core__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .dc-hhcv--svg .dc-tv-core__card { min-height: 0; }
}
@media (max-width: 767px) {
  .dc-hhcv.dc-hhcv--svg { padding: 48px 16px; }
  .dc-hhcv--svg .dc-tv-core__eyebrow { font-size: clamp(16px,4.6vw,21px); }
  .dc-hhcv--svg .dc-tv-core__heading { font-size: clamp(24px,7vw,32px); }
  .dc-hhcv--svg .dc-tv-core__grid { grid-template-columns: minmax(0,1fr); margin-top: 28px; gap: 16px; }
  .dc-hhcv--svg .dc-tv-core__card { min-height: 0; padding: 24px; border-radius: 20px; }
  .dc-hhcv--svg .dc-tv-core__card-title { font-size: 20px; }
  .dc-hhcv--svg .dc-tv-core__body { font-size: 15px; line-height: 1.6; }
}
@media (max-width: 359px) {
  .dc-hhcv--svg .dc-tv-core__card { padding: 20px; }
  .dc-hhcv--svg .dc-tv-core__card-head { gap: 12px; }
  .dc-hhcv--svg .dc-tv-core__icon { width: 48px; height: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  .dc-hhcv--svg .dc-tv-core__card { transition: none; }
}
