.vhf-traening {
  --vhf-navy: #172252;
  --vhf-blue: #2868c7;
  --vhf-bg: #f6f8fc;
  --vhf-soft: #eaf0fa;
  --vhf-border: #e1e7f0;
  --vhf-text: #566078;
  width: 100%;
  color: var(--vhf-navy);
  font-family: inherit;
}
.vhf-traening *, .vhf-traening *::before, .vhf-traening *::after { box-sizing: border-box; }
.vhf-training-hero { margin: 0 0 58px; padding: 54px 56px; background: linear-gradient(135deg,#eef3fb 0%,#e3ebf8 100%); border: 1px solid #dce5f3; border-radius: 14px; }
.vhf-training-kicker { margin: 0 0 12px; color: var(--vhf-blue); font-size: 12px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.vhf-training-hero h1 { margin: 0 0 17px; color: var(--vhf-navy); font-size: clamp(40px,5vw,62px); line-height: 1.04; letter-spacing: -.04em; }
.vhf-training-intro { max-width: 760px; margin: 0; color: var(--vhf-text); font-size: 17px; line-height: 1.7; }
.vhf-day-section { margin: 0 0 68px; }
.vhf-day-heading { display: flex; align-items: center; gap: 16px; margin: 0 0 22px; }
.vhf-day-icon { flex: 0 0 48px; display: grid; place-items: center; width: 48px; height: 48px; color: var(--vhf-blue); background: var(--vhf-soft); border-radius: 10px; }
.vhf-day-icon svg { width: 23px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.vhf-day-heading p { margin: 0 0 2px; color: var(--vhf-blue); font-size: 11px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.vhf-day-heading h2 { margin: 0; color: var(--vhf-navy); font-size: clamp(28px,3vw,38px); line-height: 1.08; letter-spacing: -.025em; }
.vhf-day-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; align-items: start; }
.vhf-hal { min-width: 0; overflow: hidden; background: #fff; border: 1px solid var(--vhf-border); border-radius: 13px; box-shadow: 0 9px 26px rgba(23,34,82,.07); }
.vhf-hal-heading { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin: 0; padding: 18px 21px; color: #fff; background: var(--vhf-navy); font-size: 17px; line-height: 1.2; }
.vhf-hal-heading small { color: #cdd7ee; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.vhf-table-wrap { width: 100%; overflow-x: auto; }
.vhf-table { width: 100%; margin: 0; border: 0; border-collapse: collapse; border-spacing: 0; table-layout: auto; }
.vhf-table thead th { padding: 12px 18px; color: #717b91; background: #f4f7fb; border: 0; border-bottom: 1px solid var(--vhf-border); font-size: 11px; font-weight: 800; letter-spacing: .055em; text-align: left; text-transform: uppercase; }
.vhf-table tbody td { padding: 16px 18px; color: var(--vhf-text); background: #fff; border: 0; border-bottom: 1px solid var(--vhf-border); font-size: 15px; line-height: 1.45; text-align: left; vertical-align: top; }
.vhf-table tbody tr:last-child td { border-bottom: 0; }
.vhf-table tbody tr:hover td { background: #fafcff; }
.vhf-table tbody td:first-child { width: 128px; white-space: nowrap; color: var(--vhf-blue); font-weight: 800; font-variant-numeric: tabular-nums; }
.vhf-table tbody td:nth-child(2) { color: var(--vhf-navy); font-weight: 750; }
.vhf-hal--notes .vhf-table tbody td:nth-child(2) { width: 34%; }
.vhf-hal--notes .vhf-table tbody td:last-child { color: #6e778c; font-size: 13px; }
.vhf-empty { padding: 28px 21px; color: #7a8397; background: #fbfcfe; font-size: 14px; }
.vhf-training-empty-state { display: grid; gap: 5px; padding: 28px; color: #566078; background: #f6f8fc; border: 1px solid #e1e7f0; border-radius: 12px; }
.vhf-training-empty-state strong { color: #172252; font-size: 18px; }
@media (max-width: 900px) { .vhf-day-grid { grid-template-columns: 1fr; } }
@media (max-width: 560px) {
  .vhf-training-hero { margin-bottom: 42px; padding: 38px 25px; border-radius: 11px; }
  .vhf-training-hero h1 { font-size: 40px; }
  .vhf-training-intro { font-size: 16px; }
  .vhf-day-section { margin-bottom: 52px; }
  .vhf-day-heading { gap: 13px; }
  .vhf-day-icon { flex-basis: 43px; width: 43px; height: 43px; }
  .vhf-table thead { display: none; }
  .vhf-table, .vhf-table tbody, .vhf-table tr, .vhf-table td { display: block; width: 100% !important; }
  .vhf-table tbody tr { padding: 15px 18px; border-bottom: 1px solid var(--vhf-border); }
  .vhf-table tbody tr:last-child { border-bottom: 0; }
  .vhf-table tbody td { display: grid; grid-template-columns: 88px minmax(0,1fr); gap: 10px; padding: 4px 0; border: 0; background: transparent !important; white-space: normal; }
  .vhf-table tbody td::before { content: attr(data-label); color: #7a8397; font-size: 10px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
  .vhf-table tbody td:first-child { font-size: 16px; }
  .vhf-hal-heading { padding: 16px 18px; }
}
