Files
html/products/creativefactory.html
2026-04-12 22:57:03 +02:00

136 lines
26 KiB
HTML

<!DOCTYPE html>
<html lang="fr">
<head>
<link rel="icon" href="/favicon.ico" type="image/x-icon">
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
<meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>Creative Factory — Production Créative IA | WEVAL</title>
<meta name="description" content="Creative Factory — Production Créative IA - Solutions IA souveraines pour entreprises">
<link href="https://fonts.googleapis.com/css2?family=Space+Mono:wght@400;700&family=Outfit:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
<style>:root{--bg:#05080f;--s:#0c1222;--s2:#111a2e;--a:#a78bfa;--a15:rgba(167,139,250,0.15);--a08:rgba(167,139,250,0.08);--a30:rgba(167,139,250,0.3);--sv:#7a8ba5;--w:#edf2f7;--d:#1a2340}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:'Outfit',sans-serif;background:var(--bg);color:var(--w);overflow-x:hidden}
body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");pointer-events:none;z-index:1000}
nav{position:fixed;top:0;width:100%;padding:1rem 4%;display:flex;justify-content:space-between;align-items:center;z-index:100;backdrop-filter:blur(20px);background:rgba(5,8,15,0.85);border-bottom:1px solid var(--a08)}
.logo{font-weight:800;font-size:1.4rem;text-decoration:none;color:var(--w)}.logo span{color:var(--a)}
.nav-links{display:flex;gap:1.5rem;align-items:center}.nav-links a{color:var(--sv);text-decoration:none;font-size:.85rem;font-weight:500;transition:color .2s}.nav-links a:hover{color:var(--a)}
.btn-n{background:var(--a);color:var(--bg);padding:.55rem 1.3rem;border-radius:7px;font-weight:700;font-size:.82rem;text-decoration:none;transition:all .3s}.btn-n:hover{transform:translateY(-1px);opacity:.9}
.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:7rem 4% 4rem;position:relative}
.hero::after{content:'';position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(167,139,250,0.06) 0%,transparent 70%);top:10%;left:50%;transform:translateX(-50%);pointer-events:none}
.badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--a15);border:1px solid rgba(167,139,250,0.2);border-radius:100px;padding:.35rem 1rem;font-size:.75rem;font-weight:600;color:var(--a);margin-bottom:2rem}
h1{font-size:3.2rem;font-weight:800;line-height:1.08;letter-spacing:-.04em;margin-bottom:1.2rem;max-width:700px}h1 em{font-style:normal;color:var(--a)}
.sub{font-size:1.05rem;color:var(--sv);max-width:520px;line-height:1.7;margin-bottom:2rem}
.btns{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}
.btn-p{background:var(--a);color:var(--bg);padding:.85rem 2rem;border-radius:8px;font-weight:700;text-decoration:none;transition:all .3s;font-family:'Outfit',sans-serif;border:none;cursor:pointer;font-size:1rem}.btn-p:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(167,139,250,0.25)}
.btn-o{background:transparent;color:var(--w);padding:.85rem 2rem;border-radius:8px;text-decoration:none;border:1px solid rgba(255,255,255,.12);font-weight:600;transition:all .3s}.btn-o:hover{border-color:var(--a);color:var(--a)}
.stats{display:flex;gap:3rem;margin-top:3rem}.stat{text-align:center}.stat-v{font-family:'Space Mono',monospace;font-size:1.8rem;font-weight:700;color:var(--a)}.stat-l{font-size:.78rem;color:var(--sv);margin-top:.2rem}
.sec{padding:5rem 4%;max-width:1200px;margin:0 auto}.stag{font-family:'Space Mono',monospace;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--a);margin-bottom:1rem}
h2{font-size:2.2rem;font-weight:800;letter-spacing:-.03em;margin-bottom:.8rem}.sd{color:var(--sv);font-size:.95rem;line-height:1.7;max-width:500px;margin-bottom:2.5rem}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}.cd{background:var(--s);border:1px solid var(--a08);border-radius:14px;padding:1.6rem;transition:all .3s}.cd:hover{border-color:var(--a30);transform:translateY(-3px)}.cd-i{font-size:1.8rem;margin-bottom:.6rem}.cd h3{font-size:1rem;font-weight:600;margin-bottom:.35rem}.cd p{font-size:.82rem;color:var(--sv);line-height:1.55}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;text-align:center;margin:3rem 0}.step{position:relative}.step-n{width:44px;height:44px;border-radius:50%;background:var(--a15);display:flex;align-items:center;justify-content:center;margin:0 auto .8rem;font-family:'Space Mono',monospace;font-weight:700;color:var(--a)}.step h3{font-size:.95rem;font-weight:600;margin-bottom:.3rem}.step p{font-size:.8rem;color:var(--sv);line-height:1.5}
.pg{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}.pr{background:var(--s);border:1px solid var(--a08);border-radius:16px;padding:1.8rem;transition:all .3s}.pr.pop{border-color:var(--a);position:relative}.pr.pop::before{content:'Populaire';position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:var(--a);color:var(--bg);padding:.2rem .8rem;border-radius:100px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.pr:hover{transform:translateY(-3px)}
.pr-name{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--sv);margin-bottom:.6rem}.pr-amt{font-family:'Space Mono',monospace;font-size:2.5rem;font-weight:700;margin-bottom:.8rem}.pr-amt sub{font-size:.8rem;color:var(--sv);font-family:'Outfit'}
.pr-list{list-style:none;margin-bottom:1.2rem}.pr-list li{font-size:.8rem;color:var(--sv);padding:.3rem 0}.pr-list li::before{content:'✓';color:var(--a);font-weight:700;margin-right:.4rem}
.btn-f{display:block;padding:.7rem;border-radius:8px;font-weight:600;font-size:.85rem;text-decoration:none;text-align:center;background:var(--a);color:var(--bg)}.btn-l{display:block;padding:.7rem;border-radius:8px;font-weight:600;font-size:.85rem;text-decoration:none;text-align:center;border:1px solid rgba(255,255,255,.12);color:var(--w)}
.cta{text-align:center;padding:4rem 2rem;margin:2rem 4%;background:linear-gradient(135deg,var(--s),rgba(167,139,250,.04));border:1px solid var(--a08);border-radius:20px}.cta p{color:var(--sv);max-width:450px;margin:.5rem auto 1.5rem;font-size:.95rem;line-height:1.6}
.chat-sec{padding:3rem 4%;max-width:900px;margin:0 auto}.chat-box{background:var(--s);border:1px solid var(--a08);border-radius:16px;overflow:hidden}.chat-hd{padding:1rem 1.5rem;border-bottom:1px solid var(--a08);display:flex;align-items:center;gap:.8rem}.chat-hd-i{width:32px;height:32px;background:var(--a15);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--a)}.chat-hd-i svg{width:16px;height:16px}.chat-hd h3{font-size:.95rem;font-weight:600}.chat-hd small{font-size:.72rem;color:var(--sv)}
.chat-msgs{min-height:300px;max-height:450px;overflow-y:auto;padding:1.2rem 1.5rem}.chat-empty{text-align:center;padding:3rem 1rem;color:var(--sv)}.chat-empty h4{margin-bottom:.5rem;color:var(--w);font-size:1rem}.chat-empty p{font-size:.82rem;margin-bottom:1.2rem}
.chat-sug{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.chat-sug button{padding:.45rem .9rem;background:var(--a15);border:1px solid rgba(167,139,250,0.2);border-radius:20px;color:var(--a);font-family:'Outfit',sans-serif;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s}.chat-sug button:hover{opacity:.8;transform:translateY(-1px)}
.msg-u{background:var(--a15);border:1px solid rgba(167,139,250,0.2);border-radius:10px 10px 4px 10px;padding:.7rem 1rem;margin:8px 0;max-width:75%;margin-left:auto;font-size:.85rem;color:var(--w);line-height:1.5;animation:fi .2s}
.msg-a{background:var(--s2);border:1px solid rgba(255,255,255,.06);border-radius:4px 10px 10px 10px;padding:.8rem 1.1rem;margin:8px 0;max-width:90%;font-size:.85rem;color:var(--w);line-height:1.7;animation:fi .2s}.msg-a pre{background:var(--bg);padding:.8rem;border-radius:8px;overflow-x:auto;font-family:'Space Mono',monospace;font-size:.78rem;margin:.5rem 0}.msg-a code{font-family:'Space Mono',monospace;font-size:.78rem;background:var(--bg);padding:.1rem .3rem;border-radius:4px}.msg-a table{width:100%;border-collapse:collapse;margin:.5rem 0;font-size:.78rem}.msg-a th,.msg-a td{padding:.5rem .7rem;border:1px solid rgba(255,255,255,.06);text-align:left}.msg-a th{background:var(--bg);font-weight:600;color:var(--sv)}.msg-a h2,.msg-a h3{color:var(--w);margin:.8rem 0 .4rem;font-size:.95rem}.msg-a strong{color:var(--w)}
.chat-input{padding:1rem 1.5rem;border-top:1px solid var(--a08);display:flex;gap:.6rem}.chat-input textarea{flex:1;resize:none;min-height:40px;max-height:120px;font-family:'Outfit',sans-serif;font-size:.85rem;line-height:1.5;background:var(--bg);border:1px solid rgba(255,255,255,.08);color:var(--w);border-radius:8px;padding:.6rem .8rem;outline:none}.chat-input textarea:focus{border-color:var(--a)}.chat-input button{padding:.6rem 1.2rem;background:var(--a);color:var(--bg);border:none;border-radius:8px;font-family:'Outfit',sans-serif;font-size:.85rem;font-weight:700;cursor:pointer;align-self:flex-end}.chat-input button:hover{opacity:.9}
@keyframes fi{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes p2{0%,100%{opacity:1}50%{opacity:.4}}.ld{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--a);margin:0 3px;animation:p2 .8s infinite}.ld:nth-child(2){animation-delay:.2s}.ld:nth-child(3){animation-delay:.4s}
footer{padding:2rem 4%;max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.04);font-size:.75rem;color:var(--sv)}footer a{color:var(--a);text-decoration:none}
@media(max-width:900px){h1{font-size:2.2rem}.g3,.pg{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,1fr)}.stats{gap:1.5rem}.nav-links{display:none}footer{flex-direction:column;gap:.5rem;text-align:center}.hero::after{display:none}}
.dm-box{background:linear-gradient(135deg,#111827,#0f172a);border:1px solid #1e293b;border-radius:16px;padding:28px 24px;margin:24px auto;max-width:700px}.dm-box h3{font-size:16px;font-weight:700;color:#f1f5f9;margin-bottom:14px}.dm-row{display:flex;gap:10px;margin-bottom:12px}.dm-row input{flex:1;padding:12px 16px;background:#0b0d14;border:1px solid #1e293b;border-radius:10px;color:#e2e8f0;font-size:14px;font-family:inherit}.dm-row input:focus{outline:none;border-color:#d4a843}.dm-row input::placeholder{color:#475569}.dm-row button{padding:12px 24px;background:linear-gradient(135deg,#d4a843,#b8942e);color:#0a0d13;border:none;border-radius:10px;font-weight:700;font-size:14px;cursor:pointer;font-family:inherit;white-space:nowrap}.dm-out{padding:16px;background:rgba(255,255,255,.02);border:1px solid #1e293b;border-radius:10px;color:#94a3b8;font-size:13px;line-height:1.6;min-height:60px;white-space:pre-wrap}.dm-out b,.dm-out strong{color:#e2e8f0}.dm-ld{display:inline-block;width:8px;height:8px;background:#d4a843;border-radius:50%;margin-right:4px;animation:dmP 1.2s ease-in-out infinite}.dm-ld:nth-child(2){animation-delay:.2s}.dm-ld:nth-child(3){animation-delay:.4s}@keyframes dmP{0%,100%{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}
input,select,textarea{background:#0b0d14!important;color:#e2e8f0!important;border:1px solid #1e293b!important;border-radius:8px!important}input::placeholder{color:#475569!important}</style><style>/* Hide nav in iframe */
@media all{.in-iframe nav{display:none!important}.in-iframe .hero{padding-top:3rem!important;min-height:auto!important}.in-iframe footer{display:none!important}.in-iframe .cta{display:none!important}.in-iframe .wv-links{display:none!important}.wv-links{display:none!important}}</style>
<script>if(window!==window.top)document.documentElement.classList.add('in-iframe');</script>
<link rel="canonical" href="https://weval-consulting.com/products/creativefactory.html">
<meta property="og:title" content="Creative Factory — Production Créative IA | WEVAL">
<meta property="og:description" content="Creative Factory — Production Créative IA - Solutions IA souveraines pour entreprises">
<meta property="og:url" content="https://weval-consulting.com/products/creativefactory.html">
<meta property="og:type" content="website">
<meta property="og:site_name" content="WEVAL Consulting">
<meta property="og:image" content="https://weval-consulting.com/assets/logo-weval-png-DChrMGao.png">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="Creative Factory — Production Créative IA | WEVAL">
<meta name="twitter:description" content="Creative Factory — Production Créative IA - Solutions IA souveraines pour entreprises">
<link rel="alternate" hreflang="fr" href="https://weval-consulting.com/products/creativefactory.html">
<link rel="alternate" hreflang="x-default" href="https://weval-consulting.com/products/creativefactory.html">
<style>
.wevia-progress{width:100%;background:rgba(99,102,241,.15);border-radius:8px;overflow:hidden;height:6px;margin:8px 0}
.wevia-progress-bar{height:100%;background:linear-gradient(90deg,#6366f1,#a78bfa,#6366f1);background-size:200%;animation:weviaShimmer 1.5s infinite;border-radius:8px;transition:width .3s}
.wevia-progress-text{font-size:11px;color:#a0a0b0;margin-top:4px;text-align:center}
@keyframes weviaShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
</style>
<link rel="stylesheet" href="/assets/dark-iframe.css"></head><body>
<nav><a href="/products/" class="logo">WE<span>VAL</span></a><div class="nav-links"><a href="#features">Fonctionnalités</a><a href="#pricing">Tarifs</a><a href="#cta">Essayer</a><a href="/products/workspace.html" class="btn-n">Workspace →</a></div></nav>
<section class="hero"><div class="badge">Créatives IA — Production à l'échelle</div><h1>Creative Factory — <em>Production Créative IA</em></h1><p class="sub">Produisez bannières, visuels publicitaires et créatives à grande échelle. A/B testing et optimisation automatique.</p><div class="btns"><a href="#cta" class="btn-p">Essayer gratuitement →</a><a href="#features" class="btn-o">Découvrir</a></div><div class="stats"><div class="stat"><div class="stat-v">100K+</div><div class="stat-l">Créatives produites</div></div><div class="stat"><div class="stat-v">85%</div><div class="stat-l">Gain de temps</div></div><div class="stat"><div class="stat-v">3x</div><div class="stat-l">Boost CTR</div></div></div></section>
<section class="sec" id="features"><div class="stag">Fonctionnalités</div><h2>Tout ce dont vous avez besoin</h2><div class="sd">Creative Factory combiné intelligence artificielle et expertise métier pour automatiser vos tâches.</div><div class="g3"><div class="cd"><div class="cd-i">🎨</div><h3>Bannières Display</h3><p>Multi-formats : 300x250, 728x90, 160x600 et tous les standards IAB.</p></div><div class="cd"><div class="cd-i">📱</div><h3>Social Ads</h3><p>Visuels optimisés pour Meta, TikTok, LinkedIn, Twitter.</p></div><div class="cd"><div class="cd-i">🔄</div><h3>Variations Masse</h3><p>50+ variantes d'une créative pour A/B testing massif.</p></div><div class="cd"><div class="cd-i">🤖</div><h3>Auto-Design</h3><p>Mise en page automatique respectant votre charte graphique.</p></div><div class="cd"><div class="cd-i">📊</div><h3>Performance Scoring</h3><p>Score de prédiction de performance avant publication.</p></div><div class="cd"><div class="cd-i">🏆</div><h3>Winner Detection</h3><p>Identification automatique des créatives les plus performantes.</p></div><div class="cd"><div class="cd-i">📐</div><h3>Multi-formats</h3><p>Déclinaison automatique dans tous les formats publicitaires standards.</p></div><div class="cd"><div class="cd-i">🎯</div><h3>Dynamic Creative</h3><p>Personnalisation dynamique selon l'audience et le contexte.</p></div><div class="cd"><div class="cd-i">📤</div><h3>Export Direct</h3><p>Export vers Google Ads, Meta Business, DSP et ad servers.</p></div></div></section><section class="sec"><div class="stag">Comment ça marche</div><h2>Simple comme 1-2-3-4</h2><div class="sd">De la demande au résultat en quelques minutes.</div><div class="steps"><div class="step"><div class="step-n">1</div><h3>Uploadez vos assets</h3><p>Logo, produits, charte graphique — l'IA comprend votre identité.</p></div><div class="step"><div class="step-n">2</div><h3>Choisissez le format</h3><p>Display, social, vidéo — sélectionnez les formats cibles.</p></div><div class="step"><div class="step-n">3</div><h3>Générez en masse</h3><p>50+ variantes avec textes, visuels et layouts différents.</p></div><div class="step"><div class="step-n">4</div><h3>Testez & optimisez</h3><p>A/B testing automatique et scaling des winners.</p></div></div></section><section class="sec" id="pricing"><div class="stag">Tarifs</div><h2>Un plan pour chaque besoin</h2><div class="sd">Commencez gratuitement, évoluez quand vous êtes prêt.</div><div class="pg"><div class="pr"><div class="pr-name">Starter</div><div class="pr-amt">49€<sub>/mois</sub></div><ul class="pr-list"><li>100 créatives/mois</li><li>3 formats</li><li>Export PNG</li><li>Basique</li></ul><a href="#cta" class="btn-l">Commencer →</a></div><div class="pr pop"><div class="pr-name">Pro</div><div class="pr-amt">179€<sub>/mois</sub></div><ul class="pr-list"><li>Créatives illimitées</li><li>Tous les formats</li><li>A/B testing</li><li>Winner detection</li><li>Dynamic creative</li><li>Support prioritaire</li></ul><a href="#cta" class="btn-f">Commencer →</a></div><div class="pr"><div class="pr-name">Enterprise</div><div class="pr-amt">Sur mesure</div><ul class="pr-list"><li>Volume illimité</li><li>API production</li><li>White-label</li><li>Charte custom</li><li>Account manager</li><li>SLA</li></ul><a href="#cta" class="btn-l">Nous contacter</a></div></div></section>
<div style="display:flex;gap:2rem;justify-content:center;flex-wrap:wrap;padding:1.5rem 4%;margin:1rem 0">
<div style="display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#7a8ba5"><strong style="color:#edf2f7">44</strong> produits SaaS</div>
<div style="display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#7a8ba5"><strong style="color:#edf2f7">Cloud</strong> souverain</div>
<div style="display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#7a8ba5"><strong style="color:#edf2f7">API</strong> REST</div>
<div style="display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#7a8ba5"><strong style="color:#edf2f7">RGPD</strong> conforme</div>
<div style="display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#7a8ba5"><strong style="color:#edf2f7">France</strong> · Maroc · États-Unis · International</div>
</div>
<div class="dm-box" id="demo"><h3>⚡ Creation IA — Demo Live</h3>
<div class="dm-row"><input id="dm-creativefactory" placeholder="Décrivez votre besoin creatif" onkeydown="if(event.key==='Enter')dm_creativefactory()"><button onclick="dm_creativefactory()">Tester</button></div>
<div class="dm-out" id="dmo-creativefactory">Entrez votre demande et testez Creation IA en direct. Aucune inscription requise.</div></div>
<script>
async function dm_creativefactory(){
var q=document.getElementById("dm-creativefactory").value.trim();
if(!q)return;
var o=document.getElementById("dmo-creativefactory");
o.innerHTML='<span class="dm-ld"></span><span class="dm-ld"></span><span class="dm-ld"></span> Génération en cours...';
try{
var r=await fetch("/api/weval-ia-fast.php",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({message:"[INSTRUCTION SYSTEME: Reponds de facon structurée et professionnelle avec des sections claires.]\n\nDemande utilisateur: Génère un concept creatif pour: "+q,mode:"full"})});
var j=await r.json();
o.innerHTML=(j.response||"Erreur").replace(/\*\*(.*?)\*\*/g,"<strong>$1</strong>").replace(/\n\n/g,"<br><br>").replace(/`(.*?)`/g,"<code>$1</code>");
}catch(e){o.innerHTML="Erreur: "+e.message}
}
</script>
<section class="cta"><h2>Prêt à essayer Creative Factory ?</h2><p>Testez gratuitement et découvrez comment l'IA transforme votre productivité.</p><a href="#cta" class="btn-p">Essayer maintenant →</a></section>
<section class="chat-sec" id="chat"><div class="stag">Essayer maintenant</div><h2>Testez Creative Factory en direct</h2><div class="sd">Posez votre question, l'IA vous répond instantanément.</div>
<div class="chat-box"><div class="chat-hd"><div class="chat-hd-i"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"/><path d="M12 6v6l4 2"/></svg></div><div><h3>Creative Factory</h3><small>Production Créative IA</small></div></div>
<div class="chat-msgs" id="chat-msgs"><div class="chat-empty" id="chat-empty"><h4>👋 Bienvenue sur Creative Factory</h4><p>Produisez bannières, visuels publicitaires et créatives à grande échelle. A/B testing et optimisation automatique.</p><div class="chat-sug"><button onclick="sg('Crée des concepts de bannières display pour un produit SaaS B2B')">Bannières Display</button><button onclick="sg('Conçois 5 variantes de visuels pour une campagne Meta Ads e-commerce')">Visuels Meta Ads</button><button onclick="sg('Définis une charte créative publicitaire pour une marque de cosmétiques')">Charte créative</button></div></div></div>
<div class="chat-input"><textarea id="chat-i" rows="1" placeholder="Posez votre question..." onkeydown="if(event.key==='Enter'&&!event.shiftKey){event.preventDefault();send()}" oninput="this.style.height='40px';this.style.height=Math.min(this.scrollHeight,120)+'px'"></textarea><button onclick="send()">Envoyer</button></div></div></section>
<footer><div>© 2026 <a href="/products/">WEVAL Consulting</a> — Solutions IA Souveraines</div><div><a href="/products/workspace.html">Workspace</a> · <a href="/products/arsenal.html">Arsenal</a> · <a href="/products/services.html">Services</a></div></footer>
<script>
const CTX="Tu es Creative Factory, expert en production créative publicitaire à grande échelle. Aide à concevoir des bannières et visuels optimisés.";let hist=[];
function esc(s){const d=document.createElement('div');d.textContent=s;return d.innerHTML}
function md(m){return m.replace(/```[\w]*\n([\s\S]*?)```/g,'<pre>$1</pre>').replace(/^### (.*$)/gm,'<h3>$1</h3>').replace(/^## (.*$)/gm,'<h2>$1</h2>').replace(/\*\*(.*?)\*\*/g,'<strong>$1</strong>').replace(/\*(.*?)\*/g,'<em>$1</em>').replace(/`(.*?)`/g,'<code>$1</code>').replace(/^- (.*$)/gm,'<li>$1</li>').replace(/\n\n/g,'<br><br>')}
function sg(q){document.getElementById('chat-i').value=q;send()}
async function send(){const i=document.getElementById('chat-i'),m=i.value.trim();if(!m)return;const a=document.getElementById('chat-msgs'),es=document.getElementById('chat-empty');if(es)es.remove();a.innerHTML+='<div class="msg-u">'+esc(m)+'</div>';i.value='';i.style.height='40px';a.scrollTop=a.scrollHeight;const lid='l'+Date.now();a.innerHTML+='<div class="msg-a" id="'+lid+'"><span class="ld"></span><span class="ld"></span><span class="ld"></span></div>';a.scrollTop=a.scrollHeight;var _pb=weviaProgress(document.getElementById(lid),Date.now());try{hist.push({role:'user',content:m});const r=await fetch('/api/weval-ia-fast.php',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({message:'[INSTRUCTION SYSTEME: '+CTX+']\n\nDemande utilisateur: '+m,mode:'full',history:hist.slice(-6)})});const j=await r.json();const rp=j.response||j.error||'Erreur';hist.push({role:'assistant',content:rp});const el=document.getElementById(lid);if(el)el.outerHTML='<div class="msg-a">'+md(rp)+'</div>';}catch(ex){const el=document.getElementById(lid);if(el)el.outerHTML='<div class="msg-a" style="border-color:rgba(248,113,113,.3);color:#f87171">Erreur: '+ex.message+'</div>';}a.scrollTop=a.scrollHeight;}
</script><div id="cta" style="max-width:600px;margin:2rem auto;padding:0 4%">
<div style="background:#0c1222;border:1px solid rgba(99,102,241,.15);border-radius:14px;padding:1.5rem">
<h3 style="font-size:1rem;font-weight:700;margin-bottom:.8rem;color:#818cf8">Demander un accès</h3>
<input id="ct-name" type="text" placeholder="Votre nom" style="width:100%;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.6rem;font-size:.85rem;color:#edf2f7;font-family:inherit;margin-bottom:.6rem;outline:none">
<input id="ct-email" type="email" placeholder="Email professionnel" style="width:100%;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.6rem;font-size:.85rem;color:#edf2f7;font-family:inherit;margin-bottom:.6rem;outline:none">
<button onclick="ctS()" id="ct-btn" style="width:100%;background:#6366f1;color:#fff;border:none;border-radius:8px;padding:.7rem;font-weight:700;cursor:pointer;font-size:.9rem">Envoyer</button>
<div id="ct-ok" style="display:none;text-align:center;padding:1rem;color:#10b981;font-weight:600">Demande envoyee !</div>
</div></div>
<script>async function ctS(){var n=document.getElementById("ct-name").value.trim(),e=document.getElementById("ct-email").value.trim();if(!n||!e){alert("Nom et email requis");return;}document.getElementById("ct-btn").disabled=true;try{await fetch("/api/contact",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:n,email:e,source:location.pathname,ts:new Date().toISOString()})})}catch(x){}document.getElementById("ct-btn").style.display="none";document.getElementById("ct-ok").style.display="block";}</script>
<script>
function weviaProgress(container,startMs){
if(!container)return;
var el=document.createElement('div');
el.className='wevia-pb-wrap';
el.innerHTML='<div class="wevia-progress"><div class="wevia-progress-bar" style="width:5%"></div></div><div class="wevia-progress-text">Analyse en cours...</div>';
container.appendChild(el);
var bar=el.querySelector('.wevia-progress-bar'),txt=el.querySelector('.wevia-progress-text');
var steps=['Connexion au moteur IA...','Analyse de votre demande...','Génération de la réponse...','Finalisation...'];
var iv=setInterval(function(){
var elapsed=(Date.now()-startMs)/1000;
var pct=Math.min(95,5+elapsed*3);
bar.style.width=pct+'%';
var si=Math.min(3,Math.floor(elapsed/3));
txt.textContent=steps[si]+' ('+Math.round(elapsed)+'s)';
if(elapsed>25)txt.textContent='Presque termine... ('+Math.round(elapsed)+'s)';
},300);
return {el:el,stop:function(){clearInterval(iv);bar.style.width='100%';txt.textContent='Termine!';}};
}
</script>
<script defer src=/assets/dm-enhance.js></script></body></html>