<!DOCTYPE html>
<html lang="fr">
<head>
<!-- Start cookieyes banner --> <script id="cookieyes" type="text/javascript" src="https://cdn-cookieyes.com/client_data/86c546ead3707ceecb243159/script.js"></script> <!-- End cookieyes banner -->
<script>
window.dataLayer = window.dataLayer || [];
dataLayer.push({
event: "vue_page",
event_id: "194d4952-b051-448c-ab3e-a2f94ec08e94",
});
</script>
<script>
window.dataLayer = window.dataLayer || [];
</script>
<script>
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});
var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';
j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-5HCH5KB');
</script>
<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Reprogrammation et préparation automobile | Motortech</title>
<meta name="title" content="Reprogrammation et préparation automobile | Motortech">
<meta name="description" content="Reprogrammation, conversion bioéthanol / E85 tout type de véhicule, quelle que soit la marque et le modèle.">
<meta property="og:type" content="website">
<meta property="og:url" content="https://motortech.fr"/>
<meta property="og:locale" content="fr"/>
<meta property="og:title" content="Reprogrammation et préparation automobile | Motortech"/>
<meta property="og:description" content="Reprogrammation, conversion bioéthanol / E85 tout type de véhicule, quelle que soit la marque et le modèle.">
<meta property="og:image" content="https://motortech.fr/images/opengrah/banniere_motortech.jpg">
<meta name="twitter:card" content="summary_large_image"/>
<meta name="twitter:url" content="https://motortech.fr">
<meta name="twitter:title" content="Reprogrammation et préparation automobile | Motortech">
<meta name="twitter:description" content="Reprogrammation, conversion bioéthanol / E85 tout type de véhicule, quelle que soit la marque et le modèle.">
<meta name="twitter:image" content="https://motortech.fr/images/opengrah/banniere_motortech.jpg">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="641">
<link rel="canonical" href="https://motortech.fr">
<meta property="og:site_name" content="Motortech.fr">
<meta name="csrf-token" content="ip6wO774FOCkrA6mO0pvhlMCuH4BTGQhG94xyiFk">
<meta name="facebook-domain-verification" content="xhir1vxod91b85wvrniox18q845fcj"/>
<link rel="preconnect" href="https://fonts.googleapis.com" crossorigin>
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="preconnect" href="https://cdn.jsdelivr.net" crossorigin>
<link rel="preload" href="/assets/fonts/thicccboi/THICCCBOI-Bold.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/Unicons.woff2?9e1df5b1d5d36fe0aa5c45a3fbc7d810" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/images/homepage_header.webp" as="image">
<link rel="shortcut icon" href="/favicon.ico">
<link rel="stylesheet" href="/css/plugins.css">
<link rel="stylesheet" href="/css/style.css">
<link rel="preload" href="/assets/css/colors/aqua.css" as="style" onload="this.rel='stylesheet'">
<noscript><link rel="stylesheet" href="/assets/css/colors/aqua.css"></noscript>
<link rel="preload" href="/assets/css/fonts/thicccboi.css" as="style" onload="this.rel='stylesheet'">
<noscript><link rel="stylesheet" href="/assets/css/fonts/thicccboi.css"></noscript>
<script src="/js/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11" defer crossorigin="anonymous"></script>
<script type="text/javascript">
(function(c,l,a,r,i,t,y){
c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i;
y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
})(window, document, "clarity", "script", "q4zvnbdm90");
</script>
<link rel="preload" as="style" href="https://motortech.fr/build/assets/app-D3XUmqm7.css" /><link rel="stylesheet" href="https://motortech.fr/build/assets/app-D3XUmqm7.css" data-navigate-track="reload" /> <link rel="preload" as="style" href="https://motortech.fr/build/assets/homepage-CjSj2OVB.css" /><link rel="stylesheet" href="https://motortech.fr/build/assets/homepage-CjSj2OVB.css" data-navigate-track="reload" /> <!-- Livewire Styles --><style >[wire\:loading][wire\:loading], [wire\:loading\.delay][wire\:loading\.delay], [wire\:loading\.inline-block][wire\:loading\.inline-block], [wire\:loading\.inline][wire\:loading\.inline], [wire\:loading\.block][wire\:loading\.block], [wire\:loading\.flex][wire\:loading\.flex], [wire\:loading\.table][wire\:loading\.table], [wire\:loading\.grid][wire\:loading\.grid], [wire\:loading\.inline-flex][wire\:loading\.inline-flex] {display: none;}[wire\:loading\.delay\.none][wire\:loading\.delay\.none], [wire\:loading\.delay\.shortest][wire\:loading\.delay\.shortest], [wire\:loading\.delay\.shorter][wire\:loading\.delay\.shorter], [wire\:loading\.delay\.short][wire\:loading\.delay\.short], [wire\:loading\.delay\.default][wire\:loading\.delay\.default], [wire\:loading\.delay\.long][wire\:loading\.delay\.long], [wire\:loading\.delay\.longer][wire\:loading\.delay\.longer], [wire\:loading\.delay\.longest][wire\:loading\.delay\.longest] {display: none;}[wire\:offline][wire\:offline] {display: none;}[wire\:dirty]:not(textarea):not(input):not(select) {display: none;}:root {--livewire-progress-bar-color: #2299dd;}[x-cloak] {display: none !important;}[wire\:cloak] {display: none !important;}dialog#livewire-error::backdrop {background-color: rgba(0, 0, 0, .6);}</style>
</head>
<body>
<script>
function gtmPush() {
}
addEventListener("load", gtmPush);
</script>
<noscript>
<iframe
src="https://www.googletagmanager.com/ns.html?id=GTM-5HCH5KB"
height="0"
width="0"
style="display:none;visibility:hidden"
></iframe>
</noscript>
<div class="content-wrapper bg-soft-dark">
<header class="wrapper bg-dark">
<nav class="navbar navbar-expand-lg center-nav transparent navbar-dark">
<div class="container flex-lg-row flex-nowrap align-items-center">
<div class="navbar-brand w-100">
<a href="/">
<img class="logo-light mtk-logo mt-1 d-none d-lg-block" src="/images/logo_s.svg" width="200px" height="45px" alt="logo motortech light"/>
<img class="logo-light mtk-logo mt-1 d-block d-lg-none" src="/images/logo_small.svg" alt="logo motortech light small" style="max-height: 33px"/>
</a>
</div>
<div class="navbar-collapse offcanvas offcanvas-nav offcanvas-start">
<div class="offcanvas-header d-lg-none">
<img src="/images/logo_s.svg" srcset="/images/logo_s.svg 2x" width="300px" height="67px" alt="logo motortech" style="max-width: 85%"/>
<button type="button" class="btn-close btn-close-white" data-bs-dismiss="offcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body ms-lg-5 d-flex flex-column h-100">
<ul class="navbar-nav">
<li class="nav-item"><a class="nav-link" href="https://motortech.fr/reprogrammation/voiture">Reprogrammation</a></li>
<li class="nav-item"><a class="nav-link mtk-e85" href="https://motortech.fr/conversion-ethanol-e85-flexfuel">E85</a></li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" data-bs-toggle="dropdown">Communauté</a>
<ul class="dropdown-menu">
<li class="nav-item">
<a class="dropdown-item" href="https://motortech.fr/actualites">Actualités</a>
</li>
<li class="nav-item">
<a class="dropdown-item" href="https://motortech.fr/evenements">Événements</a>
</li>
</ul>
</li>
<li class="nav-item"><a class="nav-link" href="https://motortech.fr/shop">Shop</a></li>
<li class="nav-item"><a class="nav-link" href="https://motortech.fr/faq">FAQ</a></li>
<li class="nav-item"><a class="nav-link" href="https://motortech.fr/centres">Nos centres</a></li>
<li class="nav-item d-lg-none">
<a class="nav-link" href="https://motortech.fr/mon-compte/connexion">
<i class="uil uil-user me-1"></i> Se connecter
</a>
</li>
</ul>
</div>
</div>
<div class="navbar-other w-100 d-flex ms-auto" id="menu-bar-id">
<ul class="navbar-nav flex-row align-items-center ms-auto">
<li class="nav-item">
<span class="nav-link" onclick="openSidebar()" style="cursor: pointer" title="Choix centre et devise">
<i class="uil uil-globe"></i>
</span>
</li>
<li class="nav-item"><span class="nav-link" x-data @click="$dispatch('open-search')" style="cursor: pointer" title="Rechercher (Ctrl+K)"><i class="uil uil-search"></i></span></li>
<li class="nav-item" style="position: relative;"
x-data="{ count: 0 }"
@cart-count-updated.window="count = $event.detail.count">
<a class="nav-link" href="https://motortech.fr/mon-compte/panier" title="Mon panier">
<i class="uil uil-shopping-cart"></i>
<span class="cart-badge" x-show="count > 0" x-text="count" x-cloak></span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://motortech.fr/mon-compte/connexion" title="Se connecter">
<i class="uil uil-user"></i>
</a>
</li>
<li class="nav-item d-none d-md-block">
<button data-bs-toggle="modal" data-bs-target="#modal-contact" class="btn btn-sm mtk-btn-red rounded link-light take-appointment">Prendre RDV</button>
</li>
<li class="nav-item d-lg-none">
<button class="hamburger offcanvas-nav-btn" aria-label="Bouton menu"><span></span></button>
</li>
</ul>
</div>
</div>
</nav>
<style>
[x-cloak] { display: none !important; }
.mtk-search-backdrop {
position: fixed;
inset: 0;
background: rgba(0, 0, 0, 0.6);
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
z-index: 1100;
}
.mtk-search-container {
position: fixed;
inset: 0;
z-index: 1101;
display: flex;
align-items: flex-start;
justify-content: center;
padding-top: min(18vh, 140px);
padding-left: 1rem;
padding-right: 1rem;
}
.mtk-search-modal {
width: 100%;
max-width: 640px;
background: #111113;
border: 1px solid rgba(255, 255, 255, 0.08);
border-radius: 16px;
box-shadow:
0 0 0 1px rgba(255, 255, 255, 0.04),
0 24px 64px rgba(0, 0, 0, 0.55),
0 0 48px rgba(226, 9, 25, 0.04);
overflow: hidden;
display: flex;
flex-direction: column;
max-height: min(520px, 75vh);
}
.mtk-search-powerline {
height: 2px;
background: linear-gradient(90deg, transparent 0%, #e20919 25%, #e20919 75%, transparent 100%);
transform: scaleX(0);
box-shadow: 0 0 16px rgba(226, 9, 25, 0.3);
}
.mtk-search-powerline.is-active {
animation: mtk-sweep 0.5s cubic-bezier(0.16, 1, 0.3, 1) 0.1s forwards;
}
.mtk-search-powerline.is-searching {
transform: scaleX(1);
background: linear-gradient(90deg, transparent, #e20919 20%, transparent 40%, transparent 60%, #e20919 80%, transparent);
background-size: 200% 100%;
animation: mtk-searching 1.2s ease-in-out infinite;
}
@keyframes mtk-sweep {
to { transform: scaleX(1); }
}
@keyframes mtk-searching {
0% { background-position: 100% 0; }
100% { background-position: -100% 0; }
}
.mtk-search-header {
display: flex;
align-items: center;
padding: 14px 20px;
gap: 12px;
}
.mtk-search-header-icon {
color: #52525b;
flex-shrink: 0;
font-size: 20px;
line-height: 1;
}
.mtk-search-input {
flex: 1;
background: transparent;
border: none;
outline: none;
color: #fafafa;
font-size: 16px;
font-family: THICCCBOI, sans-serif;
font-weight: 500;
caret-color: #e20919;
min-width: 0;
}
.mtk-search-input::placeholder {
color: #3f3f46;
}
.mtk-search-kbd {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 20px;
height: 20px;
padding: 0 5px;
font-size: 10px;
font-weight: 600;
font-family: THICCCBOI, sans-serif;
color: #52525b;
background: rgba(255, 255, 255, 0.05);
border: 1px solid rgba(255, 255, 255, 0.08);
border-radius: 4px;
line-height: 1;
flex-shrink: 0;
}
.mtk-search-divider {
height: 1px;
background: rgba(255, 255, 255, 0.06);
}
.mtk-search-body {
flex: 1;
overflow-y: auto;
padding: 6px 8px;
min-height: 0;
scrollbar-width: thin;
scrollbar-color: rgba(255, 255, 255, 0.08) transparent;
}
.mtk-search-body::-webkit-scrollbar { width: 5px; }
.mtk-search-body::-webkit-scrollbar-thumb {
background: rgba(255, 255, 255, 0.08);
border-radius: 3px;
}
.mtk-search-category-header {
display: flex;
align-items: center;
gap: 6px;
padding: 10px 12px 4px;
font-size: 10px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.06em;
color: #52525b;
font-family: THICCCBOI, sans-serif;
}
.mtk-search-category-header i {
font-size: 13px;
opacity: 0.7;
}
.mtk-search-item {
display: flex;
align-items: center;
gap: 12px;
padding: 9px 12px;
border-radius: 8px;
cursor: pointer;
text-decoration: none !important;
color: #fafafa !important;
transition: background 0.12s, border-color 0.12s;
border-left: 2px solid transparent;
position: relative;
}
.mtk-search-item:hover,
.mtk-search-item.is-active {
background: rgba(255, 255, 255, 0.04);
border-left-color: #e20919;
}
.mtk-search-item.is-active {
background: rgba(226, 9, 25, 0.07);
}
.mtk-search-item-body {
flex: 1;
min-width: 0;
}
.mtk-search-item-title {
font-size: 13.5px;
font-weight: 600;
color: #fafafa;
font-family: THICCCBOI, sans-serif;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
line-height: 1.3;
}
.mtk-search-item-sub {
font-size: 11.5px;
color: #8b8b96;
font-family: THICCCBOI, sans-serif;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
line-height: 1.3;
margin-top: 1px;
}
.mtk-search-chevron {
color: #3f3f46;
margin: 0 1px;
}
.mtk-search-hp {
font-weight: 700;
color: #e20919;
margin-left: 4px;
font-size: 12.5px;
}
.mtk-search-badge {
display: inline-flex;
align-items: center;
padding: 2px 7px;
font-size: 9.5px;
font-weight: 700;
font-family: THICCCBOI, sans-serif;
border-radius: 4px;
letter-spacing: 0.03em;
flex-shrink: 0;
text-transform: uppercase;
}
.mtk-search-badge-type {
background: rgba(255, 255, 255, 0.06);
color: #71717a;
}
.mtk-search-badge-diesel {
background: rgba(59, 130, 246, 0.12);
color: #60a5fa;
}
.mtk-search-badge-petrol {
background: rgba(34, 197, 94, 0.12);
color: #4ade80;
}
.mtk-search-badge-electric {
background: rgba(6, 182, 212, 0.12);
color: #22d3ee;
}
.mtk-search-badge-hybrid,
.mtk-search-badge-hybrid_diesel,
.mtk-search-badge-hybrid_petrol {
background: rgba(168, 85, 247, 0.12);
color: #c084fc;
}
.mtk-search-badge-gas {
background: rgba(245, 158, 11, 0.12);
color: #fbbf24;
}
.mtk-search-badge-hydrogen {
background: rgba(20, 184, 166, 0.12);
color: #2dd4bf;
}
.mtk-search-brand-logo {
width: 32px;
height: 32px;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
background: rgba(255, 255, 255, 0.88);
flex-shrink: 0;
overflow: hidden;
}
.mtk-search-logo-img {
width: 22px;
height: 22px;
object-fit: contain;
}
.mtk-search-logo-fallback {
font-size: 13px;
font-weight: 700;
color: #fafafa;
font-family: THICCCBOI, sans-serif;
}
.mtk-search-initial-icon {
width: 32px;
height: 32px;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
font-size: 13px;
font-weight: 700;
color: #fafafa;
background: rgba(255, 255, 255, 0.06);
flex-shrink: 0;
font-family: THICCCBOI, sans-serif;
}
.mtk-search-arrow {
color: #27272a;
width: 14px;
height: 14px;
flex-shrink: 0;
opacity: 0;
transition: opacity 0.12s;
}
.mtk-search-item:hover .mtk-search-arrow,
.mtk-search-item.is-active .mtk-search-arrow {
opacity: 1;
color: #e20919;
}
.mtk-search-empty,
.mtk-search-initial {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 40px 24px;
text-align: center;
}
.mtk-search-empty-icon {
font-size: 40px;
color: #27272a;
margin-bottom: 12px;
}
.mtk-search-empty-text {
font-size: 13px;
color: #52525b;
font-family: THICCCBOI, sans-serif;
}
.mtk-search-empty-query {
color: #a1a1aa;
font-weight: 600;
}
.mtk-search-initial-text {
font-size: 13px;
color: #3f3f46;
font-family: THICCCBOI, sans-serif;
margin-bottom: 16px;
}
.mtk-search-initial-icon-big {
font-size: 28px;
color: #27272a;
margin-bottom: 12px;
}
.mtk-search-hints {
display: flex;
align-items: center;
gap: 14px;
flex-wrap: wrap;
justify-content: center;
}
.mtk-search-hint {
display: flex;
align-items: center;
gap: 4px;
font-size: 11px;
color: #3f3f46;
font-family: THICCCBOI, sans-serif;
}
.mtk-search-footer {
display: flex;
align-items: center;
gap: 14px;
padding: 8px 20px;
border-top: 1px solid rgba(255, 255, 255, 0.05);
flex-shrink: 0;
}
.mtk-search-footer-brand {
margin-left: auto;
font-size: 10px;
font-weight: 600;
color: #27272a;
font-family: THICCCBOI, sans-serif;
letter-spacing: 0.04em;
}
.mtk-search-skeleton-row {
display: flex;
align-items: center;
gap: 12px;
padding: 9px 12px;
}
.mtk-search-skeleton-circle {
width: 32px;
height: 32px;
border-radius: 8px;
background: rgba(255, 255, 255, 0.04);
flex-shrink: 0;
animation: mtk-pulse 1.4s ease-in-out infinite;
}
.mtk-search-skeleton-line {
height: 11px;
border-radius: 4px;
background: rgba(255, 255, 255, 0.04);
animation: mtk-pulse 1.4s ease-in-out infinite;
}
@keyframes mtk-pulse {
0%, 100% { opacity: 1; }
50% { opacity: 0.35; }
}
/* Transition classes for Alpine */
.mtk-fade-enter { transition: opacity 0.2s ease-out; }
.mtk-fade-enter-start { opacity: 0; }
.mtk-fade-enter-end { opacity: 1; }
.mtk-fade-leave { transition: opacity 0.15s ease-in; }
.mtk-fade-leave-start { opacity: 1; }
.mtk-fade-leave-end { opacity: 0; }
.mtk-scale-enter { transition: opacity 0.2s ease-out, transform 0.2s cubic-bezier(0.16, 1, 0.3, 1); }
.mtk-scale-enter-start { opacity: 0; transform: scale(0.97) translateY(-8px); }
.mtk-scale-enter-end { opacity: 1; transform: scale(1) translateY(0); }
.mtk-scale-leave { transition: opacity 0.12s ease-in, transform 0.12s ease-in; }
.mtk-scale-leave-start { opacity: 1; transform: scale(1) translateY(0); }
.mtk-scale-leave-end { opacity: 0; transform: scale(0.97) translateY(-4px); }
@media (max-width: 640px) {
.mtk-search-container {
padding: 0;
align-items: stretch;
}
.mtk-search-modal {
max-width: 100%;
border-radius: 0;
max-height: 100dvh;
height: 100%;
}
}
</style>
<div
x-data="searchPalette()"
x-on:keydown.window="handleGlobalKeydown($event)"
@open-search.window="openModal()"
x-cloak
>
<div
x-show="open"
x-transition:enter="mtk-fade-enter"
x-transition:enter-start="mtk-fade-enter-start"
x-transition:enter-end="mtk-fade-enter-end"
x-transition:leave="mtk-fade-leave"
x-transition:leave-start="mtk-fade-leave-start"
x-transition:leave-end="mtk-fade-leave-end"
class="mtk-search-backdrop"
@click="closeModal()"
></div>
<div
x-show="open"
x-transition:enter="mtk-fade-enter"
x-transition:enter-start="mtk-fade-enter-start"
x-transition:enter-end="mtk-fade-enter-end"
x-transition:leave="mtk-fade-leave"
x-transition:leave-start="mtk-fade-leave-start"
x-transition:leave-end="mtk-fade-leave-end"
class="mtk-search-container"
@click.self="closeModal()"
>
<div
x-show="open"
x-transition:enter="mtk-scale-enter"
x-transition:enter-start="mtk-scale-enter-start"
x-transition:enter-end="mtk-scale-enter-end"
x-transition:leave="mtk-scale-leave"
x-transition:leave-start="mtk-scale-leave-start"
x-transition:leave-end="mtk-scale-leave-end"
class="mtk-search-modal"
role="dialog"
aria-modal="true"
aria-label="Recherche"
@keydown.escape.stop="closeModal()"
@keydown.arrow-up.prevent="navigateUp()"
@keydown.arrow-down.prevent="navigateDown()"
@keydown.enter.prevent="selectResult()"
>
<div class="mtk-search-powerline" :class="{ 'is-active': open, 'is-searching': loading }"></div>
<div class="mtk-search-header">
<i class="uil uil-search mtk-search-header-icon"></i>
<input
x-ref="searchInput"
x-model="query"
@input="onInput()"
type="text"
class="mtk-search-input"
placeholder="Rechercher un véhicule, moteur, marque..."
autocomplete="off"
spellcheck="false"
>
<kbd class="mtk-search-kbd" style="cursor: pointer;" @click="closeModal()">Esc</kbd>
</div>
<div class="mtk-search-divider"></div>
<div class="mtk-search-body" x-ref="resultsList">
<div x-show="!hasQuery && !loading" class="mtk-search-initial">
<i class="uil uil-search-alt mtk-search-initial-icon-big"></i>
<p class="mtk-search-initial-text">Recherchez parmi les marques, modèles et moteurs</p>
<div class="mtk-search-hints">
<span class="mtk-search-hint">
<kbd class="mtk-search-kbd">↑</kbd><kbd class="mtk-search-kbd">↓</kbd> Naviguer
</span>
<span class="mtk-search-hint">
<kbd class="mtk-search-kbd">↵</kbd> Ouvrir
</span>
<span class="mtk-search-hint">
<kbd class="mtk-search-kbd">Esc</kbd> Fermer
</span>
</div>
</div>
<div x-show="loading" style="padding: 4px 0;">
<template x-for="i in 5" :key="'skel-'+i">
<div class="mtk-search-skeleton-row">
<div class="mtk-search-skeleton-circle" :style="'animation-delay: ' + (i * 0.08) + 's'"></div>
<div style="flex: 1;">
<div class="mtk-search-skeleton-line" :style="'width: ' + (45 + i * 8) + '%; margin-bottom: 6px; animation-delay: ' + (i * 0.08) + 's'"></div>
<div class="mtk-search-skeleton-line" :style="'width: ' + (25 + i * 5) + '%; height: 9px; animation-delay: ' + (i * 0.08 + 0.04) + 's'"></div>
</div>
</div>
</template>
</div>
<div x-show="hasQuery && !loading && !hasResults" class="mtk-search-empty">
<i class="uil uil-search-minus mtk-search-empty-icon"></i>
<p class="mtk-search-empty-text">
Aucun résultat pour « <span class="mtk-search-empty-query" x-text="query"></span> »
</p>
</div>
<div x-show="hasQuery && !loading && hasResults">
<div x-show="results.brands.length > 0">
<div class="mtk-search-category-header">
<i class="uil uil-tag-alt"></i>
<span>Marques</span>
</div>
<template x-for="(brand, i) in results.brands" :key="'b-'+i">
<a
:href="brand.url"
class="mtk-search-item"
:class="{ 'is-active': activeIndex === getFlatIndex('brands', i) }"
:data-result-index="getFlatIndex('brands', i)"
@mouseenter="activeIndex = getFlatIndex('brands', i)"
>
<span class="mtk-search-brand-logo">
<img x-show="brand.logo" :src="brand.logo" :alt="brand.name" class="mtk-search-logo-img">
<span x-show="!brand.logo" x-text="brand.name.charAt(0)" class="mtk-search-logo-fallback"></span>
</span>
<div class="mtk-search-item-body">
<div class="mtk-search-item-title" x-text="brand.name"></div>
</div>
<span class="mtk-search-badge mtk-search-badge-type" x-text="brand.type_label"></span>
<svg class="mtk-search-arrow" viewbox="0 0 16 16" fill="none"><path d="M6 12l4-4-4-4" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>
</a>
</template>
</div>
<div x-show="results.models.length > 0">
<div class="mtk-search-category-header">
<i class="uil uil-apps"></i>
<span>Modèles</span>
</div>
<template x-for="(model, i) in results.models" :key="'m-'+i">
<a
:href="model.url"
class="mtk-search-item"
:class="{ 'is-active': activeIndex === getFlatIndex('models', i) }"
:data-result-index="getFlatIndex('models', i)"
@mouseenter="activeIndex = getFlatIndex('models', i)"
>
<span class="mtk-search-brand-logo">
<img x-show="model.logo" :src="model.logo" :alt="model.brand_name" class="mtk-search-logo-img">
<span x-show="!model.logo" x-text="model.brand_name.charAt(0)" class="mtk-search-logo-fallback"></span>
</span>
<div class="mtk-search-item-body">
<div class="mtk-search-item-title">
<span x-text="model.brand_name"></span>
<span class="mtk-search-chevron"> › </span>
<span x-text="model.name"></span>
</div>
</div>
<svg class="mtk-search-arrow" viewbox="0 0 16 16" fill="none"><path d="M6 12l4-4-4-4" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>
</a>
</template>
</div>
<div x-show="results.engines.length > 0">
<div class="mtk-search-category-header">
<i class="uil uil-bolt-alt"></i>
<span>Moteurs</span>
</div>
<template x-for="(engine, i) in results.engines" :key="'e-'+i">
<a
:href="engine.url"
class="mtk-search-item"
:class="{ 'is-active': activeIndex === getFlatIndex('engines', i) }"
:data-result-index="getFlatIndex('engines', i)"
@mouseenter="activeIndex = getFlatIndex('engines', i)"
>
<span class="mtk-search-brand-logo">
<img x-show="engine.logo" :src="engine.logo" :alt="engine.brand_name" class="mtk-search-logo-img">
<span x-show="!engine.logo" x-text="engine.brand_name.charAt(0)" class="mtk-search-logo-fallback"></span>
</span>
<div class="mtk-search-item-body">
<div class="mtk-search-item-title">
<span x-text="engine.name"></span>
<span class="mtk-search-hp" x-text="engine.horsepower + 'ch'"></span>
</div>
<div class="mtk-search-item-sub">
<span x-text="engine.brand_name"></span>
<span class="mtk-search-chevron"> › </span>
<span x-text="engine.model_name"></span>
<span class="mtk-search-chevron"> › </span>
<span x-text="engine.version_name"></span>
</div>
</div>
<span class="mtk-search-badge" :class="powerBadgeClass(engine.power_type_value)" x-text="engine.power_type"></span>
<svg class="mtk-search-arrow" viewbox="0 0 16 16" fill="none"><path d="M6 12l4-4-4-4" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>
</a>
</template>
</div>
</div>
</div>
<div class="mtk-search-footer">
<span class="mtk-search-hint">
<kbd class="mtk-search-kbd">↑</kbd><kbd class="mtk-search-kbd">↓</kbd> Naviguer
</span>
<span class="mtk-search-hint">
<kbd class="mtk-search-kbd">↵</kbd> Ouvrir
</span>
<span class="mtk-search-footer-brand">MOTORTECH</span>
</div>
</div>
</div>
</div>
<script>
function searchPalette() {
return {
open: false,
query: '',
loading: false,
activeIndex: -1,
results: { brands: [], models: [], engines: [] },
abortController: null,
debounceTimer: null,
get flatResults() {
const flat = [];
['brands', 'models', 'engines'].forEach(cat => {
(this.results[cat] || []).forEach((item, i) => {
flat.push({ ...item, _cat: cat, _i: i });
});
});
return flat;
},
get totalResults() { return this.flatResults.length; },
get hasResults() { return this.totalResults > 0; },
get hasQuery() { return this.query.length >= 2; },
openModal() {
this.open = true;
this.$nextTick(() => this.$refs.searchInput?.focus());
document.body.style.overflow = 'hidden';
},
closeModal() {
this.open = false;
this.query = '';
this.activeIndex = -1;
this.results = { brands: [], models: [], versions: [], engines: [] };
document.body.style.overflow = '';
},
handleGlobalKeydown(e) {
if ((e.ctrlKey || e.metaKey) && e.key === 'k') {
e.preventDefault();
this.open ? this.closeModal() : this.openModal();
}
},
onInput() {
clearTimeout(this.debounceTimer);
this.activeIndex = -1;
if (!this.hasQuery) {
this.results = { brands: [], models: [], versions: [], engines: [] };
this.loading = false;
return;
}
this.loading = true;
this.debounceTimer = setTimeout(() => this.search(), 250);
},
async search() {
if (this.abortController) this.abortController.abort();
this.abortController = new AbortController();
try {
const res = await fetch(
'/api/search/multi?query=' + encodeURIComponent(this.query),
{ signal: this.abortController.signal }
);
if (!res.ok) throw new Error('Search failed');
const data = await res.json();
this.results = {
brands: data.brands || [],
models: data.models || [],
engines: data.engines || [],
};
this.activeIndex = this.totalResults > 0 ? 0 : -1;
} catch (e) {
if (e.name !== 'AbortError') {
this.results = { brands: [], models: [], versions: [], engines: [] };
}
} finally {
this.loading = false;
}
},
navigateUp() {
if (this.activeIndex > 0) this.activeIndex--;
this.scrollToActive();
},
navigateDown() {
if (this.activeIndex < this.totalResults - 1) this.activeIndex++;
else if (this.activeIndex === -1 && this.totalResults > 0) this.activeIndex = 0;
this.scrollToActive();
},
scrollToActive() {
this.$nextTick(() => {
const el = this.$el.querySelector('[data-result-index="' + this.activeIndex + '"]');
el?.scrollIntoView({ block: 'nearest' });
});
},
selectResult() {
if (this.activeIndex >= 0 && this.activeIndex < this.totalResults) {
const result = this.flatResults[this.activeIndex];
if (result?.url) window.location.href = result.url;
}
},
getFlatIndex(category, localIndex) {
let offset = 0;
for (const cat of ['brands', 'models', 'engines']) {
if (cat === category) return offset + localIndex;
offset += (this.results[cat]?.length || 0);
}
return -1;
},
powerBadgeClass(powerTypeValue) {
const map = {
diesel: 'mtk-search-badge-diesel',
petrol: 'mtk-search-badge-petrol',
electric: 'mtk-search-badge-electric',
hybrid: 'mtk-search-badge-hybrid',
hybrid_diesel: 'mtk-search-badge-hybrid',
hybrid_petrol: 'mtk-search-badge-hybrid',
gas: 'mtk-search-badge-gas',
hydrogen: 'mtk-search-badge-hydrogen',
};
return map[powerTypeValue] || 'mtk-search-badge-type';
}
}
}
</script>
</header>
<main>
<section class="home-hero" data-watermark="MOTORTECH">
<div class="container">
<div class="home-hero-grid">
<div>
<h1 class="home-hero-title">Reprogrammation & <br><span class="accent">préparation automobile</span></h1>
<p class="home-hero-lead">Faites confiance au leader de la reprogrammation pour augmenter les performances de votre véhicule.</p>
<a href="https://motortech.fr/reprogrammation/voiture" class="home-btn-primary">Découvrir</a>
</div>
<div class="home-hero-image">
<img src="/images/homepage_header.webp"
srcset="/images/homepage_header_mobile.webp 375w, /images/homepage_header.webp 700w"
sizes="(max-width: 768px) 375px, 700px"
alt="image Lamborghini rouge" width="700" height="736" fetchpriority="high">
</div>
</div>
</div>
</section>
<section class="home-services">
<div class="container">
<div class="home-separator">
<span class="home-separator-line"></span>
<span class="home-separator-icon"><i class="uil uil-wrench"></i></span>
<span class="home-separator-line"></span>
</div>
<p class="home-services-intro"><span class="accent">Motortech</span> met à disposition tout son savoir-faire au service de votre véhicule</p>
<div class="home-services-grid">
<div class="home-service-card">
<div class="home-service-icon"><i class="uil uil-tachometer-fast"></i></div>
<h2 class="home-service-title">Reprogrammation</h2>
<p class="home-service-text">Gagnez en puissance et couple moteur grâce à la reprogrammation. Une opération transparente et réversible réalisée par nos experts au grand savoir-faire.</p>
<a href="https://motortech.fr/reprogrammation/voiture" class="home-service-link">Consulter →</a>
</div>
<div class="home-service-card">
<div class="home-service-icon"><i class="uil uil-bill"></i></div>
<h2 class="home-service-title">Conversion éthanol</h2>
<p class="home-service-text">Faites des économies sans contrainte grâce à la flexibilité de la conversion éthanol. Roulez à l'E85 : un carburant vert, vendu 2x moins cher que l'essence.</p>
<a href="https://motortech.fr/conversion-ethanol-e85-flexfuel" class="home-service-link">Consulter →</a>
</div>
<div class="home-service-card">
<div class="home-service-icon"><i class="uil uil-question-circle"></i></div>
<h2 class="home-service-title">FAQ</h2>
<p class="home-service-text">Avec notre foire aux questions, notre activité n'aura plus de secret pour vous. Choisissez un service adapté à vos besoins et obtenez des réponses à toutes vos interrogations.</p>
<a href="https://motortech.fr/faq" class="home-service-link">Consulter →</a>
</div>
<div class="home-service-card">
<div class="home-service-icon"><i class="uil uil-map-marker"></i></div>
<h2 class="home-service-title">Nos centres</h2>
<p class="home-service-text">Contactez et prenez rendez-vous avec un centre Motortech proche de chez vous. Nos conseillers sont à votre disposition pour répondre à vos attentes.</p>
<a href="https://motortech.fr/centres" class="home-service-link">Consulter →</a>
</div>
</div>
</div>
</section>
<section class="home-about">
<div class="container">
<div class="home-about-grid">
<div class="home-about-mosaic">
<div class="home-about-img">
<img src="/images/mclaren.webp" srcset="/images/mclaren.webp 2x" alt="image mclaren" loading="lazy" width="225" height="338">
</div>
<div class="home-about-img home-about-img--tall">
<img src="/images/compteur.webp" srcset="/images/compteur.webp 2x" alt="image compteur nuit" loading="lazy" width="250" height="166">
</div>
<div class="home-about-img">
<img src="/images/speed.webp" srcset="/images/speed.webp 2x" alt="image trainée lumiere" loading="lazy" width="500" height="332">
</div>
</div>
<div>
<h2 class="home-about-title">Qui sommes-<span class="accent">nous ?</span></h2>
<p class="home-about-lead">Depuis 2009 Motortech met à disposition tout son savoir-faire au service de votre véhicule.</p>
<p class="home-about-text">Fort de ses nombreuses années d'expérience, Motortech dispose aujourd'hui d'un réseau de distribution de 12 agences à travers le monde et du plus grand réseau de France équipé de bancs de puissance.</p>
<div class="home-about-checks">
<div class="home-about-check">
<span class="home-about-check-icon"><i class="uil uil-check"></i></span>
<span class="home-about-check-text">Reprogrammations sur-mesure & toutes marques</span>
</div>
<div class="home-about-check">
<span class="home-about-check-icon"><i class="uil uil-check"></i></span>
<span class="home-about-check-text">Personnel qualifié disposant d'outils dernier cri</span>
</div>
<div class="home-about-check">
<span class="home-about-check-icon"><i class="uil uil-check"></i></span>
<span class="home-about-check-text">Près de 50 marques performance au catalogue</span>
</div>
<div class="home-about-check">
<span class="home-about-check-icon"><i class="uil uil-check"></i></span>
<span class="home-about-check-text">Opération transparente & gains de performance garantis</span>
</div>
</div>
</div>
</div>
<div class="home-about-pillars">
<div class="home-about-pillar">
<div class="home-about-pillar-number">1</div>
<div>
<h3 class="home-about-pillar-title">Notre objectif</h3>
<p class="home-about-pillar-text">Notre objectif est de garantir une reprogrammation fiable à nos clients, nous mettons tout en œuvre pour respecter les tolérances mécaniques.</p>
</div>
</div>
<div class="home-about-pillar">
<div class="home-about-pillar-number">2</div>
<div>
<h3 class="home-about-pillar-title">Notre mission</h3>
<p class="home-about-pillar-text">Nous prêtons une attention particulière à la satisfaction de nos clients, c'est pourquoi notre mission est de vous faire vivre une expérience unique et transparente.</p>
</div>
</div>
<div class="home-about-pillar">
<div class="home-about-pillar-number">3</div>
<div>
<h3 class="home-about-pillar-title">Nos valeurs</h3>
<p class="home-about-pillar-text">Tout comme vous, nous sommes des passionnés de sports mécaniques. Nous souhaitons vous faire frissonner grâce au gain de performance de votre véhicule.</p>
</div>
</div>
</div>
</div>
</section>
<section class="home-social">
<div class="container">
<div class="home-social-content">
<h2 class="home-social-title">Rejoignez-<span class="accent">nous !</span></h2>
<p class="home-social-text">Restez connectés en nous suivant sur nos différents réseaux sociaux.</p>
<div class="home-social-icons">
<a href="https://twitter.com/MotortechFrance" class="home-social-icon" aria-label="Twitter" rel="nofollow noopener noreferrer" target="_blank"><i class="uil uil-twitter"></i></a>
<a href="https://www.facebook.com/pages/category/Motorsports-Store/Motortech-Performance-France-103310268657566/" class="home-social-icon" aria-label="Facebook" target="_blank" rel="nofollow noopener noreferrer"><i class="uil uil-facebook-f"></i></a>
<a href="https://taap.it/ITSivD/" class="home-social-icon" aria-label="Instagram" rel="nofollow noopener noreferrer" target="_blank"><i class="uil uil-instagram"></i></a>
<a href="https://taap.it/USUR9G/videos" class="home-social-icon" aria-label="Youtube" rel="nofollow noopener noreferrer" target="_blank"><i class="uil uil-youtube"></i></a>
</div>
</div>
</div>
</section>
<section class="home-news">
<div class="container">
<div class="home-news-header">
<h2>Nos dernières actualités et <span class="accent">évènements</span></h2>
</div>
<div class="swiper-container blog grid-view mb-6" data-margin="30" data-dots="true" data-items-xl="3" data-items-md="2" data-items-xs="1">
<div class="swiper">
<div class="swiper-wrapper">
<div class="swiper-slide">
<article class="home-news-card">
<figure>
<a href="https://motortech.fr/actualites/500-ferrari-contre-le-cancer-2026-motortech-sera-de-la-partie">
<img src="/storage/actualites/welcome/gAgMnkfmYghndWDH9yZDL008eb5aLNVbtyM0ZJ3g.webp" alt="photo article 55" loading="lazy" height="333" width="500">
</a>
</figure>
<div>
<span class="home-news-category">Évènement</span>
<h3 class="home-news-title"><a href="https://motortech.fr/actualites/500-ferrari-contre-le-cancer-2026-motortech-sera-de-la-partie">500 Ferrari Contre le Cancer 2026 : Motortech sera de la partie</a></h3>
<span class="home-news-date"><i class="uil uil-calendar-alt"></i>07/05/2026</span>
</div>
</article>
</div>
<div class="swiper-slide">
<article class="home-news-card">
<figure>
<a href="https://motortech.fr/actualites/reprogrammation-moteur-les-calculateurs-bosch-md1-et-mg1-pour-jaguar-land-rover-sont-enfin-accessibles">
<img src="/storage/actualites/welcome/muuAEqYyZZYNG1sML3fE082csZKJgGnZXraPjaDb.webp" alt="photo article 54" loading="lazy" height="333" width="500">
</a>
</figure>
<div>
<span class="home-news-category">Reprogrammation moteur</span>
<h3 class="home-news-title"><a href="https://motortech.fr/actualites/reprogrammation-moteur-les-calculateurs-bosch-md1-et-mg1-pour-jaguar-land-rover-sont-enfin-accessibles">Reprogrammation moteur : les calculateurs Bosch MD1 et MG1 pour Jaguar Land Rover sont enfin accessibles !</a></h3>
<span class="home-news-date"><i class="uil uil-calendar-alt"></i>13/04/2026</span>
</div>
</article>
</div>
<div class="swiper-slide">
<article class="home-news-card">
<figure>
<a href="https://motortech.fr/actualites/reprogrammation-moteur-maintenant-disponible-sur-les-moteurs-1-5-diesel-equipes-du-calculateur-bosch-md1cs003">
<img src="/storage/actualites/welcome/xQAeTBNkRxRQHGjBMh1v70MGx52HFpVyglbyRGfR.webp" alt="photo article 53" loading="lazy" height="333" width="500">
</a>
</figure>
<div>
<span class="home-news-category">Reprogrammation moteur</span>
<h3 class="home-news-title"><a href="https://motortech.fr/actualites/reprogrammation-moteur-maintenant-disponible-sur-les-moteurs-1-5-diesel-equipes-du-calculateur-bosch-md1cs003">Reprogrammation moteur maintenant disponible sur les moteurs 1.5 Diesel équipés du calculateur Bosch MD1CS003</a></h3>
<span class="home-news-date"><i class="uil uil-calendar-alt"></i>30/03/2026</span>
</div>
</article>
</div>
<div class="swiper-slide">
<article class="home-news-card">
<figure>
<a href="https://motortech.fr/actualites/2-0-tdci-intervention-directe-sans-immobilisation-du-vehicule">
<img src="/storage/actualites/welcome/a70iyrbge8kGDNBemmQLJPxYTakpDTAiP6Y4qf6S.webp" alt="photo article 52" loading="lazy" height="333" width="500">
</a>
</figure>
<div>
<span class="home-news-category">Reprogrammation moteur</span>
<h3 class="home-news-title"><a href="https://motortech.fr/actualites/2-0-tdci-intervention-directe-sans-immobilisation-du-vehicule">2.0 TDCI : Intervention directe sans immobilisation du véhicule</a></h3>
<span class="home-news-date"><i class="uil uil-calendar-alt"></i>11/03/2026</span>
</div>
</article>
</div>
<div class="swiper-slide">
<article class="home-news-card">
<figure>
<a href="https://motortech.fr/actualites/motortech-peut-maintenant-reprogrammer-vos-porsche-taycan-et-audi-e-tron">
<img src="/storage/actualites/welcome/GPKSGqFQ0KOrDzkoE84Uiwbe2jCjY3iQO1O6Yd9I.webp" alt="photo article 51" loading="lazy" height="333" width="500">
</a>
</figure>
<div>
<span class="home-news-category">Reprogrammation moteur</span>
<h3 class="home-news-title"><a href="https://motortech.fr/actualites/motortech-peut-maintenant-reprogrammer-vos-porsche-taycan-et-audi-e-tron">⚡ Motortech peut maintenant reprogrammer vos Porsche Taycan et Audi e-tron !</a></h3>
<span class="home-news-date"><i class="uil uil-calendar-alt"></i>11/12/2025</span>
</div>
</article>
</div>
</div>
</div>
</div>
</div>
</section>
</main>
<div class="modal fade" id="modal-contact" tabindex="-1">
<div class="modal-dialog modal-xl">
<div class="modal-content">
<div class="modal-body">
<button class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
<p class="h3 mb-4 text-center">Contacter un centre Motortech <img src="https://motortech.fr/images/logo_motortech_seul_cl_small.jpg" alt="logo motortech" style="height: 30px" class="ms-2"></p>
<form class="text-start mb-3" action="https://motortech.fr/contact" method="post" id="formContact">
<input type="hidden" name="_token" value="ip6wO774FOCkrA6mO0pvhlMCuH4BTGQhG94xyiFk" autocomplete="off"> <div class="row">
<div class="col-lg-12">
<div class="form-select-wrapper mb-4">
<select class="form-select" id="select-center-modal" name="center_id" required>
<option selected="" disabled="" value="">Sélectionnez un centre</option>
<option value="17" class="text-dark" >Biarritz — 64 - Pyrénées Atlantiques</option>
<option value="4" class="text-dark" >Bourg en Bresse — 01 - Ain</option>
<option value="29" class="text-dark" >Liège — BE - Belgique</option>
<option value="3" class="text-dark" >Manosque — 04 - Alpes de Haute Provence</option>
<option value="6" class="text-dark" >Nice — 06 - Alpes Maritimes</option>
<option value="14" class="text-dark" >Normandie — 50 - Manche</option>
<option value="12" class="text-dark" >Orléans — 45 - Loiret</option>
<option value="30" class="text-dark" >Perpignan — 66 - Pyrénées-Orientales</option>
<option value="15" class="text-dark" >Reims — 51 - Marne</option>
<option value="31" class="text-dark" >Rouen — 76 - Seine-Maritime</option>
<option value="23" class="text-dark" >Switzerland — CH - Suisse</option>
<option value="2" class="text-dark" >Toulon — 83 - Var</option>
</select>
</div>
</div>
<div class="col-lg-2">
<div class="form-select-wrapper mb-4">
<select class="form-select" id="select-civility-modal" name="civility" required>
<option selected disbaled value="">Civilité</option>
<option value="man" class="text-dark" >Monsieur</option>
<option value="woman" class="text-dark" >Madame</option>
</select>
</div>
</div>
<div class="col-lg-5">
<div class="form-floating mb-4">
<input type="text" class="form-control" placeholder="Votre Prénom" id="first_name" name="first_name" value="" required>
<label for="first_name">Votre Prénom</label>
<div class="invalid-feedback">
</div>
</div>
</div>
<div class="col-lg-5">
<div class="form-floating mb-4">
<input type="text" class="form-control" placeholder="Votre Nom" id="last_name" name="last_name" value="" required>
<label for="last_name">Votre Nom</label>
<div class="invalid-feedback">
</div>
</div>
</div>
<div class="col-lg-6">
<div class="form-floating mb-4">
<input type="email" class="form-control" placeholder="Votre email" id="email-modal" name="email" value="" required>
<label for="email-modal">Adresse mail</label>
<div class="invalid-feedback">
</div>
</div>
</div>
<div class="col-lg-6">
<div class="form-floating mb-4">
<input type="text" class="form-control" placeholder="Votre téléphone" id="telephone-modal" name="phone_number" value="" required>
<div class="invalid-feedback-text" id="phone-error-modal">
</div>
</div>
</div>
<div class="col-lg-12">
<div class="form-select-wrapper mb-4">
<select class="form-select" id="select-reason-modal" name="contact_reason" required>
<option selected disbaled value="">Sélectionnez un sujet</option>
<option value="Rendez-vous" class="text-dark" >Rendez-vous</option>
<option value="Demande de rappel" class="text-dark" >Demande de rappel</option>
<option value="Devis" class="text-dark" >Devis</option>
<option value="Assistance" class="text-dark" >Assistance</option>
<option value="Assistance" class="text-dark" >Autre</option>
</select>
</div>
</div>
<div class="col-lg-12">
<div class="form-select-wrapper mb-4">
<select class="form-select" id="select-service-modal" name="contact_service" required>
<option selected disbaled value="">Sélectionnez un service</option>
<option value="Reprogrammation stage 1" class="text-dark" >Reprogrammation stage 1</option>
<option value="Reprogrammation stage 2" class="text-dark" >Reprogrammation stage 2</option>
<option value="Reprogrammation stage 3" class="text-dark" >Reprogrammation stage 3</option>
<option value="Conversion E85" class="text-dark" >Conversion E85</option>
<option value="Conversion E85+" class="text-dark" >Conversion E85+</option>
<option value="Passage au banc" class="text-dark" >Passage au banc</option>
<option value="Mécanique générale" class="text-dark" >Mécanique générale</option>
<option value="Autre" class="text-dark" >Autre</option>
</select>
</div>
</div>
<div class="col-lg-6">
<div class="form-floating mb-4">
<input type="text" class="form-control" placeholder="Immatriculation" id="numberplate" name="numberplate" value="" required>
<label for="numberplate">Immatriculation</label>
<div class="invalid-feedback">
</div>
</div>
</div>
<div class="col-lg-6">
<div class="form-floating mb-4">
<input type="number" class="form-control" placeholder="Kilometrage" id="mileage" name="mileage" value="">
<label for="mileage">Kilometrage</label>
<div class="invalid-feedback">
</div>
</div>
</div>
</div>
<div wire:snapshot="{"data":{"errors":[{"vehicle_type":"","vehicle_brand_id_api":"","vehicle_model_id_api":"","vehicle_version_id_api":"","vehicle_engine_id_api":"","vehicle_not_in_configurator":""},{"s":"arr"}],"oldData":[{"vehicle_type":null,"vehicle_brand_id_api":null,"vehicle_model_id_api":null,"vehicle_version_id_api":null,"vehicle_engine_id_api":null,"vehicle_not_in_configurator":null,"custom_vehicle":null},{"s":"arr"}],"vehicleTypes":[{"agricultural":"Agricole","atv":"Quad","car":"Voiture","jetski":"Jet-ski","moto":"Moto","truck":"Camion","boat":"Bateau","other":"Autre"},{"s":"arr"}],"vehicleBrands":[[],{"s":"arr"}],"vehicleModels":[[],{"s":"arr"}],"vehicleVersions":[[],{"s":"arr"}],"vehicleEngines":[[],{"s":"arr"}],"vehicleTypeSelected":null,"vehicleBrandSelected":null,"vehicleModelSelected":null,"vehicleVersionSelected":null,"vehicleEngineSelected":null,"vehicleNotInConfigurator":"","showConfigurator":true,"showCustomVehicle":false,"customVehicle":""},"memo":{"id":"jaPrRen8LJtniwMGcTO0","name":"vehicle-selector","path":"\/","method":"GET","release":"a-a-a","children":[],"scripts":[],"assets":[],"errors":[],"locale":"fr"},"checksum":"a92943eb376c1ad60e960d4091bd450ed2d615ae2a834b6214a7ad68cd6df20c"}" wire:effects="{"partials":[]}" wire:id="jaPrRen8LJtniwMGcTO0">
<!--[if BLOCK]><![endif]--> <div class="row">
<!-- Sélecteur du type de véhicule -->
<div class="col-lg-12">
<div class="form-select-wrapper mb-4">
<select class="form-select" wire:model.live="vehicleTypeSelected" name="vehicle_type" required>
<option>Type de véhicule</option>
<!--[if BLOCK]><![endif]--> <option value="agricultural" wire:key="agricultural" >Agricole</option>
<option value="atv" wire:key="atv" >Quad</option>
<option value="car" wire:key="car" >Voiture</option>
<option value="jetski" wire:key="jetski" >Jet-ski</option>
<option value="moto" wire:key="moto" >Moto</option>
<option value="truck" wire:key="truck" >Camion</option>
<option value="boat" wire:key="boat" >Bateau</option>
<option value="other" wire:key="other" >Autre</option>
<!--[if ENDBLOCK]><![endif]--> </select>
</div>
</div>
<!-- Sélecteur de la marque du véhicule -->
<div class="col-lg-6">
<div class="form-select-wrapper mb-4">
<select class="form-select" name="vehicle_brand_id_api" required wire:model.live="vehicleBrandSelected">
<option wire:key="brand-null">Sélectionnez une marque</option>
<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </select>
<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </div>
</div>
<!-- Sélecteur du modèle de véhicule -->
<div class="col-lg-6">
<div class="form-select-wrapper mb-4">
<select class="form-select" name="vehicle_model_id_api" required wire:model.live="vehicleModelSelected">
<option wire:key="model-null">Sélectionnez un modèle</option>
<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </select>
<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </div>
</div>
<!-- Sélecteur de la version du véhicule -->
<div class="col-lg-6">
<div class="form-select-wrapper mb-4">
<select class="form-select" name="vehicle_version_id_api" required wire:model.live="vehicleVersionSelected">
<option wire:key="version-null">Sélectionnez une version</option>
<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </select>
<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </div>
</div>
<!-- Sélecteur de moteurs -->
<div class="col-lg-6">
<div class="form-select-wrapper mb-4">
<select class="form-select" name="vehicle_engine_id_api" required wire:model.live="vehicleEngineSelected">
<option wire:key="engine-null" >Sélectionnez un moteur</option>
<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </select>
<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </div>
</div>
</div>
<!--[if ENDBLOCK]><![endif]-->
<div class="row">
<div class="col-lg-12">
<div class="mb-4">
<div class="form-check">
<label class="form-check-label" for="vehicle_not_in_configurator">
Mon véhicule n'est pas dans le configurateur
</label>
<input class="form-check-input"
type="checkbox"
value="1"
name="vehicle_not_in_configurator"
id="vehicle_not_in_configurator"
wire:model.live="vehicleNotInConfigurator"
>
</div>
</div>
</div>
</div>
<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--></div>
<div class="row">
<div class="col-lg-12">
<div class="form-floating mb-4">
<textarea class="form-control" placeholder="Écrire votre message ici" id="comment" style="height: 100px" name="comment" required></textarea>
<label for="comment">Commentaire</label>
<div class="invalid-feedback">
</div>
</div>
</div>
<div class="col-lg-12">
<div class="mb-4">
<div class="form-check">
<label class="form-check-label" for="newsletter-subscription">
Je souhaite m'inscrire à la newsletter Motortech.
</label>
<input class="form-check-input mt-1" type="checkbox" value="1" name="newsletter_subscription" id="newsletter-subscription" checked>
</div>
<div class="invalid-feedback-text">
</div>
</div>
<div class="mb-4">
<div class="form-check">
<label class="form-check-label" for="agreement">
J'ai lu et j'accepte les conditions générales de vente et la politique de confidentialité.
</label>
<input class="form-check-input mt-1" type="checkbox" value="1" name="agreement" id="agreement">
</div>
<div class="invalid-feedback-text">
</div>
</div>
<input type="hidden" name="website_page" value="https://motortech.fr">
<div
data-sitekey="0x4AAAAAAA5Z1SMDbAvA4xoQ"
class="cf-turnstile"
></div>
</div>
</div>
<button type="submit" class="btn btn-sm mtk-btn-red rounded link-light mt-3" id="buttonSubmitModal">Valider</button>
</form>
</div>
</div>
</div>
</div>
<div class="sidebar-select-overlay" id="sidebar-select-overlay"></div>
<aside class="sidebar-select" id="sidebar-select-center">
<div class="sidebar-select-header">
<p class="sidebar-select-title">Préférences</p>
</div>
<form action="https://motortech.fr/centres/select-center" method="post" id="form-select-center" class="sidebar-select-form">
<input type="hidden" name="_token" value="ip6wO774FOCkrA6mO0pvhlMCuH4BTGQhG94xyiFk" autocomplete="off"> <div class="sidebar-select-centers">
<p class="sidebar-select-label"><i class="uil uil-map-marker"></i> Votre centre</p>
<div class="sidebar-select-list">
<label class="sidebar-select-radio" for="center-6">
<input type="radio" name="id_center_selected" value="6" required id="center-6" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Biarritz
<span class="sidebar-select-radio-territory">64</span>
</span>
</label>
<label class="sidebar-select-radio" for="center-8">
<input type="radio" name="id_center_selected" value="8" required id="center-8" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Bourg en Bresse
<span class="sidebar-select-radio-territory">01</span>
</span>
</label>
<label class="sidebar-select-radio" for="center-27">
<input type="radio" name="id_center_selected" value="27" required id="center-27" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Liège
<span class="sidebar-select-radio-territory">BE</span>
</span>
</label>
<label class="sidebar-select-radio" for="center-13">
<input type="radio" name="id_center_selected" value="13" required id="center-13" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Manosque
<span class="sidebar-select-radio-territory">04</span>
</span>
</label>
<label class="sidebar-select-radio" for="center-16">
<input type="radio" name="id_center_selected" value="16" required id="center-16" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Nice
<span class="sidebar-select-radio-territory">06</span>
</span>
</label>
<label class="sidebar-select-radio" for="center-17">
<input type="radio" name="id_center_selected" value="17" required id="center-17" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Normandie
<span class="sidebar-select-radio-territory">50</span>
</span>
</label>
<label class="sidebar-select-radio" for="center-19">
<input type="radio" name="id_center_selected" value="19" required id="center-19" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Orléans
<span class="sidebar-select-radio-territory">45</span>
</span>
</label>
<label class="sidebar-select-radio" for="center-28">
<input type="radio" name="id_center_selected" value="28" required id="center-28" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Perpignan
<span class="sidebar-select-radio-territory">66</span>
</span>
</label>
<label class="sidebar-select-radio" for="center-20">
<input type="radio" name="id_center_selected" value="20" required id="center-20" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Reims
<span class="sidebar-select-radio-territory">51</span>
</span>
</label>
<label class="sidebar-select-radio" for="center-29">
<input type="radio" name="id_center_selected" value="29" required id="center-29" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Rouen
<span class="sidebar-select-radio-territory">76</span>
</span>
</label>
<label class="sidebar-select-radio" for="center-23">
<input type="radio" name="id_center_selected" value="23" required id="center-23" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Switzerland
<span class="sidebar-select-radio-territory">CH</span>
</span>
</label>
<label class="sidebar-select-radio" for="center-3">
<input type="radio" name="id_center_selected" value="3" required id="center-3" >
<span class="sidebar-select-radio-mark"></span>
<span class="sidebar-select-radio-text">
Toulon
<span class="sidebar-select-radio-territory">83</span>
</span>
</label>
</div>
</div>
<div class="sidebar-select-bottom">
<div class="sidebar-select-section">
<p class="sidebar-select-label"><i class="uil uil-money-bill"></i> Votre devise</p>
<div class="sidebar-select-currencies">
<label class="sidebar-select-currency" for="currency-EUR">
<input type="radio" name="currency_selected" value="EUR" id="currency-EUR" required checked>
<span class="sidebar-select-currency-chip">
<span class="sidebar-select-currency-code">EUR</span>
<span class="sidebar-select-currency-name">Euros</span>
</span>
</label>
<label class="sidebar-select-currency" for="currency-XPF" style="display: none">
<input type="radio" name="currency_selected" value="XPF" id="currency-XPF" >
<span class="sidebar-select-currency-chip">
<span class="sidebar-select-currency-code">XPF</span>
<span class="sidebar-select-currency-name">Franc Pacifique</span>
</span>
</label>
<label class="sidebar-select-currency" for="currency-CHF">
<input type="radio" name="currency_selected" value="CHF" id="currency-CHF" >
<span class="sidebar-select-currency-chip">
<span class="sidebar-select-currency-code">CHF</span>
<span class="sidebar-select-currency-name">Franc suisse</span>
</span>
</label>
</div>
</div>
<div class="sidebar-select-footer">
<button type="submit" class="sidebar-select-btn" id="buttonSubmitSidebar">Valider</button>
</div>
</div>
</form>
</aside>
</div>
<footer class="bg-dark text-inverse">
<div class="container pt-12 pt-md-12 pb-12 pb-md-12">
<div class="row gy-6 gy-lg-0">
<div class="col-md-4">
<div class="widget">
<img class="mb-4 mtk-logo" width="200" height="45" src="/images/logo_s.svg" srcset="/images/logo_s.svg 2x" alt="logo motortech" />
<p class="mb-4">© 2026 Motortech. <br class="d-none d-lg-block" />Tous droits réservés.</p>
<nav class="nav social social-white">
<a href="https://twitter.com/MotortechFrance" aria-label="Twitter" rel="nofollow noopener noreferrer" target="_blank"><i class="uil uil-twitter"></i></a>
<a href="https://taap.it/fb-motortech" aria-label="Facebook" rel="nofollow noopener noreferrer" target="_blank"><i class="uil uil-facebook-f"></i></a>
<a href="https://taap.it/ITSivD/" aria-label="Instagram" rel="nofollow noopener noreferrer" target="_blank"><i class="uil uil-instagram"></i></a>
<a href="https://taap.it/USUR9G" aria-label="Youtube" rel="nofollow noopener noreferrer" target="_blank"><i class="uil uil-youtube"></i></a>
</nav>
</div>
</div>
<div class="col-md-4">
<div class="widget">
<p class="widget-title text-white mb-3 h4">Nos expertises</p>
<ul class="list-unstyled mb-0">
<li><a href="https://motortech.fr/reprogrammation/voiture">Reprogrammation moteur</a></li>
<li><a href="https://motortech.fr/conversion-ethanol-e85-flexfuel">Reprogrammation ethanol</a></li>
<li><a href="https://motortech.fr/reprogrammation/moto">Reprogrammation moto</a></li>
<li><a href="https://motortech.fr/reprogrammation/quad">Reprogrammation quad</a></li>
<li><a href="https://motortech.fr/reprogrammation/jetski">Reprogrammation jet-ski</a></li>
<li><a href="https://motortech.fr/reprogrammation/camion">Reprogrammation camion</a></li>
<li><a href="https://motortech.fr/reprogrammation/agricole">Reprogrammation tracteur</a></li>
</ul>
</div>
</div>
<div class="col-md-4">
<div class="widget">
<p class="widget-title text-white mb-3 h4">Divers</p>
<ul class="list-unstyled mb-0">
<li><a href="https://motortech.fr/cgv-motortech">CGV</a></li>
<li><a href="https://motortech.fr/politique-confidentialite-motortech">Politique de confidentialité</a></li>
<li><a href="https://motortech.fr/mentions-legales-motortech">Mentions légales</a></li>
<li class="pt-4" style="font-size: 0.7rem; opacity: 0.45;">Made by <a href="https://mettadev.com/" target="_blank" rel="noopener" style="color: inherit; text-decoration: underline;">MettaDev</a></li>
</ul>
</div>
</div>
</div>
</div>
</footer>
<div class="progress-wrap">
<svg class="progress-circle svg-content" width="100%" height="100%" viewbox="-1 -1 102 102">
<path d="M50,1 a49,49 0 0,1 0,98 a49,49 0 0,1 0,-98" />
</svg>
</div>
<script src="/assets/js/plugins.js" defer></script>
<script src="/assets/js/theme.min.js" defer></script>
<link rel="modulepreload" as="script" href="https://motortech.fr/build/assets/input-phone-number-global-XJk1q42p.js" /><link rel="modulepreload" as="script" href="https://motortech.fr/build/assets/index-D07Qu4p6.js" /><link rel="modulepreload" as="script" href="https://motortech.fr/build/assets/_commonjsHelpers-CqkleIqs.js" /><script type="module" src="https://motortech.fr/build/assets/input-phone-number-global-XJk1q42p.js" data-navigate-track="reload"></script>
<script>
function openSidebar() {
document.getElementById('sidebar-select-center').classList.add('is-open');
document.getElementById('sidebar-select-overlay').classList.add('is-visible');
document.body.style.overflow = 'hidden';
}
function closeSidebar() {
document.getElementById('sidebar-select-center').classList.remove('is-open');
document.getElementById('sidebar-select-overlay').classList.remove('is-visible');
document.body.style.overflow = '';
}
$(document).ready(function () {
const userAgent = navigator.userAgent;
if (!isGoogleBot(userAgent)) {
openSidebar();
}
//Success form contact
//error form contact
//Display modal if error
});
function isGoogleBot(userAgent) {
const googleBotPatterns = [
/Googlebot/i,
/AdsBot-Google/i,
/Googlebot-Image/i,
/Mediapartners-Google/i,
/APIs-Google/i
];
return googleBotPatterns.some(pattern => pattern.test(userAgent));
}
function generateUUID() {
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
var r = Math.random() * 16 | 0,
v = c === 'x' ? r : (r & 0x3 | 0x8);
return v.toString(16);
});
}
$('.take-appointment').on('click', function () {
let dataToPush = {
event: "vue_formulaire",
formulaire_type: "Générique"
};
//Add to Form
const contactForm = $('#formContact');
let formType = $('<input>').attr({
type: 'hidden',
name: 'formulaire_type',
value: 'Générique'
});
contactForm.append(formType);
window.dataLayer = window.dataLayer || [];
dataLayer.push(dataToPush);
});
$('.telephone-number').click(function () {
const uuid = generateUUID();
window.dataLayer = window.dataLayer || [];
$.ajax({
url: '/facebook-conversion-tracking',
method: 'POST',
data: {
event_id: uuid,
_token: $('meta[name="csrf-token"]').attr('content'),
event_type: 'clic_telephone',
}
});
});
</script>
<script src="/livewire/livewire.min.js?id=40a765a4" data-csrf="ip6wO774FOCkrA6mO0pvhlMCuH4BTGQhG94xyiFk" data-update-uri="/livewire/update" data-navigate-once="true"></script>
</body>
</html>