<!DOCTYPE html><html lang="fr" class="light"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><title>CleanPro — Trouvez un pro du nettoyage près de chez vous</title><meta name="twitter:title" content="CleanPro — Professionnels du nettoyage"/><meta name="twitter:description" content="Trouvez et réservez des professionnels du nettoyage vérifiés partout en France. Devis gratuit, avis vérifiés, réservation en ligne."/><meta property="og:image" content="https://cleanpro.fr/og-default.png"/><meta name="twitter:image" content="https://cleanpro.fr/og-default.png"/><meta name="theme-color" content="#1a6b6b"/><meta name="apple-mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-status-bar-style" content="default"/><meta name="apple-mobile-web-app-title" content="CleanPro"/><meta name="robots" content="index,follow"/><meta name="description" content="Comparez et réservez des professionnels du nettoyage vérifiés près de chez vous. Résidentiel, bureaux, vitres, après sinistre. Réservation en ligne."/><meta name="keywords" content="prestataire nettoyage, aide ménagère, nettoyage bureaux, lavage vitres, nettoyage après sinistre, réservation nettoyage en ligne"/><meta property="og:title" content="CleanPro — Trouvez un pro du nettoyage"/><meta property="og:description" content="Comparez et réservez des professionnels du nettoyage vérifiés partout en France."/><meta property="og:type" content="website"/><meta property="og:url" content="https://cleanpro.fr/"/><meta property="og:locale" content="fr_FR"/><meta property="og:site_name" content="CleanPro"/><meta name="twitter:card" content="summary_large_image"/><link rel="modulepreload" href="/assets/index-CenjeLUG.js"/><link rel="modulepreload" href="/assets/vendor-tanstack-BYrU2gQq.js"/><link rel="modulepreload" href="/assets/vendor-supabase-DL5HCojG.js"/><link rel="modulepreload" href="/assets/index-BLWomxg1.js"/><link rel="modulepreload" href="/assets/ThemeToggleButton-DUf3hOsx.js"/><link rel="modulepreload" href="/assets/Footer-DwDKIc_c.js"/><link rel="modulepreload" href="/assets/image-Be-kDdvV.js"/><link rel="modulepreload" href="/assets/menu-6teQ_g8a.js"/><link rel="modulepreload" href="/assets/users-me6hW7Mm.js"/><link rel="modulepreload" href="/assets/map-CuCgqhHB.js"/><link rel="modulepreload" href="/assets/arrow-right-2GP6kVct.js"/><link rel="modulepreload" href="/assets/check-CME4-SOR.js"/><link rel="modulepreload" href="/assets/moon-B1Fjql69.js"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><link rel="preconnect" href="https://o4511367920680960.ingest.de.sentry.io" crossorigin="anonymous"/><link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap"/><link rel="icon" href="/favicon.ico"/><link rel="icon" type="image/svg+xml" href="/favicon.svg"/><link rel="apple-touch-icon" href="/icon-192.png"/><link rel="manifest" href="/manifest.webmanifest"/><link rel="canonical" href="https://cleanpro.fr/"/><link rel="alternate" hreflang="fr" href="https://cleanpro.fr/"/><link rel="alternate" hreflang="x-default" href="https://cleanpro.fr/"/><script>(function(){
document.documentElement.classList.add('light');
})();</script><link rel="stylesheet" href="/assets/styles-DiURnT-S.css"/><link rel="stylesheet" href="/assets/index-CIGW-MKW.css#" type="text/css"/><script type="application/ld+json">{"@context":"https://schema.org","@type":"WebSite","name":"CleanPro","url":"https://cleanpro.fr","description":"La marketplace des professionnels du nettoyage en France.","potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://cleanpro.fr/?city={search_term_string}"},"query-input":"required name=search_term_string"}}</script><script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","name":"CleanPro","url":"https://cleanpro.fr","logo":{"@type":"ImageObject","url":"https://cleanpro.fr/og-default.png"},"email":"contact@cleanpro.fr","contactPoint":{"@type":"ContactPoint","email":"contact@cleanpro.fr","contactType":"customer support","availableLanguage":"French"},"sameAs":[],"description":"Plateforme SaaS de mise en relation entre particuliers/entreprises et prestataires de nettoyage professionnel en France.","areaServed":{"@type":"Country","name":"France"}}</script><script type="application/ld+json">{"@context":"https://schema.org","@type":"Service","serviceType":"Marketplace de prestataires de nettoyage","name":"CleanPro — Marketplace du nettoyage professionnel","url":"https://cleanpro.fr","description":"Trouvez et réservez des professionnels du nettoyage vérifiés partout en France : aide ménagère, nettoyage de bureaux, démoussage toiture, lavage de vitres et bien plus.","provider":{"@type":"Organization","name":"CleanPro","url":"https://cleanpro.fr"},"areaServed":{"@type":"Country","name":"France"},"hasOfferCatalog":{"@type":"OfferCatalog","name":"Prestations de nettoyage","itemListElement":[{"@type":"Offer","itemOffered":{"@type":"Service","name":"Aide ménagère à domicile"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Nettoyage de bureaux"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Démoussage toiture"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Lavage de vitres"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Nettoyage terrasse haute pression"}}]}}</script></head><body><a href="#main-content" class="sr-only focus:not-sr-only focus:fixed focus:top-2 focus:left-2 focus:z-[9999] focus:bg-primary focus:text-primary-foreground focus:px-4 focus:py-2 focus:rounded-lg focus:text-sm focus:font-medium">Aller au contenu principal</a><div id="main-content"><!--$--><div class="min-h-screen bg-background"><header class="border-b border-border bg-card/40 backdrop-blur-sm sticky top-0 z-30"><div class="max-w-7xl mx-auto px-4 md:px-6 h-14 flex items-center justify-between gap-3"><a class="flex items-center gap-2 shrink-0 active" href="/" data-status="active" aria-current="page"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-5 w-5 text-primary" aria-hidden="true"><path d="M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z"></path><path d="M20 2v4"></path><path d="M22 4h-4"></path><circle cx="4" cy="20" r="2"></circle></svg><span class="font-display font-bold text-gradient">CleanPro</span></a><nav class="hidden md:flex items-center gap-6 text-sm text-muted-foreground"><a href="/client" class="hover:text-foreground transition-smooth">Comment ça marche ?</a><a href="/pro" class="hover:text-foreground transition-smooth">Vous êtes prestataire ?</a></nav><div class="hidden md:flex items-center gap-2 shrink-0"><button aria-label="Passer en mode sombre" class="h-8 w-8 rounded-lg border border-border bg-muted/50 hover:bg-muted flex items-center justify-center transition-colors text-muted-foreground hover:text-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon h-4 w-4" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></button><a href="/login"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 text-muted-foreground hover:bg-muted/60 hover:text-foreground h-8 rounded-md px-3 text-xs">Connexion</button></a><a href="/signup"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 shadow hover:bg-primary/90 h-8 rounded-md px-3 text-xs bg-gradient-to-r from-primary to-secondary text-primary-foreground">Rejoindre</button></a></div><div class="flex md:hidden items-center gap-1 shrink-0"><button aria-label="Passer en mode sombre" class="h-8 w-8 rounded-lg border border-border bg-muted/50 hover:bg-muted flex items-center justify-center transition-colors text-muted-foreground hover:text-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon h-4 w-4" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></button><button class="p-2 rounded-lg text-muted-foreground hover:text-foreground hover:bg-muted/50 transition-colors" aria-label="Menu"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu h-5 w-5" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button></div></div></header><div class="bg-hero py-16 text-center"><div class="max-w-3xl mx-auto px-6 animate-fade-in-up"><p class="text-sm font-semibold text-primary uppercase tracking-widest mb-3">Marketplace</p><h1 class="text-4xl md:text-5xl font-display font-bold mb-4">Trouvez votre prestataire<br/><span class="text-gradient">de nettoyage près de chez vous</span></h1><p class="text-muted-foreground text-lg mb-8">Résidentiel, commercial, après décès, fin de bail — des pros vérifiés partout en France.</p><div class="bg-white dark:bg-card shadow-lg rounded-2xl border border-border overflow-hidden"><div class="flex flex-col lg:flex-row"><div class="relative flex items-center gap-2 flex-1 px-4 py-3 border-b lg:border-b-0 lg:border-r border-border"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search h-4 w-4 text-muted-foreground shrink-0" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg><input type="text" aria-label="Rechercher un service ou un prestataire" placeholder="Type de service, nom de société..." class="flex-1 bg-transparent text-sm text-foreground placeholder:text-muted-foreground outline-none" autocomplete="off" value=""/></div><div class="flex items-center gap-2 flex-1 px-4 py-3 border-b lg:border-b-0 lg:border-r border-border min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4 text-muted-foreground shrink-0" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg><input type="text" aria-label="Ville ou code postal" placeholder="Ville ou code postal..." class="flex-1 bg-transparent text-sm text-foreground placeholder:text-muted-foreground outline-none min-w-0" value=""/></div><button class="flex items-center justify-center gap-2 px-6 py-3 bg-gradient-to-r from-primary to-secondary text-primary-foreground font-semibold text-sm hover:opacity-90 transition-opacity"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search h-4 w-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Rechercher</button></div></div><div class="flex flex-wrap items-center justify-center gap-x-6 gap-y-2 mt-6 text-sm text-muted-foreground"><span class="flex items-center gap-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-users h-4 w-4 text-primary" aria-hidden="true"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"></path><path d="M16 3.128a4 4 0 0 1 0 7.744"></path><path d="M22 21v-2a4 4 0 0 0-3-3.87"></path><circle cx="9" cy="7" r="4"></circle></svg>Pros du nettoyage vérifiés</span><span class="flex items-center gap-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star h-4 w-4 text-amber-400" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg> Avis vérifiés</span><span class="flex items-center gap-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4 text-primary" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg> Partout en France</span></div></div></div><div class="max-w-7xl mx-auto px-6 py-10"><div class="flex gap-8"><aside class="hidden lg:block w-72 shrink-0 self-start sticky top-[68px]"><div class="max-h-[calc(100vh-88px)] overflow-y-auto bg-card/40 border border-border rounded-2xl p-5"><div class="space-y-4"><div class="flex items-center justify-between"><h2 class="font-display font-bold text-base">Filtres</h2><button class="text-xs text-muted-foreground hover:text-foreground underline transition-colors">Réinitialiser</button></div><div class="flex flex-col gap-2"><button class="w-full flex items-center gap-2.5 px-3 py-2 rounded-xl border text-sm font-medium transition-colors border-border text-muted-foreground hover:border-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-heart h-4 w-4" aria-hidden="true"><path d="M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5"></path></svg>Mes favoris</button><button class="w-full flex items-center gap-2.5 px-3 py-2 rounded-xl border text-sm font-medium transition-colors border-border text-muted-foreground hover:border-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check h-4 w-4" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg>Pros vérifiés seulement</button><button class="w-full flex items-center gap-2.5 px-3 py-2 rounded-xl border text-sm font-medium transition-colors border-border text-muted-foreground hover:border-muted-foreground"><span class="text-base leading-none">✅</span>Crédit d'impôt éligible</button></div><div class="border-t border-border/50"></div><div><button class="w-full flex items-center justify-between text-xs font-semibold uppercase tracking-wider text-muted-foreground mb-2 hover:text-foreground transition-colors">Catégorie<span class="transition-transform duration-200 rotate-180">▾</span></button><div><div class="flex flex-col gap-0.5 mt-2"><button class="flex items-center gap-2 px-3 py-2 rounded-lg text-sm font-medium text-left transition-smooth bg-primary/15 text-primary border border-primary/30"><span>✨</span><span>Tous</span></button><div><p class="text-[10px] uppercase tracking-widest text-muted-foreground/50 font-semibold mt-3 mb-1 px-3">Résidentiel & Domicile</p><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🏠</span><span class="truncate">Aide Ménagère</span></button><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🔨</span><span class="truncate">Après Travaux</span></button><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🛋️</span><span class="truncate">Canapé & Moquette</span></button></div><div><p class="text-[10px] uppercase tracking-widest text-muted-foreground/50 font-semibold mt-3 mb-1 px-3">Bâtiment & Extérieur</p><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🏢</span><span class="truncate">Bureaux & Locaux</span></button><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🏚️</span><span class="truncate">Démoussage Toiture</span></button><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🏗️</span><span class="truncate">Nettoyage Façade</span></button><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🌿</span><span class="truncate">Terrasse & Extérieur</span></button><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🪟</span><span class="truncate">Lavage de Vitres</span></button></div><div><p class="text-[10px] uppercase tracking-widest text-muted-foreground/50 font-semibold mt-3 mb-1 px-3">Spécialisé</p><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🚗</span><span class="truncate">Nettoyage Auto</span></button><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🏊</span><span class="truncate">Nettoyage Piscine</span></button><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>⚙️</span><span class="truncate">Industriel</span></button><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🕊️</span><span class="truncate">Après Décès</span></button></div><div><p class="text-[10px] uppercase tracking-widest text-muted-foreground/50 font-semibold mt-3 mb-1 px-3">Hygiène & Nuisibles</p><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🐛</span><span class="truncate">Punaises de Lit</span></button><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>🐀</span><span class="truncate">Dératisation & Nuisibles</span></button><button class="w-full flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground"><span>💧</span><span class="truncate">Désinfection</span></button></div></div></div></div><div class="border-t border-border/50"></div><div><button class="w-full flex items-center justify-between text-xs font-semibold uppercase tracking-wider text-muted-foreground mb-2 hover:text-foreground transition-colors">Trier par<span class="transition-transform duration-200 rotate-180">▾</span></button><div><div class="flex flex-col gap-1 mt-2"><button class="px-3 py-2 rounded-lg text-sm font-medium text-left transition-smooth bg-primary/15 text-primary border border-primary/30">Pertinence</button><button class="px-3 py-2 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground">Meilleure note</button><button class="px-3 py-2 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground">Plus d'avis</button><button class="px-3 py-2 rounded-lg text-sm font-medium text-left transition-smooth text-muted-foreground hover:bg-muted/50 hover:text-foreground">Nom A–Z</button></div></div></div><div class="border-t border-border/50"></div><div><button class="w-full flex items-center justify-between text-xs font-semibold uppercase tracking-wider text-muted-foreground mb-2 hover:text-foreground transition-colors">Note minimale<span class="transition-transform duration-200 rotate-180">▾</span></button><div><div class="flex items-center gap-1 mt-2"><button class="p-0.5 transition-transform hover:scale-110" title="1★ et plus"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star h-5 w-5 transition-colors text-muted-foreground/40" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg></button><button class="p-0.5 transition-transform hover:scale-110" title="2★ et plus"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star h-5 w-5 transition-colors text-muted-foreground/40" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg></button><button class="p-0.5 transition-transform hover:scale-110" title="3★ et plus"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star h-5 w-5 transition-colors text-muted-foreground/40" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg></button><button class="p-0.5 transition-transform hover:scale-110" title="4★ et plus"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star h-5 w-5 transition-colors text-muted-foreground/40" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg></button><button class="p-0.5 transition-transform hover:scale-110" title="5★ et plus"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star h-5 w-5 transition-colors text-muted-foreground/40" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg></button></div></div></div><div class="border-t border-border/50"></div><div><button class="w-full flex items-center justify-between text-xs font-semibold uppercase tracking-wider text-muted-foreground mb-2 hover:text-foreground transition-colors">Badges<span class="transition-transform duration-200">▾</span></button></div><div class="border-t border-border/50"></div><div><button class="w-full flex items-center justify-between text-xs font-semibold uppercase tracking-wider text-muted-foreground mb-2 hover:text-foreground transition-colors">Type d'intervention<span class="transition-transform duration-200">▾</span></button></div><div class="border-t border-border/50"></div><div><button class="w-full flex items-center justify-between text-xs font-semibold uppercase tracking-wider text-muted-foreground mb-2 hover:text-foreground transition-colors">Type de clientèle<span class="transition-transform duration-200">▾</span></button></div><div class="border-t border-border/50"></div><div><button class="w-full flex items-center justify-between text-xs font-semibold uppercase tracking-wider text-muted-foreground mb-2 hover:text-foreground transition-colors">Disponibilité<span class="transition-transform duration-200">▾</span></button></div><div class="border-t border-border/50"></div><div><button class="w-full flex items-center justify-between text-xs font-semibold uppercase tracking-wider text-muted-foreground mb-2 hover:text-foreground transition-colors">Expérience<span class="transition-transform duration-200">▾</span></button></div></div></div></aside><div class="flex-1 min-w-0"><div class="flex items-center justify-between mb-6 gap-3 flex-wrap"><div class="flex items-center gap-3"><p class="text-sm text-muted-foreground">Chargement...</p></div><div class="flex items-center gap-2"><button class="lg:hidden flex items-center gap-1.5 px-3 py-1.5 rounded-lg border border-border text-sm text-muted-foreground hover:text-foreground hover:border-primary/40 transition-smooth"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sliders-horizontal h-4 w-4" aria-hidden="true"><path d="M10 5H3"></path><path d="M12 19H3"></path><path d="M14 3v4"></path><path d="M16 17v4"></path><path d="M21 12h-9"></path><path d="M21 19h-5"></path><path d="M21 5h-7"></path><path d="M8 10v4"></path><path d="M8 12H3"></path></svg>Filtres</button><div class="flex items-center border border-border rounded-lg overflow-hidden"><button class="p-1.5 transition-colors text-muted-foreground hover:text-foreground" title="Affichage grille"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-grid h-4 w-4" aria-hidden="true"><rect width="7" height="7" x="3" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="3" rx="1"></rect><rect width="7" height="7" x="14" y="14" rx="1"></rect><rect width="7" height="7" x="3" y="14" rx="1"></rect></svg></button><button class="p-1.5 transition-colors bg-primary/15 text-primary" title="Affichage liste"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-list h-4 w-4" aria-hidden="true"><path d="M3 5h.01"></path><path d="M3 12h.01"></path><path d="M3 19h.01"></path><path d="M8 5h13"></path><path d="M8 12h13"></path><path d="M8 19h13"></path></svg></button><button class="p-1.5 transition-colors text-muted-foreground hover:text-foreground" title="Affichage carte"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map h-4 w-4" aria-hidden="true"><path d="M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z"></path><path d="M15 5.764v15"></path><path d="M9 3.236v15"></path></svg></button></div></div></div><div class="flex flex-col gap-3"><div class="rounded-2xl bg-card/40 border border-border animate-pulse h-20"></div><div class="rounded-2xl bg-card/40 border border-border animate-pulse h-20"></div><div class="rounded-2xl bg-card/40 border border-border animate-pulse h-20"></div><div class="rounded-2xl bg-card/40 border border-border animate-pulse h-20"></div><div class="rounded-2xl bg-card/40 border border-border animate-pulse h-20"></div><div class="rounded-2xl bg-card/40 border border-border animate-pulse h-20"></div><div class="rounded-2xl bg-card/40 border border-border animate-pulse h-20"></div><div class="rounded-2xl bg-card/40 border border-border animate-pulse h-20"></div></div><div class="mt-16 text-center p-10 rounded-2xl bg-card-gradient border border-primary/20"><h2 class="text-2xl font-display font-bold mb-3">Vous êtes prestataire de nettoyage ?</h2><p class="text-muted-foreground mb-6">Créez votre profil et apparaissez dans le marketplace CleanPro pour recevoir des demandes.</p><a href="/signup-pro"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 shadow hover:bg-primary/90 h-9 px-4 py-2 bg-gradient-to-r from-primary to-secondary text-primary-foreground hover:opacity-90 shadow-glow">Créer mon profil gratuitement <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-2 h-4 w-4" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></button></a></div><div class="mt-16 pt-12 border-t border-border"><h2 class="text-xl font-display font-bold mb-8 text-center">Pourquoi choisir un prestataire via CleanPro ?</h2><div class="grid sm:grid-cols-2 lg:grid-cols-4 gap-5 mb-12"><div class="flex items-start gap-3 p-4 rounded-xl bg-card/40 border border-border"><span class="text-2xl shrink-0">✅</span><div><h3 class="font-semibold text-sm mb-1">Prestataires vérifiés</h3><p class="text-xs text-muted-foreground leading-relaxed">Chaque profil est contrôlé : RC Pro, avis clients, réactivité. Seuls les pros sérieux restent visibles.</p></div></div><div class="flex items-start gap-3 p-4 rounded-xl bg-card/40 border border-border"><span class="text-2xl shrink-0">⭐</span><div><h3 class="font-semibold text-sm mb-1">Avis 100% vérifiés</h3><p class="text-xs text-muted-foreground leading-relaxed">Les avis sont liés à de vraies prestations. Aucun avis anonyme, aucune manipulation possible.</p></div></div><div class="flex items-start gap-3 p-4 rounded-xl bg-card/40 border border-border"><span class="text-2xl shrink-0">🔒</span><div><h3 class="font-semibold text-sm mb-1">Paiement sécurisé</h3><p class="text-xs text-muted-foreground leading-relaxed">Acomptes et soldes via Stripe. Votre argent est protégé et versé uniquement après la prestation.</p></div></div><div class="flex items-start gap-3 p-4 rounded-xl bg-card/40 border border-border"><span class="text-2xl shrink-0">⚡</span><div><h3 class="font-semibold text-sm mb-1">Réponse sous 24h</h3><p class="text-xs text-muted-foreground leading-relaxed">Le prestataire s'engage à vous répondre sous 24h. La plupart répondent en moins de 2 heures.</p></div></div><div class="flex items-start gap-3 p-4 rounded-xl bg-card/40 border border-border"><span class="text-2xl shrink-0">📋</span><div><h3 class="font-semibold text-sm mb-1">Devis gratuit</h3><p class="text-xs text-muted-foreground leading-relaxed">Recevez un devis détaillé avant tout engagement. Comparez plusieurs prestataires sans frais.</p></div></div><div class="flex items-start gap-3 p-4 rounded-xl bg-card/40 border border-border"><span class="text-2xl shrink-0">📞</span><div><h3 class="font-semibold text-sm mb-1">Contact direct</h3><p class="text-xs text-muted-foreground leading-relaxed">Communiquez directement avec le professionnel via la messagerie CleanPro, sans intermédiaire.</p></div></div><div class="flex items-start gap-3 p-4 rounded-xl bg-card/40 border border-border"><span class="text-2xl shrink-0">🏆</span><div><h3 class="font-semibold text-sm mb-1">0 € de commission</h3><p class="text-xs text-muted-foreground leading-relaxed">CleanPro ne prend aucune commission. 100% du montant payé va directement au prestataire.</p></div></div><div class="flex items-start gap-3 p-4 rounded-xl bg-card/40 border border-border"><span class="text-2xl shrink-0">📍</span><div><h3 class="font-semibold text-sm mb-1">Prestataires locaux</h3><p class="text-xs text-muted-foreground leading-relaxed">Trouvez un pro dans votre ville ou commune. La carte vous montre les prestataires proches de chez vous.</p></div></div></div><div class="max-w-3xl mx-auto"><h2 class="text-lg font-display font-bold mb-5 text-center">Questions fréquentes</h2><div class="space-y-3"><details class="group rounded-xl border border-border bg-card/30 overflow-hidden"><summary class="flex items-center justify-between px-5 py-4 cursor-pointer hover:bg-muted/30 transition-colors list-none"><span class="font-medium text-sm pr-4">Comment trouver un prestataire de nettoyage près de chez moi ?</span><span class="shrink-0 text-muted-foreground group-open:rotate-45 transition-transform text-lg">+</span></summary><p class="px-5 pb-4 text-sm text-muted-foreground leading-relaxed">Saisissez votre ville ou code postal dans la barre de recherche. CleanPro affiche automatiquement les prestataires disponibles dans votre secteur, triés par pertinence et note.</p></details><details class="group rounded-xl border border-border bg-card/30 overflow-hidden"><summary class="flex items-center justify-between px-5 py-4 cursor-pointer hover:bg-muted/30 transition-colors list-none"><span class="font-medium text-sm pr-4">Les avis clients sont-ils fiables ?</span><span class="shrink-0 text-muted-foreground group-open:rotate-45 transition-transform text-lg">+</span></summary><p class="px-5 pb-4 text-sm text-muted-foreground leading-relaxed">Oui. Chaque avis sur CleanPro est lié à une prestation réelle vérifiée. Il est impossible de poster un avis sans avoir été en contact avec le prestataire via la plateforme.</p></details><details class="group rounded-xl border border-border bg-card/30 overflow-hidden"><summary class="flex items-center justify-between px-5 py-4 cursor-pointer hover:bg-muted/30 transition-colors list-none"><span class="font-medium text-sm pr-4">Combien coûte une prestation de nettoyage ?</span><span class="shrink-0 text-muted-foreground group-open:rotate-45 transition-transform text-lg">+</span></summary><p class="px-5 pb-4 text-sm text-muted-foreground leading-relaxed">Les tarifs varient selon le type de service, la superficie et la localisation. Un ménage à domicile coûte entre 20 et 35 €/h, un nettoyage de fin de bail entre 150 et 400 €, et l'entretien de bureaux entre 3 et 8 €/m²/mois.</p></details><details class="group rounded-xl border border-border bg-card/30 overflow-hidden"><summary class="flex items-center justify-between px-5 py-4 cursor-pointer hover:bg-muted/30 transition-colors list-none"><span class="font-medium text-sm pr-4">Les prestataires sont-ils assurés ?</span><span class="shrink-0 text-muted-foreground group-open:rotate-45 transition-transform text-lg">+</span></summary><p class="px-5 pb-4 text-sm text-muted-foreground leading-relaxed">Les prestataires référencés sur CleanPro disposent d'une assurance responsabilité civile professionnelle. Vous pouvez demander l'attestation directement au prestataire avant l'intervention.</p></details><details class="group rounded-xl border border-border bg-card/30 overflow-hidden"><summary class="flex items-center justify-between px-5 py-4 cursor-pointer hover:bg-muted/30 transition-colors list-none"><span class="font-medium text-sm pr-4">Puis-je payer en ligne ?</span><span class="shrink-0 text-muted-foreground group-open:rotate-45 transition-transform text-lg">+</span></summary><p class="px-5 pb-4 text-sm text-muted-foreground leading-relaxed">Oui. Les prestataires PRO CleanPro acceptent le paiement en ligne (carte, Apple Pay, virement SEPA) via Stripe. Vous réglez l'acompte à la réservation et le solde à la fin de la prestation.</p></details></div></div></div><div class="mt-16 pt-12 border-t border-border"><h2 class="text-xl font-display font-bold mb-2 text-center">Comment réserver un prestataire de nettoyage ?</h2><p class="text-center text-sm text-muted-foreground mb-10 max-w-xl mx-auto">De la recherche à la fin de prestation, CleanPro vous accompagne à chaque étape en toute transparence.</p><div class="grid sm:grid-cols-2 lg:grid-cols-4 gap-6"><div class="relative flex flex-col items-center text-center p-5 rounded-2xl bg-card/40 border border-border"><div class="absolute -top-3 left-1/2 -translate-x-1/2 h-6 w-6 rounded-full bg-primary text-primary-foreground text-xs font-bold flex items-center justify-center shadow-sm">1</div><span class="text-3xl mb-3 mt-2">🔍</span><h3 class="font-semibold text-sm mb-2">Recherchez votre service</h3><p class="text-xs text-muted-foreground leading-relaxed">Saisissez votre ville et le type de nettoyage (ménage, vitres, fin de bail, après sinistre…). Filtrez par note, prix ou disponibilité.</p></div><div class="relative flex flex-col items-center text-center p-5 rounded-2xl bg-card/40 border border-border"><div class="absolute -top-3 left-1/2 -translate-x-1/2 h-6 w-6 rounded-full bg-primary text-primary-foreground text-xs font-bold flex items-center justify-center shadow-sm">2</div><span class="text-3xl mb-3 mt-2">📋</span><h3 class="font-semibold text-sm mb-2">Comparez les profils</h3><p class="text-xs text-muted-foreground leading-relaxed">Consultez les avis vérifiés, les photos avant/après, les tarifs et la zone d'intervention. Demandez un devis gratuit sans engagement.</p></div><div class="relative flex flex-col items-center text-center p-5 rounded-2xl bg-card/40 border border-border"><div class="absolute -top-3 left-1/2 -translate-x-1/2 h-6 w-6 rounded-full bg-primary text-primary-foreground text-xs font-bold flex items-center justify-center shadow-sm">3</div><span class="text-3xl mb-3 mt-2">📅</span><h3 class="font-semibold text-sm mb-2">Réservez en ligne</h3><p class="text-xs text-muted-foreground leading-relaxed">Choisissez votre date, renseignez vos coordonnées et confirmez votre réservation en 2 minutes. Un acompte sécurisé via Stripe vous protège.</p></div><div class="relative flex flex-col items-center text-center p-5 rounded-2xl bg-card/40 border border-border"><div class="absolute -top-3 left-1/2 -translate-x-1/2 h-6 w-6 rounded-full bg-primary text-primary-foreground text-xs font-bold flex items-center justify-center shadow-sm">4</div><span class="text-3xl mb-3 mt-2">✅</span><h3 class="font-semibold text-sm mb-2">Profitez du résultat</h3><p class="text-xs text-muted-foreground leading-relaxed">Le prestataire intervient et vous laisse signer électroniquement à la fin. Laissez un avis pour aider la communauté.</p></div></div></div><div class="mt-16 pt-12 border-t border-border"><h2 class="text-xl font-display font-bold mb-2 text-center">Quel service de nettoyage choisir ?</h2><p class="text-center text-sm text-muted-foreground mb-8 max-w-xl mx-auto">Chaque service répond à un besoin précis. Voici un guide rapide pour trouver la prestation adaptée à votre situation.</p><div class="grid sm:grid-cols-2 lg:grid-cols-3 gap-4"><div class="p-5 rounded-xl bg-card/40 border border-border hover:border-primary/30 transition-colors"><div class="flex items-center gap-3 mb-3"><span class="text-2xl">🏠</span><div><h3 class="font-semibold text-sm">Aide ménagère à domicile</h3><p class="text-xs text-muted-foreground">Particuliers</p></div></div><p class="text-xs text-muted-foreground mb-3 leading-relaxed">Entretien courant : aspirateur, sols, sanitaires, cuisine. Idéal pour maintenir un logement propre sans contrainte.</p><div class="flex gap-3 text-xs"><span class="px-2 py-0.5 rounded-full bg-primary/10 text-primary font-medium">20–35 €/h</span><span class="px-2 py-0.5 rounded-full bg-muted text-muted-foreground">Hebdomadaire ou bimensuel</span></div></div><div class="p-5 rounded-xl bg-card/40 border border-border hover:border-primary/30 transition-colors"><div class="flex items-center gap-3 mb-3"><span class="text-2xl">🏢</span><div><h3 class="font-semibold text-sm">Nettoyage de bureaux</h3><p class="text-xs text-muted-foreground">Entreprises</p></div></div><p class="text-xs text-muted-foreground mb-3 leading-relaxed">Locaux professionnels, open-spaces, salles de réunion. Intervention tôt le matin ou le soir pour ne pas perturber l'activité.</p><div class="flex gap-3 text-xs"><span class="px-2 py-0.5 rounded-full bg-primary/10 text-primary font-medium">3–8 €/m²/mois</span><span class="px-2 py-0.5 rounded-full bg-muted text-muted-foreground">Quotidien à hebdomadaire</span></div></div><div class="p-5 rounded-xl bg-card/40 border border-border hover:border-primary/30 transition-colors"><div class="flex items-center gap-3 mb-3"><span class="text-2xl">🔑</span><div><h3 class="font-semibold text-sm">Fin de bail / État des lieux</h3><p class="text-xs text-muted-foreground">Locataires</p></div></div><p class="text-xs text-muted-foreground mb-3 leading-relaxed">Nettoyage complet pour récupérer son dépôt de garantie. Inclut cuisine, sanitaires, vitres, murs et sols.</p><div class="flex gap-3 text-xs"><span class="px-2 py-0.5 rounded-full bg-primary/10 text-primary font-medium">150–500 €</span><span class="px-2 py-0.5 rounded-full bg-muted text-muted-foreground">Ponctuel (déménagement)</span></div></div><div class="p-5 rounded-xl bg-card/40 border border-border hover:border-primary/30 transition-colors"><div class="flex items-center gap-3 mb-3"><span class="text-2xl">🏗️</span><div><h3 class="font-semibold text-sm">Nettoyage après travaux</h3><p class="text-xs text-muted-foreground">Particuliers & pros</p></div></div><p class="text-xs text-muted-foreground mb-3 leading-relaxed">Élimination des poussières de plâtre, résidus de colle, protection retirée. Restitution d'un espace habitable.</p><div class="flex gap-3 text-xs"><span class="px-2 py-0.5 rounded-full bg-primary/10 text-primary font-medium">200–800 €</span><span class="px-2 py-0.5 rounded-full bg-muted text-muted-foreground">Ponctuel (fin de chantier)</span></div></div><div class="p-5 rounded-xl bg-card/40 border border-border hover:border-primary/30 transition-colors"><div class="flex items-center gap-3 mb-3"><span class="text-2xl">🌿</span><div><h3 class="font-semibold text-sm">Démoussage toiture & façade</h3><p class="text-xs text-muted-foreground">Propriétaires</p></div></div><p class="text-xs text-muted-foreground mb-3 leading-relaxed">Nettoyage haute pression, traitement anti-mousse, protection hydrofuge. Préserve l'étanchéité et l'aspect de votre bien.</p><div class="flex gap-3 text-xs"><span class="px-2 py-0.5 rounded-full bg-primary/10 text-primary font-medium">5–15 €/m²</span><span class="px-2 py-0.5 rounded-full bg-muted text-muted-foreground">Tous les 2–5 ans</span></div></div><div class="p-5 rounded-xl bg-card/40 border border-border hover:border-primary/30 transition-colors"><div class="flex items-center gap-3 mb-3"><span class="text-2xl">🪟</span><div><h3 class="font-semibold text-sm">Lavage de vitres</h3><p class="text-xs text-muted-foreground">Particuliers & pros</p></div></div><p class="text-xs text-muted-foreground mb-3 leading-relaxed">Vitres intérieures et extérieures, velux, véranda. Utilisation de perche télescopique pour les hauteurs.</p><div class="flex gap-3 text-xs"><span class="px-2 py-0.5 rounded-full bg-primary/10 text-primary font-medium">2–6 €/vitre</span><span class="px-2 py-0.5 rounded-full bg-muted text-muted-foreground">Mensuel à semestriel</span></div></div></div></div></div></div></div><footer class="border-t border-border bg-muted/20 pt-16 pb-10" aria-label="Pied de page"><div class="mx-auto max-w-7xl px-6"><div class="mb-14 p-8 rounded-2xl bg-gradient-to-r from-primary/10 to-secondary/10 border border-primary/20 flex flex-col md:flex-row items-center justify-between gap-6"><div><p class="font-display font-bold text-xl mb-1">Vous êtes prestataire de nettoyage ?</p><p class="text-muted-foreground text-sm">Créez votre profil gratuit et commencez à recevoir des demandes de devis.</p></div><div class="flex gap-3 shrink-0"><a href="/signup-pro" class="px-5 py-2.5 rounded-xl bg-primary text-primary-foreground font-semibold text-sm hover:opacity-90 transition-opacity whitespace-nowrap">Créer mon profil pro</a><a href="/pro" class="px-5 py-2.5 rounded-xl border border-border text-foreground font-semibold text-sm hover:bg-muted/50 transition-colors whitespace-nowrap">En savoir plus</a></div></div><div class="grid sm:grid-cols-2 md:grid-cols-5 gap-10 mb-12"><div class="md:col-span-1"><a class="flex items-center gap-2 mb-4 active" href="/" data-status="active" aria-current="page"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-6 w-6 text-primary" aria-hidden="true"><path d="M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z"></path><path d="M20 2v4"></path><path d="M22 4h-4"></path><circle cx="4" cy="20" r="2"></circle></svg><span class="font-display font-bold text-lg text-gradient">CleanPro</span></a><p class="text-sm text-muted-foreground leading-relaxed mb-4">La plateforme tout-en-un pour les professionnels du nettoyage et de l'entretien en France.</p><div class="flex gap-2 flex-wrap"><span class="text-xs px-2 py-0.5 rounded-full bg-muted/60 text-muted-foreground border border-border/50">🏠 Ménage</span><span class="text-xs px-2 py-0.5 rounded-full bg-muted/60 text-muted-foreground border border-border/50">🏢 Bureaux</span><span class="text-xs px-2 py-0.5 rounded-full bg-muted/60 text-muted-foreground border border-border/50">🪟 Vitres</span><span class="text-xs px-2 py-0.5 rounded-full bg-muted/60 text-muted-foreground border border-border/50">🏚️ Toiture</span><span class="text-xs px-2 py-0.5 rounded-full bg-muted/60 text-muted-foreground border border-border/50">🐛 Punaises</span></div></div><div><h3 class="font-semibold text-sm mb-4">Plateforme</h3><ul class="space-y-2.5"><li><a href="/pro#fonctionnalites" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Fonctionnalités</a></li><li><a href="/pro#tarifs" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Tarifs</a></li><li><a href="/pro#pour-qui" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Pour qui ?</a></li><li><a href="/pro#how" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Comment ça marche</a></li><li><a href="/paiement-securise" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Paiement sécurisé</a></li></ul></div><div><h3 class="font-semibold text-sm mb-4">Services</h3><ul class="space-y-2.5"><li><a href="/services/aide-menagere" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Aide ménagère</a></li><li><a href="/services/nettoyage-bureaux" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Nettoyage de bureaux</a></li><li><a href="/services/toiture" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Démoussage toiture</a></li><li><a href="/services/vitrerie" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Lavage de vitres</a></li><li><a href="/services/terrasse" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Terrasse & Extérieur</a></li><li><a href="/services/canape-moquette" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Canapé & Moquette</a></li><li><a href="/services/punaises-de-lit" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Punaises de lit</a></li><li><a href="/services/deratisation" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Dératisation</a></li><li><a href="/services/apres-deces" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Après décès</a></li></ul></div><div><h3 class="font-semibold text-sm mb-4">Prestataires</h3><ul class="space-y-2.5"><li><a href="/signup-pro" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Créer un compte pro</a></li><li><a href="/login" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Se connecter</a></li><li><a href="/pro" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Fonctionnalités PRO</a></li><li><a href="/blog" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Blog & conseils</a></li><li><a class="text-sm text-muted-foreground hover:text-foreground transition-smooth active" href="/" data-status="active" aria-current="page">Marketplace</a></li><li><a href="mailto:contact@cleanpro.fr" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Contact</a></li></ul></div><div><h3 class="font-semibold text-sm mb-4">Légal</h3><ul class="space-y-2.5"><li><a href="/mentions-legales" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Mentions légales</a></li><li><a href="/cgu" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">CGU</a></li><li><a href="/cgv" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">CGV</a></li><li><a href="/rgpd" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Confidentialité & RGPD</a></li><li><a href="/cookies" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Cookies</a></li><li><a href="/plan-du-site" class="text-sm text-muted-foreground hover:text-foreground transition-smooth">Plan du site</a></li></ul></div></div><div class="border-t border-border/50 pt-8 mb-8"><p class="text-xs text-muted-foreground font-semibold uppercase tracking-wider mb-3">Nettoyage par ville</p><div class="flex flex-wrap gap-x-3 gap-y-0.5"><a href="/services/aide-menagere/paris" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Paris</a><a href="/services/aide-menagere/lyon" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Lyon</a><a href="/services/aide-menagere/marseille" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Marseille</a><a href="/services/aide-menagere/toulouse" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Toulouse</a><a href="/services/aide-menagere/nice" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Nice</a><a href="/services/aide-menagere/bordeaux" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Bordeaux</a><a href="/services/aide-menagere/lille" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Lille</a><a href="/services/aide-menagere/nantes" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Nantes</a><a href="/services/aide-menagere/strasbourg" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Strasbourg</a><a href="/services/aide-menagere/montpellier" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Montpellier</a><a href="/services/aide-menagere/grenoble" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Grenoble</a><a href="/services/aide-menagere/annecy" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Annecy</a><a href="/services/aide-menagere/rennes" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Rennes</a><a href="/services/aide-menagere/aix-en-provence" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Aix-en-Provence</a><a href="/services/aide-menagere/toulon" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Toulon</a><a href="/services/aide-menagere/brest" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Brest</a><a href="/services/aide-menagere/metz" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Metz</a><a href="/services/aide-menagere/nancy" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Nancy</a><a href="/services/aide-menagere/caen" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Caen</a><a href="/services/aide-menagere/dijon" class="text-xs text-muted-foreground hover:text-primary transition-colors py-1.5 px-1 min-h-[44px] flex items-center">Nettoyage <!-- -->Dijon</a></div></div><div class="flex flex-col md:flex-row items-center justify-between gap-4 pt-6 border-t border-border"><p class="text-xs text-muted-foreground">© <!-- -->2026<!-- --> CleanPro — Tous droits réservés · La plateforme SaaS pour pros du nettoyage</p><div class="flex items-center gap-4 text-xs text-muted-foreground"><a href="/plan-du-site" class="hover:text-foreground transition-colors">Plan du site</a><a href="/humans.txt" class="hover:text-foreground transition-colors">humans.txt</a><a href="/llms.txt" class="hover:text-foreground transition-colors">LLMs.txt</a></div></div></div></footer></div><!--/$--><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section></div><script class="$tsr" id="$tsr-stream-barrier">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CenjeLUG.js","/assets/vendor-tanstack-BYrU2gQq.js","/assets/vendor-supabase-DL5HCojG.js"],assets:$R[5]=[$R[6]={tag:"link",attrs:$R[7]={rel:"stylesheet",href:"/assets/index-CIGW-MKW.css#",type:"text/css"}},$R[8]={tag:"script",attrs:$R[9]={type:"module",async:!0},children:"import(\"/assets/index-CenjeLUG.js\")"}]},"/":$R[10]={preloads:$R[11]=["/assets/index-BLWomxg1.js","/assets/ThemeToggleButton-DUf3hOsx.js","/assets/Footer-DwDKIc_c.js","/assets/image-Be-kDdvV.js","/assets/menu-6teQ_g8a.js","/assets/users-me6hW7Mm.js","/assets/map-CuCgqhHB.js","/assets/arrow-right-2GP6kVct.js","/assets/check-CME4-SOR.js","/assets/moon-B1Fjql69.js"]}}},matches:$R[12]=[$R[13]={i:"__root__ ",u:1778902049724,s:"success",ssr:!0},$R[14]={i:"