<!DOCTYPE html>

<html lang="es">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>OmniaFlow | Automatización & IA</title>

    

    <!-- 1. Carga de Estilos (Tailwind CSS) -->

    <script src="https://cdn.tailwindcss.com"></script>

    

    <!-- 2. Carga de React (El Motor) -->

    <script crossorigin src="https://unpkg.com/react@18/umd/react.production.min.js"></script>

    <script crossorigin src="https://unpkg.com/react-dom@18/umd/react-dom.production.min.js"></script>

    

    <!-- 3. Carga de Babel (El Traductor de Código) -->

    <script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>

    

    <!-- Fuentes -->

    <link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap" rel="stylesheet">


    <style>

        body { font-family: 'Plus Jakarta Sans', sans-serif; background-color: #F5F5F0; }

        html { scroll-behavior: smooth; }

        

        /* Animaciones suaves */

        @keyframes float {

            0% { transform: translateY(0px); }

            50% { transform: translateY(-10px); }

            100% { transform: translateY(0px); }

        }

        .animate-float { animation: float 6s ease-in-out infinite; }

    </style>

</head>

<body>

    <div id="root"></div>


    <script type="text/babel">

        const { useState, useEffect } = React;

        

        // --- SISTEMA DE ICONOS SVG NATIVOS (Sin dependencias externas) ---

        // Esto elimina el error "Cannot read properties of undefined (reading 'forwardRef')"

        const Icons = {

            ArrowRight: <path d="M5 12h14M12 5l7 7-7 7"/>,

            Cpu: <><rect x="4" y="4" width="16" height="16" rx="2"/><rect x="9" y="9" width="6" height="6"/><path d="M9 1v3M15 1v3M9 20v3M15 20v3M20 9h3M20 14h3M1 9h3M1 14h3"/></>,

            Menu: <><line x1="4" x2="20" y1="12" y2="12"/><line x1="4" x2="20" y1="6" y2="6"/><line x1="4" x2="20" y1="18" y2="18"/></>,

            X: <><path d="M18 6 6 18"/><path d="m6 6 12 12"/></>,

            BrainCircuit: <><path d="M12 4.5a2.5 2.5 0 0 0-4.96-.46 2.5 2.5 0 0 0-1.98 3 2.5 2.5 0 0 0-1.32 3 2.5 2.5 0 0 0 .5 3.19 2.5 2.5 0 0 0 2.26 1.77 2.5 2.5 0 0 0 5 .04 2.5 2.5 0 0 0 5-.05 2.5 2.5 0 1 0 5-5 2.5 2.5 0 1 0-4.96-5 2.5 2.5 0 0 0-4.54 1.5"/><path d="M12 13.5V20"/><path d="M16 16.5h4"/><path d="M4 16.5h4"/></>,

            Code2: <><path d="m18 16 4-4-4-4"/><path d="m6 8-4 4 4 4"/><path d="m14.5 4-5 16"/></>,

            Zap: <polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"/>,

            CheckCircle2: <><circle cx="12" cy="12" r="10"/><path d="m9 12 2 2 4-4"/></>,

            Rocket: <><path d="M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z"/><path d="m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z"/><path d="M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0"/><path d="M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5"/></>,

            Mail: <><rect width="20" height="16" x="2" y="4" rx="2"/><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"/></>

        };


        const Icon = ({ name, size = 24, className = "" }) => {

            const content = Icons[name];

            if (!content) return null;

            

            return (

                <svg 

                    xmlns="http://www.w3.org/2000/svg" 

                    width={size} 

                    height={size} 

                    viewBox="0 0 24 24" 

                    fill="none" 

                    stroke="currentColor" 

                    strokeWidth="2" 

                    strokeLinecap="round" 

                    strokeLinejoin="round" 

                    className={className}

                >

                    {content}

                </svg>

            );

        };


        // --- COMPONENTE PRINCIPAL ---

        const OmniaFlowSite = () => {

          const [isScrolled, setIsScrolled] = useState(false);

          const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);


          useEffect(() => {

            const handleScroll = () => setIsScrolled(window.scrollY > 20);

            window.addEventListener('scroll', handleScroll);

            return () => window.removeEventListener('scroll', handleScroll);

          }, []);


          const scrollTo = (id) => {

            setIsMobileMenuOpen(false);

            const el = document.getElementById(id);

            if(el) el.scrollIntoView({ behavior: 'smooth' });

          };


          return (

            <div className="min-h-screen text-[#183B56] overflow-x-hidden selection:bg-[#5432D3] selection:text-white">

              

              {/* --- NAVBAR --- */}

              <nav className={`fixed top-0 w-full z-50 transition-all duration-300 ${isScrolled ? 'bg-white/95 backdrop-blur shadow-sm py-4' : 'bg-transparent py-6'}`}>

                <div className="container mx-auto px-6 flex justify-between items-center">

                  {/* Logo */}

                  <div className="flex items-center gap-3 cursor-pointer" onClick={() => scrollTo('hero')}>

                    <div className="relative h-10 w-auto">

                        {/* Intenta cargar el logo, si falla muestra texto fallback */}

                        <img 

                            src="omniaflow automation logo.jpg" 

                            alt="OmniaFlow" 

                            className="h-10 w-auto object-contain" 

                            onError={(e) => {

                                e.target.style.display = 'none';

                                document.getElementById('logo-text-fallback').style.display = 'flex';

                            }}

                        />

                        <div id="logo-text-fallback" className="hidden items-center gap-2 font-bold text-2xl tracking-tighter">

                            <div className="w-8 h-8 rounded-lg bg-gradient-to-r from-[#5432D3] to-[#8F5EF8] flex items-center justify-center text-white">

                                <Icon name="Cpu" size={20} />

                            </div>

                            <span>Omnia<span className="text-[#5432D3]">Flow</span></span>

                        </div>

                    </div>

                  </div>


                  {/* Desktop Menu */}

                  <div className="hidden md:flex items-center gap-8 font-medium text-sm">

                    <button onClick={() => scrollTo('servicios')} className="hover:text-[#5432D3] transition-colors">Soluciones</button>

                    <button onClick={() => scrollTo('ecosistema')} className="hover:text-[#5432D3] transition-colors">Ecosistema</button>

                    <button onClick={() => scrollTo('nosotros')} className="hover:text-[#5432D3] transition-colors">Nosotros</button>

                    <button onClick={() => scrollTo('contacto')} className="px-5 py-2.5 rounded-full text-white font-semibold shadow-lg shadow-indigo-500/30 hover:shadow-indigo-500/50 hover:-translate-y-0.5 transition-all bg-gradient-to-r from-[#5432D3] to-[#8F5EF8]">

                      Agenda una Demo

                    </button>

                  </div>


                  {/* Mobile Toggle */}

                  <button className="md:hidden" onClick={() => setIsMobileMenuOpen(!isMobileMenuOpen)}>

                    <Icon name={isMobileMenuOpen ? "X" : "Menu"} size={28} />

                  </button>

                </div>


                {/* Mobile Menu */}

                {isMobileMenuOpen && (

                  <div className="absolute top-full left-0 w-full bg-white border-b border-gray-100 shadow-xl p-6 flex flex-col gap-4 md:hidden">

                    <button onClick={() => scrollTo('servicios')} className="text-left py-2 font-medium">Soluciones</button>

                    <button onClick={() => scrollTo('ecosistema')} className="text-left py-2 font-medium">Ecosistema</button>

                    <button onClick={() => scrollTo('contacto')} className="w-full py-3 rounded-lg text-white font-semibold bg-[#5432D3]">Agenda una Demo</button>

                  </div>

                )}

              </nav>


              {/* --- HERO SECTION --- */}

              <section id="hero" className="relative pt-32 pb-20 lg:pt-48 lg:pb-32 overflow-hidden">

                <div className="absolute top-0 right-0 w-[600px] h-[600px] bg-[#5432D3] rounded-full mix-blend-multiply filter blur-[128px] opacity-10 animate-float"></div>

                <div className="absolute bottom-0 left-0 w-[500px] h-[500px] bg-[#8F5EF8] rounded-full mix-blend-multiply filter blur-[128px] opacity-10 animate-float" style={{animationDelay: '2s'}}></div>


                <div className="container mx-auto px-6 relative z-10 text-center">

                    <div className="inline-flex items-center gap-2 px-3 py-1 rounded-full bg-indigo-50 border border-indigo-100 text-indigo-700 text-xs font-bold uppercase tracking-wide mb-6">

                      <span className="w-2 h-2 rounded-full bg-indigo-600 animate-pulse"></span>

                      Innovación en Inteligencia Artificial

                    </div>

                    

                    <h1 className="text-5xl md:text-7xl font-bold mb-8 leading-tight tracking-tight">

                      Transformamos datos en <br/>

                      <span className="text-transparent bg-clip-text bg-gradient-to-r from-[#5432D3] to-[#8F5EF8]">

                        Decisiones Inteligentes

                      </span>

                    </h1>

                    

                    <p className="text-xl text-slate-600 mb-10 max-w-2xl mx-auto leading-relaxed">

                      OmniaFlow integra soluciones de automatización y agentes de IA para escalar negocios modernos. El futuro no es solo digital, es cognitivo.

                    </p>

                    

                    <div className="flex flex-col sm:flex-row items-center justify-center gap-4">

                      <button onClick={() => scrollTo('contacto')} className="px-8 py-4 rounded-full text-white font-bold text-lg shadow-xl shadow-indigo-600/20 hover:shadow-indigo-600/40 hover:-translate-y-1 transition-all bg-gradient-to-r from-[#5432D3] to-[#8F5EF8] flex items-center justify-center gap-2">

                        Comenzar Transformación <Icon name="ArrowRight" size={20} />

                      </button>

                      <button onClick={() => scrollTo('ecosistema')} className="px-8 py-4 rounded-full bg-white text-[#183B56] border border-slate-200 font-bold text-lg hover:bg-slate-50 transition-all">

                        Ver Productos

                      </button>

                    </div>

                </div>

              </section>


              {/* --- CLIENTES / TRUST --- */}

              <section className="bg-white py-12 border-y border-slate-100">

                <div className="container mx-auto px-6">

                  <p className="text-center text-slate-400 font-semibold text-sm uppercase tracking-widest mb-8">Empresas que confían en el futuro</p>

                  <div className="flex flex-wrap justify-center gap-12 opacity-50 grayscale hover:grayscale-0 transition-all duration-500">

                     {['TechCorp', 'InnovaHealth', 'FutureFit', 'DataSphere'].map((brand, i) => (

                       <div key={i} className="text-xl font-bold flex items-center gap-2">

                         <div className="w-6 h-6 bg-slate-300 rounded-full"></div> {brand}

                       </div>

                     ))}

                  </div>

                </div>

              </section>


              {/* --- SERVICIOS --- */}

              <section id="servicios" className="py-24">

                <div className="container mx-auto px-6">

                  <div className="mb-16">

                    <h2 className="text-3xl md:text-4xl font-bold mb-4">Soluciones Integrales</h2>

                    <div className="w-20 h-1.5 bg-gradient-to-r from-[#5432D3] to-[#8F5EF8] rounded-full mb-6"></div>

                    <p className="text-lg text-slate-600 max-w-2xl">

                      Diseñamos la arquitectura tecnológica que tu empresa necesita para operar de manera autónoma.

                    </p>

                  </div>


                  <div className="grid md:grid-cols-3 gap-8">

                    {[

                        { icon: "BrainCircuit", title: "Consultoría IA", desc: "Auditoría tecnológica y desarrollo de estrategias para implementar LLMs en procesos críticos." },

                        { icon: "Code2", title: "Desarrollo a Medida", desc: "Software escalable y soluciones SaaS construidas sobre arquitecturas robustas." },

                        { icon: "Zap", title: "Automatización", desc: "Elimina tareas repetitivas. Conectamos CRM, ventas y soporte en un flujo inteligente." }

                    ].map((service, i) => (

                        <div key={i} className="bg-white p-8 rounded-2xl shadow-sm border border-slate-100 hover:shadow-xl hover:shadow-indigo-100/50 hover:-translate-y-2 transition-all group">

                            <div className="w-14 h-14 rounded-xl bg-indigo-50 flex items-center justify-center mb-6 group-hover:bg-[#5432D3] transition-colors">

                                <div className="text-[#5432D3] group-hover:text-white transition-colors">

                                    <Icon name={service.icon} size={32} />

                                </div>

                            </div>

                            <h3 className="text-xl font-bold mb-3">{service.title}</h3>

                            <p className="text-slate-600 mb-4">{service.desc}</p>

                            <a href="#contacto" className="text-[#5432D3] font-semibold flex items-center gap-1 group-hover:gap-2 transition-all">Saber más <Icon name="ArrowRight" size={16}/></a>

                        </div>

                    ))}

                  </div>

                </div>

              </section>


              {/* --- ECOSISTEMA (Responde247) --- */}

              <section id="ecosistema" className="py-24 bg-[#183B56] text-white relative overflow-hidden">

                <div className="container mx-auto px-6 relative z-10">

                  <div className="flex flex-col lg:flex-row items-center gap-16">

                    <div className="lg:w-1/2">

                      <div className="inline-block px-3 py-1 bg-white/10 rounded-full text-xs font-bold tracking-wider mb-6 border border-white/10">PRODUCTO ESTRELLA</div>

                      <h2 className="text-4xl md:text-5xl font-bold mb-6 leading-tight">

                        Conoce <span className="text-transparent bg-clip-text bg-gradient-to-r from-blue-400 to-emerald-400">Responde247</span>

                      </h2>

                      <p className="text-blue-100 text-lg mb-8 leading-relaxed">

                        El agente de IA que vive en tu WhatsApp e Instagram, agendando citas y respondiendo dudas mientras duermes.

                      </p>

                      <ul className="space-y-4 mb-10">

                        {["Respuestas en < 3 segundos.", "Integración nativa Meta.", "Agenda sincronizada."].map((item, i) => (

                            <li key={i} className="flex items-center gap-3">

                                <div className="w-6 h-6 rounded-full bg-emerald-500/20 flex items-center justify-center text-emerald-400"><Icon name="CheckCircle2" size={14} /></div>

                                <span className="font-medium text-blue-50">{item}</span>

                            </li>

                        ))}

                      </ul>

                      <button onClick={() => scrollTo('contacto')} className="bg-white text-[#183B56] px-8 py-3 rounded-lg font-bold hover:bg-blue-50 transition-colors flex items-center gap-2">

                        Explorar Responde247 <Icon name="Rocket" size={18} className="text-[#5432D3]" />

                      </button>

                    </div>


                    <div className="lg:w-1/2">

                      <div className="bg-white/5 backdrop-blur-lg border border-white/10 p-6 rounded-2xl shadow-2xl">

                         <div className="flex items-center gap-4 mb-6 border-b border-white/10 pb-4">

                            <div className="w-10 h-10 rounded-full bg-gradient-to-tr from-blue-500 to-emerald-400 flex items-center justify-center text-white font-bold text-xs">R247</div>

                            <div>

                              <div className="font-bold text-white">Asistente Virtual</div>

                              <div className="text-xs text-emerald-400 flex items-center gap-1"><span className="w-1.5 h-1.5 bg-emerald-400 rounded-full animate-pulse"></span> En línea</div>

                            </div>

                         </div>

                         <div className="space-y-4 text-sm font-medium">

                            <div className="bg-white/10 p-3 rounded-lg rounded-tl-none max-w-[80%] text-blue-100">Hola, ¿precios de la membresía? 🏋️</div>

                            <div className="bg-gradient-to-r from-blue-600 to-emerald-600 p-3 rounded-lg rounded-tr-none max-w-[85%] ml-auto text-white">¡Hola! Tenemos un 20% de descuento hoy. Queda en $450/mes. ¿Agendamos visita? 🤖</div>

                         </div>

                      </div>

                    </div>

                  </div>

                </div>

              </section>


              {/* --- CONTACTO --- */}

              <section id="contacto" className="py-24 relative overflow-hidden">

                <div className="container mx-auto px-6 relative z-10">

                  <div className="bg-[#183B56] rounded-3xl p-8 md:p-16 text-white shadow-2xl overflow-hidden relative">

                    <div className="grid lg:grid-cols-2 gap-12 items-center relative z-10">

                      <div>

                        <h2 className="text-3xl md:text-4xl font-bold mb-6">¿Listo para escalar?</h2>

                        <p className="text-blue-100 mb-8 text-lg">Déjanos tus datos y analizaremos tu caso sin costo.</p>

                        <div className="space-y-6">

                          <div className="flex items-center gap-4">

                            <div className="w-12 h-12 rounded-full bg-white/10 flex items-center justify-center"><Icon name="Mail" className="text-blue-200" /></div>

                            <div><p className="text-sm text-blue-300">Email</p><p className="font-medium">contacto@omniaflow.tech</p></div>

                          </div>

                        </div>

                      </div>


                      <div className="bg-white text-[#183B56] p-8 rounded-2xl shadow-lg">

                        <form className="space-y-4" onSubmit={(e) => e.preventDefault()}>

                          <div>

                            <label className="block text-sm font-semibold mb-2">Nombre</label>

                            <input type="text" className="w-full px-4 py-3 rounded-lg bg-slate-50 border border-slate-200 focus:border-[#5432D3] outline-none" placeholder="Tu nombre" />

                          </div>

                          <div>

                            <label className="block text-sm font-semibold mb-2">Empresa</label>

                            <input type="text" className="w-full px-4 py-3 rounded-lg bg-slate-50 border border-slate-200 focus:border-[#5432D3] outline-none" placeholder="Tu negocio" />

                          </div>

                          <button className="w-full py-4 rounded-lg text-white font-bold text-lg bg-gradient-to-r from-[#5432D3] to-[#8F5EF8] hover:shadow-lg transition-all">

                            Solicitar Auditoría

                          </button>

                        </form>

                      </div>

                    </div>

                  </div>

                </div>

              </section>

              

              <footer className="bg-[#183B56] text-blue-200 py-12 text-center text-sm border-t border-white/10">

                <p>&copy; 2024 OmniaFlow Automation Systems. Todos los derechos reservados.</p>

              </footer>

            </div>

          );

        };


        const root = ReactDOM.createRoot(document.getElementById('root'));

        root.render(<OmniaFlowSite />);

    </script>

</body>

</html>