// Aliados estratégicos (sección verde) — fila única de 5 logos function Collaborators() { const partners = [ { name: 'MinEducación', logo: 'assets/logos/logo-mineducacion.png', url: null }, { name: 'MinDefensa', logo: 'assets/logos/logo-mindefensa.png', url: null }, { name: 'COOSAMIR', logo: 'assets/logos/logo-coosamir.png', url: 'http://www.coosamir.com.co/' }, { name: 'FUNDAMIR', logo: 'assets/logos/logo-fundamir.png', url: 'http://fundamir.edu.co/' }, { name: 'SENA', logo: 'assets/logos/logo-sena.png', url: null }, ]; // Si una imagen falla al cargar (red lenta o intermitente), la reintenta // una sola vez con un parámetro anti-caché. Así el logo NUNCA se queda // en blanco / "desaparece"; vuelve a intentar en lugar de quedar vacío. const handleImgError = (e) => { const img = e.currentTarget; if (img.dataset.retried) return; // solo un reintento para no ciclar img.dataset.retried = '1'; const base = img.src.split('?')[0]; img.src = base + '?r=' + Date.now(); }; return (

— Aliados estratégicos —

Aliados

{partners.map((p, i) => { const Tag = p.url ? 'a' : 'div'; const props = p.url ? { href: p.url, target: '_blank', rel: 'noopener' } : {}; return ( {p.name} ); })}
); } Object.assign(window, { Collaborators });