Em 2026, o cenário de SEO é mais do que nunca moldado por desafios técnicos e estratégicos específicos. Seja otimizando o desempenho da web ou dominando as complexidades da indexação, cada aspecto desempenha um papel crucial na manutenção de uma vantagem competitiva. A ascensão da otimização HTTP(S), particularmente com o crescimento do HTTPS, combinada com a expertise em JavaScript, está transformando a forma como os mecanismos de busca percebem e indexam sites. As estratégias de links âncora, essenciais para aumentar a visibilidade, devem ser cuidadosamente consideradas não apenas para atender aos critérios técnicos, mas também para aprimorar a relevância do conteúdo. Compreender esses desafios e aplicar rigorosamente as melhores práticas é essencial para construir uma otimização de mecanismos de busca (SEO) orgânica robusta e sustentável, especialmente em um contexto onde os algoritmos estão se tornando cada vez mais sofisticados.

Os Fundamentos da Otimização HTTP(S) para um SEO Orgânico Impecável

Ao discutir a otimização HTTP(S), a prioridade é garantir uma comunicação fluida e segura entre o servidor e o usuário. Até 2026, a maioria dos sites já havia migrado para HTTPS para garantir a segurança dos dados e atender aos requisitos dos mecanismos de busca. No entanto, simplesmente trocar de HTTP para HTTPS não é suficiente. É fundamental garantir tempos de carregamento rápidos, uma experiência de usuário otimizada e uma estrutura técnica clara para facilitar o trabalho dos robôs de indexação.

Erros comuns geralmente decorrem de uma má gestão de conteúdo nos servidores: por exemplo, uma página inicial HTTP invisível ou redirecionamentos mal configurados. Um site migrado para HTTPS deve garantir que todas as suas páginas redirecionem corretamente para a nova versão, sem deixar URLs antigos em cache ou causar erros. A adesão às melhores práticas, como habilitar a compressão, usar um cache eficaz e remover redirecionamentos desnecessários, desempenha um papel crucial na otimização do HTTP(X). O desempenho da web depende muito disso e influencia diretamente a taxa de rejeição e o posicionamento nos mecanismos de busca.

Também é vital monitorar as métricas em tempo real usando ferramentas como o Search Console ou soluções avançadas de análise para detectar rapidamente qualquer mau funcionamento. Um site lento ou que exibe erros 404 pode prejudicar seriamente sua credibilidade aos olhos dos mecanismos de busca e, por extensão, de seus visitantes. A chave está em uma auditoria técnica completa, evitando a dependência de ferramentas automatizadas: um olhar humano combinado com as estratégias certas garante um melhor controle desta etapa crucial.
Ibou Explorer : la première pierre du nouveau moteur de recherche 100% français est posée
→ À lire aussi Ibou Explorer : la première pierre du nouveau moteur de recherche 100% français est posée Referência orgânica (SEO) · 09 Mar 2026

Descubra as melhores estratégias de otimização de SEO para melhorar a visibilidade do seu site e atrair visitantes mais qualificados.

Como dominar o JavaScript para melhorar a indexação e o posicionamento nos mecanismos de busca. O JavaScript, frequentemente visto como uma ferramenta para aprimorar a experiência do usuário, também representa um desafio para o SEO em 2026. Embora a maioria dos mecanismos de busca consiga interpretar JavaScript, uma abordagem rigorosa é necessária para evitar que conteúdo vital seja ignorado durante a indexação ou rastreamento. O principal problema reside na renderização do lado do cliente: se um mecanismo de busca não executar o JavaScript corretamente, poderá perder páginas essenciais ou interpretar erroneamente a hierarquia do conteúdo. As melhores práticas para dominar o JavaScript em SEO incluem a implementação de renderização do lado do servidor (SSR) ou pré-renderização, que permite que os mecanismos de busca acessem uma versão estática do conteúdo. Garantir a consistência das tags de âncora após o carregamento, otimizar scripts para evitar lentidão e assegurar que o conteúdo vital esteja acessível sem JavaScript são etapas importantes para melhorar o desempenho. Além disso, o uso de ferramentas especializadas, como o guia UPLIX, é essencial para entender como ajustar seu código e evitar erros comuns. Dominar essas técnicas oferece melhor indexação, mantendo uma experiência de usuário fluida.

Jeu-Concours : Gagnez votre exemplaire de « SEO sans migraine », le tout premier ouvrage d’Amandine Bart
→ À lire aussi Jeu-Concours : Gagnez votre exemplaire de « SEO sans migraine », le tout premier ouvrage d’Amandine Bart Referência orgânica (SEO) · 19 Fev 2026

Um estudo recente mostra que 73% dos sites com melhor desempenho em SEO adotaram estratégias de renderização do lado do servidor ou pré-renderização para garantir sua visibilidade nos resultados de busca. Não se trata mais apenas de integrar conteúdo, mas de garantir que ele seja acessível e compreensível para todos, incluindo aqueles que não têm suporte completo para JavaScript.

Estratégias de links âncora para impulsionar seu SEO orgânico Os links âncora desempenham um papel fundamental na hierarquia do conteúdo e na transmissão da relevância entre as páginas. Em 2026, o Google dará ainda mais prioridade a textos âncora naturais, visíveis e informativos, pois isso facilita a indexação e melhora a forma como suas ferramentas entendem o site. Uma estratégia eficaz é evitar o uso exclusivo de atributos como `` ou texto oculto, pois estes podem ser percebidos como técnicas de manipulação e até mesmo levar a penalizações. Deve-se priorizar textos visíveis e descritivos que forneçam contexto tanto para o usuário quanto para o mecanismo de busca.</strong> </p> <p>Por exemplo, em vez de inserir um link para uma página de serviço com um simples “clique aqui”, é melhor usar um texto natural como “descubra nossas soluções de <a href="https://kevin-grillot.fr/">SEO</a> que impulsionarão seu posicionamento”. Isso ajuda o mecanismo de busca a entender melhor o propósito de cada link, melhorando assim o SEO geral do site. Outra estratégia envolve estruturar seus links usando uma estrutura lógica de links internos, promovendo o fluxo de valor de SEO entre diferentes páginas e evitando links excessivos ou spam. O gerenciamento desses links também deve respeitar a hierarquia do conteúdo, para que cada página tenha valor proporcional à sua importância. Para aprofundar essas estratégias, consulte nosso guia completo sobre gerenciamento de tags âncora e SEO técnico. <a href="https://referencement-europeen.com/goossips-seo-maitrisez-les-balises-meta-le-seo-technique-et-la-gestion-des-pages-redirigees/"></a>As tendências mostram que uma boa estrutura de links internos, combinada com textos âncora bem escolhidos, pode fazer toda a diferença na obtenção de um bom posicionamento orgânico nos mecanismos de busca. Além disso, um link visível, consistente e relevante também melhora a experiência do usuário e incentiva visitas recorrentes ao site.</p> <p></p> <figure class="wp-block-image size-full"><img decoding="async" width="1200" height="627" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%20627'%3E%3C/svg%3E" alt="Otimize o SEO do seu site com estratégias eficazes para melhorar sua visibilidade online e atrair mais visitantes." class="wp-image-37236" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/02/seo-optimization-2.jpg"><noscript><img decoding="async" width="1200" height="627" src="https://kevin-grillot.fr/wp-content/uploads/2026/02/seo-optimization-2.jpg" alt="Otimize o SEO do seu site com estratégias eficazes para melhorar sua visibilidade online e atrair mais visitantes." class="wp-image-37236"></noscript></figure> <figure class="wp-block-table"><table> <thead> <tr> <th>Elemento-chave</th> <th>Importância</th> <th>Dica prática</th> </tr> </thead> <tbody> <tr> <td><strong>Texto visível</strong></td> <td>Alta</td> <td>Escreva textos descritivos e naturais</td> </tr> <tr> <td><strong>Links internos</strong></td> <td>Crítico</td> <td>Estruture os links para refletir a hierarquia do conteúdo</td> </tr> <tr> <td><strong>Relevância do link</strong></td> <td>Essencial</td> <td>Evite spam ou links fora de contexto</td> </tr> </tbody> </table></figure> <div class="kg-encart-contact" role="complementary" aria-label="Prendre contact"> <div class="kg-encart-contact-inner"> <div class="kg-encart-contact-icon" aria-hidden="true"> <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg> </div> <div class="kg-encart-contact-body"> <h4 class="kg-encart-contact-title">Vous avez un projet spécifique ?</h4> <p class="kg-encart-contact-desc">Kevin Grillot accompagne entrepreneurs et PME en <strong>SEO</strong>, <strong>webmarketing</strong> et <strong>stratégie digitale</strong>. Bénéficiez d'un audit ou d'un accompagnement sur-mesure.</p> </div> <a href="https://kevin-grillot.fr/me-contacter" class="kg-encart-contact-btn"> Discutons de votre projet <svg width="14" height="14" viewBox="0 0 448 512" fill="currentColor" aria-hidden="true"><path d="M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z"/></svg> </a> </div> </div><h2 class="wp-block-heading">Erros comuns em SEO técnico: O impacto da renderização inadequada na indexação</h2> <p>Um dos erros a evitar em 2026 é negligenciar a consistência entre o que o Google vê e o que os visitantes experimentam. Por exemplo, uma página que exibe uma mensagem de “não disponível” antes do carregamento do conteúdo principal pode gerar um sinal negativo. Se, durante a indexação, o Googlebot vir apenas essa mensagem, poderá considerar a página offline ou irrelevante, o que prejudica seu posicionamento.</p> <p></p> <p>Esse fenômeno é ainda mais crítico se a página depender de JavaScript para exibir seu conteúdo dinamicamente. Se o cache ou a renderização não forem ideais, o Google poderá indexar uma versão incompleta ou desatualizada do site. A prática recomendada é carregar todo o conteúdo importante de uma só vez, sem etapas de carregamento visíveis para o usuário ou para o rastreador. <a href="https://les4h.fr/le-monde-des-goossips-seo-analyses-evaluateurs-de-qualite-et-nouvelles-requetes/"></a> Para verificar o que o Google realmente vê, existem dois métodos simples: usar o comando `curl` no terminal para inspecionar a resposta bruta ou, melhor ainda, executar testes ao vivo usando a ferramenta de Inspeção de URL no <a href="https://kevin-grillot.fr/referencement-organique-seo/boostez-votre-strategie-seo-avec-google-analytics-search-console/">Search Console</a>. Se esta última retornar uma versão diferente da exibida no navegador, ajustes serão necessários. Outro erro comum é exibir mensagens de disponibilidade ou carregamento via JavaScript, o que pode dar a ilusão de uma página pronta para uso, quando, na realidade, o Google não viu tudo.</p> <a href="https://kevin-grillot.fr/pt/referencia-organica-seo-pt/os-9-erros-comuns-de-seo-que-voce-deve-evitar-completamente/" class="kg-encart-article" aria-label="Lire aussi : os 9 erros comuns de SEO que você deve evitar completamente"> <img width="300" height="157" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20300%20157'%3E%3C/svg%3E" alt="os 9 erros comuns de SEO que você deve evitar completamente" class="kg-encart-img" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2025/07/seo-errors-300x157.jpg"><noscript><img width="300" height="157" src="https://kevin-grillot.fr/wp-content/uploads/2025/07/seo-errors-300x157.jpg" alt="os 9 erros comuns de SEO que você deve evitar completamente" class="kg-encart-img"></noscript> <div class="kg-encart-text"> <span class="kg-encart-label">→ À lire aussi</span> <span class="kg-encart-title">os 9 erros comuns de SEO que você deve evitar completamente</span> <span class="kg-encart-meta">Referência orgânica (SEO) · 19 Jul 2025</span> </div> </a><h2 class="wp-block-heading">Melhores práticas para aumentar a visibilidade com estratégias eficazes de links âncora</h2> <p>Para ir além das métricas básicas, você precisa integrar estratégias inteligentes de texto âncora. A regra número um é priorizar textos âncora visíveis, descritivos e naturais, pois isso beneficia tanto o <a href="https://kevin-grillot.fr/">SEO</a> quanto a experiência do usuário. Até 2026, o Google estará cada vez mais atento à consistência entre o conteúdo do link e a página de destino.</p> <p>Um erro comum é confiar apenas em atributos como `<title>` ou ocultar o verdadeiro significado do link por trás de um texto genérico ou invisível. A tendência é adotar uma abordagem mais transparente: associar cada link a uma palavra-chave relevante que reflita o conteúdo, mantendo-se natural e fácil de ler. Por exemplo, se você estiver criando um link para uma página dedicada ao <a href="https://kevin-grillot.fr/">SEO</a> local, use um texto como “Otimize sua visibilidade local com nossas estratégias” em vez de um impessoal “clique aqui”. <strong>Outra estratégia é criar uma estrutura de links internos bem definida, evitando o acúmulo de links cegos, em favor de um caminho lógico tanto para o usuário quanto para o Google. Além disso, é útil usar certas ferramentas para analisar a qualidade dos seus links e garantir sua relevância: isso garante que cada link realmente contribua para o crescimento do SEO.</strong> </p> <p>Descubra as melhores técnicas de <a href="https://kevin-grillot.fr/">SEO</a> para otimizar seu site e melhorar sua visibilidade nos mecanismos de busca.</p> <figure class="wp-block-image size-full"><img decoding="async" width="1200" height="627" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%20627'%3E%3C/svg%3E" alt="" class="wp-image-37237" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/02/seo-optimization-3.jpg"><noscript><img decoding="async" width="1200" height="627" src="https://kevin-grillot.fr/wp-content/uploads/2026/02/seo-optimization-3.jpg" alt="" class="wp-image-37237"></noscript></figure> <h3 class="wp-block-heading">Erros a evitar com links âncora:</h3> <ul class="wp-block-list"><li>📛 Usar texto âncora não relacionado à página de destino.</li><li></li><li>🚫 Deixar links ocultos ou invisíveis por meio de atributos pouco claros.</li><li></li></ul> {“@context”:”https://schema.org”,”@type”:”FAQPage”,”mainEntity”:[{“@type”:”Question”,”name”:”Pourquoi lu2019optimisation HTTP(S) est-elle cruciale en 2026?”,”acceptedAnswer”:{“@type”:”Answer”,”text”:”Elle garantit la rapiditu00e9, la su00e9curitu00e9 et la compatibilitu00e9 avec les moteurs de recherche, facteurs essentiels au bon classement et u00e0 une expu00e9rience utilisateur optimisu00e9e.”}},{“@type”:”Question”,”name”:”Comment bien utiliser JavaScript pour son SEO?”,”acceptedAnswer”:{“@type”:”Answer”,”text”:”Adopter des techniques comme le rendu cu00f4tu00e9 serveur ou le pru00e9-rendu pour assurer une indexation correcte de tout le contenu dynamique, tout en respectant les bonnes pratiques du2019optimisation.”}},{“@type”:”Question”,”name”:”Quels sont les piu00e8ges u00e0 u00e9viter avec les liens du2019ancrage?”,”acceptedAnswer”:{“@type”:”Answer”,”text”:”Privilu00e9gier toujours un texte descriptif visible, u00e9viter de masquer lu2019intention ou du2019utiliser des textes gu00e9nu00e9riques, et structurer un maillage cohu00e9rent pour favoriser la pertinence.”}}]} <h3>⚠️ Criar uma rede de links não estruturada ou spam, o que pode penalizar o site.</h3> <p></p> <h3>❌ Ignorar a hierarquia do site ao implementar links internos.</h3> <p></p> <h3>Por que a otimização HTTP(S) é crucial em 2026?</h3> <p>Garante velocidade, segurança e compatibilidade com mecanismos de busca — fatores essenciais para um bom posicionamento e uma experiência de usuário otimizada.</p> <!-- ENCART LEAD MAGNET CHECKLIST SEO --> <div style="margin-top:3rem;padding:2rem;border-radius:16px;background:linear-gradient(135deg,rgba(16,185,129,0.08),rgba(37,99,235,0.06));border:1px solid rgba(16,185,129,0.2);"> <div style="display:flex;align-items:flex-start;gap:1rem;flex-wrap:wrap;"> <div style="flex-shrink:0;width:48px;height:48px;border-radius:12px;background:rgba(16,185,129,0.15);display:flex;align-items:center;justify-content:center;"> <svg width="24" height="24" fill="none" viewBox="0 0 24 24" stroke="#10b981" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"/></svg> </div> <div style="flex:1;min-width:200px;"> <h3 style="font-family:'Outfit',sans-serif;font-weight:800;font-size:1.2rem;color:#fff;margin-bottom:0.25rem;"> 📋 Checklist SEO gratuite — 50 points à vérifier </h3> <p style="color:#9ca3af;line-height:1.6;margin-bottom:1rem;font-size:0.95rem;"> Téléchargez ma checklist SEO complète : technique, contenu, netlinking. Le même outil que j'utilise pour mes clients. </p> <a href="https://kevin-grillot.fr/checklist-seo/" style="display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;background:#10b981;color:#fff;font-weight:700;font-size:0.9rem;text-decoration:none;"> <svg width="16" height="16" fill="currentColor" viewBox="0 0 16 16"><path d="M.5 9.9a.5.5 0 0 1 .5.5v2.5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.5a.5.5 0 0 1 1 0v2.5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.5a.5.5 0 0 1 .5-.5z"/><path d="M7.646 11.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293V1.5a.5.5 0 0 0-1 0v8.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3z"/></svg> Télécharger la checklist </a> </div> </div> </div> <!-- ENCART SERVICES KEVIN GRILLOT --> <div style="margin-top:2rem;padding:2rem;border-radius:16px;background:linear-gradient(135deg,rgba(37,99,235,0.08),rgba(16,185,129,0.08));border:1px solid rgba(37,99,235,0.2);"> <h3 style="font-family:'Outfit',sans-serif;font-weight:800;font-size:1.3rem;color:#fff;margin-bottom:0.5rem;"> Besoin de visibilité pour votre activité ? </h3> <p style="color:#9ca3af;line-height:1.7;margin-bottom:1.5rem;"> Je suis Kevin Grillot, consultant SEO freelance certifié. J'accompagne les TPE et PME en référencement naturel, Google Ads, Meta Ads et création de site internet. </p> <div style="display:flex;flex-wrap:wrap;gap:0.75rem;"> <a href="https://kevin-grillot.fr/seo-geo/" style="display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:8px;background:#2563eb;color:#fff;font-weight:700;font-size:0.9rem;text-decoration:none;">SEO & GEO</a> <a href="https://kevin-grillot.fr/google-ads/" style="display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:8px;background:#f97316;color:#fff;font-weight:700;font-size:0.9rem;text-decoration:none;">Google Ads</a> <a href="https://kevin-grillot.fr/meta-ads/" style="display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:8px;background:#e91e8c;color:#fff;font-weight:700;font-size:0.9rem;text-decoration:none;">Meta Ads</a> <a href="https://kevin-grillot.fr/creation-site/" style="display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:8px;background:#10b981;color:#fff;font-weight:700;font-size:0.9rem;text-decoration:none;">Création de site</a> </div> </div> <!-- TAGS --> <div class="mt-12 pt-8 border-t border-white/5 flex flex-wrap gap-2 items-center"> <span class="text-xs text-gray-600 uppercase tracking-widest font-bold mr-2">Tags :</span> <a href="https://kevin-grillot.fr/pt/tag/dominio-de-javascript-pt/" class="tag-pill">#domínio de javascript</a> <a href="https://kevin-grillot.fr/pt/tag/estrategias-de-ancoragem-pt/" class="tag-pill">#estratégias de ancoragem</a> <a href="https://kevin-grillot.fr/pt/tag/fofocas-seo-pt/" class="tag-pill">#fofocas seo</a> <a href="https://kevin-grillot.fr/pt/tag/otimizacao-http-pt/" class="tag-pill">#otimização http</a> <a href="https://kevin-grillot.fr/pt/tag/otimizacao-https-pt/" class="tag-pill">#otimização https</a> </div> <!-- Signature Auteur --> <div class="mt-16 bg-[#0a0a0a] rounded-xl p-8 flex flex-col md:flex-row items-center gap-8 shadow-2xl border border-white/5 relative overflow-hidden group"> <div class="absolute inset-0 bg-blue-600/5 opacity-0 group-hover:opacity-100 transition-opacity duration-500"></div> <div class="relative z-10 flex-shrink-0"> <div class="w-24 h-24 rounded-full p-1 border-2 border-blue-600 shadow-[0_0_20px_rgba(37,99,235,0.3)]"> <div class="w-full h-full rounded-full overflow-hidden bg-gray-800"> <img width="768" height="1024" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20768%201024'%3E%3C/svg%3E" alt="Kevin Grillot" class="!rounded-full w-full h-full object-cover object-top transform hover:scale-110 transition-transform duration-500" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2022/01/31-min-768x1024.jpg.avif"><noscript><img width="768" height="1024" src="https://kevin-grillot.fr/wp-content/uploads/2022/01/31-min-768x1024.jpg.avif" alt="Kevin Grillot" class="!rounded-full w-full h-full object-cover object-top transform hover:scale-110 transition-transform duration-500"></noscript> </div> </div> </div> <div class="relative z-10 text-center md:text-left"> <p class="text-blue-500 text-xs font-black uppercase tracking-[0.15em] mb-2">Écrit par</p> <h3 class="text-white text-3xl font-bold font-heading leading-tight mb-2">Kevin Grillot</h3> <p class="text-gray-400 text-sm font-medium leading-relaxed mb-4">Consultant Webmarketing & Expert SEO.</p> <a href="https://kevin-grillot.fr/blog" class="inline-flex items-center gap-2 text-xs text-blue-400 hover:text-blue-300 transition-colors font-bold uppercase tracking-widest" style="border-bottom:none;text-decoration:none"> Voir tous les articles → </a> </div> </div> <!-- Lead Magnet — Checklist SEO Local --> <section class="kg-leadmagnet-section" id="kg-leadmagnet" style="--lm-accent:#2563eb;"> <div class="kg-leadmagnet-container"> <div class="kg-leadmagnet-card"> <div class="kg-leadmagnet-glow"></div> <div class="kg-leadmagnet-content"> <div class="kg-leadmagnet-badge"><i class="fas fa-gift"></i> Ressource gratuite</div> <h2 class="kg-leadmagnet-title">Checklist SEO Local gratuite — 15 points à vérifier</h2> <p class="kg-leadmagnet-sub">Téléchargez notre checklist et vérifiez si votre site est optimisé pour Google.</p> <ul class="kg-leadmagnet-points"> <li><i class="fas fa-check-circle"></i> 15 points essentiels pour le SEO local</li> <li><i class="fas fa-check-circle"></i> Format actionnable et imprimable</li> <li><i class="fas fa-check-circle"></i> Utilisé par +200 entrepreneurs</li> </ul> <form class="kg-leadmagnet-form" id="kg-leadmagnet-form" data-ajax="https://kevin-grillot.fr/wp-admin/admin-ajax.php" data-nonce="5a2b5e1251"> <div class="kg-leadmagnet-fields"> <input type="text" name="kg_lm_prenom" placeholder="Votre prénom" required autocomplete="given-name" class="kg-leadmagnet-input"> <input type="email" name="kg_lm_email" placeholder="Votre email" required autocomplete="email" class="kg-leadmagnet-input"> <!-- Honeypot --> <div style="position:absolute;left:-9999px;" aria-hidden="true"> <input type="text" name="kg_lm_website" tabindex="-1" autocomplete="off"> </div> <button type="submit" class="kg-leadmagnet-btn"> <i class="fas fa-download"></i> Télécharger gratuitement </button> </div> <p class="kg-leadmagnet-notice"><i class="fas fa-lock"></i> Vos données restent confidentielles. Aucun spam.</p> </form> <div class="kg-leadmagnet-success" id="kg-leadmagnet-success" style="display:none;"> <div class="kg-leadmagnet-success-icon"><i class="fas fa-check-circle"></i></div> <h3>Merci ! Votre checklist est prête.</h3> <p>Cliquez ci-dessous pour la télécharger :</p> <a href="" class="kg-leadmagnet-download-link" id="kg-leadmagnet-download" target="_blank" rel="noopener"> <i class="fas fa-file-download"></i> Télécharger la Checklist SEO </a> </div> </div> </div> </div> <style> .kg-leadmagnet-section { padding: 4rem 1.5rem; position: relative; } .kg-leadmagnet-container { max-width: 720px; margin: 0 auto; } .kg-leadmagnet-card { position: relative; background: rgba(10,10,20,0.85); border: 1px solid rgba(255,255,255,0.08); border-radius: 1.25rem; padding: 3rem 2.5rem; overflow: hidden; backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); box-shadow: 0 8px 32px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.05); } .kg-leadmagnet-glow { position: absolute; top: -60px; right: -60px; width: 200px; height: 200px; background: var(--lm-accent); opacity: 0.08; border-radius: 50%; filter: blur(80px); pointer-events: none; } .kg-leadmagnet-content { position: relative; z-index: 1; } .kg-leadmagnet-badge { display: inline-flex; align-items: center; gap: 0.4rem; background: rgba(37,99,235,0.1); color: var(--lm-accent); font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; padding: 0.4rem 1rem; border-radius: 999px; margin-bottom: 1.25rem; border: 1px solid rgba(37,99,235,0.2); } .kg-leadmagnet-title { color: #fff; font-size: 1.75rem; font-weight: 800; line-height: 1.2; margin: 0 0 0.75rem; font-family: 'Outfit', sans-serif; } .kg-leadmagnet-sub { color: #9ca3af; font-size: 0.95rem; margin: 0 0 1.5rem; line-height: 1.6; } .kg-leadmagnet-points { list-style: none; padding: 0; margin: 0 0 2rem; display: flex; flex-direction: column; gap: 0.5rem; } .kg-leadmagnet-points li { color: #d1d5db; font-size: 0.85rem; display: flex; align-items: center; gap: 0.6rem; } .kg-leadmagnet-points li i { color: var(--lm-accent); font-size: 0.8rem; } .kg-leadmagnet-fields { display: flex; flex-wrap: wrap; gap: 0.75rem; position: relative; } .kg-leadmagnet-input { flex: 1 1 180px; padding: 0.85rem 1rem; border-radius: 0.6rem; border: 1px solid rgba(255,255,255,0.1); background: rgba(255,255,255,0.04); color: #e5e7eb; font-size: 0.9rem; outline: none; transition: border-color 0.2s; } .kg-leadmagnet-input:focus { border-color: var(--lm-accent); } .kg-leadmagnet-input::placeholder { color: #6b7280; } .kg-leadmagnet-btn { flex: 1 1 100%; padding: 0.9rem 1.5rem; border: none; border-radius: 0.6rem; background: var(--lm-accent); color: #fff; font-size: 0.95rem; font-weight: 700; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; transition: opacity 0.2s, transform 0.2s; } .kg-leadmagnet-btn:hover { opacity: 0.9; transform: translateY(-1px); } .kg-leadmagnet-btn:disabled { opacity: 0.5; cursor: wait; } .kg-leadmagnet-notice { font-size: 0.7rem; color: #4b5563; text-align: center; margin-top: 0.75rem; } .kg-leadmagnet-success { text-align: center; } .kg-leadmagnet-success-icon { font-size: 2.5rem; color: #22c55e; margin-bottom: 1rem; } .kg-leadmagnet-success h3 { color: #fff; font-size: 1.3rem; font-weight: 700; margin: 0 0 0.5rem; } .kg-leadmagnet-success p { color: #9ca3af; font-size: 0.9rem; margin: 0 0 1.5rem; } .kg-leadmagnet-download-link { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.85rem 2rem; border-radius: 0.6rem; background: var(--lm-accent); color: #fff; font-weight: 700; font-size: 0.95rem; text-decoration: none; transition: opacity 0.2s; } .kg-leadmagnet-download-link:hover { opacity: 0.9; color: #fff; } @media(max-width:640px) { .kg-leadmagnet-card { padding: 2rem 1.5rem; } .kg-leadmagnet-title { font-size: 1.35rem; } .kg-leadmagnet-fields { flex-direction: column; } .kg-leadmagnet-input { flex: 1 1 100%; } } </style> </section> <script type="rocketlazyloadscript"> (function(){ var form = document.getElementById('kg-leadmagnet-form'); if(!form) return; form.addEventListener('submit', function(e){ e.preventDefault(); var btn = form.querySelector('.kg-leadmagnet-btn'); btn.disabled = true; btn.innerHTML = '<i class="fas fa-spinner fa-spin"></i> Envoi en cours...'; var fd = new FormData(form); fd.append('action', 'kg_lead_magnet_submit'); fd.append('nonce', form.dataset.nonce); fetch(form.dataset.ajax, { method: 'POST', body: fd }) .then(function(r){ return r.json(); }) .then(function(data){ if(data.success){ form.style.display = 'none'; var successEl = document.getElementById('kg-leadmagnet-success'); successEl.style.display = 'block'; document.getElementById('kg-leadmagnet-download').href = data.data.download_url; sessionStorage.setItem('kg_lm_filled', '1'); } else { btn.disabled = false; btn.innerHTML = '<i class="fas fa-download"></i> T\u00e9l\u00e9charger gratuitement'; alert(data.data || 'Une erreur est survenue.'); } }) .catch(function(){ btn.disabled = false; btn.innerHTML = '<i class="fas fa-download"></i> T\u00e9l\u00e9charger gratuitement'; alert('Erreur r\u00e9seau. Veuillez r\u00e9essayer.'); }); }); })(); </script> </article> <!-- SIDEBAR DROITE — Derniers articles --> <aside class="hidden lg:block lg:col-span-3"> <div class="sticky top-32 flex flex-col gap-4"> <p class="text-[10px] uppercase tracking-widest font-bold text-gray-600 mb-1">Derniers articles</p> <a href="https://kevin-grillot.fr/pt/creation-de-site-pt/pourquoi-votre-site-internet-ne-genere-aucun-contact-et-comment-y-remedier-8/" class="sidebar-post"> <img width="150" height="150" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20150%20150'%3E%3C/svg%3E" class="sidebar-post-thumb wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-150x150.jpg" /><noscript><img width="150" height="150" src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-150x150.jpg" class="sidebar-post-thumb wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" /></noscript> <div class="flex-1 min-w-0"> <p class="text-white text-sm font-semibold leading-snug line-clamp-2 mb-1">Pourquoi votre site internet ne génère aucun contact (et comment y remédier)</p> <p class="text-gray-600 text-xs">04 Abr 2026</p> </div> </a> <a href="https://kevin-grillot.fr/pt/meta-ads-pt/facebook-ads-vs-google-ads-lequel-choisir-pour-votre-entreprise-locale-8/" class="sidebar-post"> <img width="150" height="150" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20150%20150'%3E%3C/svg%3E" class="sidebar-post-thumb wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-150x150.jpg" /><noscript><img width="150" height="150" src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-150x150.jpg" class="sidebar-post-thumb wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" /></noscript> <div class="flex-1 min-w-0"> <p class="text-white text-sm font-semibold leading-snug line-clamp-2 mb-1">Facebook Ads vs Google Ads : lequel choisir pour votre entreprise locale ?</p> <p class="text-gray-600 text-xs">04 Abr 2026</p> </div> </a> <a href="https://kevin-grillot.fr/pt/anuncios-do-google-sea-pt/google-ads-pour-les-pme-guide-complet-pour-ne-pas-gaspiller-son-budget-8/" class="sidebar-post"> <img width="150" height="150" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20150%20150'%3E%3C/svg%3E" class="sidebar-post-thumb wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-150x150.jpg" /><noscript><img width="150" height="150" src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-150x150.jpg" class="sidebar-post-thumb wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" /></noscript> <div class="flex-1 min-w-0"> <p class="text-white text-sm font-semibold leading-snug line-clamp-2 mb-1">Google Ads pour les PME : guide complet pour ne pas gaspiller son budget</p> <p class="text-gray-600 text-xs">04 Abr 2026</p> </div> </a> <a href="https://kevin-grillot.fr/pt/referencia-organica-seo-pt/seo-local-comment-apparaitre-en-1ere-page-google-pour-votre-metier-a-lyon-8/" class="sidebar-post"> <img width="150" height="150" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20150%20150'%3E%3C/svg%3E" class="sidebar-post-thumb wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-150x150.jpg" /><noscript><img width="150" height="150" src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-150x150.jpg" class="sidebar-post-thumb wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" /></noscript> <div class="flex-1 min-w-0"> <p class="text-white text-sm font-semibold leading-snug line-clamp-2 mb-1">SEO local : comment apparaître en 1ère page Google pour votre métier à Lyon ?</p> <p class="text-gray-600 text-xs">04 Abr 2026</p> </div> </a> <a href="https://kevin-grillot.fr/pt/creation-de-site-pt/combien-coute-la-creation-dun-site-internet-pour-artisan-en-2026-8/" class="sidebar-post"> <img width="150" height="150" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20150%20150'%3E%3C/svg%3E" class="sidebar-post-thumb wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-150x150.jpg" /><noscript><img width="150" height="150" src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-150x150.jpg" class="sidebar-post-thumb wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" /></noscript> <div class="flex-1 min-w-0"> <p class="text-white text-sm font-semibold leading-snug line-clamp-2 mb-1">Combien coûte la création d’un site internet pour artisan en 2026 ?</p> <p class="text-gray-600 text-xs">04 Abr 2026</p> </div> </a> <a href="https://kevin-grillot.fr/blog" class="mt-2 text-center text-xs text-blue-500 hover:text-blue-400 font-bold uppercase tracking-widest transition-colors block" style="text-decoration:none;border-bottom:none"> Voir tous les articles → </a> </div> </aside> </div> </div> <!-- ========================================== ARTICLES LIÉS (même catégorie) =========================================== --> <section class="max-w-7xl mx-auto px-6 mt-24 pt-16 border-t border-white/5"> <div class="flex items-center justify-between mb-10"> <div> <p class="text-blue-500 text-xs font-black uppercase tracking-widest mb-1">Continuer sur le même sujet</p> <h2 class="text-white text-3xl font-bold font-heading" style="font-family:'Outfit',sans-serif">Articles liés</h2> </div> <a href="https://kevin-grillot.fr/pt/category/referencia-organica-seo-pt/" class="hidden md:flex items-center gap-2 text-xs text-gray-400 hover:text-blue-400 transition-colors font-bold uppercase tracking-widest" style="text-decoration:none;border-bottom:none"> Voir la catégorie <svg width="12" height="12" viewBox="0 0 448 512" fill="currentColor" aria-hidden="true"><path d="M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z"/></svg> </a> </div> <div class="grid grid-cols-1 md:grid-cols-3 gap-6"> <a href="https://kevin-grillot.fr/pt/referencia-organica-seo-pt/descubra-18-otimas-alternativas-ao-ahrefs-incluindo-3-opcoes-economicas/" class="related-card"> <div style="overflow:hidden"> <img width="768" height="401" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20768%20401'%3E%3C/svg%3E" class="related-card-img wp-post-image" alt="découvrez les meilleures alternatives à ahrefs pour optimiser votre stratégie seo. comparez les outils, leurs fonctionnalités et choisissez celui qui répond le mieux à vos besoins en matière d'analyse de backlinks, de recherche de mots-clés et d'audit de site." decoding="async" data-lazy-srcset="https://kevin-grillot.fr/wp-content/uploads/2025/06/ahrefs-alternatives-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2025/06/ahrefs-alternatives-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2025/06/ahrefs-alternatives-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2025/06/ahrefs-alternatives.jpg 1200w" data-lazy-sizes="(max-width: 768px) 100vw, 768px" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2025/06/ahrefs-alternatives-768x401.jpg" /><noscript><img width="768" height="401" src="https://kevin-grillot.fr/wp-content/uploads/2025/06/ahrefs-alternatives-768x401.jpg" class="related-card-img wp-post-image" alt="découvrez les meilleures alternatives à ahrefs pour optimiser votre stratégie seo. comparez les outils, leurs fonctionnalités et choisissez celui qui répond le mieux à vos besoins en matière d'analyse de backlinks, de recherche de mots-clés et d'audit de site." decoding="async" srcset="https://kevin-grillot.fr/wp-content/uploads/2025/06/ahrefs-alternatives-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2025/06/ahrefs-alternatives-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2025/06/ahrefs-alternatives-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2025/06/ahrefs-alternatives.jpg 1200w" sizes="(max-width: 768px) 100vw, 768px" /></noscript> </div> <div class="p-5 flex flex-col flex-1"> <span class="text-blue-500 text-xs font-bold uppercase tracking-widest mb-2">Referência orgânica (SEO)</span> <h3 class="text-white font-bold text-lg leading-snug mb-3 flex-1" style="font-family:'Outfit',sans-serif">Descubra 18 ótimas alternativas ao Ahrefs, incluindo 3 opções econômicas</h3> <div class="flex items-center justify-between text-gray-500 text-xs mt-auto"> <span>17 Jun 2025</span> <span class="text-blue-500 font-bold">Lire →</span> </div> </div> </a> <a href="https://kevin-grillot.fr/pt/referencia-organica-seo-pt/como-ter-sucesso-em-guest-blogging-para-aumentar-sua-visibilidade/" class="related-card"> <div style="overflow:hidden"> <img width="768" height="401" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20768%20401'%3E%3C/svg%3E" class="related-card-img wp-post-image" alt="découvrez les clés du succès en guest blogging : astuces, stratégies et conseils pour booster votre visibilité et attirer un public qualifié grâce à la publication d'articles invités." decoding="async" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/01/guest-blogging-success.jpg" /><noscript><img width="768" height="401" src="https://kevin-grillot.fr/wp-content/uploads/2026/01/guest-blogging-success.jpg" class="related-card-img wp-post-image" alt="découvrez les clés du succès en guest blogging : astuces, stratégies et conseils pour booster votre visibilité et attirer un public qualifié grâce à la publication d'articles invités." decoding="async" /></noscript> </div> <div class="p-5 flex flex-col flex-1"> <span class="text-blue-500 text-xs font-bold uppercase tracking-widest mb-2">Referência orgânica (SEO)</span> <h3 class="text-white font-bold text-lg leading-snug mb-3 flex-1" style="font-family:'Outfit',sans-serif">Como ter sucesso em guest blogging para aumentar sua visibilidade</h3> <div class="flex items-center justify-between text-gray-500 text-xs mt-auto"> <span>20 Jan 2026</span> <span class="text-blue-500 font-bold">Lire →</span> </div> </div> </a> <a href="https://kevin-grillot.fr/pt/referencia-organica-seo-pt/la-mandrette-a-agencia-inovadora-de-toulouse-que-esta-revolucionando-o-seo-do-comercio-eletronico/" class="related-card"> <div style="overflow:hidden"> <img width="768" height="401" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20768%20401'%3E%3C/svg%3E" class="related-card-img wp-post-image" alt="découvrez le monde de l'e-commerce et transformez votre façon de faire des affaires. explorez des stratégies innovantes pour augmenter vos ventes en ligne, maximiser votre visibilité et offrir une expérience client exceptionnelle. rejoignez la révolution numérique dès aujourd'hui !" decoding="async" data-lazy-srcset="https://kevin-grillot.fr/wp-content/uploads/2025/06/e-commerce-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2025/06/e-commerce-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2025/06/e-commerce-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2025/06/e-commerce.jpg 1200w" data-lazy-sizes="(max-width: 768px) 100vw, 768px" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2025/06/e-commerce-768x401.jpg" /><noscript><img width="768" height="401" src="https://kevin-grillot.fr/wp-content/uploads/2025/06/e-commerce-768x401.jpg" class="related-card-img wp-post-image" alt="découvrez le monde de l'e-commerce et transformez votre façon de faire des affaires. explorez des stratégies innovantes pour augmenter vos ventes en ligne, maximiser votre visibilité et offrir une expérience client exceptionnelle. rejoignez la révolution numérique dès aujourd'hui !" decoding="async" srcset="https://kevin-grillot.fr/wp-content/uploads/2025/06/e-commerce-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2025/06/e-commerce-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2025/06/e-commerce-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2025/06/e-commerce.jpg 1200w" sizes="(max-width: 768px) 100vw, 768px" /></noscript> </div> <div class="p-5 flex flex-col flex-1"> <span class="text-blue-500 text-xs font-bold uppercase tracking-widest mb-2">Referência orgânica (SEO)</span> <h3 class="text-white font-bold text-lg leading-snug mb-3 flex-1" style="font-family:'Outfit',sans-serif">La Mandrette, a agência inovadora de Toulouse que está revolucionando o SEO do comércio eletrônico</h3> <div class="flex items-center justify-between text-gray-500 text-xs mt-auto"> <span>10 Jun 2025</span> <span class="text-blue-500 font-bold">Lire →</span> </div> </div> </a> </div> </section> <!-- ========================================== DERNIERS ARTICLES (4 cartes) =========================================== --> <section class="max-w-7xl mx-auto px-6 mt-20 pt-16 border-t border-white/5"> <div class="flex items-center justify-between mb-10"> <div> <p class="text-gray-500 text-xs font-black uppercase tracking-widest mb-1">Ne manquez rien</p> <h2 class="text-white text-3xl font-bold font-heading" style="font-family:'Outfit',sans-serif">Derniers articles</h2> </div> <a href="https://kevin-grillot.fr/blog" class="hidden md:flex items-center gap-2 text-xs text-gray-400 hover:text-blue-400 transition-colors font-bold uppercase tracking-widest" style="text-decoration:none;border-bottom:none"> Tout voir <svg width="12" height="12" viewBox="0 0 448 512" fill="currentColor" aria-hidden="true"><path d="M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z"/></svg> </a> </div> <div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-5"> <a href="https://kevin-grillot.fr/pt/creation-de-site-pt/pourquoi-votre-site-internet-ne-genere-aucun-contact-et-comment-y-remedier-8/" class="related-card"> <div style="overflow:hidden"> <img width="300" height="157" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20300%20157'%3E%3C/svg%3E" class="related-card-img wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" data-lazy-srcset="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1.jpg 1200w" data-lazy-sizes="(max-width: 300px) 100vw, 300px" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg" /><noscript><img width="300" height="157" src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg" class="related-card-img wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" srcset="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1.jpg 1200w" sizes="(max-width: 300px) 100vw, 300px" /></noscript> </div> <div class="p-4 flex flex-col flex-1"> <span class="text-blue-500 text-xs font-bold uppercase tracking-widest mb-2">Création de site</span> <h3 class="text-white font-bold text-base leading-snug mb-3 flex-1" style="font-family:'Outfit',sans-serif">Pourquoi votre site internet ne génère aucun contact (et comment y remédier)</h3> <p class="text-gray-500 text-xs">04 Abr 2026</p> </div> </a> <a href="https://kevin-grillot.fr/pt/meta-ads-pt/facebook-ads-vs-google-ads-lequel-choisir-pour-votre-entreprise-locale-8/" class="related-card"> <div style="overflow:hidden"> <img width="300" height="157" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20300%20157'%3E%3C/svg%3E" class="related-card-img wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" data-lazy-srcset="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1.jpg 1200w" data-lazy-sizes="(max-width: 300px) 100vw, 300px" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg" /><noscript><img width="300" height="157" src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg" class="related-card-img wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" srcset="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1.jpg 1200w" sizes="(max-width: 300px) 100vw, 300px" /></noscript> </div> <div class="p-4 flex flex-col flex-1"> <span class="text-blue-500 text-xs font-bold uppercase tracking-widest mb-2">Meta Ads</span> <h3 class="text-white font-bold text-base leading-snug mb-3 flex-1" style="font-family:'Outfit',sans-serif">Facebook Ads vs Google Ads : lequel choisir pour votre entreprise locale ?</h3> <p class="text-gray-500 text-xs">04 Abr 2026</p> </div> </a> <a href="https://kevin-grillot.fr/pt/anuncios-do-google-sea-pt/google-ads-pour-les-pme-guide-complet-pour-ne-pas-gaspiller-son-budget-8/" class="related-card"> <div style="overflow:hidden"> <img width="300" height="157" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20300%20157'%3E%3C/svg%3E" class="related-card-img wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" data-lazy-srcset="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1.jpg 1200w" data-lazy-sizes="(max-width: 300px) 100vw, 300px" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg" /><noscript><img width="300" height="157" src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg" class="related-card-img wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" srcset="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1.jpg 1200w" sizes="(max-width: 300px) 100vw, 300px" /></noscript> </div> <div class="p-4 flex flex-col flex-1"> <span class="text-blue-500 text-xs font-bold uppercase tracking-widest mb-2">Anúncios do Google (SEA)</span> <h3 class="text-white font-bold text-base leading-snug mb-3 flex-1" style="font-family:'Outfit',sans-serif">Google Ads pour les PME : guide complet pour ne pas gaspiller son budget</h3> <p class="text-gray-500 text-xs">04 Abr 2026</p> </div> </a> <a href="https://kevin-grillot.fr/pt/referencia-organica-seo-pt/seo-local-comment-apparaitre-en-1ere-page-google-pour-votre-metier-a-lyon-8/" class="related-card"> <div style="overflow:hidden"> <img width="300" height="157" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20300%20157'%3E%3C/svg%3E" class="related-card-img wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" data-lazy-srcset="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1.jpg 1200w" data-lazy-sizes="(max-width: 300px) 100vw, 300px" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg" /><noscript><img width="300" height="157" src="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg" class="related-card-img wp-post-image" alt="découvrez comment utiliser l'outil disavow pour désavouer les liens nuisibles et protéger le référencement de votre site web." decoding="async" srcset="https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-300x157.jpg 300w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-1024x535.jpg 1024w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1-768x401.jpg 768w, https://kevin-grillot.fr/wp-content/uploads/2026/03/disavow-1.jpg 1200w" sizes="(max-width: 300px) 100vw, 300px" /></noscript> </div> <div class="p-4 flex flex-col flex-1"> <span class="text-blue-500 text-xs font-bold uppercase tracking-widest mb-2">Referência orgânica (SEO)</span> <h3 class="text-white font-bold text-base leading-snug mb-3 flex-1" style="font-family:'Outfit',sans-serif">SEO local : comment apparaître en 1ère page Google pour votre métier à Lyon ?</h3> <p class="text-gray-500 text-xs">04 Abr 2026</p> </div> </a> </div> <!-- Bouton mobile "Voir tous" --> <div class="mt-8 text-center md:hidden"> <a href="https://kevin-grillot.fr/blog" class="inline-flex items-center gap-2 px-6 py-3 border border-white/10 rounded-full text-sm text-gray-300 hover:border-blue-500 hover:text-blue-400 transition-all font-medium" style="text-decoration:none;border-bottom:none"> Voir tous les articles </a> </div> </section> <!-- ========================================== NAVIGATION PRÉCÉDENT / SUIVANT =========================================== --> <div class="max-w-7xl mx-auto px-6 mt-20 border-t border-white/10 pt-16"> <h3 class="text-center text-gray-500 text-xs uppercase tracking-widest mb-10">Continuer la lecture</h3> <div class="grid grid-cols-1 md:grid-cols-2 gap-6"> <a href="https://kevin-grillot.fr/pt/monitorando-pt/o-que-e-teste-a-b-e-como-voce-pode-usa-lo-para-melhorar-seus-resultados/" class="nav-card p-8 rounded-2xl block group text-left" style="text-decoration:none;border-bottom:none"> <span class="text-xs text-gray-500 font-bold uppercase tracking-widest mb-3 block group-hover:text-blue-500 transition-colors">← Article précédent</span> <h4 class="text-xl font-bold text-white font-heading leading-snug group-hover:text-blue-400 transition-colors" style="font-family:'Outfit',sans-serif"> O que é teste A/B e como você pode usá-lo para melhorar seus resultados? </h4> </a> <a href="https://kevin-grillot.fr/pt/referencia-organica-seo-pt/otimizacao-para-mecanismos-de-busca-e-ia-generativa-o-desafio-e-as-regras-de-uma-corrida-frenetica/" class="nav-card p-8 rounded-2xl block group text-right" style="text-decoration:none;border-bottom:none"> <span class="text-xs text-gray-500 font-bold uppercase tracking-widest mb-3 block group-hover:text-blue-500 transition-colors">Article suivant →</span> <h4 class="text-xl font-bold text-white font-heading leading-snug group-hover:text-blue-400 transition-colors" style="font-family:'Outfit',sans-serif"> Otimização para mecanismos de busca e IA generativa: o desafio e as regras de uma corrida frenética </h4> </a> </div> </div> </main> <!-- ========================================== BARRE FLOTTANTE "LIRE ENSUITE" Apparaît à 70% de lecture =========================================== --> <div id="read-next-bar" aria-label="Lire l'article suivant" role="complementary"> <div class="max-w-4xl mx-auto px-4 py-3 flex items-center gap-4"> <!-- Miniature --> <img width="1200" height="627" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%20627'%3E%3C/svg%3E" alt="" class="read-next-thumb" style="width:48px;height:48px;object-fit:cover;border-radius:6px;flex-shrink:0" data-lazy-src="https://kevin-grillot.fr/wp-content/uploads/2026/02/seo-and-generative-ai.jpg"><noscript><img width="1200" height="627" src="https://kevin-grillot.fr/wp-content/uploads/2026/02/seo-and-generative-ai.jpg" alt="" class="read-next-thumb" style="width:48px;height:48px;object-fit:cover;border-radius:6px;flex-shrink:0"></noscript> <!-- Texte --> <div class="flex-1 min-w-0"> <p class="text-gray-500 text-xs font-bold uppercase tracking-widest mb-0.5">Article suivant</p> <p class="text-white text-sm font-semibold truncate">Otimização para mecanismos de busca e IA generativa: o desafio e as regras de uma corrida frenética</p> </div> <!-- CTA --> <a href="https://kevin-grillot.fr/pt/referencia-organica-seo-pt/otimizacao-para-mecanismos-de-busca-e-ia-generativa-o-desafio-e-as-regras-de-uma-corrida-frenetica/" class="flex-shrink-0 bg-blue-600 hover:bg-blue-500 text-white text-xs font-bold uppercase tracking-widest px-5 py-2.5 rounded-full transition-colors" style="text-decoration:none;border-bottom:none;white-space:nowrap"> Lire → </a> <!-- Fermer --> <button id="close-next-bar" aria-label="Fermer" class="flex-shrink-0 w-8 h-8 rounded-full bg-white/5 hover:bg-white/10 flex items-center justify-center transition-colors"> <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg> </button> </div> </div> <!-- SCRIPTS --> <script type="rocketlazyloadscript"> (function() { // ---- 1. BARRE DE PROGRESSION ---- var progressBar = document.getElementById('reading-progress'); window.addEventListener('scroll', function() { var scrollTop = document.documentElement.scrollTop || document.body.scrollTop; var scrollHeight = document.documentElement.scrollHeight - document.documentElement.clientHeight; if (progressBar && scrollHeight > 0) { progressBar.style.width = (scrollTop / scrollHeight * 100) + '%'; } }, { passive: true }); // ---- 2. TABLE DES MATIÈRES ---- var tocSidebar = document.getElementById('toc-sidebar'); var sidebarLeft = document.getElementById('sidebar-left'); var fixedLeft = null; var fixedWidth = null; var STICKY_TOP = 110; // px — sous la nav // Enregistre les coordonnées de la sidebar pour le mode fixed function recordSidebarPos() { if (!sidebarLeft) return; var rect = sidebarLeft.getBoundingClientRect(); fixedLeft = Math.round(rect.left + window.scrollX); fixedWidth = Math.round(rect.width); } // Bascule sticky → fixed quand le grid se termine (pour rester "toujours visible") function updateSidebarMode() { if (!tocSidebar || !sidebarLeft || window.innerWidth < 1024) { if (tocSidebar) tocSidebar.style.cssText = ''; return; } if (fixedLeft === null) recordSidebarPos(); var asideRect = sidebarLeft.getBoundingClientRect(); if (asideRect.top > STICKY_TOP) { // Au-dessus du contenu : laisser le sticky CSS gérer tocSidebar.style.cssText = ''; } else if (asideRect.bottom < STICKY_TOP + tocSidebar.offsetHeight + 20) { // Fin du grid : passer en fixed pour rester visible tocSidebar.style.position = 'fixed'; tocSidebar.style.top = STICKY_TOP + 'px'; tocSidebar.style.left = fixedLeft + 'px'; tocSidebar.style.width = fixedWidth + 'px'; tocSidebar.style.maxHeight = 'calc(100vh - 130px)'; tocSidebar.style.overflowY = 'auto'; } else { // Dans la zone de lecture : sticky normal tocSidebar.style.cssText = ''; } } window.addEventListener('resize', function() { recordSidebarPos(); updateSidebarMode(); }, { passive: true }); window.addEventListener('scroll', updateSidebarMode, { passive: true }); function buildTOC() { var headings = document.querySelectorAll('.article-body h2, .article-body h3'); if (!headings.length) { var emptyMsg = document.getElementById('toc-empty-msg'); if (emptyMsg) emptyMsg.style.display = ''; return; } var tocList = document.getElementById('toc-list'); var tocMobileList = document.getElementById('toc-mobile-list'); if (!tocList && !tocMobileList) return; var items = []; headings.forEach(function(h, idx) { if (!h.id) { h.id = 'h-' + idx + '-' + h.textContent.trim().toLowerCase() .replace(/[^\w\s-]/g, '').replace(/\s+/g, '-').substring(0, 40); } items.push({ id: h.id, text: h.textContent.trim(), level: h.tagName }); }); function buildList(listEl, isMobile) { if (!listEl) return; items.forEach(function(item) { var li = document.createElement('li'); if (item.level === 'H3' && isMobile) li.className = 'toc-h3-item'; var a = document.createElement('a'); a.href = '#' + item.id; a.textContent = item.text; if (item.level === 'H3' && !isMobile) a.classList.add('toc-h3'); a.addEventListener('click', function(e) { e.preventDefault(); var target = document.getElementById(item.id); if (target) { window.scrollTo({ top: target.getBoundingClientRect().top + window.pageYOffset - 100, behavior: 'smooth' }); } }); li.appendChild(a); listEl.appendChild(li); }); } buildList(tocList, false); buildList(tocMobileList, true); // Surlignage dynamique du titre courant var tocLinks = tocList ? tocList.querySelectorAll('a') : []; window.addEventListener('scroll', function() { var scrollPos = window.pageYOffset + 130; var current = ''; items.forEach(function(item) { var el = document.getElementById(item.id); if (el && el.offsetTop <= scrollPos) current = item.id; }); tocLinks.forEach(function(link) { link.classList.toggle('toc-active', link.getAttribute('href') === '#' + current); }); }, { passive: true }); } // ---- 3. TOC MOBILE TOGGLE ---- var tocToggle = document.getElementById('toc-toggle'); var tocContent = document.getElementById('toc-mobile-content'); var tocChevron = document.getElementById('toc-chevron'); if (tocToggle && tocContent) { tocToggle.addEventListener('click', function() { var isOpen = tocContent.classList.toggle('open'); tocChevron.style.transform = isOpen ? 'rotate(180deg)' : 'rotate(0)'; }); } // ---- 4. BARRE FLOTTANTE "LIRE ENSUITE" ---- var bar = document.getElementById('read-next-bar'); var closeBtn = document.getElementById('close-next-bar'); var barShown = false; var barDismissed = false; if (bar) { window.addEventListener('scroll', function() { if (barDismissed) return; var scrollTop = document.documentElement.scrollTop || document.body.scrollTop; var scrollHeight = document.documentElement.scrollHeight - document.documentElement.clientHeight; var pct = scrollHeight > 0 ? (scrollTop / scrollHeight * 100) : 0; if (pct > 70 && !barShown) { bar.classList.add('bar-visible'); barShown = true; } else if (pct <= 60 && barShown) { bar.classList.remove('bar-visible'); barShown = false; } }, { passive: true }); if (closeBtn) { closeBtn.addEventListener('click', function() { bar.classList.remove('bar-visible'); bar.classList.add('bar-dismissed'); barDismissed = true; }); } } // ---- INIT ---- if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', function() { recordSidebarPos(); buildTOC(); }); } else { recordSidebarPos(); buildTOC(); } // Recalcul après images chargées (layout peut changer) window.addEventListener('load', function() { recordSidebarPos(); updateSidebarMode(); }); })(); </script> <!-- DÉBUT DU FOOTER PERSONNALISÉ --> <style> /* Styles spécifiques au footer (isolés pour ne pas casser le reste) */ .custom-footer { font-family: 'Inter', sans-serif; background-color: #000000; color: white; position: relative; overflow: hidden; width: 100%; margin-top: auto; /* Pousse le footer en bas si la page est courte */ } .font-heading { font-family: 'Outfit', sans-serif; } /* Couleurs */ .text-brand-blue { color: #0055ff; } .bg-brand-blue { background-color: #0055ff; } /* Liens Footer */ .footer-link { position: relative; color: #9ca3af; /* gray-400 */ text-decoration: none; transition: all 0.3s ease; display: inline-flex; align-items: center; gap: 0.5rem; margin-bottom: 0.5rem; } .footer-link:hover { color: #ffffff; transform: translateX(5px); } .footer-link::before { content: ''; width: 0; height: 1px; background-color: #0055ff; transition: width 0.3s ease; } .footer-link:hover::before { width: 10px; } /* Cartes - voir hover amélioré ci-dessous */ /* Icones */ .icon-circle { width: 3rem; height: 3rem; border-radius: 50%; background-color: rgba(0, 85, 255, 0.1); display: flex; align-items: center; justify-content: center; color: #0055ff; font-size: 1.25rem; transition: all 0.3s ease; margin-bottom: 1rem; } .footer-card:hover .icon-circle { background-color: #0055ff; color: white; box-shadow: 0 0 20px rgba(0, 85, 255, 0.4); } /* Compétences */ .footer-skill { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-radius: 10px; font-size: 0.85rem; font-weight: 700; background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.06); color: var(--sk-color, #9ca3af); text-decoration: none; transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); } .footer-skill:hover { background: color-mix(in srgb, var(--sk-color) 12%, transparent); border-color: color-mix(in srgb, var(--sk-color) 40%, transparent); color: var(--sk-color); transform: translateX(6px); box-shadow: 0 0 20px color-mix(in srgb, var(--sk-color) 15%, transparent); } .footer-skill i { width: 1.2em; text-align: center; } /* Hover animation cartes footer */ .footer-card { padding: 1.5rem; border-radius: 1rem; border: 1px solid rgba(255, 255, 255, 0.03); background: linear-gradient(145deg, rgba(255,255,255,0.02) 0%, rgba(255,255,255,0) 100%); transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); } .footer-card:hover { border-color: rgba(0, 85, 255, 0.25); background: linear-gradient(145deg, rgba(255,255,255,0.04) 0%, rgba(0,85,255,0.03) 100%); transform: translateY(-4px); box-shadow: 0 12px 40px rgba(0, 85, 255, 0.08), 0 0 0 1px rgba(0, 85, 255, 0.1); } /* Bouton */ .btn-glow { background: linear-gradient(90deg, #0055ff, #0044cc); color: white; padding: 12px 24px; border-radius: 8px; font-weight: bold; text-transform: uppercase; font-size: 0.8rem; letter-spacing: 0.05em; transition: all 0.3s ease; box-shadow: 0 0 15px rgba(0, 85, 255, 0.2); display: inline-flex; align-items: center; gap: 8px; } .btn-glow:hover { box-shadow: 0 0 25px rgba(0, 85, 255, 0.5); transform: translateY(-2px); color: white; } </style> <footer class="custom-footer pt-24 pb-8 border-t border-white/5"> <!-- Lumières d'ambiance (Background) --> <div class="absolute top-0 right-0 w-[500px] h-[500px] bg-blue-600/5 rounded-full blur-[120px] -z-10 pointer-events-none"></div> <div class="absolute bottom-0 left-0 w-[400px] h-[400px] bg-blue-900/5 rounded-full blur-[100px] -z-10 pointer-events-none"></div> <div class="max-w-[1400px] mx-auto px-6"> <!-- En-tête du Footer (CTA) --> <div class="mb-16 md:flex justify-between items-end border-b border-white/5 pb-10"> <div> <h2 class="font-heading text-3xl md:text-5xl font-black uppercase tracking-tight mb-2 text-white"> Prêt à <span class="text-transparent bg-clip-text bg-gradient-to-r from-blue-500 to-white">décoller ?</span> </h2> <p class="text-gray-400 max-w-md">Transformons votre présence digitale en véritable levier de croissance.</p> </div> <div class="mt-6 md:mt-0"> <a href="https://kevin-grillot.fr/me-contacter/" class="btn-glow"> Démarrer un projet <i class="fas fa-arrow-right"></i> </a> </div> </div> <!-- Grid Principale (5 Colonnes) --> <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-5 gap-6 lg:gap-8 mb-20"> <!-- 1. CONTACT --> <div class="footer-card"> <div class="icon-circle"><i class="fas fa-envelope"></i></div> <h3 class="font-heading font-bold text-lg uppercase tracking-wider mb-6 text-white">Contact</h3> <div class="space-y-4"> <a href="mailto:grillotkevin@gmail.com" class="flex items-center gap-3 group text-gray-400 hover:text-white transition-colors"> <span class="w-8 h-8 rounded bg-white/5 flex items-center justify-center text-blue-500 group-hover:bg-brand-blue group-hover:text-white transition-all"><i class="fas fa-at text-xs"></i></span> <span class="text-sm font-medium">grillotkevin@gmail.com</span> </a> <a href="tel:0667570018" class="flex items-center gap-3 group text-gray-400 hover:text-white transition-colors"> <span class="w-8 h-8 rounded bg-white/5 flex items-center justify-center text-blue-500 group-hover:bg-brand-blue group-hover:text-white transition-all"><i class="fas fa-phone text-xs"></i></span> <span class="text-sm font-medium">06 67 57 00 18</span> </a> <a href="https://wa.me/33667570018?text=Bonjour%20Kevin%2C%20je%20souhaite%20un%20devis%20pour%20mon%20projet." target="_blank" rel="noopener" class="flex items-center gap-3 group text-gray-400 hover:text-white transition-colors"> <span class="w-8 h-8 rounded bg-white/5 flex items-center justify-center text-green-500 group-hover:bg-green-600 group-hover:text-white transition-all"><i class="fab fa-whatsapp text-xs"></i></span> <span class="text-sm font-medium">WhatsApp direct</span> </a> </div> </div> <!-- 2. NAVIGATION --> <div class="footer-card"> <div class="icon-circle"><i class="fas fa-compass"></i></div> <h3 class="font-heading font-bold text-lg uppercase tracking-wider mb-6 text-white">Navigation</h3> <nav class="flex flex-col space-y-2 text-sm font-medium"> <a href="https://kevin-grillot.fr/mes-experiences/" class="footer-link">Mes Expériences</a> <a href="https://kevin-grillot.fr/mes-formations/" class="footer-link">Mes Formations</a> <a href="https://kevin-grillot.fr/mes-etudes/" class="footer-link">Mes Études</a> <a href="https://kevin-grillot.fr/a-propos/" class="footer-link">À Propos</a> <a href="https://kevin-grillot.fr/blog/" class="footer-link">Le Blog</a> <a href="https://kevin-grillot.fr/creation-site-internet/" class="footer-link">Création Site Web</a> </nav> </div> <!-- 3. RÉSEAUX --> <div class="footer-card"> <div class="icon-circle"><i class="fas fa-share-alt"></i></div> <h3 class="font-heading font-bold text-lg uppercase tracking-wider mb-6 text-white">Réseaux</h3> <p class="text-gray-400 text-sm mb-6">Suivez mon actualité et mes conseils quotidiens.</p> <div class="flex gap-4"> <a href="https://www.linkedin.com/in/kevin-grillot-036652159/" target="_blank" class="w-12 h-12 rounded-lg bg-white/5 flex items-center justify-center text-white hover:bg-[#0077b5] hover:scale-110 transition-all duration-300 shadow-lg"> <i class="fab fa-linkedin-in text-xl"></i> </a> <a href="https://www.instagram.com/kevingr04/" target="_blank" class="w-12 h-12 rounded-lg bg-white/5 flex items-center justify-center text-white hover:bg-gradient-to-tr hover:from-yellow-400 hover:via-red-500 hover:to-purple-500 hover:scale-110 transition-all duration-300 shadow-lg"> <i class="fab fa-instagram text-xl"></i> </a> </div> </div> <!-- 3b. COMPÉTENCES --> <div class="footer-card"> <div class="icon-circle"><i class="fas fa-rocket"></i></div> <h3 class="font-heading font-bold text-lg uppercase tracking-wider mb-6 text-white">Compétences</h3> <div class="space-y-3"> <a href="https://kevin-grillot.fr/seo-geo/" class="footer-skill" style="--sk-color:#2563eb;"> <i class="fas fa-search"></i> SEO & GEO </a> <a href="https://kevin-grillot.fr/google-ads/" class="footer-skill" style="--sk-color:#f97316;"> <i class="fab fa-google"></i> Google Ads </a> <a href="https://kevin-grillot.fr/meta-ads/" class="footer-skill" style="--sk-color:#e91e8c;"> <i class="fab fa-meta"></i> Meta Ads </a> <a href="https://kevin-grillot.fr/creation-site/" class="footer-skill" style="--sk-color:#10b981;"> <i class="fas fa-code"></i> Création de site </a> </div> </div> <!-- 4. EXPERTISE (Liste Enrichie) --> <div class="footer-card"> <div class="icon-circle"><i class="fas fa-certificate"></i></div> <h3 class="font-heading font-bold text-lg uppercase tracking-wider mb-6 text-white">Expertise</h3> <div class="space-y-3 mb-6"> <!-- SEMrush --> <div class="flex items-center gap-3 p-2 rounded bg-white/5 border border-white/5 hover:border-orange-500/30 transition-colors"> <i class="fas fa-fire text-orange-500 text-lg"></i> <span class="font-bold text-sm text-gray-200">SEMrush</span> </div> <!-- Google Looker Studio --> <div class="flex items-center gap-3 p-2 rounded bg-white/5 border border-white/5 hover:border-blue-400/30 transition-colors"> <i class="fas fa-chart-area text-blue-400 text-lg"></i> <span class="font-bold text-sm text-gray-200">Looker Studio</span> </div> <!-- Meta Ads --> <div class="flex items-center gap-3 p-2 rounded bg-white/5 border border-white/5 hover:border-blue-600/30 transition-colors"> <i class="fab fa-meta text-blue-600 text-lg"></i> <span class="font-bold text-sm text-gray-200">Meta Ads</span> </div> <!-- Google Ads --> <div class="flex items-center gap-3 p-2 rounded bg-white/5 border border-white/5 hover:border-blue-500/30 transition-colors"> <i class="fab fa-google text-blue-500 text-lg"></i> <span class="font-bold text-sm text-gray-200">Google Ads</span> </div> </div> <a href="https://kevin-grillot.fr/mes-cerfications" class="text-xs font-bold text-blue-500 hover:text-white uppercase tracking-widest transition-colors flex items-center gap-2 group justify-center"> Toutes les certifs <i class="fas fa-long-arrow-alt-right transform group-hover:translate-x-1 transition-transform"></i> </a> </div> </div> <!-- Copyright & Mentions --> <div class="border-t border-white/5 pt-8 flex flex-col md:flex-row justify-between items-center text-xs text-gray-600 font-medium"> <p> © <span id="current-year"></span> <span class="text-white font-bold">KEVIN GRILLOT</span>. Tous droits réservés. </p> <div class="mt-4 md:mt-0 flex flex-wrap justify-center gap-6"> <span class="hidden md:inline text-white/10">|</span> <a href="https://kevin-grillot.fr/mentions-legales" class="hover:text-blue-500 transition-colors">Mentions Légales</a> <a href="https://kevin-grillot.fr/cv-foot/" class="hover:text-blue-500 transition-colors">CV Foot</a> <span class="text-gray-700">Dev with 💙 by Me</span> </div> </div> </div> </footer> <script type="rocketlazyloadscript"> // Mise à jour auto de l'année document.getElementById('current-year').textContent = new Date().getFullYear(); </script> <!-- FIN DU FOOTER PERSONNALISÉ --> <!-- BOUTON WHATSAPP FLOTTANT --> <style> .whatsapp-float { position: fixed; bottom: 28px; right: 28px; z-index: 9999; display: flex; align-items: center; gap: 10px; background: #25D366; color: white; padding: 12px 20px 12px 16px; border-radius: 50px; font-weight: 700; font-size: 14px; text-decoration: none; box-shadow: 0 4px 20px rgba(37, 211, 102, 0.45); transition: all 0.3s ease; font-family: 'Inter', sans-serif; } .whatsapp-float:hover { background: #1ebe5d; transform: translateY(-3px); box-shadow: 0 8px 30px rgba(37, 211, 102, 0.55); color: white; } .whatsapp-float i { font-size: 22px; } @media (max-width: 640px) { .whatsapp-float span { display: none; } .whatsapp-float { padding: 14px; border-radius: 50%; } } </style> <a href="https://wa.me/33667570018?text=Bonjour%20Kevin%2C%20je%20souhaite%20un%20devis%20pour%20mon%20projet." class="whatsapp-float" target="_blank" rel="noopener" title="Contacter Kevin Grillot sur WhatsApp"> <i class="fab fa-whatsapp"></i> <span>Devis rapide</span> </a> <!-- FIN BOUTON WHATSAPP FLOTTANT --> <script type="speculationrules"> {"prefetch":[{"source":"document","where":{"and":[{"href_matches":"\/*"},{"not":{"href_matches":["\/wp-*.php","\/wp-admin\/*","\/wp-content\/uploads\/*","\/wp-content\/*","\/wp-content\/plugins\/*","\/wp-content\/themes\/kevin-grillot\/*","\/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} </script> <script id="rocket-browser-checker-js-after"> "use strict";var _createClass=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||!1,descriptor.configurable=!0,"value"in descriptor&&(descriptor.writable=!0),Object.defineProperty(target,descriptor.key,descriptor)}}return function(Constructor,protoProps,staticProps){return protoProps&&defineProperties(Constructor.prototype,protoProps),staticProps&&defineProperties(Constructor,staticProps),Constructor}}();function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")}var RocketBrowserCompatibilityChecker=function(){function RocketBrowserCompatibilityChecker(options){_classCallCheck(this,RocketBrowserCompatibilityChecker),this.passiveSupported=!1,this._checkPassiveOption(this),this.options=!!this.passiveSupported&&options}return _createClass(RocketBrowserCompatibilityChecker,[{key:"_checkPassiveOption",value:function(self){try{var options={get passive(){return!(self.passiveSupported=!0)}};window.addEventListener("test",null,options),window.removeEventListener("test",null,options)}catch(err){self.passiveSupported=!1}}},{key:"initRequestIdleCallback",value:function(){!1 in window&&(window.requestIdleCallback=function(cb){var start=Date.now();return setTimeout(function(){cb({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-start))}})},1)}),!1 in window&&(window.cancelIdleCallback=function(id){return clearTimeout(id)})}},{key:"isDataSaverModeOn",value:function(){return"connection"in navigator&&!0===navigator.connection.saveData}},{key:"supportsLinkPrefetch",value:function(){var elem=document.createElement("link");return elem.relList&&elem.relList.supports&&elem.relList.supports("prefetch")&&window.IntersectionObserver&&"isIntersecting"in IntersectionObserverEntry.prototype}},{key:"isSlowConnection",value:function(){return"connection"in navigator&&"effectiveType"in navigator.connection&&("2g"===navigator.connection.effectiveType||"slow-2g"===navigator.connection.effectiveType)}}]),RocketBrowserCompatibilityChecker}(); </script> <script id="rocket-preload-links-js-extra"> var RocketPreloadLinksConfig = {"excludeUris":"\/(?:.+\/)?feed(?:\/(?:.+\/?)?)?$|\/(?:.+\/)?embed\/|\/(index\\.php\/)?wp\\-json(\/.*|$)|\/logkevgriin\/|\/wp-admin\/|\/logout\/|\/logkevgriin\/|\/refer\/|\/go\/|\/recommend\/|\/recommends\/","usesTrailingSlash":"1","imageExt":"jpg|jpeg|gif|png|tiff|bmp|webp|avif|pdf|doc|docx|xls|xlsx|php","fileExt":"jpg|jpeg|gif|png|tiff|bmp|webp|avif|pdf|doc|docx|xls|xlsx|php|html|htm","siteUrl":"https:\/\/kevin-grillot.fr","onHoverDelay":"100","rateThrottle":"3"}; </script> <script id="rocket-preload-links-js-after"> (function() { "use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e=function(){function i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),e}}();function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var t=function(){function n(e,t){i(this,n),this.browser=e,this.config=t,this.options=this.browser.options,this.prefetched=new Set,this.eventTime=null,this.threshold=1111,this.numOnHover=0}return e(n,[{key:"init",value:function(){!this.browser.supportsLinkPrefetch()||this.browser.isDataSaverModeOn()||this.browser.isSlowConnection()||(this.regex={excludeUris:RegExp(this.config.excludeUris,"i"),images:RegExp(".("+this.config.imageExt+")$","i"),fileExt:RegExp(".("+this.config.fileExt+")$","i")},this._initListeners(this))}},{key:"_initListeners",value:function(e){-1<this.config.onHoverDelay&&document.addEventListener("mouseover",e.listener.bind(e),e.listenerOptions),document.addEventListener("mousedown",e.listener.bind(e),e.listenerOptions),document.addEventListener("touchstart",e.listener.bind(e),e.listenerOptions)}},{key:"listener",value:function(e){var t=e.target.closest("a"),n=this._prepareUrl(t);if(null!==n)switch(e.type){case"mousedown":case"touchstart":this._addPrefetchLink(n);break;case"mouseover":this._earlyPrefetch(t,n,"mouseout")}}},{key:"_earlyPrefetch",value:function(t,e,n){var i=this,r=setTimeout(function(){if(r=null,0===i.numOnHover)setTimeout(function(){return i.numOnHover=0},1e3);else if(i.numOnHover>i.config.rateThrottle)return;i.numOnHover++,i._addPrefetchLink(e)},this.config.onHoverDelay);t.addEventListener(n,function e(){t.removeEventListener(n,e,{passive:!0}),null!==r&&(clearTimeout(r),r=null)},{passive:!0})}},{key:"_addPrefetchLink",value:function(i){return this.prefetched.add(i.href),new Promise(function(e,t){var n=document.createElement("link");n.rel="prefetch",n.href=i.href,n.onload=e,n.onerror=t,document.head.appendChild(n)}).catch(function(){})}},{key:"_prepareUrl",value:function(e){if(null===e||"object"!==(void 0===e?"undefined":r(e))||!1 in e||-1===["http:","https:"].indexOf(e.protocol))return null;var t=e.href.substring(0,this.config.siteUrl.length),n=this._getPathname(e.href,t),i={original:e.href,protocol:e.protocol,origin:t,pathname:n,href:t+n};return this._isLinkOk(i)?i:null}},{key:"_getPathname",value:function(e,t){var n=t?e.substring(this.config.siteUrl.length):e;return n.startsWith("/")||(n="/"+n),this._shouldAddTrailingSlash(n)?n+"/":n}},{key:"_shouldAddTrailingSlash",value:function(e){return this.config.usesTrailingSlash&&!e.endsWith("/")&&!this.regex.fileExt.test(e)}},{key:"_isLinkOk",value:function(e){return null!==e&&"object"===(void 0===e?"undefined":r(e))&&(!this.prefetched.has(e.href)&&e.origin===this.config.siteUrl&&-1===e.href.indexOf("?")&&-1===e.href.indexOf("#")&&!this.regex.excludeUris.test(e.href)&&!this.regex.images.test(e.href))}}],[{key:"run",value:function(){"undefined"!=typeof RocketPreloadLinksConfig&&new n(new RocketBrowserCompatibilityChecker({capture:!0,passive:!0}),RocketPreloadLinksConfig).init()}}]),n}();t.run(); }()); </script> <script type="rocketlazyloadscript"> (function() { var expirationDate = new Date(); expirationDate.setTime( expirationDate.getTime() + 31536000 * 1000 ); document.cookie = "pll_language=pt; expires=" + expirationDate.toUTCString() + "; path=/; secure; SameSite=Lax"; }()); </script> <!-- Exit-Intent Popup --> <div id="kg-exit-popup" class="kg-exit-overlay" style="display:none;"> <div class="kg-exit-backdrop"></div> <div class="kg-exit-card"> <button class="kg-exit-close" id="kg-exit-close" aria-label="Fermer">×</button> <div class="kg-exit-glow"></div> <div class="kg-exit-content" id="kg-exit-content"> <div class="kg-exit-badge"><i class="fas fa-gift"></i> Avant de partir</div> <h2 class="kg-exit-title">Attendez ! Votre audit SEO gratuit</h2> <p class="kg-exit-sub">Avant de partir, téléchargez notre checklist SEO locale — 15 points essentiels pour votre visibilité.</p> <form class="kg-exit-form" id="kg-exit-form" data-ajax="https://kevin-grillot.fr/wp-admin/admin-ajax.php" data-nonce="5a2b5e1251"> <input type="text" name="kg_lm_prenom" placeholder="Votre prénom" required autocomplete="given-name" class="kg-exit-input"> <input type="email" name="kg_lm_email" placeholder="Votre email" required autocomplete="email" class="kg-exit-input"> <div style="position:absolute;left:-9999px;" aria-hidden="true"> <input type="text" name="kg_lm_website" tabindex="-1" autocomplete="off"> </div> <button type="submit" class="kg-exit-btn"> <i class="fas fa-download"></i> Télécharger gratuitement </button> <p class="kg-exit-notice"><i class="fas fa-lock"></i> Aucun spam. Données confidentielles.</p> </form> <div class="kg-exit-success" id="kg-exit-success" style="display:none;"> <div style="font-size:2.5rem;color:#22c55e;margin-bottom:1rem;"><i class="fas fa-check-circle"></i></div> <h3 style="color:#fff;font-size:1.2rem;font-weight:700;margin:0 0 0.5rem;">Merci ! Votre checklist est prête.</h3> <a href="" class="kg-exit-download" id="kg-exit-download" target="_blank" rel="noopener"> <i class="fas fa-file-download"></i> Télécharger la Checklist </a> </div> </div> </div> </div> <style> .kg-exit-overlay { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.3s ease; } .kg-exit-overlay.visible { opacity: 1; } .kg-exit-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.75); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); } .kg-exit-card { position: relative; z-index: 1; max-width: 520px; width: 90%; background: rgba(12,12,24,0.95); border: 1px solid rgba(255,255,255,0.08); border-radius: 1.25rem; padding: 2.5rem 2rem; overflow: hidden; box-shadow: 0 24px 64px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.05); transform: translateY(20px) scale(0.95); transition: transform 0.3s ease; } .kg-exit-overlay.visible .kg-exit-card { transform: translateY(0) scale(1); } .kg-exit-close { position: absolute; top: 1rem; right: 1rem; z-index: 2; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); color: #9ca3af; font-size: 1.5rem; width: 36px; height: 36px; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background 0.2s, color 0.2s; line-height: 1; } .kg-exit-close:hover { background: rgba(255,255,255,0.1); color: #fff; } .kg-exit-glow { position: absolute; top: -50px; left: 50%; transform: translateX(-50%); width: 200px; height: 200px; background: #2563eb; opacity: 0.1; border-radius: 50%; filter: blur(80px); pointer-events: none; } .kg-exit-content { position: relative; z-index: 1; text-align: center; } .kg-exit-badge { display: inline-flex; align-items: center; gap: 0.4rem; background: rgba(37,99,235,0.1); color: #2563eb; font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; padding: 0.4rem 1rem; border-radius: 999px; margin-bottom: 1rem; border: 1px solid rgba(37,99,235,0.2); } .kg-exit-title { color: #fff; font-size: 1.5rem; font-weight: 800; line-height: 1.2; margin: 0 0 0.75rem; font-family: 'Outfit', sans-serif; } .kg-exit-sub { color: #9ca3af; font-size: 0.9rem; margin: 0 0 1.5rem; line-height: 1.5; } .kg-exit-form { display: flex; flex-direction: column; gap: 0.75rem; position: relative; } .kg-exit-input { padding: 0.85rem 1rem; border-radius: 0.6rem; border: 1px solid rgba(255,255,255,0.1); background: rgba(255,255,255,0.04); color: #e5e7eb; font-size: 0.9rem; outline: none; transition: border-color 0.2s; width: 100%; box-sizing: border-box; } .kg-exit-input:focus { border-color: #2563eb; } .kg-exit-input::placeholder { color: #6b7280; } .kg-exit-btn { padding: 0.9rem 1.5rem; border: none; border-radius: 0.6rem; background: #2563eb; color: #fff; font-size: 0.95rem; font-weight: 700; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; transition: opacity 0.2s, transform 0.2s; width: 100%; } .kg-exit-btn:hover { opacity: 0.9; transform: translateY(-1px); } .kg-exit-btn:disabled { opacity: 0.5; cursor: wait; } .kg-exit-notice { font-size: 0.7rem; color: #4b5563; text-align: center; margin: 0; } .kg-exit-download { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.85rem 2rem; border-radius: 0.6rem; margin-top: 1rem; background: #2563eb; color: #fff; font-weight: 700; font-size: 0.95rem; text-decoration: none; transition: opacity 0.2s; } .kg-exit-download:hover { opacity: 0.9; color: #fff; } @media(max-width:480px) { .kg-exit-card { padding: 2rem 1.25rem; } .kg-exit-title { font-size: 1.25rem; } } </style> <script type="rocketlazyloadscript"> (function(){ var popup = document.getElementById('kg-exit-popup'); if(!popup) return; var shown = false; function showPopup(){ if(shown) return; if(sessionStorage.getItem('kg_exit_shown')) return; if(sessionStorage.getItem('kg_lm_filled')) return; if(window.location.pathname.indexOf('me-contacter') !== -1) return; shown = true; sessionStorage.setItem('kg_exit_shown', '1'); popup.style.display = 'flex'; requestAnimationFrame(function(){ requestAnimationFrame(function(){ popup.classList.add('visible'); }); }); } function hidePopup(){ popup.classList.remove('visible'); setTimeout(function(){ popup.style.display = 'none'; }, 300); } // Desktop only: mouseleave if(window.innerWidth > 768){ document.addEventListener('mouseleave', function(e){ if(e.clientY < 5) showPopup(); }); } document.getElementById('kg-exit-close').addEventListener('click', hidePopup); popup.querySelector('.kg-exit-backdrop').addEventListener('click', hidePopup); document.addEventListener('keydown', function(e){ if(e.key === 'Escape' && popup.classList.contains('visible')) hidePopup(); }); // Form submit var form = document.getElementById('kg-exit-form'); form.addEventListener('submit', function(e){ e.preventDefault(); var btn = form.querySelector('.kg-exit-btn'); btn.disabled = true; btn.innerHTML = '<i class="fas fa-spinner fa-spin"></i> Envoi...'; var fd = new FormData(form); fd.append('action', 'kg_lead_magnet_submit'); fd.append('nonce', form.dataset.nonce); fetch(form.dataset.ajax, { method: 'POST', body: fd }) .then(function(r){ return r.json(); }) .then(function(data){ if(data.success){ form.style.display = 'none'; var s = document.getElementById('kg-exit-success'); s.style.display = 'block'; document.getElementById('kg-exit-download').href = data.data.download_url; sessionStorage.setItem('kg_lm_filled', '1'); } else { btn.disabled = false; btn.innerHTML = '<i class="fas fa-download"></i> T\u00e9l\u00e9charger gratuitement'; alert(data.data || 'Erreur.'); } }) .catch(function(){ btn.disabled = false; btn.innerHTML = '<i class="fas fa-download"></i> T\u00e9l\u00e9charger gratuitement'; alert('Erreur reseau.'); }); }); })(); </script> <script>window.lazyLoadOptions=[{elements_selector:"img[data-lazy-src],.rocket-lazyload,iframe[data-lazy-src]",data_src:"lazy-src",data_srcset:"lazy-srcset",data_sizes:"lazy-sizes",class_loading:"lazyloading",class_loaded:"lazyloaded",threshold:300,callback_loaded:function(element){if(element.tagName==="IFRAME"&&element.dataset.rocketLazyload=="fitvidscompatible"){if(element.classList.contains("lazyloaded")){if(typeof window.jQuery!="undefined"){if(jQuery.fn.fitVids){jQuery(element).parent().fitVids()}}}}}},{elements_selector:".rocket-lazyload",data_src:"lazy-src",data_srcset:"lazy-srcset",data_sizes:"lazy-sizes",class_loading:"lazyloading",class_loaded:"lazyloaded",threshold:300,}];window.addEventListener('LazyLoad::Initialized',function(e){var lazyLoadInstance=e.detail.instance;if(window.MutationObserver){var observer=new MutationObserver(function(mutations){var image_count=0;var iframe_count=0;var rocketlazy_count=0;mutations.forEach(function(mutation){for(var i=0;i<mutation.addedNodes.length;i++){if(typeof mutation.addedNodes[i].getElementsByTagName!=='function'){continue} if(typeof mutation.addedNodes[i].getElementsByClassName!=='function'){continue} images=mutation.addedNodes[i].getElementsByTagName('img');is_image=mutation.addedNodes[i].tagName=="IMG";iframes=mutation.addedNodes[i].getElementsByTagName('iframe');is_iframe=mutation.addedNodes[i].tagName=="IFRAME";rocket_lazy=mutation.addedNodes[i].getElementsByClassName('rocket-lazyload');image_count+=images.length;iframe_count+=iframes.length;rocketlazy_count+=rocket_lazy.length;if(is_image){image_count+=1} if(is_iframe){iframe_count+=1}}});if(image_count>0||iframe_count>0||rocketlazy_count>0){lazyLoadInstance.update()}});var b=document.getElementsByTagName("body")[0];var config={childList:!0,subtree:!0};observer.observe(b,config)}},!1)</script><script data-no-minify="1" async src="https://kevin-grillot.fr/wp-content/plugins/wp-rocket/assets/js/lazyload/17.5/lazyload.min.js"></script><script>function lazyLoadThumb(e){var t='<img data-lazy-src="https://i.ytimg.com/vi/ID/hqdefault.jpg" alt="" width="480" height="360"><noscript><img src="https://i.ytimg.com/vi/ID/hqdefault.jpg" alt="" width="480" height="360"></noscript>',a='<button class="play" aria-label="play Youtube video"></button>';return t.replace("ID",e)+a}function lazyLoadYoutubeIframe(){var e=document.createElement("iframe"),t="ID?autoplay=1";t+=0===this.parentNode.dataset.query.length?'':'&'+this.parentNode.dataset.query;e.setAttribute("src",t.replace("ID",this.parentNode.dataset.src)),e.setAttribute("frameborder","0"),e.setAttribute("allowfullscreen","1"),e.setAttribute("allow", "accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"),this.parentNode.parentNode.replaceChild(e,this.parentNode)}document.addEventListener("DOMContentLoaded",function(){var e,t,p,a=document.getElementsByClassName("rll-youtube-player");for(t=0;t<a.length;t++)e=document.createElement("div"),e.setAttribute("data-id",a[t].dataset.id),e.setAttribute("data-query", a[t].dataset.query),e.setAttribute("data-src", a[t].dataset.src),e.innerHTML=lazyLoadThumb(a[t].dataset.id),a[t].appendChild(e),p=e.querySelector('.play'),p.onclick=lazyLoadYoutubeIframe});</script> </body> </html> <!-- This website is like a Rocket, isn't it? Performance optimized by WP Rocket. Learn more: https://wp-rocket.me - Debug: cached@1777471917 -->