/* Vacunas: contraste AA y reserva de espacio del hero de fichas.
   #607a90 sobre blanco = 4,48:1 y sobre #f3f8fd = 4,19:1.
   #5a7187 supera 4,5:1 en ambos fondos (5,06:1 y 4,74:1). */
body.rt-unified-page,
body.mogu-experience,
body.exam-education-page,
body.vac-landing {
  --rt-muted: #5a7187;
  --muted: #5a7187;
  --exam-muted: #5a7187;
  --migo-muted: #5a7187;
}
.unified-breadcrumb span {
  color: #5a7187;
}
/* El enlace dentro del párrafo no se distingue solo por color (Lighthouse link-in-text-block). */
#orden-y-vacunatorio a,
.vac-note a,
.vac-related a,
.vac-faq a {
  text-decoration: underline;
  text-underline-offset: 0.12em;
}
.skip {
  position: absolute;
  left: 16px;
  top: -80px;
  z-index: 200;
  background: #fff;
  color: #0b5cad;
  padding: 12px 18px;
  border-radius: 12px;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 8px 24px rgba(10, 39, 68, 0.15);
}
.skip:focus,
.skip:focus-visible {
  top: 16px;
}
/* Manrope (rt-unification, font-display: swap) desplaza section.exam-hero al llegar el archivo.
   En las fichas se usa una fuente del sistema para que el alto no cambie al cargar /assets/manrope.ttf. */
body.exam-education-page,
body.exam-education-page .site-header,
body.exam-education-page .site-header *,
body.exam-education-page .exam-hero,
body.exam-education-page .exam-hero * {
  font-family: Arial, "Liberation Sans", "Nimbus Sans", sans-serif !important;
}
.exam-hero {
  min-height: 240px;
}
.exam-hero > .exam-icon {
  width: 128px;
  height: 128px;
  min-width: 128px;
  min-height: 128px;
  aspect-ratio: 1 / 1;
  grid-column: 2;
  grid-row: 1;
}
.exam-hero > div {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
}
@media (max-width: 780px) {
  .exam-hero {
    min-height: 420px;
  }
  .exam-hero > .exam-icon {
    width: 92px;
    height: 92px;
    min-width: 92px;
    min-height: 92px;
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }
  .exam-hero > div {
    grid-column: 1;
    grid-row: 2;
  }
}
.v-regions {
  list-style: none;
  padding: 0;
  margin: 16px 0 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 8px 16px;
}
.v-regions a {
  font-weight: 700;
}
.v-directory {
  list-style: none;
  padding: 0;
  margin: 16px 0 0;
}
.v-point {
  margin: 0 0 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid #dce9f4;
}
.v-point h3 {
  margin: 0 0 4px;
  font-size: 1.05rem;
}
.v-point p {
  margin: 0;
}

.vac-price-wrap { overflow-x: auto; }
.vac-price-table { width: 100%; border-collapse: collapse; font-size: 0.92rem; }
.vac-price-table caption { text-align: left; font-weight: 700; margin: 0 0 8px; }
.vac-price-table th, .vac-price-table td { text-align: left; padding: 8px 8px; border-bottom: 1px solid #dce9f4; vertical-align: top; overflow-wrap: anywhere; }
.vac-price-table th { color: #0a2744; }
.vac-price-updated {
  margin: 0 0 16px;
  padding: 12px 16px;
  font-weight: 700;
  font-size: 1.05rem;
  line-height: 1.4;
  color: #0a2744;
  background: #f3f8fd;
  border-left: 4px solid #0b5cad;
}
