/* global React, Icon, Reveal, WA_URL, PHONE_FMT, EMAIL */ const { useState: useStateFin } = React; /* =========================================================== Equipo y respaldo =========================================================== */ function Team() { return (

07 — Nosotros

Caras reales detrás de cada proyecto.

SLF Energía nace en Valparaíso de la mano de Danilo, con más de una década instalando proyectos solares en Chile. Hoy ejecutamos a escala industrial con un equipo técnico propio de 24 personas.

Retrato Danilo · pendiente

Danilo Núñez

Fundador · Director técnico

Fundador Ingeniero eléctrico 12 años · terreno

"Aprendí a instalar paneles antes de tener oficina. Ese sigue siendo el estándar."

Danilo fundó SLF en 2014 con una camioneta y dos técnicos. Hoy somos un equipo de 24 personas con ingeniería, instalación y O&M propios — y un canal con 192 videos de instalaciones reales.

24
personas
12a
trayectoria
192
videos canal
47
proyectos
Conoce al equipo completo, la trayectoria y el canal
); } /* =========================================================== Recursos / Blog =========================================================== */ function Resources() { const posts = [ { cat: 'Regulación', title: 'Net Billing en Chile: qué es y por qué es clave para autoconsumo industrial.', read: '8 min', date: 'May 2026', }, { cat: 'Regulación', title: 'PMGD: la vía para grandes consumidores que quieren inyectar excedentes.', read: '11 min', date: 'Abr 2026', }, { cat: 'Financiamiento', title: 'Cómo financiar tu planta solar sin tocar CAPEX: PPA, leasing y banca.', read: '7 min', date: 'Abr 2026', }, { cat: 'Técnico', title: 'TIR, payback y LCOE: las tres cifras que deciden una cotización solar.', read: '6 min', date: 'Mar 2026', }, ]; return (

08 — Recursos

Material técnico para tu equipo de decisión.

Ver todos los recursos
{posts.map((p, i) => (
{p.cat}

{p.title}

{p.date} · {p.read} lectura
))}
); } /* =========================================================== Final CTA — formulario inline =========================================================== */ function FinalCTA({ onOpenCalendar }) { const [form, setForm] = useStateFin({ empresa: '', sector: '', consumo: '', nombre: '', cargo: '', email: '', telefono: '', }); const [sent, setSent] = useStateFin(false); const submit = (e) => { e.preventDefault(); setSent(true); }; return (
); } /* =========================================================== Footer =========================================================== */ function Footer({ onHome = true }) { const HOME = 'index.html'; const base = onHome ? '' : HOME; return ( ); } /* =========================================================== Calendar / diagnostic Modal =========================================================== */ function CalendarModal({ open, onClose, prefill }) { const [step, setStep] = useStateFin(1); const [slot, setSlot] = useStateFin(null); const [form, setForm] = useStateFin({ empresa: '', nombre: '', email: '', telefono: '' }); const [done, setDone] = useStateFin(false); if (!open) return null; // Generate next 5 weekdays const days = []; let d = new Date(); while (days.length < 5) { d = new Date(d.getTime() + 86400000); if (d.getDay() !== 0 && d.getDay() !== 6) { days.push(new Date(d)); } } const slots = ['09:30', '11:00', '12:30', '15:00', '16:30']; const submit = (e) => { e.preventDefault(); setDone(true); }; const fmtDay = (d) => d.toLocaleDateString('es-CL', { weekday: 'short', day: 'numeric', month: 'short' }); return (
e.stopPropagation()}>

Paso {done ? 3 : step} de 3

{done ? '¡Listo!' : step === 1 ? 'Elige una hora' : 'Tus datos'}

{done ? (

Diagnóstico agendado

{slot && `${fmtDay(slot.day)} · ${slot.time} hrs`}

Te enviamos confirmación a {form.email}.

) : step === 1 ? (

Reunión de 30 min con un ingeniero de SLF. Por videollamada o en sitio.

{days.map((day, i) => ( ))}
{slot && ( <>

Horarios disponibles

{slots.map((t) => ( ))}
)}
) : (

Reunión: {slot && `${fmtDay(slot.day)} · ${slot.time} hrs`}

setForm({ ...form, empresa: e.target.value })} />
setForm({ ...form, nombre: e.target.value })} />
setForm({ ...form, email: e.target.value })} />
setForm({ ...form, telefono: e.target.value })} />
)}
); } /* =========================================================== Floating WhatsApp =========================================================== */ function WhatsAppFloat() { return ( ); } Object.assign(window, { Team, Resources, FinalCTA, Footer, CalendarModal, WhatsAppFloat });