/* =========================================================
   Itinerarios – estilos de contenido
   Todo queda limitado al contenedor .itin-mp
   ========================================================= */
.itin-mp{
  --im-azul:#002b4f;
  --im-rojo:#d0252e;
  --im-amarillo:#D1A54B;
  --im-texto:#000000;
  --im-gris-linea:#E1E5EA;
  --im-fondo-suave:#F4F6F8;
  color:var(--im-texto);
  line-height:1.7;
}
.itin-mp *{box-sizing:border-box}
.itin-mp p{margin:0 0 1em;color:var(--im-texto)}
.itin-mp strong{color:var(--im-texto)}

/* Títulos: barra amarilla como en el encabezado de la página */
.itin-mp h2{
  color:var(--im-azul);font-size:1.8rem;line-height:1.2;
  margin:2.5rem 0 1.1rem;padding-top:.85rem;position:relative;
}
.itin-mp h2::before{
  content:"";position:absolute;top:0;left:0;width:70px;height:4px;background:var(--im-amarillo);
}
.itin-mp > h2:first-child{margin-top:0}
.itin-mp h3{color:var(--im-azul);font-size:1.3rem;line-height:1.3;margin:2rem 0 .7rem}
.itin-mp h4{color:var(--im-texto);font-size:1.05rem;line-height:1.35;margin:1.2rem 0 .3rem}

/* Listas */
.itin-mp ul.im-lista{list-style:none;padding:0;margin:0 0 1.2rem}
.itin-mp ul.im-lista li{position:relative;padding-left:1.5rem;margin-bottom:.5rem}
.itin-mp ul.im-lista li::before{
  content:"";position:absolute;left:.15rem;top:.62em;width:.5rem;height:.5rem;
  background:var(--im-amarillo);transform:rotate(45deg);
}
.itin-mp ul.im-check li::before,
.itin-mp ul.im-no li::before{background:none;transform:none;top:0;left:0;width:auto;height:auto;font-weight:700}
.itin-mp ul.im-check li::before{content:"✓";color:var(--im-azul)}
.itin-mp ul.im-no li::before{content:"✗";color:var(--im-rojo)}

/* Beneficios */
.itin-mp .im-beneficios li{margin-bottom:.9rem}

/* Resumen por día */
.itin-mp .im-dia-resumen{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.1rem}
.itin-mp .im-dia-num{
  flex:0 0 auto;width:3.4rem;height:3.4rem;border-radius:50%;
  background:var(--im-azul);color:#fff;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  font-size:.7rem;line-height:1;border:3px solid var(--im-amarillo);
}
.itin-mp .im-dia-num strong{color:#fff;font-size:1.3rem;line-height:1.1}
.itin-mp .im-ruta{font-weight:700;margin:0 0 .25rem}

/* Tablas */
.itin-mp .im-tabla-wrap{overflow-x:auto;margin:1rem 0 1.4rem}
.itin-mp table{width:100%;border-collapse:collapse;min-width:520px;font-size:.96rem;color:var(--im-texto)}
.itin-mp th,.itin-mp td{padding:.7rem .9rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--im-gris-linea)}
.itin-mp thead th{background:var(--im-azul);color:#fff;font-weight:600}
.itin-mp tbody th{font-weight:700;white-space:nowrap}
.itin-mp tbody tr:nth-child(even){background:var(--im-fondo-suave)}
.itin-mp td.im-precio{font-weight:700;color:var(--im-rojo);white-space:nowrap;font-size:1.05rem}
.itin-mp td.im-precio small{display:block;font-weight:400;font-size:.8rem;color:var(--im-texto)}
.itin-mp tr.im-destacada td{background:#fff}
/* Uniformidad: anula líneas verticales de color del tema */
.itin-mp table,.itin-mp th,.itin-mp td{border-left:0 !important;border-right:0 !important;border-top:0 !important}
.itin-mp tbody td,.itin-mp tbody th{border-bottom:1px solid var(--im-gris-linea) !important}
.itin-mp thead th{border-bottom:0 !important}
.itin-mp th.im-anio{text-align:center;white-space:nowrap}
.itin-mp td.im-precio.im-centro{text-align:center;font-size:1.45rem;font-weight:800;line-height:1.15;vertical-align:middle}
.itin-mp td.im-precio.im-centro small{font-size:.78rem;margin-top:.2rem}

/* Tabla ligera (adicionales): menos protagonismo que las tarifas */
.itin-mp table.im-tabla-ligera{font-size:.86rem}
.itin-mp table.im-tabla-ligera thead th{
  background:transparent;color:var(--im-azul);font-weight:700;
  border-bottom:2px solid var(--im-azul) !important;padding:.5rem .7rem;
}
.itin-mp table.im-tabla-ligera td{padding:.5rem .7rem}
.itin-mp table.im-tabla-ligera tbody tr:nth-child(even){background:transparent}
.itin-mp table.im-tabla-ligera td.im-precio{color:var(--im-azul);font-size:.9rem}

/* Encabezado de día en el itinerario: círculo al lado del título, unido a la línea de tiempo */
.itin-mp div.im-dia-titulo{
  display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;
  align-items:center;gap:1rem;margin:2.2rem 0 0;position:relative;
}
.itin-mp div.im-dia-titulo::before{
  content:"";position:absolute;left:calc(1.7rem - 1.5px);top:1.7rem;bottom:0;width:3px;background:var(--im-azul);
}
.itin-mp div.im-dia-titulo > .im-dia-num{flex:0 0 3.4rem;position:relative;z-index:1;margin:0}
.itin-mp div.im-dia-titulo > h3{flex:1 1 auto;width:auto;margin:0 !important;display:block}
.itin-mp .im-dia-titulo + p{
  margin:0 0 0 calc(1.7rem - 1.5px);padding:.9rem 0 1.2rem 1.9rem;
  border-left:3px solid var(--im-azul);
}

/* Línea de tiempo */
.itin-mp ol.im-timeline{list-style:none;margin:1rem 0 1.2rem .4rem;padding:0;border-left:3px solid var(--im-azul)}
.itin-mp .im-dia-titulo + p + ol.im-timeline{margin:0 0 1.2rem calc(1.7rem - 1.5px);padding-top:.2rem}
.itin-mp .im-dia-titulo + p + ol.im-timeline li{padding-left:1.9rem}
.itin-mp ol.im-timeline li{position:relative;padding:0 0 1.3rem 1.5rem}
.itin-mp ol.im-timeline li:last-child{padding-bottom:.2rem}
.itin-mp ol.im-timeline li::before{
  content:"";position:absolute;left:-.58rem;top:.4rem;width:.85rem;height:.85rem;
  border-radius:50%;background:#fff;border:3px solid var(--im-azul);
}
.itin-mp ol.im-timeline p{margin:0}
.itin-mp ol.im-timeline li:first-child::before,
.itin-mp ol.im-timeline li:last-child::before{background:var(--im-amarillo);border-color:var(--im-amarillo)}

/* Ficha técnica del día: franja con líneas, sin cuadro */
.itin-mp .im-ficha{
  display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem 1rem;
  border-top:1px solid var(--im-gris-linea);border-bottom:1px solid var(--im-gris-linea);
  padding:.8rem 0;margin:1rem 0 1.5rem;
}
.itin-mp .im-ficha span{display:block;font-size:.78rem;color:#4A4A4A}
.itin-mp .im-ficha strong{display:block;line-height:1.3}

/* Mensaje de garantía: recuadro azul discreto, sin ícono */
.itin-mp .im-garantia{
  background:var(--im-azul);color:#fff;border-left:4px solid var(--im-amarillo);
  border-radius:6px;padding:.75rem 1.1rem;margin:1rem 0 2rem;font-size:.92rem;
}
.itin-mp .im-garantia p{margin:0;color:#fff;line-height:1.55}
.itin-mp .im-garantia strong{color:var(--im-amarillo)}
.itin-mp .im-garantia .im-garantia-titulo{font-weight:700;font-size:.95rem;margin-bottom:.1rem;color:#fff}

/* Aviso */
.itin-mp .im-aviso{background:#FBF5E8;border-left:5px solid var(--im-amarillo);padding:1rem 1.2rem;margin:1.2rem 0}
.itin-mp .im-aviso p:last-child,.itin-mp .im-aviso ul:last-child{margin-bottom:0}
.itin-mp .im-aviso-titulo{font-weight:700;margin-bottom:.35rem}
.itin-mp .im-nota{font-size:.9rem}

/* Preguntas frecuentes: pregunta en negrita, respuesta normal */
.itin-mp.im-faq h3{
  color:var(--im-texto);font-size:1.05rem;font-weight:700;line-height:1.4;
  margin:1.6rem 0 .4rem;
}
.itin-mp.im-faq h2 + h3{margin-top:0}
.itin-mp.im-faq a{color:var(--im-azul)}

@media (max-width:600px){
  .itin-mp h2{font-size:1.5rem}
  .itin-mp .im-ficha{grid-template-columns:repeat(2,1fr)}
}