/* Fade-in al entrar en la sección del mapa */
.im-left>* {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 800ms ease, transform 800ms ease;
}

.im-left.im-fade-in>* {
  opacity: 1;
  transform: none;
}

.im-left>*:nth-child(2) {
  transition-delay: 150ms;
}

.im-left>*:nth-child(3) {
  transition-delay: 300ms;
}

.im-map-wrap {
  opacity: 0;
  transition: opacity 900ms ease 200ms;
}

.im-map-wrap.im-fade-in {
  opacity: 1;
}

.im-list {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 900ms ease 400ms, transform 900ms ease 400ms;
}

.im-list.im-fade-in {
  opacity: 1;
  transform: none;
}

/* Texto de mercados alineado arriba (no centrado respecto al mapa) */
@media (min-width: 780px) {
  .im-left { align-self: start; margin-top: 8px; }
}

/* Bloque de mercados: textos algo más pequeños y desplazado a la derecha */
@media (min-width: 780px) {
  .im-left { padding-left: clamp(24px, 3vw, 56px); }
  .im-left .im-title { font-size: clamp(26px, 2.5vw, 44px) !important; }
  .im-left .im-desc { font-size: clamp(16px, 1.3vw, 22px) !important; }
}

/* Texto del país seleccionado un poco más grande */
.im-callout-name { font-size: 17px !important; }
.im-callout-desc { font-size: 15.5px !important; max-width: 260px; }
@media (max-width: 1100px) {
  #mercados .im-callout-name { font-size: 17px !important; }
  #mercados .im-callout-desc { font-size: 16px !important; max-width: none; }
}
